Jason Volk
e06b033218
ircd: Ⓜ️ :fetch: Pass the respondent's origin string with result.
2020-11-21 17:19:21 -08:00
Jason Volk
2a46ce767a
ircd: Ⓜ️ :acquire: Toggle fetch::op based on limit.
2020-11-21 17:19:21 -08:00
Jason Volk
214af71f09
ircd: Ⓜ️ :fetch: Fix overzealous condition preventing authoritative redaction.
2020-11-21 00:26:47 -08:00
Jason Volk
1b69454f85
ircd: Ⓜ️ :vm::fetch: Additional information for auth fetch hint.
2020-11-20 22:14:19 -08:00
Jason Volk
28c4b38641
ircd: Ⓜ️ :init::backfill: Add conf item for acquire attempt_max.
2020-11-20 20:38:07 -08:00
Jason Volk
5872604280
ircd: Ⓜ️ :acquire: Pass an attempt cap from opts to m::fetch.
2020-11-20 20:38:07 -08:00
Jason Volk
e1d52b28ce
ircd: Ⓜ️ :acquire: Add state dispatch component; minor cleanup.
2020-11-20 20:38:07 -08:00
Jason Volk
a5da068d0d
ircd: Ⓜ️ :room::state: Add fetch interface similar to room::head; w/ console cmd.
2020-11-20 18:28:32 -08:00
Jason Volk
e9fb24bdd9
ircd: Ⓜ️ :acquire: Add vm::opts to interface options; add per-operation eval opts.
2020-11-20 16:50:17 -08:00
Jason Volk
b897071ce3
ircd: Ⓜ️ :vm: Add options over existing state fetch decisions.
2020-11-20 13:55:19 -08:00
Jason Volk
1c0a9f3020
ircd: Ⓜ️ :acquire: Use class linkage; tweak option interface; add instance_list.
2020-11-19 19:06:04 -08:00
Jason Volk
7d091f8d55
ircd: Ⓜ️ :init::backfill: Improve worker termination and release of context.
2020-11-19 19:06:04 -08:00
Jason Volk
a80c6f9c1c
ircd: Ⓜ️ :acquire: Prevent duplicate fetch during submit.
2020-11-18 21:02:49 -08:00
Jason Volk
99b9ab4167
ircd: Ⓜ️ :acquire: Granular targeting options for procurement.
2020-11-18 17:19:07 -08:00
Jason Volk
2aa1d6520a
ircd: Ⓜ️ :user::registar: Allow full mxid argument w/ localname extraction.
2020-11-16 07:22:12 -08:00
Jason Volk
f558c05483
ircd: Ⓜ️ :acquire: Improve work cycle; additional debuglog; tweak options.
2020-11-15 05:48:25 -08:00
Jason Volk
32732a847b
ircd: Ⓜ️ Use canonical path constructions for all generated amalgams.
2020-11-15 02:27:33 -08:00
Jason Volk
bb7cda6fec
ircd: Ⓜ️ :room::events: Increase the viewport size.
2020-11-13 22:49:57 -08:00
Jason Volk
e3eb555cc4
ircd: Ⓜ️ :acquire: Use backfill method; dilate to next sounding.
2020-11-13 21:07:14 -08:00
Jason Volk
04c398cc0c
ircd: Ⓜ️ :room::events::sounding: Improve depth-seek semantics of base iterations.
2020-11-13 00:52:31 -08:00
Jason Volk
4521054078
ircd: Ⓜ️ :room::events: Remove event_idx value from result twain/hazard tool results.
2020-11-13 00:52:31 -08:00
Jason Volk
4b60068809
ircd: Ⓜ️ :room::aliases: Improve aliases cache::get related.
2020-11-11 22:49:39 -08:00
Jason Volk
85bd984da7
ircd: Ⓜ️ :events::missing: Reverse primary iteration; improve interface related.
2020-11-11 22:49:39 -08:00
Jason Volk
4212f46372
ircd: Ⓜ️ :acquire: Refactor acquire to inline-worker model; add console cmd.
2020-11-11 22:49:39 -08:00
Jason Volk
aca6aae5fd
modules/m_room_tombstone: Invalidate alias cache entries for effect.
2020-11-11 22:49:39 -08:00
Jason Volk
86555fbee6
modules/federation: Deduplicate and integrate /state/ and /state_ids/ in same unit.
2020-11-11 22:49:39 -08:00
Jason Volk
6f8beb26c8
ircd: Ⓜ️ :dbs: Additional cleanup w/ integrated type checking.
2020-11-11 22:49:39 -08:00
Jason Volk
9b4dd43cf2
ircd: Ⓜ️ :dbs: Cleanup event_refs indexer/prefetcher API usage/syntax.
2020-11-11 22:49:39 -08:00
Jason Volk
a4da3a2b83
ircd: Ⓜ️ :dbs: Add runlevel QUIT handler for bgcancel(events).
2020-11-11 13:11:57 -08:00
Jason Volk
e44fcf62bf
ircd: Ⓜ️ :fetch: Fix missing condition for initial random target selection.
2020-11-08 06:39:24 -08:00
Jason Volk
bcf8f0531f
ircd: Ⓜ️ :request: Reclaim small tls buffer.
2020-11-08 02:25:31 -08:00
Jason Volk
b59e5cd166
ircd: Ⓜ️ :fetch: Simplify adherence to attempt limit option.
2020-11-08 02:25:31 -08:00
Jason Volk
0f84f959a7
ircd: Ⓜ️ :fetch: Fix erroneous direct assignment to request.origin.
2020-11-06 22:06:16 -08:00
Jason Volk
ef6f98eeec
ircd: Ⓜ️ :fetch: Fix erroneous return before starting ( 30d4a89db9
).
2020-11-06 22:06:16 -08:00
Jason Volk
e2f495c4a8
ircd: Ⓜ️ :room::head::fetch: Add opts for result limitations.
2020-11-05 22:10:54 -08:00
Jason Volk
6fe770b4bf
ircd: Ⓜ️ :room::head: Add fetch interface.
2020-11-05 22:10:54 -08:00
Jason Volk
6b1305df8a
modules/federation: Replace backfill_ids endpoint with pdu_ids query parameter.
2020-11-05 22:10:53 -08:00
Jason Volk
f3886d60d8
ircd: Replace callsites w/ template deduced mutable_cast.
2020-11-05 22:10:53 -08:00
Jason Volk
a6d47ccfcd
ircd: Ⓜ️ Simplify various future timed wait()/get() related.
2020-11-05 22:10:53 -08:00
Jason Volk
8a078b78fd
ircd: Ⓜ️ :room: Optimize internal(room) query pattern.
2020-11-05 22:10:53 -08:00
Jason Volk
c56b4a4ee9
ircd: Ⓜ️ :dbs: Add conf item toggling indexer prefetching.
2020-11-05 22:10:53 -08:00
Jason Volk
c17c96d965
ircd: Ⓜ️ :homeserver::bootstrap: Improve error reporting w/ file byte offset.
2020-11-05 22:10:53 -08:00
Jason Volk
038bb33576
ircd: Ⓜ️ :homeserver::bootstrap: Fix redundant message prepend during error propagation.
2020-11-05 22:10:53 -08:00
Jason Volk
d3b33ec811
ircd: Ⓜ️ :dbs: Add prefetch handlers; mechanism and related options.
2020-10-31 12:05:51 -07:00
Jason Volk
ae2d112612
ircd: Ⓜ️ :prefetch: Prefetch index; prevent blocking on translation.
2020-10-31 12:05:51 -07:00
Jason Volk
30d4a89db9
ircd: Ⓜ️ :fetch: Additional legacy event_id hostpart fallback.
2020-10-29 07:49:04 -07:00
Jason Volk
1244002de3
ircd: Ⓜ️ :fetch: Test viability of supplied remote hint before selecting.
2020-10-29 04:49:51 -07:00
Jason Volk
cdb52ba99a
ircd: Ⓜ️ :fetch: Cleanup/Improve remote selection related.
2020-10-29 04:49:51 -07:00
Jason Volk
a07498f0fe
ircd: Ⓜ️ :fetch: Fix clang loop reference variable warning.
2020-10-29 04:49:51 -07:00
Jason Volk
a92bb97e80
ircd: Ⓜ️ :fed::well_known: Assertion for throw option expectation.
2020-10-29 04:49:51 -07:00
Jason Volk
30796e5729
ircd::buffer: Fix template name conflicts for clang-11; apply inline linkages.
...
ircd::json::tuple: Fix template name related for clang-11.
ircd::ctx: Fix template related for clang-11; inline linkages.
ircd:Ⓜ️ 🪝 Fix template related for clang-11.
2020-10-29 04:06:59 -07:00
Jason Volk
f6a5e8daf3
ircd: Ⓜ️ :app: Implement stdin to app from room.
2020-10-28 05:39:09 -07:00
Jason Volk
55e7b83ca7
ircd: Ⓜ️ :app: Improve stdout handler; member state off of worker stack.
2020-10-28 04:35:45 -07:00
Jason Volk
f026e81a07
ircd: Instrument against string_view(string&&) impossible construction..
2020-10-28 03:31:55 -07:00
Jason Volk
813b686e97
ircd: Ⓜ️ :app: Add autorun mechanism; conf items; program options.
2020-10-27 04:11:44 -07:00
Jason Volk
5ed2022517
ircd: Ⓜ️ :app: Additional conf item to enable w/ persist.
2020-10-27 04:11:44 -07:00
Jason Volk
5c1980da70
ircd: Ⓜ️ :room: Add preliminary interface specific to event content.
2020-10-27 04:11:44 -07:00
Jason Volk
cc8c9942a4
ircd: Ⓜ️ :push::request: Add conf item to toggle functionality.
2020-10-25 00:30:35 -07:00
Jason Volk
891cba3fb9
modules/m_pusher: Implement Push Gateway 3.1 POST Server Behavior. ( closes #63 )
2020-10-25 00:30:35 -07:00
Jason Volk
3cbf610cd0
ircd: Ⓜ️ :user::pushers: Additional derivative utils for interface.
2020-10-25 00:09:59 -07:00
Jason Volk
5265b955f6
modules/m_pusher: Add preliminary pusher hook; worker loop.
2020-10-24 07:31:31 -07:00
Jason Volk
8d1e9dee65
ircd: Ⓜ️ :push: Disable the default underride rule for m.room.message.
2020-10-24 06:27:36 -07:00
Jason Volk
27fe4a9d81
ircd: Ⓜ️ :app: Add restriction binpath; improve stdio to room; improve console cmd.
2020-10-24 06:26:44 -07:00
Jason Volk
1874400bdd
ircd: Ⓜ️ :resource: Fix regression in Host string compare con canon port.
2020-10-24 01:59:11 -07:00
Jason Volk
0e32ff76cb
ircd: Ⓜ️ :fetch: Add last resort fallback to mxid host.
2020-10-21 00:34:05 -07:00
Jason Volk
5d7f56a5ce
ircd: Ⓜ️ :app: Application management infrastructure w/ cmd suite.
2020-10-20 23:20:41 -07:00
Jason Volk
33e54f1ccb
ircd: Ⓜ️ :acquire: Minor cleanup; fix comment.
2020-10-20 23:20:41 -07:00
Jason Volk
8385a63886
ircd: Ⓜ️ 🆔 Relax user_id character grammar.
2020-10-20 22:34:45 -07:00
Jason Volk
263596b584
ircd: Ⓜ️ :fed::well_known: Remove unused debuglog buffer.
2020-10-20 22:19:34 -07:00
Jason Volk
b407769e21
ircd: Ⓜ️ :fed::well_known: Add condition for result extrication w/ OK code.
...
ircd:Ⓜ️ :fed::well_known: Add internal buffer w/ copy for m_server.
2020-10-20 20:55:30 -07:00
Jason Volk
676e657368
ircd: Ⓜ️ :fed::well_known: Fix expiration condition.
2020-10-16 14:32:06 -07:00
Jason Volk
f1557bee78
modules/widget: Stub GET ui/v1 w/ some params.
2020-10-16 03:48:57 -07:00
Jason Volk
ccdd712188
modules/widget: Stub GET /widget/account.
2020-10-16 03:48:57 -07:00
Jason Volk
7b15568737
modules/widget: Start widget support; stub registration endpoint.
2020-10-16 03:48:57 -07:00
Jason Volk
a4f105d390
ircd: Ⓜ️ :events: Use better buffer size constant.
2020-10-16 02:40:39 -07:00
Jason Volk
a9a54f11de
ircd: Ⓜ️ :feds: Add prelink loop before request loop w/ options toggle.
2020-10-16 02:40:39 -07:00
Jason Volk
d04008a45f
ircd: Ⓜ️ :fed: Add non-blocking prelink to interface.
2020-10-16 02:40:39 -07:00
Jason Volk
785d9e3af4
ircd: Ⓜ️ :keys: Add key id to error string if possible.
2020-10-16 02:40:39 -07:00
Jason Volk
f0803714e5
ircd: Ⓜ️ :keys: Improve pretty(m::keys) output order.
2020-10-16 02:40:39 -07:00
Jason Volk
c11e8e85ed
ircd: Ⓜ️ :fed::well_known: Refactor to single-worker pattern.
2020-10-16 01:40:40 -07:00
Jason Volk
142179e4a5
ircd: Ⓜ️ :fed::well_known: Convert to future interface w/ dummy impl.
2020-10-15 04:55:38 -07:00
Jason Volk
7bac03372d
ircd: Ⓜ️ :fed: Improve observer interface; employ opts; document/comments.
2020-10-14 22:04:04 -07:00
Jason Volk
3f6d90c7a8
ircd: Ⓜ️ :fed: Move head fetch convenience to room::head interface.
2020-10-14 22:04:04 -07:00
Jason Volk
888c62c156
ircd: Ⓜ️ :fed::well_known: Simplify interface; add opts struct.
2020-10-14 22:04:04 -07:00
Jason Volk
7f94cdeeea
ircd: Ⓜ️ :events::refs: Reduce default readahead.
2020-10-14 02:22:45 -07:00
Jason Volk
62fdaaa389
ircd: Ⓜ️ :events::refs: Add unbounded column scan w/ console cmd.
2020-10-12 18:07:39 -07:00
Jason Volk
325145ab29
ircd: Ⓜ️ :events::source: Disable readahead for descending access pattern.
2020-10-11 17:36:03 -07:00
Jason Volk
d4f6e3e8ea
ircd: Ⓜ️ :event::refs: Simplify closure typename.
2020-10-11 11:42:48 -07:00
Jason Volk
26f9acb81f
ircd: Ⓜ️ :fed::well_known: Move loose request stack objects into struct.
2020-10-10 19:07:04 -07:00
Jason Volk
21d681d59e
ircd: Ⓜ️ :vm: Assume hash match; bypass query for internal rooms.
2020-10-09 03:50:24 -07:00
Jason Volk
e6a7904040
ircd: Ⓜ️ :events: Refactor for_each interface; split into raw suite.
2020-10-07 15:12:12 -07:00
Jason Volk
767322dc37
ircd::rand: Simplify interface; comments/cleanup.
2020-10-06 16:25:03 -07:00
Jason Volk
7745bdcc24
ircd: Ⓜ️ :user::profile: Fix brace initializer argument ambiguation.
2020-10-06 00:43:13 -07:00
Jason Volk
61d3867e82
ircd: Ⓜ️ :user::profile: Minor simplify.
2020-10-06 00:43:13 -07:00
Jason Volk
ab38cd7b65
ircd: Ⓜ️ :room::bootstrap: Increase stack size.
2020-10-06 00:02:29 -07:00
Jason Volk
0f94fe66cb
ircd: Ⓜ️ :fed::well_known: Move valid cache hit branch before fetch; minor cleanup.
2020-10-06 00:02:29 -07:00
Jason Volk
444fb3ad23
ircd: Ⓜ️ :fed::well_known: Split fetch into async request/resolve.
2020-10-05 19:39:57 -07:00
Jason Volk
c57844df2d
ircd: Ⓜ️ :vm::fetch: Propagate remote hint to event fetch opts for state fetch.
2020-10-03 04:49:53 -07:00
Jason Volk
0e13620604
ircd: Ⓜ️ :vm: Propagate authority for hash mismatch for state eval.
2020-10-03 04:27:52 -07:00
Jason Volk
b96a98abe9
ircd: Ⓜ️ :vm: Propagate authority for hash mismatch for auth_chain eval.
2020-10-03 04:27:52 -07:00
Jason Volk
e362a509d8
ircd: Ⓜ️ :fetch: Add result check opts to request interface opts; feature authoritative_redactions.
2020-10-03 04:27:52 -07:00
Jason Volk
6179c511d4
ircd: Ⓜ️ :request: Fix complex thread-local initialization. ( #109 )
2020-10-03 03:09:20 -07:00
Jason Volk
f8530e62d8
ircd: Ⓜ️ :fed: Remove trailing solidus on request for dendrite.
2020-10-03 02:31:20 -07:00
Jason Volk
f03db0115f
ircd: Ⓜ️ :fed: Fix content/uri buffer reuse.
2020-10-03 02:31:20 -07:00
Jason Volk
bfaf21807b
ircd: Ⓜ️ :request: Minor simplify.
2020-10-03 02:31:20 -07:00
Jason Volk
bdf3e0a126
ircd: Ⓜ️ :fed: Prevent appending empty id parameters; minor cleanup.
2020-10-03 02:31:20 -07:00
Jason Volk
731dd7c1c0
ircd: Ⓜ️ :fed: Fix view pointer to temp rvalue.
2020-10-03 02:31:20 -07:00
Jason Volk
eb2facbfd2
ircd: Ⓜ️ :dbs: Add compression conf items for all columns.
2020-10-01 19:15:15 -07:00
Jason Volk
c2e5ede3ec
ircd: Ⓜ️ :homeserver: Workaround for json::member template nested brace initializer issue.
2020-10-01 18:04:43 -07:00
Jason Volk
684839235e
ircd: Ⓜ️ :fed: Remove trailing solidus on send request.
2020-10-01 15:51:59 -07:00
Jason Volk
25a518e642
ircd: Ⓜ️ :vm: Set need_top_head=true on internal rooms for now.
2020-10-01 03:49:41 -07:00
Jason Volk
fecd009ffb
ircd: Ⓜ️ :db: Fix accounting for index compression.
...
Revert 1051e740cc
.
2020-09-30 19:40:29 -07:00
Jason Volk
12f28c8f9f
ircd: Ⓜ️ :dbs: Relax assertion.
2020-09-30 16:35:34 -07:00
Jason Volk
7034fadd64
ircd: Ⓜ️ :vm: Clear existing eval txn on entry side instead of unwind.
2020-09-29 10:23:38 -07:00
Jason Volk
fb823e3d40
ircd: Ⓜ️ :dbs: Revert 563f833ab3; relax assertion.
2020-09-29 10:23:38 -07:00
Jason Volk
1051e740cc
ircd: Ⓜ️ :dbs: Remove compression on _event_idx.
2020-09-29 08:01:14 -07:00
Jason Volk
1bb6c2dcd0
ircd: Ⓜ️ :events: Open dump file w/ exclusive option; prevent overwrite.
2020-09-28 22:33:46 -07:00
Jason Volk
1b390bdd17
ircd: Ⓜ️ :event: Eliminate several small thread-local buffers; simplify.
2020-09-28 22:33:46 -07:00
Jason Volk
bd641e76ad
ircd: Ⓜ️ :event: Compare decoded hash to allow both rfc4648 and rfc1421 compat.
2020-09-28 05:56:03 -07:00
Jason Volk
4b590ecc41
ircd: Ⓜ️ :events: Add rates to events dump infolog.
2020-09-27 18:12:51 -07:00
Jason Volk
bae534d56b
ircd: Ⓜ️ :homeserver: Bail from ctor if the database remains empty after bootstrap.
2020-09-27 15:44:53 -07:00
Jason Volk
2b86a4cbb8
ircd: Ⓜ️ :homeserver: Add "valid-json" diagnostic mode to vector bootstrap.
2020-09-27 15:44:53 -07:00
Jason Volk
a73b538349
ircd: Ⓜ️ :room: Add contains() tool.
2020-09-27 14:57:07 -07:00
Jason Volk
563f833ab3
ircd: Ⓜ️ :dbs: Fix causality violation; prevent queries to the future.
2020-09-24 07:04:05 -07:00
Jason Volk
245921c2b6
ircd::db: Yield context on stall condition callback to relieve some pressure.
2020-09-24 02:58:31 -07:00
Jason Volk
860f76bbae
ircd: Ⓜ️ :dbs: Shorten description.
2020-09-20 14:24:47 -07:00
Jason Volk
7b238fe15d
ircd: Ⓜ️ :homeserver: Make use of batch size constant for event vector size.
...
ircd:Ⓜ️ :homeserver: Comments; minor cleanup.
2020-09-20 14:24:47 -07:00
Jason Volk
e2ac5c6fc7
ircd::db: Use conf item for default compression string in descriptor.
2020-09-20 12:50:17 -07:00
Jason Volk
1901da6fde
ircd: Ⓜ️ :events: Use better low watermark to not invalidate checkpoint.
2020-09-18 22:18:27 -07:00
Jason Volk
bb386c5ab4
ircd: Ⓜ️ :event: Fix integer value recast (assertion from 8ab735d002
).
2020-09-18 19:09:19 -07:00
Jason Volk
08811519cf
ircd: Ⓜ️ :vm: Move internal room determination before room version procurement.
2020-09-17 10:49:41 -07:00
Jason Volk
677f2f6504
ircd: Ⓜ️ :room::auth::chain: Parallelize query.
2020-09-17 10:49:41 -07:00
Jason Volk
347cdba1c6
ircd: Ⓜ️ :room::auth: Parallelize index query.
2020-09-17 10:49:41 -07:00
Jason Volk
076384d697
ircd: Ⓜ️ :dbs: Add prefetch loop for horizon resolver.
2020-09-17 10:49:41 -07:00
Jason Volk
0335bfa948
ircd: Ⓜ️ :dbs: Parallelize auth reference indexer queries.
2020-09-17 10:49:41 -07:00
Jason Volk
c83ec8324b
ircd: Ⓜ️ :dbs: Parallelize the prev_events reference index queries.
2020-09-17 10:49:41 -07:00
Jason Volk
9165975953
ircd: Ⓜ️ :dbs: Supersede index query tool with parallel impl.
2020-09-17 10:49:41 -07:00
Jason Volk
099b6d8301
ircd: Ⓜ️ Add parallel event::idx query to interface.
2020-09-17 10:49:41 -07:00
Jason Volk
8ab735d002
ircd: Ⓜ️ :index: Optimize call chain; branch reduction; indirect call elimination.
2020-09-17 10:49:41 -07:00
Jason Volk
0675a621f1
ircd: Ⓜ️ :homeserver: Add specific option to toggle initial backfill jobs after startup.
2020-09-16 23:00:58 -07:00
Jason Volk
cdadc3dfe8
ircd: Ⓜ️ :homeserver: Skip head updates during bootstrap.
2020-09-16 04:41:32 -07:00
Jason Volk
d4677e2a29
ircd: Ⓜ️ :roomstrap: Remove redundant parallel key fetching subroutine.
2020-09-16 04:31:37 -07:00
Jason Volk
03b6261dd8
ircd: Ⓜ️ :vm::eval: Cleanup parallel key pre-fetcher.
2020-09-16 04:31:37 -07:00
Jason Volk
335a045d41
ircd: Ⓜ️ :homeserver: Add manual memtable flush after bootstrap.
2020-09-16 01:03:42 -07:00
Jason Volk
8abab587ac
ircd: Ⓜ️ Move modules/vm_fetch to central lib.
2020-09-15 22:16:11 -07:00
Jason Volk
4ecb2d0d5f
ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes.
2020-09-15 22:16:11 -07:00
Jason Volk
772022a74e
ircd::ed25519: Add create option to ctor; remove reference to global.
2020-09-15 18:46:28 -07:00
Jason Volk
a90191792e
ircd: Ⓜ️ :homeserver: Adjust assertions to continue incomplete bootstrap.
2020-09-15 04:33:28 -07:00
Jason Volk
b3085eecd8
ircd: Ⓜ️ :vm: Add inner batch loop around parallel existence query.
2020-09-14 14:16:31 -07:00
Jason Volk
1407d8451a
ircd: Ⓜ️ :homeserver: Use batched eval in bootstrap loop.
2020-09-14 14:16:31 -07:00