Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2008-11-29 18:22:14 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2008-11-29 18:22:14 (GMT)
commit95dac3b823bfa22e94795c4f5a5641227c8d0de3 (patch)
tree5e17fec32cf9d67581a4a94e221fcab7472bd2cc
parent87becad6a65be91059efff4fb75d342bf4ddd0a1 (diff)
Better cope with borked datastore directories
-rw-r--r--src/olpc/datastore/indexstore.py2
-rw-r--r--src/olpc/datastore/migration.py4
2 files changed, 6 insertions, 0 deletions
diff --git a/src/olpc/datastore/indexstore.py b/src/olpc/datastore/indexstore.py
index bd689b0..1453f4c 100644
--- a/src/olpc/datastore/indexstore.py
+++ b/src/olpc/datastore/indexstore.py
@@ -64,6 +64,8 @@ class IndexStore(object):
def remove_index(self):
index_path = layoutmanager.get_instance().get_index_path()
+ if not os.path.exists(index_path):
+ return
for f in os.listdir(index_path):
os.remove(os.path.join(index_path, f))
diff --git a/src/olpc/datastore/migration.py b/src/olpc/datastore/migration.py
index 2cc1bd8..8846cf1 100644
--- a/src/olpc/datastore/migration.py
+++ b/src/olpc/datastore/migration.py
@@ -27,8 +27,12 @@ from olpc.datastore import layoutmanager
def migrate_from_0():
logging.info('Migrating datastore from version 0 to version 1')
+
root_path = layoutmanager.get_instance().get_root_path()
old_root_path = os.path.join(root_path, 'store')
+ if not os.path.exists(old_root_path):
+ return
+
for f in os.listdir(old_root_path):
uid, ext = os.path.splitext(f)
if ext != '.metadata':