Add check_file_db_exists to backupdb api
authorDavid Stainton <dstainton415@gmail.com>
Thu, 11 Jun 2015 21:20:40 +0000 (14:20 -0700)
committerDaira Hopwood <daira@jacaranda.org>
Mon, 20 Jul 2015 23:42:34 +0000 (00:42 +0100)
- this backupdb utility function checks to if a file's entry
exists in the db but does not stat the file on disk or otherwise
talk to the filesystem

src/allmydata/backupdb.py

index d0c226163764579a56f6239fda540298fb6604a3..537d4305051a726d967377d4f181a1990f9fc31d 100644 (file)
@@ -137,6 +137,21 @@ class BackupDB_v2:
         self.connection = connection
         self.cursor = connection.cursor()
 
+    def check_file_db_exists(self, path):
+        """I will tell you if a given file has an entry in my database or not
+        by returning True or False.
+        """
+        c = self.cursor
+        c.execute("SELECT size,mtime,ctime,fileid"
+                  " FROM local_files"
+                  " WHERE path=?",
+                  (path,))
+        row = self.cursor.fetchone()
+        if not row:
+            return False
+        else:
+            return True
+
     def check_file(self, path, use_timestamps=True):
         """I will tell you if a given local file needs to be uploaded or not,
         by looking in a database and seeing if I have a record of this file