Commit Graph

30 Commits

Author SHA1 Message Date
c3b3789bc4 fixme 2025-01-10 16:38:36 -05:00
85a2b875a3 in router, ensure the configured timeout is installed for first connections 2025-01-10 16:35:24 -05:00
9ba0626993 Update cmd_sync.cpp 2024-12-09 16:14:40 +01:00
bfcafb5eea Update cmd_stream.cpp 2024-12-09 16:14:14 +01:00
4b16dc1aa7 some minor tweaks to the connection timeout, docs 2024-10-18 16:35:43 -04:00
dbca33cc99 Add timeout config for router. 2024-10-03 16:55:48 -07:00
169e633a08 Use Bytes32 instead of std::string where possible, to reduce memory usage 2024-09-05 15:12:40 -04:00
29a9d653e7 detect and ignore duplicates in negentropy sync 2024-09-04 23:12:00 -04:00
e181627842 support multiple concurrent negentropy trees 2024-09-04 23:12:00 -04:00
9a7128e102 update for new DB layout 2024-09-04 23:12:00 -04:00
fc43a2260b update negentropy 2024-09-04 23:12:00 -04:00
eb24824b53 upgrade negentropy 2024-09-04 23:12:00 -04:00
47c26cc887 don't use flatbuffers for Event index table (make it opaque) 2024-09-04 23:12:00 -04:00
391f632b73 don't store receivedAt and source metadata 2024-09-04 23:12:00 -04:00
058c97f856 use custom packing for indexable data: PackedEvent 2024-09-04 23:12:00 -04:00
b22e515a71 feature/freebsd-support-one: main freebsd adjustments 2023-10-24 03:31:54 -07:00
c9254adaf8 bugfix: handle malformed/old-format negentropy messages gracefully 2023-09-22 14:49:35 -04:00
4d0eef45f7 use negentropy protocol 0 2023-09-18 11:57:35 -04:00
b2a128d2f3 Normally when a plugin blocks an event, it will log a message. Especially when using plugins in stream, router, etc, this might be too verbose. In order to silence these logs, return an empty string for msg (or no msg at all). 2023-09-10 09:53:30 -04:00
90494cb8b3 bugfix with plugin receivedAt time and sourceType 2023-09-10 09:53:15 -04:00
108ebbfaff router 2023-09-05 23:41:07 -04:00
98f1020ef3 re-org plugins 2023-09-05 23:35:27 -04:00
6b8981e1db sync improvements and incompatible upgrade
* New Negentropy protocol: Syncs with older versions of strfry will break (sorry!)
* Bi-directional frame size limits: fixes a bug when syncing very large DBs where the client side was near empty
* sync command now politely tells server it can release Negentropy resources as soon as reconcile complete
2023-08-12 00:45:51 -04:00
206b14a473 sync optimisations, DBQuery no longer loads eventPayload
- It is now up to the caller to do so
- QueryScheduler now can optionally not bother to ensure that the events are fresh
2023-07-29 01:14:38 -04:00
ca0449286c Stop WSConnection from calling ::exit(), so that the sync command can flush its writes first
This fixes a rare race condition that caused a segfault on exit:

We call ::exit() which runs the atexit handler, which destroys the LMDB environment. However, there was another thread running that still had pending events to write, so as the environment was being destroyed, it tried to use the environment to write the events.
2023-07-26 20:24:55 -04:00
0d21dc3255 limit on events that can be processed by a sync 2023-07-20 17:45:00 -04:00
4d832684a5 default value for frame-size-limit 2023-06-12 08:58:29 -04:00
a3b4e7baf5 frame size limit for negentropy syncs 2023-06-11 23:44:33 -04:00
d2889bc491 allow writePolicy plugins to filter events downloaded via sync 2023-06-06 01:06:43 -04:00
03ef0958fc apps refactor 2023-06-05 11:39:21 -04:00