0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-05 13:28:54 +01:00
Commit graph

106 commits

Author SHA1 Message Date
Jason Volk
454051f9f3 modules/client/sync: Condition for client / socket in longpoll::poll loop. 2019-04-19 18:21:17 -07:00
Jason Volk
e9a6f2ec92 modules/client/sync: Disable phased sync by default for now until stable. 2019-04-08 06:54:54 -07:00
Jason Volk
a82410009e ircd:Ⓜ️:sync: Introduce phased polylogarithmic initial sync. 2019-04-08 02:46:49 -07:00
Jason Volk
0f2dcf1706 modules/client/sync: Rename conf item. 2019-04-08 00:03:17 -07:00
Jason Volk
a83e304382 modules/client/sync: Manually invalidate checkpoints on known polylog commitments. 2019-03-30 15:02:18 -07:00
Jason Volk
f7fa89b061 ircd::json::stack: Alter checkpoint rollback() behavior to proactive. 2019-03-30 14:13:34 -07:00
Jason Volk
0e6e556d50 modules/client/sync: Reuse scratch buffer on longpoll handles. 2019-03-27 23:50:43 -07:00
Jason Volk
5d06042140 modules/client/sync: Use the same linear vector merge in longpoll handler. 2019-03-27 20:28:59 -07:00
Jason Volk
394ec523a2 ircd:Ⓜ️:sync: Do a full iteration of all linear sync items even if success. 2019-03-27 20:13:04 -07:00
Jason Volk
5b951b55c5 modules/vm: Add sequencing points.
ircd:Ⓜ️:vm: Reorganize sequence counters.
2019-03-19 16:31:05 -07:00
Jason Volk
22fe24f54f modules/client/sync: Add linear buffer size conf item; add help texts to some confs. 2019-03-17 13:24:24 -07:00
Jason Volk
9ab3549660 modules/client/sync: Tweak log message format; cleanup longpoll::accepted struct. 2019-03-17 13:18:33 -07:00
Jason Volk
4e618175c7 modules/client/sync: Try to ensure all next_batch tokens are limited to the upper bound. 2019-03-16 18:12:38 -07:00
Jason Volk
7fc68e1933 modules/client/sync: When longpoll hits an unsequenced EDU, the next_batch must repeat the current since token. 2019-03-16 12:59:18 -07:00
Jason Volk
03abdd5ac6 modules/client/sync: Improve since token rejection message. 2019-03-16 12:26:03 -07:00
Jason Volk
f745787ce4 modules/client/sync: Check if the client is still alive during longpoll. 2019-03-12 18:41:05 -07:00
Jason Volk
58159d3ee6 modules/client/sync: Fix condition to skip linear for longpoll. 2019-03-08 17:47:29 -08:00
Jason Volk
8e2aef32ef modules/client/sync: Consistent display of next_batch values in debug log msgs. 2019-03-08 15:29:10 -08:00
Jason Volk
c0d0599b19 modules/client/sync: Tweak next_batch case; add debuglog on timeout branch. 2019-03-08 14:26:23 -08:00
Jason Volk
187eca0e4e modules/client/sync: Refactor linear sync handlers to assume no implicit path. 2019-03-08 14:19:04 -08:00
Jason Volk
5adfb3ba43 modules/client/sync: Add conf items which override the sync mode selection. 2019-03-07 11:53:58 -08:00
Jason Volk
157805d97b modules/client/sync: Simplify next_batch token decision after linear and longpoll. 2019-03-02 14:20:52 -08:00
Jason Volk
8fee82b0d6 modules/client/sync: Readd the transaction_id on longpoll; fix ghost events. 2019-02-28 18:28:45 -08:00
Jason Volk
9c20d49e33 ircd::resource::response::chunked: Eliminate move semantic. 2019-02-28 17:12:04 -08:00
Jason Volk
70173f5893 modules/client/sync: Use better flush() path. 2019-02-28 17:12:04 -08:00
Jason Volk
af6ac4a2ac ircd: Replace various unwind count patterns with scope_count. 2019-02-28 17:12:03 -08:00
Jason Volk
b8fa7455e9 modules/client/sync: Provide better next_batch after linear iteration. 2019-02-28 12:36:14 -08:00
Jason Volk
9a43a9524c modules/client/sync: Uniform log messages; longpoll error message; various fixes. 2019-02-27 18:49:38 -08:00
Jason Volk
c88d961ad4 modules/client/sync: Implement longpoll sync handler. 2019-02-27 16:27:04 -08:00
Jason Volk
902466450e modules/client/sync: Enable linear sync. 2019-02-27 16:25:37 -08:00
Jason Volk
f91f6226a6 modules/client/sync: Add event_idx to accept struct; move top object construction to handlers. 2019-02-27 16:25:37 -08:00
Jason Volk
a263b2ff40 modules/client/sync: Use resource::response buffer w/ passed size argument. 2019-02-26 18:04:37 -08:00
Jason Volk
cc586a352e modules/client/sync: Implement iteration base of linear sync. 2019-02-26 18:04:37 -08:00
Jason Volk
78a1281b1c ircd:Ⓜ️:sync: Make data.out a pointer to the json::stack. 2019-02-26 15:50:58 -08:00
Jason Volk
af5b0e69a1 modules/client/sync: Employ json::stack::checkpoint using boolean return values in all handlers. 2019-02-24 14:49:29 -08:00
Jason Volk
c9f8e44c78 ircd:Ⓜ️:sync: Add stats.info conf item; rename debug_stats item. 2019-02-22 15:40:53 -08:00
Jason Volk
8c5b1f283f modules/client/sync: Various range check fixes; simplify debug stats. 2019-01-26 17:26:05 -08:00
Jason Volk
fc162b41b3 modules/client/sync: Add a next_batch param to the query args passed to the range upper-bound. 2019-01-26 15:33:11 -08:00
Jason Volk
80b3cd678e modules/client/sync: Reorg / deinline sync args related. 2019-01-26 13:34:57 -08:00
Jason Volk
4c495e1f44 modules/client/sync: Various cleanup / simplify. 2019-01-10 16:58:37 -08:00
Jason Volk
2d860b25a8 ircd:Ⓜ️:sync: Checkpoint. 2019-01-09 20:39:12 -08:00
Jason Volk
443905859f ircd:Ⓜ️:sync: Additional abstraction; checkpoint polylog /sync modules. 2019-01-08 17:17:41 -08:00
Jason Volk
61e88e75bc modules/client/sync: Additional sync items reorganization. 2019-01-04 14:47:01 -08:00
Jason Volk
86911226ed ircd:Ⓜ️ Preliminary modular client sync system. 2019-01-03 17:21:02 -08:00
Jason Volk
3fd61ba361 modules/client/sync: Prefetching defaults to false for now. 2018-12-23 17:41:47 -08:00
Jason Volk
36c1b359ab modules/client/sync: Optimize the room state iteration strategy. 2018-12-19 15:05:07 -08:00
Jason Volk
f44f1cf89d modules/client/sync: Fix sync timeout behavior. 2018-12-01 17:23:42 -08:00
Jason Volk
0da335c03c modules/client/sync: Minor hackstops for now. 2018-11-15 18:39:51 -08:00
Jason Volk
c6e2dbe55b modules/client/sync: Use conf item for linear vs. polylog threshold. 2018-11-04 18:11:37 -08:00
Jason Volk
242516c853 ircd:Ⓜ️ Add central interface for room state prefetch; add console cmd; apply to client sync. 2018-10-23 10:01:36 -07:00