فهرست منبع

gen-search-idx: do not rely on offsets

Andrew Dolgov 8 سال پیش
والد
کامیت
73ef6f0459
1فایلهای تغییر یافته به همراه7 افزوده شده و 7 حذف شده
  1. 7 7
      update.php

+ 7 - 7
update.php

@@ -338,17 +338,15 @@
 		$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));
@@ -356,7 +354,9 @@
 					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;