Jason Volk
b0a53ffd33
ircd: Ⓜ️ :vm: Add option to skip any sorting/reordering for array eval.
2020-08-31 17:18:48 -07:00
Jason Volk
91d57ea989
ircd: Ⓜ️ :vm: Add content requirement and redaction hint opts for non-conforming mask.
2020-07-06 17:31:04 -07:00
Jason Volk
b91c768c57
ircd: Ⓜ️ :vm::eval: Remove sequence_shared state.
2020-05-12 22:27:53 -07:00
Jason Volk
987a3eeb6b
ircd: Ⓜ️ :vm::eval: Add pointer to parent eval; related utils.
...
ircd:Ⓜ️ :vm::eval: Add pointer to child evals; maintain stack.
2020-05-12 22:27:53 -07:00
Jason Volk
13003986bc
ircd: Ⓜ️ :vm::eval: Minor static interface reorg.
2020-05-12 22:27:53 -07:00
Jason Volk
3bd3173db0
ircd: Ⓜ️ :vm: Replace eval hook::site member with entered hook ptr; add id to console cmd.
2020-05-12 22:27:53 -07:00
Jason Volk
46cea198a2
ircd: Ⓜ️ :vm: Remove explicit assignments in phase enumeration.
2020-05-12 19:21:58 -07:00
Jason Volk
b764e75692
ircd: Ⓜ️ :vm: Additional fetch phases; split fetch hook sites.
2020-05-11 21:14:25 -07:00
Jason Volk
0fd5570c14
ircd: Ⓜ️ :vm: Add enumeration for evaluation phases.
2020-05-11 21:14:25 -07:00
Jason Volk
a1708a687e
ircd: Ⓜ️ :vm: Rename eval.phase to eval.phase_hook.
2020-05-11 19:25:07 -07:00
Jason Volk
de8f32e86a
ircd: Ⓜ️ :vm::fetch: Add vm::opts and conf items for prev fetch wait backoff.
2020-04-17 18:00:58 -07:00
Jason Volk
9a0a3dfbf1
ircd: Ⓜ️ :vm: Eliminate fault::INTERRUPT and handle ctx::interrupt directly in all cases.
2020-04-07 10:52:15 -07:00
Jason Volk
27556f2d9c
ircd: Ⓜ️ :vm::eval: Add member which caches the m::internal(room) result.
2020-03-21 20:49:54 -07:00
Jason Volk
0b8b3ee988
ircd: Ⓜ️ :vm: Add an opts.unique bypass option for condition.
2020-03-17 11:48:22 -07:00
Jason Volk
14b962a695
ircd: Ⓜ️ :vm: Track evaluation hook phase.
2020-03-02 20:55:08 -08:00
Jason Volk
d402eddb98
ircd::run: Place out-of-line default ctor/dtor definitions.
...
ircd::http::error: Place out-of-line dtor definition.
ircd:Ⓜ️ :error: Place out-of-line dtor definition.
ircd::exception: Place out-of-line dtor definition.
ircd:Ⓜ️ :vm: Place out-of-line ctor definitions for copts/opts.
2020-02-28 12:36:45 -08:00
Jason Volk
a4f48eaab8
ircd: Ⓜ️ :vm::eval: Conduct parallel fetch of new keys for vector eval.
2020-02-20 18:43:47 -08:00
Jason Volk
a13d9282ac
ircd: Ⓜ️ :vm::eval: Add vector_view construction and eval to interface/stack.
2020-02-20 14:49:33 -08:00
Jason Volk
f952cecfbb
ircd: Ⓜ️ :vm: Add txnid to opts; propagate from federation send.
2020-01-06 17:01:21 -08:00
Jason Volk
8764f523d4
ircd: Ⓜ️ :vm: Move core from modules to matrix; split units.
2019-10-03 12:14:29 -07:00
Jason Volk
0c45fb827d
ircd: Ⓜ️ :vm: Add a specific edu option to vmopts.
2019-09-13 15:26:44 -07:00
Jason Volk
fac2a1e070
ircd: Ⓜ️ :vm::eval: Add count(event_id) to static interface.
2019-09-11 12:51:54 -07:00
Jason Volk
ec4c6c46ac
ircd: Ⓜ️ :vm: Partial revert of a35328f38; remove mutex; use sequencing.
2019-09-10 14:45:54 -07:00
Jason Volk
a35328f384
ircd: Ⓜ️ :vm: Add inner lock around write commitment.
2019-09-08 19:58:58 -07:00
Jason Volk
f67eafd078
ircd: Ⓜ️ :vm::fetch: Remove/reorg stale fetch related options.
2019-09-05 18:10:44 -07:00
Jason Volk
7fa5948fd3
modules/vm: Check auth during eval.
2019-08-17 08:34:46 -07:00
Jason Volk
c760eb0a12
ircd: Ⓜ️ :vm: Use bitmask of properties to generate in vm::copts.
2019-08-17 00:44:14 -07:00
Jason Volk
bcec03ce1a
ircd: Ⓜ️ :vm::eval: Add find_pdu() to interface.
2019-07-20 18:42:15 -07:00
Jason Volk
ad834bfc5b
ircd: Ⓜ️ :vm: Reorganize eval/vm::inject for room version differences; add comment.
2019-07-17 14:53:13 -07:00
Jason Volk
c39aad4d3f
ircd: Ⓜ️ :vm: Factor room_version into eval.
2019-07-10 06:52:56 -07:00
Jason Volk
b570497e75
ircd: Ⓜ️ :vm: Improve aggregated eval loop.
2019-06-01 18:38:07 -07:00
Jason Volk
bab9d9d033
modules/vm: Create a general vm.access hook; move server_acl to module hookfn.
2019-05-26 21:00:54 -07:00
Jason Volk
f02a1a2be6
ircd: Ⓜ️ :vm: Relax fetch_prev_any enforcement by default.
2019-05-19 15:22:49 -07:00
Jason Volk
3293443cb8
ircd: Ⓜ️ :vm: Add dbs::write_opts to vm::opts.
2019-05-11 15:30:40 -07:00
Jason Volk
6fe7329189
ircd: Ⓜ️ :dbs: Rename room_head_refs to room_head_resolve.
2019-05-11 15:30:23 -07:00
Jason Volk
a5f26db7ea
modules/s_fetch: Split hook handler into auth and prev related subroutines.
2019-04-30 14:14:08 -07:00
Jason Volk
e3b1be2910
ircd: Ⓜ️ :vm: Refactor various fetch related options.
2019-04-22 12:27:43 -07:00
Jason Volk
56dd0ed8e7
ircd: Ⓜ️ :vm: Add opts to pass user_id/node_id of evaluator.
2019-04-22 12:25:50 -07:00
Jason Volk
b683f1d436
modules/vm: Assert options; prevent assignment of eval.
2019-04-22 12:23:37 -07:00
Jason Volk
21a62019f2
modules/vm: Simplify error wrapping on propagation.
2019-04-20 15:03:51 -07:00
Jason Volk
1209d47fa5
ircd: Ⓜ️ :vm: Add additional vmopts related to fetching.
2019-04-10 22:32:06 -07:00
Jason Volk
d08bd0b336
ircd: Ⓜ️ :vm: Remove unused fault codes.
2019-04-07 20:57:43 -07:00
Jason Volk
0043cb2af7
modules/s_fetch: Add branch for auth chain fetch/eval on missing room state for event.
2019-03-27 14:09:40 -07:00
Jason Volk
939812f6bd
modules/vm: Fix #ifdef RB_DEBUG coverage; minor adjust type.
2019-03-25 20:18:33 -07:00
Jason Volk
008dfcb43f
ircd: Ⓜ️ :vm: Add counters and synchronization for safe module reloading.
2019-03-21 16:46:04 -07:00
Jason Volk
82378db816
modules/vm: Share transactions between all evals on the same stack; adjust sequence strategy.
2019-03-21 16:46:04 -07:00
Jason Volk
a7f6549c27
ircd: Ⓜ️ :vm: Add tools for evals on a specific stack/ctx.
2019-03-21 14:11:42 -07:00
Jason Volk
507c256eb4
ircd: Ⓜ️ :vm: Add loghead convenience.
2019-03-21 12:49:02 -07:00
Jason Volk
5b951b55c5
modules/vm: Add sequencing points.
...
ircd:Ⓜ️ :vm: Reorganize sequence counters.
2019-03-19 16:31:05 -07:00
Jason Volk
47446dcd5c
ircd: Ⓜ️ :vm: Translate vm::fault codes to better specific http::code's for m::error's.
2019-03-09 14:00:00 -08:00