Adding logging to lru evictions updateTermEmbeddingCache 2, a=chris

Chris Pollett [2022-12-14 20:Dec:th]
Adding logging to lru evictions updateTermEmbeddingCache 2, a=chris
Filename
src/library/media_jobs/RecommendationJob.php
src/models/datasources/PdoManager.php
diff --git a/src/library/media_jobs/RecommendationJob.php b/src/library/media_jobs/RecommendationJob.php
index c34919711..920442ca2 100644
--- a/src/library/media_jobs/RecommendationJob.php
+++ b/src/library/media_jobs/RecommendationJob.php
@@ -1305,13 +1305,13 @@ class RecommendationJob extends MediaJob
         $db = $this->db;
         $evicted_item = $this->lru_cache->put($term_id, $term_embedding);
         if (isset($evicted_item)) {
-            L\crawlLog("$message {$evicted_item[0]} was evicted");
             $on_conflict = in_array($db->to_upper_dbms, ["MYSQL"]) ?
                 " ON DUPLICATE KEY " :
                 " ON CONFLICT (ITEM_TYPE, ID) DO UPDATE ";
             $sql = "INSERT INTO RECOMMENDATION_TERM_EMBEDDING VALUES ".
                 "(?, ?, ?) $on_conflict SET VECTOR = ?";
             $vector = base64_encode($evicted_item[1]);
+            $db->pre_message = "$message {$evicted_item[0]} was evicted";
             $db->execute($sql, [$evicted_item[0], $item_type,
                 $vector, $vector]);
         }
@@ -1323,7 +1323,8 @@ class RecommendationJob extends MediaJob
      */
     public function saveTermEmbeddingsCacheToDb($item_type)
     {
-        L\crawlLog("Doing final persistence flush of LRU cache for $item_");
+        L\crawlLog("Doing final persistence flush of LRU cache for ".
+            "$item_type");
         $db = $this->db;
         $base_delete_sql = "DELETE FROM RECOMMENDATION_TERM_EMBEDDING" .
             " WHERE ITEM_TYPE = ? AND ID IN (";
diff --git a/src/models/datasources/PdoManager.php b/src/models/datasources/PdoManager.php
index 4152ca4b5..59d250e3a 100644
--- a/src/models/datasources/PdoManager.php
+++ b/src/models/datasources/PdoManager.php
@@ -203,7 +203,10 @@ class PdoManager extends DatasourceManager
                 $result = $statement->execute($params);
             } catch (\PDOException $e) {
                 $result = false;
+                $pre_message = (empty($this->pre_message)) ? "" :
+                    "Premessage was: " . $this->pre_message . "\n";
                 L\crawlLog("PDOManager.php Exec failed:\n" .
+                    $pre_message .
                     "SQL statement was: $sql \n" .
                     "Parameters were: " . var_export($params, true) . "\n" .
                     "Database error was: \n" . $e->getMessage() . "\n");
ViewGit