Jason Volk
|
7a6d657558
|
configurable dynamic stream concurrency scalar
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
b195107053
|
optimize for multi-queue storage topologies with affinity
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
e5a1309583
|
additional interruption points to hasten shutdown
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
03f2ac9caf
|
simplify usage of mpmc channels which don't require receiver lock
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
5fdb8895b1
|
add utils to detect device io characteristics
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
749f29aaab
|
add and/and_then to BoolExt
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
a3d87be22f
|
enable atomic_flush for database columns
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
aefc4b4e69
|
add more program options for tokio
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
503210c3bf
|
toggle worker_affinity feature from program argument
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
674acc8657
|
add program options for tokio histogram settings
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
af3d6a2e37
|
shard sender into multiple task workers by destination hash
rename Destination::Normal variant
tracing instruments
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
98e6c81e49
|
offload remaining db iterator initial seeks on cache miss
consume task budget on cache hit
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
14341bb906
|
simplify and improve db iter State init interface
Signed-off-by: Jason Volk <jason@zemos.net>
|
2025-01-01 23:28:01 -05:00 |
|
Jason Volk
|
60a952508e
|
use macro for error constructions
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 14:16:29 -05:00 |
|
Jason Volk
|
4d46df2af5
|
abort tasks for non-async pool shudown
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 14:16:23 -05:00 |
|
Jason Volk
|
6c42ac2726
|
add num_workers() convenience to core metrics
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 13:32:13 -05:00 |
|
Jason Volk
|
71673b2a88
|
add worker_affinity feature
split runtime init from main.rs
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 13:31:58 -05:00 |
|
Jason Volk
|
5f7636f177
|
set dbpool thread name (gated by tokio_unstable)
Signed-off-by: Jason Volk <jason@zemos.net>
Signed-off-by: strawberry <strawberry@puppygock.gay>
|
2024-12-18 13:31:41 -05:00 |
|
Jason Volk
|
f78104a959
|
relax Send on input iterator
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 13:29:51 -05:00 |
|
Jason Volk
|
ad8cbcaac1
|
check cache prior to offloading iterator seek
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-18 13:29:43 -05:00 |
|
Jason Volk
|
34f9e3260f
|
additional sync v3 refactoring/optimizations and tracing instruments
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-10 06:20:30 +00:00 |
|
Jason Volk
|
aba88ccead
|
misc tracing span tweaks
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-10 06:20:30 +00:00 |
|
Jason Volk
|
5fc8e90e02
|
fix runtime metrics command
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-10 05:40:45 +00:00 |
|
Jason Volk
|
cd67ca6c57
|
fix .gitignore to allow /target to be a symlink
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-10 05:40:45 +00:00 |
|
Jason Volk
|
a752fb9943
|
rename mod with tracing inits due to macro issues
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 20:33:25 +00:00 |
|
Jason Volk
|
f70fdca828
|
remove jemalloc_stats from main default features
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 20:33:25 +00:00 |
|
Jason Volk
|
82133ee2ea
|
bump rust-rocksdb
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
ff56ee7413
|
add back the consume_budget on cache hits
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
6aa35260e6
|
misc database options tweaks
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
139a1ac504
|
configure the tokio runtime tunables
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
65a370836c
|
derive specific ReadOptions for iterators
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
aa6d0fcaa7
|
add unwrap_or_default() to future TryExt extension
start an OptionFuture extension
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:27 +00:00 |
|
Jason Volk
|
d921b82376
|
add options for console tracing EnvFilter details
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:26 +00:00 |
|
Jason Volk
|
da984d49cf
|
remove unnecessary tracing of pdu conversions
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:26 +00:00 |
|
Jason Volk
|
b7a41f283f
|
optimize sync v3 asynchronicity
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:26 +00:00 |
|
Jason Volk
|
b77a1eb079
|
move cork to remove_to_device_events fn
add cork around write-heavy database routine called in loop; cleanup
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:23 +00:00 |
|
Jason Volk
|
23cf2b2236
|
add is_err() to TryFuture extension
add fold_default to Future tools extension
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:23 +00:00 |
|
Jason Volk
|
de3b137df8
|
eliminate future wrapping stream for all_pdus()
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:23 +00:00 |
|
Jason Volk
|
8e8c6bfe07
|
abstract supported room versions apis
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:23 +00:00 |
|
Jason Volk
|
f0a1aaf7bc
|
extend x-platform support for binding URL previews to interfaces via address
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-08 07:12:23 +00:00 |
|
Jason Volk
|
68afdb22c7
|
force Cargo.lock version to 3
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 21:55:50 +00:00 |
|
Jason Volk
|
1d02851028
|
implement several broadband loops
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 21:50:20 +00:00 |
|
Jason Volk
|
59d5e3ebf1
|
additional stream extensions for any/all
additional stream extension TryBroadbandExt
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 21:49:19 +00:00 |
|
Jason Volk
|
c2d97aaa5e
|
increase default db pool worker count for large systems
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 21:49:19 +00:00 |
|
Jason Volk
|
513236b3ce
|
bump ruma for async state-res optimizations
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
784ccd6bad
|
return stream from multi_get_eventid_from_short
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
48703173bc
|
split get_batch from get.rs; add aqry_batch
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
c01b049910
|
move cidr_range_denylist from globals to client service
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
9d9f403ad5
|
prevent adding presence timer for server's own user
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
3109c0daba
|
perform async shutdown for database pool after services stop
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
ef9b1c6303
|
simplify sender shutdown; prevent launching any retries
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
b7df0a14c6
|
parallelize events_before and events_after in api/client/context
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-04 00:51:57 +00:00 |
|
Jason Volk
|
b5006a4c41
|
offload initial iterator seeks to threadpool
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 13:25:33 +00:00 |
|
Jason Volk
|
320b0680bd
|
pipeline various loops
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 13:25:33 +00:00 |
|
Jason Volk
|
ed8c21ac9a
|
modernize async srv lookup
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 13:25:33 +00:00 |
|
Jason Volk
|
9a9c071e82
|
use tokio for threadpool mgmt
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 07:39:02 +00:00 |
|
Jason Volk
|
89a158ab0b
|
add delay before starting updates check
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 07:39:02 +00:00 |
|
Jason Volk
|
7d6710c033
|
add broadband stream extensions
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 07:39:02 +00:00 |
|
Jason Volk
|
61d9ac66fa
|
add ref_at util macro
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 07:39:02 +00:00 |
|
Jason Volk
|
3b30bd3580
|
add try_filter_map to TryReadyExt
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-03 07:39:02 +00:00 |
|
Jason Volk
|
3fbd74310f
|
impl transposed form of MapExpect
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-01 10:51:04 +00:00 |
|
Jason Volk
|
9263439af8
|
fix is_matching macro argument designator
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-12-01 10:51:04 +00:00 |
|
Jason Volk
|
4a3cc9fffa
|
de-arc state_full_ids
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-30 08:38:12 +00:00 |
|
Jason Volk
|
b5266ad9f5
|
parallelize sender edu selection
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-29 08:47:03 +00:00 |
|
Jason Volk
|
6175e72f1c
|
simplify get_pdu() interface; eliminate unconditional Arc
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-29 08:47:02 +00:00 |
|
Jason Volk
|
58be22e695
|
fix new lints; clippy::unnecessary-map-or
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-29 06:58:45 +00:00 |
|
Jason Volk
|
2a9bb1ce11
|
add configurables for frontend pool options
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-28 07:20:43 +00:00 |
|
Jason Volk
|
3ad6aa59f9
|
use smallvec for db query buffering
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-28 06:03:33 +00:00 |
|
Jason Volk
|
c7ae951676
|
add frontend threadpool to database
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 10:53:44 +00:00 |
|
Jason Volk
|
94d7b21cf0
|
use stricter timeout for fetching state
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 06:30:20 +00:00 |
|
Jason Volk
|
2aeee4f509
|
parallel query for outlier/non-outlier pdu data
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 06:30:20 +00:00 |
|
Jason Volk
|
dd8c646b63
|
optimize state compressor I/O w/ batch operation
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 06:30:20 +00:00 |
|
Jason Volk
|
527494a34b
|
fix oversized tracing span arguments; lints
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 06:30:20 +00:00 |
|
Jason Volk
|
e83fa12451
|
tweak dev profile
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 02:57:13 +00:00 |
|
Jason Volk
|
4f97ff98d6
|
enter the tokio runtime for the scope of main init
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-27 02:57:13 +00:00 |
|
Jason Volk
|
f69c596f56
|
generalize return value wrapping to not require Arc
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-26 03:45:21 +00:00 |
|
Jason Volk
|
238523f177
|
cleanup: reuse api rather than querying db
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-26 03:45:21 +00:00 |
|
Jason Volk
|
62d560e2fb
|
improve tracing instruments on database::map
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 07:00:55 +00:00 |
|
Jason Volk
|
6c66391988
|
fix unnecessary serialization of sender query keys
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 06:50:15 +00:00 |
|
Jason Volk
|
2592f83b69
|
add migration fix for duplicate readreceipt entries
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 02:54:29 +00:00 |
|
Jason Volk
|
c903a71807
|
refactor and optimize receipt service data
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 02:54:29 +00:00 |
|
Jason Volk
|
343ec59a8b
|
use arrayvec for integer deserialization buffer
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 02:54:29 +00:00 |
|
Jason Volk
|
6f1d50dda3
|
panic on otherwise ignored errors in debug mode
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-25 02:54:29 +00:00 |
|
Jason Volk
|
1c751168c6
|
check-in missed example config changes
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 23:50:05 +00:00 |
|
Jason Volk
|
a582d0559a
|
bump url and cargo lock
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 22:16:16 +00:00 |
|
Jason Volk
|
4e74a1811b
|
ci: set cancel-in-progress to true
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 22:16:16 +00:00 |
|
Jason Volk
|
97ad9afc86
|
default to main event for batch tokens
fix prev_batch token for legacy sync timeline
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 21:47:25 +00:00 |
|
Jason Volk
|
c519a40cb8
|
use multiget for shortid conversions
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 21:30:32 +00:00 |
|
Jason Volk
|
3789d60b6a
|
refactor to iterator inputs for auth_chain/short batch functions
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 21:30:32 +00:00 |
|
Jason Volk
|
5da42fb859
|
refactor account_data.changes_since to stream
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 21:30:31 +00:00 |
|
Jason Volk
|
fd4c447a2d
|
move attribute argument extractor to utils
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 07:11:26 +00:00 |
|
Jason Volk
|
f30b08f015
|
fix optional config section related
split api/client well_known
simplify well_known config access
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 07:11:26 +00:00 |
|
Jason Volk
|
5f1cab6850
|
passthru worker thread count from env
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-24 05:18:36 +00:00 |
|
Jason Volk
|
b94eeb9580
|
fix deletions on readreceipt update
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-22 09:38:34 +00:00 |
|
Jason Volk
|
3968d03868
|
move and improve common-rooms related
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-22 09:38:34 +00:00 |
|
Jason Volk
|
aea82183b2
|
add set intersection util for two sorted streams
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-22 09:38:34 +00:00 |
|
Jason Volk
|
bae0667066
|
limit sync response events to within the since/next_batch window
fixes #606
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-22 09:02:01 +00:00 |
|
Jason Volk
|
2f2cebe84d
|
implement local room preview
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-19 09:12:50 +00:00 |
|
Jason Volk
|
e257512aa7
|
relax state visibility for invited modes
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-19 08:37:25 +00:00 |
|
Jason Volk
|
411c60009d
|
enrich state iteration interface
Signed-off-by: Jason Volk <jason@zemos.net>
|
2024-11-19 08:37:25 +00:00 |
|