]> git.wh0rd.org - tt-rss.git/commitdiff
gen-search-idx: do not rely on offsets
authorAndrew Dolgov <noreply@madoka.volgo-balt.ru>
Tue, 4 Aug 2015 11:36:39 +0000 (14:36 +0300)
committerAndrew Dolgov <noreply@madoka.volgo-balt.ru>
Tue, 4 Aug 2015 11:36:39 +0000 (14:36 +0300)
update.php

index 5a082279e47add7fbd6852d5dc558d101b2c1562..8a00cdd55b087d7453f4708be2d875fae0bbeacd 100755 (executable)
                $result = db_query("SELECT COUNT(id) AS count FROM ttrss_entries WHERE tsvector_combined IS NULL");
                $count = db_fetch_result($result, 0, "count");
 
-               print "Entries to process: $count.\n";
+               print "Articles to process: $count.\n";
 
-               $offset = 0;
-               $limit = 1000;
+               $limit = 500;
+               $processed = 0;
 
                while (true) {
-                       $result = db_query("SELECT id, title, content FROM ttrss_entries WHERE tsvector_combined IS NULL ORDER BY id LIMIT $limit OFFSET $offset");
+                       $result = db_query("SELECT id, title, content FROM ttrss_entries WHERE tsvector_combined IS NULL ORDER BY id LIMIT $limit");
 
                        if (db_num_rows($result) != 0) {
-                               echo "Offset $offset...\n";
-
                                while ($line = db_fetch_assoc($result)) {
                                        $tsvector_combined = db_escape_string(mb_substr($line['title'] . ' ' . strip_tags($line['content']),
                                                0, 1000000));
                                        db_query("UPDATE ttrss_entries SET tsvector_combined = to_tsvector('english', '$tsvector_combined') WHERE id = " . $line["id"]);
                                }
 
-                               $offset += $limit;
+                               $processed += db_num_rows($result);
+                               print "Processed $processed articles...\n";
+
                        } else {
                                echo "All done.\n";
                                break;