0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 08:42:34 +01:00
Commit graph

2576 commits

Author SHA1 Message Date
Jason Volk
a04a3e840e ircd:Ⓜ️:vm: Add pointers to access the evaluation data at issue. 2018-05-06 18:10:01 -07:00
Jason Volk
989441677f ircd:Ⓜ️:vm: Add additional identifications to eval instance. 2018-05-06 18:02:34 -07:00
Jason Volk
820284f2d0 ircd:Ⓜ️:vm: Give eval the instance_list. 2018-05-06 18:02:33 -07:00
Jason Volk
671053de74 ircd::util: Remove impossible semantics for instance_list. 2018-05-06 18:02:33 -07:00
Jason Volk
68c863e7f9 ircd:Ⓜ️:vm: Reorg commit stack; move room commit thing to m::vm. 2018-05-06 18:02:33 -07:00
Jason Volk
e90603b762 ircd:Ⓜ️🪝 Support arbitrary creation and deletion of hook::site instances. 2018-05-06 14:53:39 -07:00
Jason Volk
48055cb276 ircd::ctx: Add special termination interruption to yanagiba the stack. 2018-05-06 02:06:08 -07:00
Jason Volk
1059688d02 ircd::ctx: Add state for stack usage profiling; clarify some interfaces. 2018-05-05 23:14:11 -07:00
Jason Volk
f55304e0a1 ircd::ctx: Add slice total counter; move check_stack after timing sample. 2018-05-05 22:42:25 -07:00
Jason Volk
ea42490b4e ircd::ctx: Consolidate slice timing to tsc; add public interfacing. 2018-05-05 22:24:25 -07:00
Jason Volk
dd04a50743 ircd:Ⓜ️:dbs: Expose the internal indexer interface. 2018-05-05 18:54:02 -07:00
Jason Volk
2ed18d38c2 ircd: Further modernize vintage strl* suite. 2018-05-05 16:31:57 -07:00
Jason Volk
f08b1053b4 ircd:Ⓜ️:room: Add condition for present state optimization even w/ supplied event_id. 2018-05-05 03:39:33 -07:00
Jason Volk
ad2f823056 ircd:Ⓜ️:room: Add head::has() existential test. 2018-05-05 03:36:47 -07:00
Jason Volk
4cd0570d56 ircd::ctx: Resolve proper future::state() in when() templates. 2018-05-05 02:00:11 -07:00
Jason Volk
ab2490ce73 ircd:Ⓜ️:vm: Add vmopts for room_head related. 2018-05-04 20:57:28 -07:00
Jason Volk
35fee056f9 ircd:Ⓜ️:room: Add preliminary head interface. 2018-05-04 20:57:28 -07:00
Jason Volk
ae8fe6b49e ircd:Ⓜ️:room: Update various comments. 2018-05-04 20:57:28 -07:00
Jason Volk
36b43b8607 ircd:Ⓜ️:dbs: Add indexing sequence for _room_head. 2018-05-04 20:57:28 -07:00
Jason Volk
e12863d091 ircd:Ⓜ️:dbs: Add room_head column. 2018-05-04 20:43:05 -07:00
Jason Volk
bcece15c54 ircd::ctx: Add README blerb on context switching. 2018-05-04 20:43:05 -07:00
Jason Volk
ca45e84908 ircd:Ⓜ️ Add bad(event_id) query interface. 2018-05-04 20:43:05 -07:00
Jason Volk
f34ebec1cf ircd::db: Add convenience read(column) nothrow overloads. 2018-05-04 20:43:05 -07:00
Jason Volk
7ca2e8797d ircd:Ⓜ️:dbs: Add interface to manipulate the blacklist column. 2018-05-04 20:43:04 -07:00
Jason Volk
66a4d52a93 ircd:Ⓜ️:dbs: Add event_bad column for blacklisting. 2018-05-04 16:38:45 -07:00
Jason Volk
f77b3aae7e ircd:Ⓜ️ Reorg event util related; break up pretty(event) around ostream argument. 2018-05-04 14:30:51 -07:00
Jason Volk
9df433e283 ircd:Ⓜ️:dbs: Comment hints on the metadata column layouts. 2018-05-04 13:59:54 -07:00
Jason Volk
3a73abef8d ircd::server: Enforce object semantics on peer / link. 2018-05-02 11:29:13 -07:00
Jason Volk
fb53069c6f ircd::net::dns Include query in callback arguments to prevent any stale captures. 2018-05-01 18:56:22 -07:00
Jason Volk
39ad36e3ed ircd:Ⓜ️ Fix linkages of various constants. 2018-05-01 16:51:35 -07:00
Jason Volk
9af649f739 ircd::db: Consolidate write(column) overloads. 2018-04-30 07:18:06 -07:00
Jason Volk
2b7358aa60 ircd:Ⓜ️:dbs: Conditional indexer; pass db::op from opts for indexer. 2018-04-28 19:05:17 -07:00
Jason Volk
12146cd39a ircd::rfc1035: Provide remaining default construction values. 2018-04-28 18:33:57 -07:00
Jason Volk
3f2320c49e ircd::net::dns: Strip the cached-error SRV target of its prefix; minor fixes. 2018-04-28 17:47:59 -07:00
Jason Volk
30d8c0b961 ircd::net::dns: Allocate separate reply buffer in resolver. 2018-04-28 17:47:59 -07:00
Jason Volk
4e796c896a ircd::net::dns: Allow an exception to calling back with nxdomain as an exception. 2018-04-28 17:47:58 -07:00
Jason Volk
1d408173dc ircd::net: Return pointer to cached error record for put_error(). 2018-04-28 16:25:20 -07:00
Jason Volk
48abece29b ircd::net: Improve dns::resolver instance init/fini. 2018-04-28 15:31:07 -07:00
Jason Volk
0f161f98e8 ircd::ctx::list: Fix misleading reference. 2018-04-28 03:26:07 -07:00
Jason Volk
dc5ac7c2ac ircd::ctx: #ifdef away linkages for ctx assertions in NDEBUG builds. 2018-04-27 19:16:56 -07:00
Jason Volk
3fcb8a1236 ircd::ctx: Simplify promise notify continuation for now. 2018-04-27 19:09:26 -07:00
Jason Volk
09c282fd8e ircd::ctx: Add stack_usage_assertion; move stack_usage_here() into this_ctx::. 2018-04-27 19:09:26 -07:00
Jason Volk
70f962de4e ircd:Ⓜ️ Elaborate presence interface to fetch full event from user's room. 2018-04-27 15:26:17 -07:00
Jason Volk
38d15a7f0c ircd:Ⓜ️:filter: Use signed long limit value in tuples. 2018-04-26 21:45:43 -07:00
Jason Volk
75b67e11fc ircd:Ⓜ️ Add state_root() to room messages iterator. 2018-04-26 21:35:55 -07:00
Jason Volk
8083a5d71c ircd::db: Add WAL fflush; move table flushes to "sort()"; adjust interfaces. 2018-04-26 17:19:29 -07:00
Jason Volk
69f6d1fe54 ircd:Ⓜ️:vm: Remove rogue vm::events interface. 2018-04-26 15:48:02 -07:00
Jason Volk
523bf19f30 ircd:Ⓜ️🪝 Add a set to track all hooks for a site. 2018-04-26 15:17:28 -07:00
Jason Volk
6add3e9952 ircd::server: Limit recursion of chunk head parses. 2018-04-25 20:52:27 -07:00
Jason Volk
e2568457f4 ircd::server: Add dynamic chunk vectoring. 2018-04-25 20:52:26 -07:00
Jason Volk
7e32d3cbaa ircd::server: Checkpoint preliminary chunk vectoring; state, options. 2018-04-25 15:10:04 -07:00
Jason Volk
ba61369027 ircd:Ⓜ️:dbs: Use buffer size constants for query key generations. 2018-04-24 19:32:32 -07:00
Jason Volk
12592cd22c ircd:Ⓜ️🆔 Improve size constants and range enforcements. 2018-04-24 19:22:07 -07:00
Jason Volk
bf445492db ircd::fs: Use const_buffer rather than string_view in various returns. 2018-04-24 18:34:46 -07:00
Jason Volk
6b4e188682 ircd:Ⓜ️ Enable transparent comparator for m::modules map. 2018-04-24 17:13:02 -07:00
Jason Volk
c3e07cb9cb ircd: Fix allocator construction in tokens template. 2018-04-24 17:08:43 -07:00
Jason Volk
47dc4c2afa ircd::util: Split various from util.h 2018-04-24 17:01:11 -07:00
Jason Volk
db21df0c31 ircd: Move mapi.h into mods/. 2018-04-24 01:21:16 -07:00
Jason Volk
90348f4265 ircd:Ⓜ️ Add interface to get origin names of user's rooms. 2018-04-23 19:39:50 -07:00
Jason Volk
243b0b7918 ircd::resource: Fix resource false matching issue; cleanup. 2018-04-23 19:17:03 -07:00
Jason Volk
48c38f4282 ircd::log: Add logf to complement vlog. 2018-04-23 17:44:49 -07:00
Jason Volk
2e3e8bc0d5 ircd::log: Add masking by name; various improvements. 2018-04-23 17:20:00 -07:00
Jason Volk
ca138a4338 ircd::log: Give log::log the instance list w/ construction checks. 2018-04-23 17:20:00 -07:00
Jason Volk
c30531a77e ircd::log: Allow specifying named logger as first param to the extern facilities. 2018-04-23 17:20:00 -07:00
Jason Volk
d2eda8a4bf ircd::log: #ifdef over the full structure. 2018-04-23 17:20:00 -07:00
Jason Volk
27ff5e9be1 ircd::log: Objectify mark / vlog related. 2018-04-23 17:20:00 -07:00
Jason Volk
e598a27d7a ircd::log: Use string_view for named log instance due to dominant use-case. 2018-04-23 17:20:00 -07:00
Jason Volk
3b57971f54 ircd::net: Add port number argument after service in ctor. 2018-04-23 00:07:55 -07:00
Jason Volk
a5c6fb87d8 ircd::resource: Copy authenticated user_id to buffer in request. 2018-04-22 16:26:54 -07:00
Jason Volk
f808a28664 ircd: Add m/m.h to stdinc.h 2018-04-22 16:22:02 -07:00
Jason Volk
87bd9bc429 ircd:Ⓜ️ Add conf init sequence for m::self related. 2018-04-22 15:18:05 -07:00
Jason Volk
a3bcd2dbf3 ircd: Add b64 <-> b58 convenience conversion suite. 2018-04-22 14:24:37 -07:00
Jason Volk
3badab59a5 ircd: Add some b64 size expression utils. 2018-04-22 14:22:34 -07:00
Jason Volk
6b32da764d ircd::client: Remove the asynchronous longpoll state. 2018-04-20 19:54:18 -07:00
Jason Volk
6de7fb7b8c ircd::db: Adjust destruction sequence for rocksdb DB::Close() call. 2018-04-20 17:03:20 -07:00
Jason Volk
e3b2bcf19d ircd::db: Maintain SST file manager instance. 2018-04-20 15:45:57 -07:00
Jason Volk
532f987bd6 ircd::db: Move column compact()/flush() to more consistent place. 2018-04-20 15:22:50 -07:00
Jason Volk
666e509c97 ircd::db: Expose setoptions interface. 2018-04-20 15:22:50 -07:00
Jason Volk
f805344604 ircd::db: Options package for file growth, count and compaction related. 2018-04-20 15:22:50 -07:00
Jason Volk
88f5937559 ircd::log: Update the log::mark() argument to use string_view. 2018-04-20 15:22:50 -07:00
Jason Volk
1cd3e41e44 ircd::info: Distill out the logdump from init. 2018-04-20 15:22:50 -07:00
Jason Volk
09ff713743 ircd::info: Query the RLIMIT_NOFILE; minor fixes. 2018-04-20 15:22:50 -07:00
Jason Volk
fcf17db132 ircd: Various fixes / cleanup. 2018-04-20 15:22:49 -07:00
Jason Volk
7d64e6323b ircd::client: Use conf::item's for client related. 2018-04-20 00:44:45 -07:00
Jason Volk
1dcfff91a5 ircd::ctx: Expose stack_max() to public interface. 2018-04-19 21:42:54 -07:00
Jason Volk
35a1c62b1f ircd::ctx: Add ctx::running()/waiting() for interface completeness. 2018-04-19 21:42:54 -07:00
Jason Volk
3b32d2170e ircd::ctx: Give ctx::ctx the instance_list. 2018-04-19 21:42:54 -07:00
Jason Volk
281a9e1cfd ircd::ctx: Place ctx::list node pointers into structure in ctx. 2018-04-19 21:42:54 -07:00
Jason Volk
793c24ce9e ircd::ctx: Simplify list iteration API. 2018-04-19 14:47:56 -07:00
Jason Volk
1d451ca3ff ircd:Ⓜ️ Add additional filter convenience constructors. 2018-04-19 14:23:47 -07:00
Jason Volk
1397091b7c ircd:Ⓜ️:events: Add a filtered iteration. 2018-04-19 14:23:47 -07:00
Jason Volk
e57b85cb36 ircd:Ⓜ️ Add developer convenience constructor to event_filter. 2018-04-19 13:47:51 -07:00
Jason Volk
fbc78c9c60 ircd:Ⓜ️ Add head_idx(room) convenience to get one head event idx. 2018-04-18 15:09:13 -07:00
Jason Volk
02bc9032e8 ircd:Ⓜ️ Add event::idx to top() tuple. 2018-04-18 15:04:46 -07:00
Jason Volk
7659ef3acc ircd:Ⓜ️ Reorder top() tuple; use strong type template std::get'ers. 2018-04-18 15:03:42 -07:00
Jason Volk
d64adf8916 ircd:Ⓜ️ Rename event id generator function. 2018-04-18 14:26:25 -07:00
Jason Volk
7f3919dd17 ircd:Ⓜ️ Split events iterations into namespace. 2018-04-18 01:25:54 -07:00
Jason Volk
5a3f105afc ircd:Ⓜ️ Optimize away the event_seq column. 2018-04-18 00:28:05 -07:00
Jason Volk
e764747e17 ircd::db: Use actual gt operator for reverse integer less. 2018-04-18 00:25:02 -07:00
Jason Volk
eefc7430bc ircd:Ⓜ️ Convert db column keys to binary integers over a continuous sequence space. 2018-04-17 21:13:16 -07:00
Jason Volk
b95a588bc4 ircd::db: Comment/improve descriptor/column options. 2018-04-17 15:28:08 -07:00
Jason Volk
330fe74035 ircd::db: Add file_count and bytes aggregator for all columns in db. 2018-04-17 14:13:36 -07:00
Jason Volk
12957038f7 ircd::db: Create template for integer comparators. 2018-04-17 13:42:30 -07:00
Jason Volk
ad0f248b0f ircd: Update assumptions / assertions for byte_view. 2018-04-17 13:41:26 -07:00
Jason Volk
bcd704826c ircd:Ⓜ️:vm: Move db::txn to the stack; use automatic reserve option. 2018-04-16 17:28:26 -07:00
Jason Volk
d5cd5dea09 ircd:Ⓜ️:vm: Sequence iteration interface. 2018-04-16 15:58:02 -07:00
Jason Volk
b320d8ece1 ircd:Ⓜ️:vm: Integrate sequence counting. 2018-04-16 15:20:08 -07:00
Jason Volk
d5087f4e8f ircd:Ⓜ️:dbs: Add event sequence column. 2018-04-16 15:20:08 -07:00
Jason Volk
dcacc5af0a ircd:Ⓜ️:vm: Add db::txn allocation reservation options. 2018-04-16 15:20:08 -07:00
Jason Volk
e009d6763e ircd::db: Fix issues with txn interface. 2018-04-16 15:20:08 -07:00
Jason Volk
19d7e05605 ircd::resource: Allow each resource method to specify its timing. 2018-04-15 18:02:41 -07:00
Jason Volk
49d83de384 ircd::net: Propagate ctx interruption to socket. 2018-04-15 17:46:20 -07:00
Jason Volk
f4b2273a4b ircd::net: Add a semaphore to the socket timer to invalidate queued callbacks. 2018-04-15 17:46:20 -07:00
Jason Volk
5be18475df ircd::net: Move scope_timeout from socket:: to net:: w/ exposure. 2018-04-15 16:43:09 -07:00
Jason Volk
6d88ee339d ircd:Ⓜ️:dbs: Rename room_origins to room_joined. 2018-04-15 16:43:09 -07:00
Jason Volk
7b54dba291 ircd::db: Expose an interface for some counters; add ticker command. 2018-04-15 16:43:09 -07:00
Jason Volk
0c78bf7a9b ircd::db: Add compaction interface. 2018-04-15 02:42:57 -07:00
Jason Volk
0a3259afae ircd::db: Custom table opts; table cache; introduce the bloom filter. 2018-04-14 23:10:09 -07:00
Jason Volk
f37176d698 ircd::net::dns: Enforce min ttl for cache entries; add conf option. 2018-04-14 18:35:48 -07:00
Jason Volk
b9cf0c9796 ircd::rfc1035: Comparison operator suite for record types. 2018-04-14 17:34:07 -07:00
Jason Volk
1ad4d58e43 ircd::net::dns: Move cache interfaces into cache class. 2018-04-14 17:34:07 -07:00
Jason Volk
756840b42c ircd::client: Add unique client id monotonic counter. 2018-04-14 17:15:06 -07:00
Jason Volk
cf22eacfd3 ircd::net::dns: Add static fire-and-forget callbacks for prefetching. 2018-04-14 17:15:06 -07:00
Jason Volk
e3b97871f9 ircd: Add function to return daemon's uptime. 2018-04-14 17:15:06 -07:00
Jason Volk
deb1a0a979 ircd::resource: Add chunked encoding response suite. 2018-04-13 23:19:43 -07:00
Jason Volk
3f72b7ce19 ircd::db: Update gopts; add seqnum option; fix missing readahead. 2018-04-13 22:46:31 -07:00
Jason Volk
7c92eb2757 ircd::server: Use system time for error time state. 2018-04-13 20:02:48 -07:00
Jason Volk
7360999b30 ircd: Support the chrono types in the timef() date suite. 2018-04-13 20:02:47 -07:00
Jason Volk
6ca4f6eec5 ircd::net: Expose interface for socket stat counter. 2018-04-13 17:24:07 -07:00
Jason Volk
69aeddad61 ircd::client: Reference the client's request handling context via class member. 2018-04-13 17:03:17 -07:00
Jason Volk
dd69acbad3 ircd::json::stack: Handle and properly propagate flusher exception out of stack. 2018-04-13 16:03:34 -07:00
Jason Volk
45f8239f9b ircd:Ⓜ️:vm: Properly propagate a context interruption to the evaluator. 2018-04-12 23:07:46 -07:00
Jason Volk
cee7a17330 ircd:Ⓜ️:dbs: Purge old cruft; add various \briefs. 2018-04-12 23:07:45 -07:00
Jason Volk
0a1a35fdf4 ircd:Ⓜ️:room::members: Improve interface; add user::id specific iteration closure. 2018-04-12 14:10:03 -07:00
Jason Volk
f9ade26b24 ircd:Ⓜ️:dbs: Workaround issues with incorrect std::tuple references. 2018-04-12 14:08:48 -07:00
Jason Volk
8bf0b4d093 ircd::net: Assert proper socket object semantics. 2018-04-12 12:52:14 -07:00
Jason Volk
28488eb54b ircd:Ⓜ️ Add messages iteration convenience interface to m::room. 2018-04-12 02:14:10 -07:00
Jason Volk
54e3719097 ircd::json: Consolidate authority for value defined() semantics. 2018-04-11 23:40:31 -07:00
Jason Volk
97ec3a62ab ircd::json: Fix bugs related to bool type. 2018-04-11 23:40:30 -07:00
Jason Volk
b3b11fab7d ircd::util: Fix conditions for is_zero template test. 2018-04-11 23:40:30 -07:00
Jason Volk
b16aa7f55c ircd:Ⓜ️:state: Add get_node(nothrow) overload. 2018-04-11 23:40:30 -07:00
Jason Volk
f9ad2523a2 ircd:Ⓜ️:state: Add interface comment after \brief. 2018-04-11 23:40:30 -07:00
Jason Volk
82ef048d3f ircd:Ⓜ️ More complete presence interface getter interface stack. 2018-04-11 23:09:49 -07:00
Jason Volk
75fdf2f518 ircd:Ⓜ️:user: Add naive user commonality interface. 2018-04-11 23:09:49 -07:00
Jason Volk
33ca15e45d ircd:Ⓜ️:user::rooms: Add a count() interface. 2018-04-11 15:47:51 -07:00
Jason Volk
55e4a8fcaf ircd:Ⓜ️ Split user's rooms iteration into separate interface. 2018-04-11 15:38:01 -07:00
Jason Volk
66e81327d0 ircd:Ⓜ️ Order rooms.h below user.h; add alias interface for user's rooms. 2018-04-11 15:10:45 -07:00
Jason Volk
e305938b08 ircd:Ⓜ️ Typedef a user::closure. 2018-04-11 15:04:04 -07:00
Jason Volk
e9df8b699c ircd:Ⓜ️ Add user room membership convenience interface; apply. 2018-04-11 14:18:38 -07:00
Jason Volk
c3062e80f1 ircd::ctx: Fix bitrot in when_all() template. 2018-04-10 20:09:17 -07:00