3 Commits

Author SHA1 Message Date
c0dd47ba28 ssb: Oh golly you're supposed to request a pragma analyze periodically this way.
All checks were successful
Build Tilde Friends / Build-All (push) Successful in 9m11s
2025-11-29 16:17:54 -05:00
e44a85c92b ssb: Log noise. 2025-11-29 16:13:02 -05:00
89d3e9b4fe ssb: Mentions have become too slow. Using refs instead of fts seems better and faster, again? 2025-11-29 15:37:17 -05:00
3 changed files with 9 additions and 5 deletions

View File

@@ -1,5 +1,5 @@
{
"type": "tildefriends-app",
"emoji": "🦀",
"previous": "&QPdP4BaztX9l3BBQNVbFAu8t5iN5NTqzhIOr+8bNhb0=.sha256"
"previous": "&HrNj+ya8UIHQIy0MgoaKBcW+MU56iKLqpNpOnUiKTZg=.sha256"
}

View File

@@ -100,7 +100,6 @@ class TfTabNewsFeedElement extends LitElement {
]
)
);
console.log(result);
return result;
}
@@ -118,10 +117,11 @@ class TfTabNewsFeedElement extends LitElement {
result = await tfrpc.rpc.query(
`
WITH mentions AS (SELECT messages.rowid, messages.id, messages.previous, messages.author, messages.sequence, messages.timestamp, messages.hash, json(messages.content) AS content, messages.signature
FROM messages_fts(?1)
JOIN messages ON messages.rowid = messages_fts.rowid
FROM messages_refs
JOIN messages ON messages.id = messages_refs.message
JOIN json_each(?2) AS following ON messages.author = following.value
WHERE
messages_refs.ref = ?1 AND
messages.author != ?1 AND
(?3 IS NULL OR messages.timestamp >= ?3) AND messages.timestamp < ?4
ORDER BY timestamp DESC limit ?5)
@@ -133,7 +133,7 @@ class TfTabNewsFeedElement extends LitElement {
SELECT TRUE AS is_primary, * FROM mentions
`,
[
'"' + this.whoami.replace('"', '""') + '"',
this.whoami,
JSON.stringify(this.following),
start_time,
end_time,

View File

@@ -503,6 +503,10 @@ void tf_ssb_db_init(tf_ssb_t* ssb)
tf_printf("Adding flags column.\n");
_tf_ssb_db_exec(db, "ALTER TABLE messages ADD COLUMN flags INTEGER");
}
tf_printf("Optimizing...\n");
_tf_ssb_db_exec(db, "PRAGMA optimize=0x10002");
tf_printf("Done optimizing.\n");
tf_ssb_release_db_writer(ssb, db);
}