Adolanium
ee9ec6164c
perf(state): stop selecting full message content in session search
...
Every search route in _search_messages_impl (FTS, CJK bigram, trigram,
LIKE fallback, rebuild-gap supplement) selected m.content, then the
result tail popped it unread. On DBs with multi-MB tool rows, each
search read and materialized up to `limit` full rows only to discard
them. Snippets come from snippet()/substr() in SQL and the context
window is re-fetched by id, so no code path ever read the column.
Drop the column from all six SELECT lists. Returned dicts are
unchanged: content was never part of the public result (the pop ran
before return), and tests/test_hermes_state.py already documents that
contract.
(cherry picked from commit d0c3af167e7dd4eb18e1bea29ba107a94911ea24)
2026-08-15 00:34:29 -07:00
..
2026-08-02 20:21:59 -07:00
2026-08-08 04:19:49 -07:00
2026-08-15 00:33:01 -07:00
2026-08-12 13:30:01 -05:00
2026-08-15 10:29:05 +05:30
2026-08-09 22:09:49 -04:00
2026-08-14 21:55:14 -07:00
2026-08-14 21:57:41 -07:00
2026-08-15 00:33:32 -07:00
2026-08-15 00:31:37 -07:00
2026-08-13 23:43:15 +05:30
2026-08-04 17:36:26 -04:00
2026-08-08 18:11:02 -07:00
2026-08-03 20:35:47 +05:30
2026-08-15 00:33:32 -07:00
2026-08-13 11:11:53 -07:00
2026-08-14 22:11:30 -07:00
2026-08-13 02:38:28 -07:00
2026-08-12 19:13:32 -07:00
2026-08-13 22:09:44 -07:00
2026-08-15 00:33:11 -07:00
2026-08-08 12:33:19 -07:00
2026-08-15 00:33:01 -07:00
2026-08-15 00:33:11 -07:00
2026-08-07 10:11:05 -07:00
2026-08-12 19:13:32 -07:00
2026-08-12 17:25:30 -05:00
2026-08-06 05:00:17 +05:30
2026-08-13 22:44:23 +05:30
2026-08-02 00:11:50 -07:00
2026-08-15 00:25:00 -07:00
2026-08-14 22:23:00 -07:00
2026-08-14 15:41:38 -05:00
2026-08-03 17:19:49 -07:00
2026-08-14 21:48:14 -07:00
2026-08-02 00:11:50 -07:00
2026-08-08 05:21:09 -07:00
2026-08-03 20:30:32 +05:30
2026-08-12 19:13:32 -07:00
2026-08-09 22:09:49 -04:00
2026-08-14 21:35:30 -07:00
2026-08-09 22:09:49 -04:00
2026-08-09 22:09:49 -04:00
2026-08-15 00:34:29 -07:00
2026-08-13 23:43:15 +05:30
2026-08-13 23:43:15 +05:30
2026-08-13 02:38:28 -07:00
2026-08-14 21:35:30 -07:00
2026-08-14 22:33:58 -07:00
2026-08-08 19:46:35 -07:00
2026-08-14 21:58:09 -07:00
2026-08-14 21:58:09 -07:00
2026-08-14 21:58:09 -07:00
2026-08-13 02:44:48 -07:00
2026-08-13 02:38:28 -07:00
2026-08-13 18:39:54 +00:00
2026-08-13 18:39:54 +00:00
2026-08-14 21:58:09 -07:00
2026-08-07 19:44:35 +05:30
2026-08-11 17:06:15 -05:00
2026-08-14 21:41:26 -07:00
2026-08-03 17:38:13 +05:30
2026-08-14 21:36:41 -07:00
2026-08-09 22:09:49 -04:00
2026-08-14 21:45:08 -07:00
2026-08-14 21:50:48 -07:00
2026-08-13 11:49:14 -07:00
2026-08-14 13:51:26 -07:00
2026-08-14 13:51:26 -07:00
2026-08-12 18:55:14 -07:00
2026-08-10 17:02:56 -07:00
2026-08-08 12:33:19 -07:00
2026-08-07 00:41:58 -04:00
2026-08-02 10:04:48 -07:00
2026-08-10 17:02:56 -07:00
2026-08-10 17:02:56 -07:00
2026-08-03 20:37:17 +05:30
2026-08-02 21:32:13 +05:30
2026-08-06 07:49:42 -07:00
2026-08-04 11:26:15 +05:30
2026-08-12 19:43:29 -07:00
2026-08-12 19:43:41 -07:00
2026-08-08 14:18:26 +05:30
2026-08-06 19:35:47 -06:00
2026-08-13 09:36:02 -07:00
2026-08-07 09:44:21 -07:00
2026-08-14 20:24:06 -07:00
2026-08-06 23:08:23 -05:00
2026-08-15 00:32:44 -07:00
2026-08-06 19:35:47 -06:00
2026-08-09 13:43:14 -07:00
2026-08-12 20:02:07 -07:00
2026-08-02 21:30:54 +05:30
2026-08-02 23:10:28 +05:30
2026-08-14 12:02:05 -04:00
2026-08-13 02:38:28 -07:00