0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-30 02:32:43 +01:00
Commit graph

2230 commits

Author SHA1 Message Date
Jason Volk
fd13e71684 ircd:Ⓜ️:dbs: Add equality comparator to optimize events__room_events. 2018-05-21 19:52:47 -07:00
Jason Volk
1afba986b3 ircd::db: Support additional rdb comparator features. 2018-05-21 19:52:18 -07:00
Jason Volk
6be37c7aa6 ircd:Ⓜ️ Add event::fetch::opts overrider to room::messages; simplify overrider on room::state. 2018-05-21 17:36:16 -07:00
Jason Volk
0d489d6ffb ircd::http: Add 504 Gateway Timeout status. 2018-05-21 15:56:13 -07:00
Jason Volk
bc26a8f9b3 ircd:Ⓜ️ Optimize user::rooms iteration event query. 2018-05-21 00:19:27 -07:00
Jason Volk
2755d779c9 ircd:Ⓜ️ Simplify user::rooms iteration callstack. 2018-05-21 00:19:08 -07:00
Jason Volk
559c2f008c ircd:Ⓜ️ Optimize room::members::count w/ event::fetch::opts keys select. 2018-05-20 20:30:25 -07:00
Jason Volk
65b516e4c0 ircd:Ⓜ️ Use proper m::membership(event) test and deoptimize accordingly. 2018-05-20 20:26:12 -07:00
Jason Volk
db026147b7 ircd:Ⓜ️ Optimize query for room::members::for_each w/ user_id closure. 2018-05-20 20:17:45 -07:00
Jason Volk
67b7a58f42 ircd:Ⓜ️ Additional event/room visibility linkage and preliminary hook. 2018-05-20 20:15:50 -07:00
Jason Volk
a66928572b ircd:Ⓜ️ Elaborate room::state ctor for easier custom fopts. 2018-05-20 20:14:44 -07:00
Jason Volk
6e7d5aec3b ircd:Ⓜ️ Rename room opts to copts for consistency. 2018-05-20 20:14:12 -07:00
Jason Volk
32549bc9ae ircd::conf: Deinline some specialized definitions. 2018-05-20 18:39:33 -07:00
Jason Volk
c88ce8168b Revert "ircd:Ⓜ️ Convert hook to template."
This reverts commit 915076296f.
2018-05-20 18:39:32 -07:00
Jason Volk
67744cf73e ircd:Ⓜ️ Remove the room::state::opts. 2018-05-20 05:11:30 -07:00
Jason Volk
7e5b9b69ed ircd:Ⓜ️ Integrate fetch::opts with room queries. 2018-05-20 04:35:17 -07:00
Jason Volk
79371780f3 ircd:Ⓜ️ Add fetch::opts with keys and db::gopts. 2018-05-20 04:34:31 -07:00
Jason Volk
163106bb72 ircd:Ⓜ️ Simplify the event::fetch ctor stack w/ default selection. 2018-05-20 01:48:47 -07:00
Jason Volk
c2b45aacc3 ircd::db: Use better column count in row ctor. 2018-05-19 23:13:54 -07:00
Jason Volk
2f48b69102 ircd:Ⓜ️ Add event::fetch seekless ctor w/ selection. 2018-05-19 22:55:03 -07:00
Jason Volk
2b71ad8a04 ircd::json: Various cleanup. 2018-05-19 22:55:03 -07:00
Jason Volk
208a0198c0 ircd::json: Add specific extern undefined number. 2018-05-19 22:55:03 -07:00
Jason Volk
6150637537 ircd:Ⓜ️ event::fetch keys selection. 2018-05-19 22:55:03 -07:00
Jason Volk
16c86f9a76 ircd::fmt: Fix copying / nulling / assertions. 2018-05-19 20:53:40 -07:00
Jason Volk
8140130a3a ircd::http: date_buf off stack. 2018-05-19 20:04:53 -07:00
Jason Volk
69e9c9bbc6 ircd::server: Fix peer hostname string discrepancy. 2018-05-19 18:49:08 -07:00
Jason Volk
5a058be4ba ircd::net: Use specific canon service/port variables. 2018-05-19 18:49:08 -07:00
Jason Volk
e395e4d85e ircd:Ⓜ️ Fix hook deletion while iterating set. 2018-05-19 18:49:08 -07:00
Jason Volk
65f7adc8c6 ircd::server: Internalize more references to the peer instance; various cleanup. 2018-05-19 18:49:07 -07:00
Jason Volk
fc3fd6a8b2 ircd::resource: Add a node_id to the resource request struct. 2018-05-19 18:49:07 -07:00
Jason Volk
ba4b3fa145 ircd: Minor comments / minor cleanup. 2018-05-19 18:49:07 -07:00
Jason Volk
eb5f2475a3 ircd:Ⓜ️ Add preliminary skeleton linkage for room/event visibilty related. 2018-05-19 18:49:07 -07:00
Jason Volk
986f591caa ircd:Ⓜ️ Ignore my_host's signature when adding signatures. 2018-05-19 18:49:07 -07:00
Jason Volk
aada1c9f17 ircd:Ⓜ️ Slightly improve state tuple pretty(). 2018-05-19 18:49:07 -07:00
Jason Volk
997da91477 ircd:Ⓜ️ Complete the room state tuple buffer constructor. 2018-05-19 18:49:07 -07:00
Jason Volk
31d0f9daed ircd:Ⓜ️:dbs: Rename opts.idx to opts.event_idx; split internal related. 2018-05-19 18:49:07 -07:00
Jason Volk
3e47fbb388 ircd::client: Remove unnecessary exception test assertion here. 2018-05-19 18:49:06 -07:00
Jason Volk
2626e14543 ircd:Ⓜ️:dbs: Copy root_in to root_out buffer for intuitive behavior. 2018-05-19 18:49:06 -07:00
Jason Volk
296eff7c5d ircd::db: Removed unused cell features. 2018-05-19 18:49:06 -07:00
Jason Volk
e3a85fa523 ircd::resource: Consistent rstrip of trailing path solidus. 2018-05-19 18:49:06 -07:00
Jason Volk
a62f453e58 ircd:Ⓜ️ Add signature appending routine. 2018-05-19 18:49:05 -07:00
Jason Volk
7e512eecdc ircd:Ⓜ️ Move signatures field nulling to essential keys function. 2018-05-19 18:49:05 -07:00
Jason Volk
e5da1a82e7 ircd::openssl: Update exception type. 2018-05-19 18:49:05 -07:00
Jason Volk
82fbbad8e3 ircd:Ⓜ️ Simplify b64 buffer sizing. 2018-05-19 18:49:05 -07:00
Jason Volk
8fefae157a ircd:Ⓜ️ Fix event::idx argument typing in events:: iterations. 2018-05-19 18:49:05 -07:00
Jason Volk
a7b0246830 ircd::net: Increase default acceptor timeout for spinapps friends. 2018-05-19 18:49:05 -07:00
Jason Volk
1d582f65d6 ircd:Ⓜ️:dbs: Add a descriptor for the default column with no cache alloc. 2018-05-19 18:49:05 -07:00
Jason Volk
ab4f2b362f ircd::db: Decrease temp default row cache size. 2018-05-19 18:49:05 -07:00
Jason Volk
48f4c22cce ircd:Ⓜ️ Expose an init::close() for ircd::main() to stop listening. 2018-05-19 18:49:04 -07:00
Jason Volk
47b28d9295 ircd::db: Add cache key remover. 2018-05-19 18:49:04 -07:00
Jason Volk
9e0acde5cf ircd::db: Add cache entry iteration (experimental). 2018-05-19 18:49:04 -07:00
Jason Volk
8f40fd574a ircd::db: Interface to test if cache entry exists. 2018-05-19 18:49:04 -07:00
Jason Volk
f97c9fff99 ircd::db: Add interface to database & column caches. 2018-05-19 18:49:04 -07:00
Jason Volk
507b8e4f1c ircd::db: Minor cleanup. 2018-05-19 18:49:04 -07:00
Jason Volk
915076296f ircd:Ⓜ️ Convert hook to template. 2018-05-19 18:49:04 -07:00
Jason Volk
c5c5f9643e ircd:Ⓜ️🪝 Cleanup constructor: move feature string creation out. 2018-05-19 18:49:04 -07:00
Jason Volk
77d2c06ded ircd:Ⓜ️🪝 Add the always matching vector. 2018-05-19 18:49:03 -07:00
Jason Volk
1cea146098 ircd:Ⓜ️🪝 Add hook matcher count; use mapping closure. 2018-05-19 18:49:03 -07:00
Jason Volk
24797bfa22 ircd:Ⓜ️🪝 Add call counter. 2018-05-19 18:49:03 -07:00
Jason Volk
9388e65250 ircd::db: Fix constness of colname vector values. 2018-05-19 18:49:02 -07:00
Jason Volk
508baeb4a5 ircd::db: Move vector of colptrs to stack. 2018-05-19 18:49:02 -07:00
Jason Volk
0478ead6d9 ircd:Ⓜ️:filter: Condition on contains_url in match definition. 2018-05-19 18:49:02 -07:00
Jason Volk
1d7fce8368 ircd:Ⓜ️ Reorg filter interface and linkage related. 2018-05-19 18:49:02 -07:00
Jason Volk
0abfc6e927 ircd::net: Minor fix spacing. 2018-05-19 18:49:02 -07:00
Jason Volk
39edf575ba ircd:Ⓜ️ Simplify init / fini presence semantics. 2018-05-19 18:49:02 -07:00
Jason Volk
a1c3788c38 ircd:Ⓜ️ Add single-property getter interface for event. 2018-05-19 18:49:02 -07:00
Jason Volk
dc38da5566 ircd:Ⓜ️ Add missing ADL-converted index(event) calls. 2018-05-19 18:49:01 -07:00
Jason Volk
d9b5a7d26a ircd:Ⓜ️ Improve various keys interfaces. 2018-05-19 18:49:01 -07:00
Jason Volk
42b8d41e58 ircd:Ⓜ️:v1:🔑 Add overload for key_id in uri. 2018-05-11 02:02:46 -07:00
Jason Volk
3e877ebad3 ircd::net: Elaborate the peer_cert stack: add sha256; add b64 of sha256. 2018-05-10 21:00:32 -07:00
Jason Volk
f160963c02 ircd::db: Split column compact range and files operations for interface. 2018-05-10 17:06:35 -07:00
Jason Volk
3f296f2108 ircd::net: Fix error fmtstr; use static exception instance for copy. 2018-05-09 21:12:01 -07:00
Jason Volk
6feaa95d4b ircd::resource: Add MIME type requirement option for methods. 2018-05-09 17:47:09 -07:00
Jason Volk
cb2c95ceb6 ircd::http: Add 406 / 415 codes to enumerations. 2018-05-09 17:19:43 -07:00
Jason Volk
dcbbaf2579 ircd::server: Add opts::prio value; special case prio value in link selection. 2018-05-09 17:07:37 -07:00
Jason Volk
c14f268559 ircd:Ⓜ️ ADL the event::fetch::index() suite. 2018-05-09 16:38:11 -07:00
Jason Volk
6b0c011535 ircd::server: Copies of the link pointers must be on stack. 2018-05-08 16:03:56 -07:00
Jason Volk
c47324f741 ircd::net::dns: Add retries. 2018-05-08 16:03:56 -07:00
Jason Volk
477fe01e40 ircd::net::dns: Write question into tag buffer; add send_burst conf item. 2018-05-08 16:03:55 -07:00
Jason Volk
a318319ba4 ircd::net: attribute noreturn upon advice. 2018-05-08 14:32:40 -07:00
Jason Volk
79a44e4587 ircd::net: No need to hold this pointer in closure. 2018-05-08 14:31:39 -07:00
Jason Volk
618fc8a95e ircd::net::dns: Tweak reference prototypes. 2018-05-08 14:29:44 -07:00
Jason Volk
39b49599e5 ircd:Ⓜ️:user: Add mitsein::count() interface. 2018-05-08 00:44:23 -07:00
Jason Volk
ce6c4d357e ircd::json: Add flush watermarking to json::stack. 2018-05-07 23:48:31 -07:00
Jason Volk
51d0f1a6a4 ircd::server: Use fixed tls vector for copying link pointers. 2018-05-07 23:24:51 -07:00
Jason Volk
9a3bda06af ircd::server: Copy link pointers while iterating for open(). 2018-05-07 23:09:06 -07:00
Jason Volk
907efca5d8 ircd::openssl: Checks on peer cert dereference. 2018-05-07 16:58:39 -07:00
Jason Volk
5488a85d1a ircd: Update log start marker. 2018-05-07 16:34:59 -07:00
Jason Volk
9792cb1435 ircd:Ⓜ️:vm: Add preliminary phase state; minor movements. 2018-05-07 16:34:59 -07:00
Jason Volk
b113322a28 ircd::server: Improve assertion for no key movement. 2018-05-07 16:34:59 -07:00
Jason Volk
fd80a13b15 modules/key/keys: Refactoring of key queries to use m::v1 requests and interface. 2018-05-07 16:34:59 -07:00
Jason Volk
7e66e79715 ircd:Ⓜ️:v1: Split key request into server/query requests. 2018-05-07 16:34:59 -07:00
Jason Volk
9821d7f333 ircd:Ⓜ️:v1: Add key query request. 2018-05-07 14:58:29 -07:00
Jason Volk
5000397f12 ircd::ctx: Fix erroneous comment. 2018-05-07 12:37:44 -07:00
Jason Volk
e15ac0d1d3 ircd::ctx: Add state for counting context switches. 2018-05-07 12:36:33 -07:00
Jason Volk
4c71ab8fd0 ircd:Ⓜ️🪝 Simplify collections with instance_lists. 2018-05-06 22:28:17 -07:00
Jason Volk
456f8e7ac1 ircd:Ⓜ️ Move vm eval definitions into module. 2018-05-06 22:28:17 -07:00
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
68c863e7f9 ircd:Ⓜ️:vm: Reorg commit stack; move room commit thing to m::vm. 2018-05-06 18:02:33 -07:00
Jason Volk
7758a80927 ircd: Further condense ircd::main() exception handlers. 2018-05-06 15:11:59 -07:00
Jason Volk
2183c6bea9 ircd::client: Adjust main exception handlers for ctx::terminated. 2018-05-06 15:11:05 -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
003ecf6357 ircd: Remove / update various ctx::interrupted catch blocks for ctx::terminated. 2018-05-06 02:06:08 -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
e80c8e6f65 ircd:Ⓜ️ Consistent usage of object::size() rather than object::count(). 2018-05-05 23:14:11 -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
ec0153c4da ircd::ctx: Split into internal header. 2018-05-05 21:24:17 -07:00
Jason Volk
dd04a50743 ircd:Ⓜ️:dbs: Expose the internal indexer interface. 2018-05-05 18:54:02 -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
386901f4c2 ircd::net: Fix conditions for eptr creation from cached error. 2018-05-05 00:55:42 -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
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
5ba64df248 ircd::net: Explicitly construct these things here. 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
e6fe7805c1 ircd::db: Minor simplify db::read(column). 2018-05-04 20:43:04 -07:00
Jason Volk
7ca2e8797d ircd:Ⓜ️:dbs: Add interface to manipulate the blacklist column. 2018-05-04 20:43:04 -07:00
Jason Volk
cff90c79ae ircd: Minor cleanup. 2018-05-04 20:43:04 -07:00
Jason Volk
546e57915b ircd:Ⓜ️:dbs: Checkpoint cache size default tweaks. 2018-05-04 16:38:45 -07:00
Jason Volk
66a4d52a93 ircd:Ⓜ️:dbs: Add event_bad column for blacklisting. 2018-05-04 16:38:45 -07:00
Jason Volk
09a0b345c8 ircd:Ⓜ️:dbs: No need to unref columns anymore. 2018-05-04 14:32:18 -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
8d819cd3f5 ircd::log: Minor cleanup. 2018-05-03 20:08:24 -07:00
Jason Volk
a054ac6b2f ircd::resource: Clear peer error after peer contacts us. 2018-05-02 22:22:12 -07:00
Jason Volk
292e8c5a12 ircd::server: Remove deprecated assertion. 2018-05-02 22:22:12 -07:00
Jason Volk
770ed3a1ef ircd::client: Minor cleanup init/fini log calls. 2018-05-02 22:22:12 -07:00
Jason Volk
97da72e7d9 ircd::client: Increase default request timeout. 2018-05-02 12:44:12 -07:00
Jason Volk
1d0ae3855a ircd::server: Close link if the only commitment is a cancelled tag. 2018-05-02 12:33:08 -07:00
Jason Volk
695fb4c9b0 ircd::net: Ensure proper string() is resolved; minor cleanup. 2018-05-02 12:15:04 -07:00
Jason Volk
c84fe8d962 ircd::server: Fix preservation of nullity for in.content through cancellation. 2018-05-02 12:00:32 -07:00
Jason Volk
8f7a05c9ed ircd::server: Minor cleanup / assertions / comments. 2018-05-02 12:00:26 -07:00
Jason Volk
4c61eeba89 ircd::net::dns: Use explicit static empty record instances. 2018-05-02 11:28:34 -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
9af649f739 ircd::db: Consolidate write(column) overloads. 2018-04-30 07:18:06 -07:00
Jason Volk
e80e34eddc ircd:Ⓜ️ Fix fmt argument type. 2018-04-28 22:16:34 -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
6d771191fc ircd::rfc1035: Fix any uninitialized gaps in the name buffer. 2018-04-28 18:47:17 -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
405fcdef23 ircd::rfc1035: Remove unnecessary ilist. 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
a3bea15eef ircd::net::dns: Various send cleanup/asserts; fix hostport reference in eh. 2018-04-28 17:47:59 -07:00
Jason Volk
2b41672259 ircd::net::dns: Improve the SRV -> A callback chain. 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