Jason Volk
97e709492c
Add is_direct() alternative query for m.room.member.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-08 03:33:12 +00:00
Jason Volk
dff30e5924
Additional state accessor iterations for pdus of a specific type.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-08 03:33:12 +00:00
Jason Volk
2b7cf7d5d5
Add optimized iteration of all room memberships for user.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
443248965d
Add more optimized iterations for user memberships room_id's.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
ee777bc287
Rename user rooms iterations which have state vectors as values.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
aef38b1178
Rename userroomid/roomuserid table handles to reflect counter value.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
75509d50ca
Add shorteventid to pdu_id query; reorg related id query interface.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
1d14426018
Fix missing Send on generic stream and result items.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-06 01:19:36 +00:00
Jason Volk
68c4f60bb3
Implement stateless sync; erase all the sync tokens.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 15:07:06 +00:00
Jason Volk
f1c2548807
Add PduCount value to userroomid/roomuserid_joined; move PduCount to argument for update_membership.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:29:48 +00:00
Jason Volk
eda45e445c
Implement better fmt::Debug for pdu::Builder.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:29:48 +00:00
Jason Volk
e6c85c97c6
Fix names and types misrepresenting PduCount as ShortEventId.
...
Add get_shorteventid_from_pdu_id() conversion.
Fix prev/next nearest-state interface (dev branch 642086ecfcfa).
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:29:48 +00:00
Jason Volk
a803b84b27
Add missing reverse query for shortroomid => room_id.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:29:48 +00:00
Jason Volk
1058fbe9a7
Use specific key,val buffer sizes for append_to_state (no change to correctness).
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:29:48 +00:00
Jason Volk
ba12773a5a
Optimize force_state query pattern.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:27:48 +00:00
Jason Volk
83afe81f60
Move shortstatehash queries from state_accessor to state service.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:27:48 +00:00
Jason Volk
f2740822e2
De-indent rooms state service definitions.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:27:48 +00:00
Jason Volk
9d9ace1452
Add timeline interface to get next or prev pdu nearest to a pduid.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-10-02 05:27:48 +00:00
Jason Volk
aa37e32471
Optimize Pdu prev_events and auth_events containers.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-23 18:16:24 +00:00
Jason Volk
8f4cc87051
Query rooms in server_sees_user() concurrently.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-23 08:49:09 +00:00
dasha_uwu
89a67af607
pull stuff out of globals
2025-09-23 05:16:29 +00:00
dasha_uwu
6bb101ac51
add local alias check
2025-09-23 05:16:29 +00:00
dasha_uwu
1c0b4e94ac
fix spec violation and slight alias resolution refactor
2025-09-23 05:16:29 +00:00
dasha_uwu
9c4d376bec
pass args by ref
2025-09-23 05:16:29 +00:00
Jason Volk
10fb1cd192
Purge room synctokens during deletion.
...
Purge last notification read counts.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-11 08:56:38 +00:00
Jason Volk
d73b4332bf
Fix deletion of local leave state to allow sync for clients.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-11 06:20:41 +00:00
dasha_uwu
adadafa88f
Fix alias resolution logic; element-web v1.11.111 compat
...
element-hq/element-web#30641
element-hq/element-web#30611
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-09 02:28:19 +00:00
Jason Volk
f6c88e3a16
Add query for alias existing; tweak tracing spans.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
3deebeab78
Fix sliding-sync room_avatar conditions.
...
Eliminate jsOption from non-sliding-sync avatar related codepaths.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
86781522b6
Allow state visibility for once-joined users when history_visibility=shared.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
3a78ba2b16
Support v1/v2 conditions for join/leave, creation and other operations. ( #12 )
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
6a583a359e
Support v1/v2 prev_events/auth_events outgoing federation format. ( #12 )
...
Support v1/v2 prev_events/auth_events when handling outlier pdu. (#12 )
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
eec6e45358
Improve error messages for missing auth event and invalid join validations.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-09-05 05:45:41 +00:00
Jason Volk
aa413ae601
Implement room purge after last local user leaves. ( resolves #83 )
...
Consume a state_lock for room delete call.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:45:32 +00:00
Jason Volk
7c19d1e1ff
Fix unnecessary backfill requests after reaching m.room.create.
...
Cleanup condition.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:45:32 +00:00
Jason Volk
616f20f273
Fix unused lifetims.
...
Fix unused pub(crate).
Allow implicit hasher.
Fix unused self.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 11:13:14 +00:00
Jason Volk
7bc47e58d0
Add state_cache iteration for local pending invitees to room.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-30 10:04:24 +00:00
Jason Volk
12bdfe3b66
Optimize backfill_if_required conditions.
...
Optimize backfill_pdu.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
Jason Volk
757d38e891
Optimize expected auth types checking.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
Jason Volk
4b66911886
Eliminate redundant duplicate auth and matching room check.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-29 06:49:04 +00:00
dasha_uwu
d05d3f710f
Room deletion ( fixes #43 )
2025-08-28 23:28:20 +05:00
dasha_uwu
4884c55be7
Split disable_room, ban_room functions
2025-08-28 23:28:13 +05:00
dasha_uwu
b5890b9664
Services refactor
...
Replace structs of Dep<Service> with OnceServices, so each service has a Services reference
Remove service name => Service map
Flatten Services.rooms
Make reqwest Clients lazy initialized (client service)
2025-08-28 23:15:59 +05:00
Jason Volk
3430d4ac86
Improved solution to current_shortstatehash > next_batch. ( 59b62b1)
...
`current_shortstatehash` is now calculated from timeline which is already
upper-bound by the `next_batch` snapshot. Previously `current_shortstatehash`
was truly current and had to be disallowed from exceeding `next_batch` by
ignoring the room during sync until a future pass when these values finally
met that condition.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-27 00:41:12 +00:00
Jason Volk
628597c318
State-reset and security mitigations.
...
Upgrade Ruma to present.
The following are intentionally benign for activation in a later commit:
- Hydra backports not default.
- Room version 12 not default.
- Room version 12 not listed as stable.
Do not enable them manually or you can brick your database.
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-11 18:45:28 +00:00
Jason Volk
d7e5c0ccf3
Optimize spaces pageload; pipeline outer loop.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-07 03:16:32 +00:00
Jason Volk
b00361d274
Add specific shorteventid to shortstatehash query function.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 18:55:37 +00:00
Jason Volk
a0dc37e024
Fetch prev_events concurrently.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 05:13:06 +00:00
Jason Volk
003257693b
Fetch outlier and auth chains concurrently.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-04 00:48:30 +00:00
Jason Volk
4b84e7c31a
Flatten and dedup append_incoming branch in upgrade_outlier.
...
Signed-off-by: Jason Volk <jason@zemos.net >
2025-08-02 18:00:20 +00:00