changeset 393:3219f8dd7868

sql: Interesting, `FILTER` generation doesn't work with the `is` keyword.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 14 Oct 2015 22:56:34 -0700
parents e551a6918907
children dbe7dde07e85
files wikked/db/sql.py
diffstat 1 files changed, 7 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/wikked/db/sql.py	Wed Oct 14 22:06:17 2015 -0700
+++ b/wikked/db/sql.py	Wed Oct 14 22:56:34 2015 -0700
@@ -418,7 +418,7 @@
             subdir = string.rstrip(subdir, '/') + '/%'
             q = q.filter(SQLPage.url.like(subdir))
         if uncached_only:
-            q = q.filter(SQLPage.is_ready is False)
+            q = q.filter(SQLPage.is_ready == False)  # NOQA
         for p in q.all():
             yield p.url
 
@@ -435,11 +435,11 @@
             subdir = string.rstrip(subdir, '/') + '/%'
             q = q.filter(SQLPage.url.like(subdir))
         if uncached_only:
-            q = q.filter(SQLPage.is_ready is False)
+            q = q.filter(SQLPage.is_ready == False)  # NOQA
         if endpoint_only:
             q = q.filter(SQLPage.endpoint == endpoint_only)
         elif no_endpoint_only:
-            q = q.filter(SQLPage.endpoint is None)
+            q = q.filter(SQLPage.endpoint == None)  # NOQA
         q = self._addFieldOptions(q, fields)
         for p in q.all():
             yield SQLDatabasePage(self, p, fields)
@@ -496,10 +496,13 @@
         if except_url:
             q = q.filter(SQLPage.url != except_url)
         if only_required:
-            q = q.filter(SQLPage.needs_invalidate is True)
+            q = q.filter(SQLPage.needs_invalidate == True)
 
+        uncached_urls = []
         for p in q.all():
+            uncached_urls.append(p.url)
             p.is_ready = False
+        logger.debug("Uncaching: %s" % ', '.join(uncached_urls))
         self.session.commit()
 
     def pageExists(self, url=None, path=None):