Index: trunk/Nebulous-Server/bin/nebdiskd
===================================================================
--- trunk/Nebulous-Server/bin/nebdiskd	(revision 24411)
+++ trunk/Nebulous-Server/bin/nebdiskd	(revision 24539)
@@ -67,5 +67,5 @@
 $retry      ||= $c->get_retry   || 1;
 
-my $mounts = $c->get_mounts;
+#my $mounts = $c->get_mounts;
 my $poll_interval = $c->get_poll_interval || 5;
 
@@ -178,6 +178,17 @@
     eval {
         my $r_query = $dbh->prepare_cached("REPLACE INTO mount VALUES(?, ?, ?)");
-        my $d_query = $dbh->prepare_cached("DELETE FROM mount WHERE mountpoint = ?");
-
+        my $d_query = $dbh->prepare_cached("DELETE FROM mount, mountedvol WHERE mountpoint = ?");
+
+        # get list of mount points
+        my $mounts = [];
+        {
+            my $query = $dbh->prepared_cached("SELECT mountpoint FROM volume");
+            $query->execute;
+            while (my $row = $query->fetchrow_hashref) {
+                push @$mounts, $row->{'mountpoint'};
+            }
+            $query->finish;
+        }
+        
         # determine valid mountpoints
         foreach my $mnt (@$mounts) {
@@ -212,4 +223,5 @@
             }
 
+            # find vol_id(s) for mountpoint
             $r_query->execute($mnt, @$dev_info{qw( blocks used )});
             $log->debug("adding $mnt to db");
