d17a6aa9c8
remove old ephemeral event pruning method
2024-09-04 23:12:00 -04:00
fa5ae606c6
update negentropy
2024-09-04 23:12:00 -04:00
eb24824b53
upgrade negentropy
2024-09-04 23:12:00 -04:00
684d083c6b
optimise import
2024-09-04 23:12:00 -04:00
2b10fea6e7
fried feature
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
21d4e07b87
remove prefix matching for ids and authors filter fields
...
- this also fixes https://github.com/hoytech/strfry/issues/109
2024-09-04 23:12:00 -04:00
454bb79291
bugfix
2024-09-04 23:12:00 -04:00
058c97f856
use custom packing for indexable data: PackedEvent
2024-09-04 23:12:00 -04:00
3905f84ec8
clean-up expiration logic a bit
2024-09-04 23:08:50 -04:00
3b79f3efe1
Fix Cron expiration clean-up
2024-08-08 14:35:35 +02:00
26991c79f3
remove back-compat with DB versions 0: fixes an annoying edge case where DB version isn't recorded on startup
2024-07-19 00:20:30 -04:00
34750699df
Merge pull request #95 from alexgleason/nip11-limitation
...
Add NIP-11 limitations
2024-07-18 23:39:19 -04:00
30982c3f6c
Merge pull request #100 from fiatjaf/nip70
...
implement NIP-70: protected events
2024-07-18 23:38:44 -04:00
1b6292303d
update supported nips list.
2024-04-09 08:20:11 -03:00
42b28b9482
implement NIP-70, protected events.
2024-04-08 16:26:32 -03:00
4021651d34
Add NIP-11 icon setting
2024-03-24 14:54:21 -07:00
527dc14a86
Add NIP-11 limitations
2023-12-19 17:21:21 -06:00
87acec91c3
Add nodeinfo support
2023-12-19 12:16:16 -06:00
f0ee6a91b8
feature/freebsd-support-one: restore line
2023-11-07 09:32:19 -08:00
bc21e7b16c
setRLimits refactor to snarf as many handles available up to asked for
2023-10-25 01:42:14 -07:00
b22e515a71
feature/freebsd-support-one: main freebsd adjustments
2023-10-24 03:31:54 -07:00
b3e59566c6
switch import to use WriterPipeline
...
- This makes it do the verification and writing in parallel
- Also, it will now flush periodically (default 1s) even if it has read
fewer than N (default 10k) records from stdin. This lets import be used
as a general-purpose non-relay event ingester. To do so, users must
ensure that the stdout of their process they pipe into import is line
buffered.
2023-09-26 16:03:09 -04:00
0d88747613
relay.negentropy.enabled config option: set to false to prevent processing negentropy messages
2023-09-22 14:49:35 -04: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
7da862eb91
only attempt to monitor the modification time of a plugin if the command does not contain spaces
2023-09-10 09:53:36 -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
20148b1d7d
missing include
2023-09-06 15:17:03 -04:00
f81f628dc5
use uWebSockets toStringView()
2023-09-06 15:16:39 -04:00
108ebbfaff
router
2023-09-05 23:41:07 -04:00
e7faa0f813
WSConnection improvements: better destruction, logging
2023-09-05 23:41:07 -04:00
8a8637ee25
in plugins, pass through environment and use /bin/sh to interpret command so you can have arguments, shell pipelines, etc
2023-09-05 23:41:07 -04:00
98f1020ef3
re-org plugins
2023-09-05 23:35:27 -04:00
93330c4cbc
remove lookbehind feature from plugins
2023-09-05 23:35:27 -04:00
c23b10e1d2
fix 'unable to lookup event by levId' crash
...
This happened when a non-indexOnly scan was paused and then one of the buffered levIds was deleted or replaced before the scan resumed
2023-09-04 15:44:35 -04:00
42fe1f16ca
WSConnection clean shutdown, fix hubTrigger ownership (it's deleted by the event loop)
2023-08-16 13:38:13 -04:00
aec8dbc33a
WriterPipeline clean shutdown
2023-08-16 13:31:25 -04:00
35270c57ad
efficiency: not necessary to look up Event table in export
2023-08-14 06:20:35 -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
d189cdb349
correctly detect and report when syncs are too large, fix logging
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
ab03a57b18
stop WriterPipeline threads on shutdown
2023-07-27 17:50:07 -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
0fe929ffcb
make bulk export commands gracefully exit on SIGPIPE (for example, if piped to head)
2023-07-25 00:39:05 -04:00
80915f969d
If a client disconnects before its pending EVENT write messages have been processed, drop those messages instead of trying to write them
2023-07-21 07:46:37 -04:00
5b3190c54a
detect overflows when rejectEvents* config params are set very large
2023-07-21 06:36:36 -04:00
6d8aeaa881
setting rejectEphemeralEventsOlderThanSeconds larger than ephemeralEventsLifetimeSeconds did not work because events were then considered expired
2023-07-21 06:23:03 -04:00