0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-29 10:12:39 +01:00
Commit graph

2762 commits

Author SHA1 Message Date
Jason Volk
d1c28abf7e ircd::net: Minor cleanup various log calls. 2018-09-29 17:28:11 -07:00
Jason Volk
cb6f0032a4 ircd::net: Expose interface to get socket counter as an ID. 2018-09-29 17:15:45 -07:00
Jason Volk
8d7bf8dc88 ircd::client: Simplify/dedup error handling switch. 2018-09-29 17:09:07 -07:00
Jason Volk
0c25852109 ircd::client: Simplify instance_multimap related; keep state for local/remote addrs in client. 2018-09-29 16:52:54 -07:00
Jason Volk
5f37100236 ircd::net: Add some specific comparators for ipport. 2018-09-29 16:46:02 -07:00
Jason Volk
b4e4f0165f ircd::net: Deinline some ipport ctors. 2018-09-29 16:39:14 -07:00
Jason Volk
cedfff720a ircd:Ⓜ️ Fix return value for index(event_id). 2018-09-27 17:10:54 -07:00
Jason Volk
4b142de177 ircd:Ⓜ️ Fix prototype for pretty prev. 2018-09-27 17:10:22 -07:00
Jason Volk
771ecaef7e ircd::client: Simplify log calls with single loghead() string. 2018-09-27 17:05:19 -07:00
Jason Volk
b93b4e31f6 ircd::client: Move dock into client namespace. 2018-09-27 16:36:50 -07:00
Jason Volk
f023d05e66 ircd::allocator: Pretty IEC units for memory info. 2018-09-27 01:53:03 -07:00
Jason Volk
2c054ec9ca ircd::db: Comment with TODO about cache bloom filtering here. 2018-09-26 19:02:09 -07:00
Jason Volk
e542ef76fb ircd::db: Add per-cache statistics. 2018-09-26 18:00:18 -07:00
Jason Volk
d9dc597c1c ircd::db: Set a default high priority cache reserve percentage. 2018-09-26 02:44:20 -07:00
Jason Volk
3421667a45 ircd::db: Interface to get cache pinned usage. 2018-09-26 02:34:47 -07:00
Jason Volk
da46a2ac48 ircd::db: Do our own default sharding calc based on request context contention. 2018-09-26 02:03:31 -07:00
Jason Volk
65f52b0610 ircd::db: Remove the row pos seek. 2018-09-25 23:30:54 -07:00
Jason Volk
533d129322 ircd::db: Enable histogram interface; partial data tally. 2018-09-25 22:18:37 -07:00
Jason Volk
e5a96aab93 ircd::db: Deinline stats ctor; zero-init histogram; implement Reset(). 2018-09-25 21:20:02 -07:00
Jason Volk
a806ce2762 ircd:Ⓜ️:dbs: Update cache size defaults. 2018-09-25 21:14:11 -07:00
Jason Volk
5bd367df35 ircd::client: Recondition to avoid unnecessary log spam here. 2018-09-25 17:31:56 -07:00
Jason Volk
4c0f06aaa3 ircd:Ⓜ️:feds: Fix missing linkage definition for feds::state. 2018-09-25 17:14:48 -07:00
Jason Volk
c90b530656 ircd:Ⓜ️:feds: Add central interface linkage for feds head. 2018-09-25 17:14:48 -07:00
Jason Volk
295a08fc07 ircd::db: Checkpoint these level hard-values for now. 2018-09-25 16:38:19 -07:00
Jason Volk
cf783d2729 ircd:Ⓜ️:room: Refactor out additional test protocol iterations; minor reorg. 2018-09-25 16:37:07 -07:00
Jason Volk
f54e05b7f0 ircd:Ⓜ️:room: Passthru as wildcard for empty type string. 2018-09-25 16:09:46 -07:00
Jason Volk
64ccbea79d ircd:Ⓜ️:room: Refactor out remaining "test protocol" iterations from state interface. 2018-09-25 16:02:19 -07:00
Jason Volk
32496af5da ircd::db: Ensure default init on int prop retval. 2018-09-25 15:07:56 -07:00
Jason Volk
8b27f7089d ircd::db: Supply an insertion hint prefix extractor. 2018-09-25 02:37:29 -07:00
Jason Volk
15b907167d ircd::client: Refuse to enqueue client request in unfavorable runlevel; tweaks shutdown. 2018-09-25 00:33:40 -07:00
Jason Volk
580a041ab5 ircd: Improve human readable unit tool suite. 2018-09-24 23:56:29 -07:00
Jason Volk
4e3efb73d3 ircd::db: Use cfmd rather than live-files way to get column family metadata. 2018-09-24 23:10:27 -07:00
Jason Volk
ca8082d01b ircd::net: Relax this assertion with a log warning. 2018-09-24 23:10:27 -07:00
Jason Volk
2f3c461664 ircd::db: Place linkage for db comparators so they have one address. 2018-09-24 22:00:21 -07:00
Jason Volk
66e5a19751 ircd::db: Move the port define; explain. 2018-09-24 21:34:08 -07:00
Jason Volk
1959c8556c ircd::db: Disable interruption in these frames fwiw. 2018-09-22 16:01:10 -07:00
Jason Volk
e745697448 ircd::db: Checkpoint some options related. 2018-09-22 16:01:10 -07:00
Jason Volk
3de9464058 ircd::db: Tweak/automake ingestion options related. 2018-09-22 15:04:39 -07:00
Jason Volk
e0bed2dc3e ircd::db: Add sst dump writer; move sst tool. 2018-09-22 15:04:38 -07:00
Jason Volk
99ff78f5c7 ircd::db: Create an sst utility space; move fileinfo into sst. 2018-09-22 13:28:44 -07:00
Jason Volk
f7da7d9be8 ircd::db: Support SST dump tooling. 2018-09-21 17:33:34 -07:00
Jason Volk
7834c86360 ircd::db: Add support for direct SST file ingestion. 2018-09-21 15:08:57 -07:00
Jason Volk
452f9a9abb ircd:Ⓜ️ Reorg init/fini sequence. 2018-09-21 15:07:28 -07:00
Jason Volk
ae36485d13 ircd::db: Add back the target level to range compact. 2018-09-20 23:30:51 -07:00
Jason Volk
795d62b1c7 ircd::db: Don't override uuid gen. 2018-09-20 23:30:51 -07:00
Jason Volk
9c64ae50e4 ircd:Ⓜ️ Reuse index query path. 2018-09-20 23:30:51 -07:00
Jason Volk
aea6659154 ircd:Ⓜ️ Reuse query path. 2018-09-20 23:30:51 -07:00
Jason Volk
9cced19111 ircd::client: Close sockets before terminating contexts on shutdown. 2018-09-20 23:30:50 -07:00
Jason Volk
4214977b78 ircd: Rename; use precision for pretty_iec(). 2018-09-20 23:30:50 -07:00
Jason Volk
34e969d01e ircd::fmt: Support long double; Add precision to double format specifier. 2018-09-20 23:30:50 -07:00
Jason Volk
5e158e37a5 ircd: Add pretty IEC unit printing utils. 2018-09-20 23:30:50 -07:00
Jason Volk
db9d1dcb99 ircd: Minor cleanup. 2018-09-20 23:30:50 -07:00
Jason Volk
7676bd0944 ircd::db: Add a fileinfo wrapping interface. 2018-09-20 15:57:15 -07:00
Jason Volk
f80aaa7904 ircd::db: Add util to get file list for specific column. 2018-09-20 15:56:46 -07:00
Jason Volk
c1a2e44ce0 ircd::db: Mask interruption; noexcept in filter overrides. 2018-09-19 17:16:08 -07:00
Jason Volk
7427ec991c ircd::db: Add closure on manual compaction arguments. 2018-09-19 17:16:08 -07:00
Jason Volk
9afac08e40 ircd::db: Simplify compaction callback argument requirements w/ struct. 2018-09-19 17:16:07 -07:00
Jason Volk
53651ad808 ircd::db: Move database::descriptor out to db::descriptor. 2018-09-19 15:38:37 -07:00
Jason Volk
3abfb6b949 ircd::db: Some auto-compaction hard values for now. 2018-09-19 00:12:55 -07:00
Jason Volk
c53e02428d ircd: Reuse path for error code string. 2018-09-19 00:02:47 -07:00
Jason Volk
2e245dacd1 ircd::server: Minor move handler binding. 2018-09-18 23:47:52 -07:00
Jason Volk
0e7a55d3b3 ircd::ctx::pool: Use queue push() instead of emplace(). 2018-09-18 21:56:36 -07:00
Jason Volk
5a32754937 ircd::server: Catch anything at these handlers. 2018-09-18 21:48:40 -07:00
Jason Volk
3b960d2576 ircd: Add misc assertions. 2018-09-18 21:24:19 -07:00
Jason Volk
b979426f7a ircd::db: Update event-listener related. 2018-09-18 18:37:46 -07:00
Jason Volk
5698637dd6 ircd::ctx::pool: Use ctx::queue for pool's queue. 2018-09-18 16:45:04 -07:00
Jason Volk
dadf237bb5 ircd::server: Minor cleanup; modernize some log calls. 2018-09-18 15:10:10 -07:00
Jason Volk
fc09ba81af ircd::db: Add compaction callback interface. 2018-09-18 15:07:09 -07:00
Jason Volk
4660619f4a modules/media/media: Disable bloom; ircd:Ⓜ️:dbs: Disable state_node bloom. 2018-09-17 23:51:55 -07:00
Jason Volk
75ea43885b ircd:Ⓜ️:dbs: Add conf items for column block sizes. 2018-09-17 23:42:25 -07:00
Jason Volk
8d435305d0 ircd::net: Wait for pending resolver tags to complete on shutdown. 2018-09-17 21:31:23 -07:00
Jason Volk
176e70d2c7 ircd::db: Add table block_size setting to column descriptor. 2018-09-17 21:26:55 -07:00
Jason Volk
a4f8cf83f6 ircd::server: Handle unfavorable runlevel in resolver callback. 2018-09-17 21:06:38 -07:00
Jason Volk
0ed617c889 ircd:Ⓜ️🪝 Add option for propagating exceptions. 2018-09-17 20:45:05 -07:00
Jason Volk
439e8618d6 ircd: Simplify/cleanup the coarse controls for client/server subsystems. 2018-09-17 16:47:36 -07:00
Jason Volk
3188b03943 ircd:Ⓜ️:typing: Add an iteration of typist state w/ console cmd. 2018-09-16 20:55:12 -07:00
Jason Volk
46cb5aee41 modules/m_typing: Move non-handler related from client/rooms/typing. 2018-09-16 20:55:12 -07:00
Jason Volk
be8b9fece0 ircd::client: Query for remote which throws if d/c'ed here. 2018-09-15 06:50:06 -07:00
Jason Volk
d0bfe4fd8f ircd::conf: Use lex_cast for item<bool> setter. 2018-09-15 06:41:34 -07:00
Jason Volk
9bc4f4ef58 ircd::conf: Support environmental variables overriding conf item values. 2018-09-15 06:41:34 -07:00
Jason Volk
ba401ee815 ircd:Ⓜ️:dbs: Add conf items for all caches enable/disable. 2018-09-15 06:41:34 -07:00
Jason Volk
71d772a80c ircd::conf: Enforce a max length on name strings. 2018-09-15 02:20:48 -07:00
Jason Volk
1711df33a9 ircd::conf: Use util::callbacks here. 2018-09-15 00:38:45 -07:00
Jason Volk
fe26b5e0c0 modules: thread_local mods::import cannot be used or the module gets stuck. 2018-09-14 07:44:44 -07:00
Jason Volk
d6d1deccc6 ircd::resource: Tweak resource path search and fallback to webroot. 2018-09-13 23:34:40 -07:00
Jason Volk
8900c7d95e Add datadir (share) configure, Makefile and ircd::fs related. 2018-09-13 22:02:52 -07:00
Jason Volk
71edf65c7c ircd:Ⓜ️:vm: Remove the depends aborted depends map fetus. 2018-09-13 19:49:25 -07:00
Jason Volk
d97a5ac571 ircd:Ⓜ️:vm: Remove the vm::phase; create fetch_hook. 2018-09-13 18:30:40 -07:00
Jason Volk
11948e47ac ircd: Move m::import to mods::import where it is more appropriate. 2018-09-13 18:19:27 -07:00
Jason Volk
08d9f2c606 ircd:Ⓜ️ Remove the room::state::tuple contraption. 2018-09-13 07:53:51 -07:00
Jason Volk
81d7ba8c39 ircd: Various string_view conversion fixes. 2018-09-13 06:47:52 -07:00
Jason Volk
7d94b1c17b ircd: Relax noexcept in std::function template declarations. 2018-09-13 05:12:25 -07:00
Jason Volk
09529ae311 ircd: Fix std::ios::openmode name. 2018-09-13 05:12:01 -07:00
Jason Volk
5e06c4795b ircd: Replace any std::uncaught_exception() -> std::uncaught_exceptions(). 2018-09-13 05:02:24 -07:00
Jason Volk
65f87b58bc ircd:Ⓜ️ Use better constexpr for room_id() stack buffer size. 2018-09-13 05:02:24 -07:00
Jason Volk
d3766ee0e5 ircd:Ⓜ️ Add room federate query w/ console indicator. 2018-09-12 23:31:32 -07:00
Jason Volk
2ae2bb0eef ircd:Ⓜ️ Add room version query w/ console cmd. 2018-09-12 23:26:15 -07:00
Jason Volk
5c879bd380 ircd:Ⓜ️🧾 Start central interface to get receipt information. 2018-09-12 22:32:00 -07:00
Jason Volk
f4831c863a modules/m_room: Add interface to count events in a room between two arguments. 2018-09-12 22:32:00 -07:00
Jason Volk
632278e607 ircd:Ⓜ️:room: Finesse a messages::seek_idx() into the seek stack. 2018-09-07 06:19:21 -07:00
Jason Volk
f7bb1f9360 ircd::info: Fix some informational timestamps. 2018-09-05 23:32:52 -07:00
Jason Volk
5ac5a26f83 ircd::json: Conditions for which string grammar to invoke. 2018-09-05 23:23:26 -07:00
Jason Volk
8593d09c80 ircd::json: Enforce string type for member key on constructions. 2018-09-05 23:23:26 -07:00
Jason Volk
6858ea2bb1 ircd:Ⓜ️:vm: Add commitopts (copts) to vm::accepted structure. 2018-09-05 19:43:09 -07:00
Jason Volk
cffe958d2b ircd::json: Add splice operations over json::strung. 2018-09-05 19:37:59 -07:00
Jason Volk
d3493e5901 ircd::json: Split strung into file. 2018-09-05 18:45:25 -07:00
Jason Volk
66edb4a7fb ircd::db: Add custom cache stats ticker. 2018-09-05 03:13:05 -07:00
Jason Volk
4067809a9a ircd:Ⓜ️:state: Add addl rep util; checkpoint remove stub. 2018-09-05 01:36:44 -07:00
Jason Volk
ace2a990b5 ircd::json: Change condition order. 2018-09-05 00:55:55 -07:00
Jason Volk
6dc3f4044a modules: Checkpoint vm_fetch fwiw (disabled from active eval codepaths). 2018-09-04 23:27:01 -07:00
Jason Volk
e48750e6aa ircd:Ⓜ️ Just disable MISSING_PREV_STATE check here. 2018-09-04 23:24:05 -07:00
Jason Volk
2140f42cd7 ircd::resource: Internalize the buffering boilerplate used with json::stack. 2018-09-04 22:03:12 -07:00
Jason Volk
bc88a4cf6d ircd::server: Assertion on tag removal. 2018-09-04 20:27:30 -07:00
Jason Volk
a806b2d60b modules/m_event: Add modules; move pretty() suite out of ircd:Ⓜ️:. 2018-09-04 20:27:30 -07:00
Jason Volk
aeb41e7341 ircd:Ⓜ️ Add pretty_msgline() suite. 2018-09-04 06:35:10 -07:00
Jason Volk
7f43da8a07 ircd::db: Test if directory for db::available() listing. 2018-09-04 02:32:12 -07:00
Jason Volk
f7fbd0f5d2 ircd::db: Detect O_DIRECT possible for database directory on init. 2018-09-04 02:32:12 -07:00
Jason Volk
3426fc650f ircd::fs: Test if O_DIRECT possible on path target. 2018-09-04 01:43:21 -07:00
Jason Volk
4f55dac071 ircd::db: Minor cleanup. 2018-09-03 21:43:31 -07:00
Jason Volk
60a0694853 construct: Add program option to disable direct IO. 2018-09-03 07:59:05 -07:00
Jason Volk
80d0db9f26 ircd::db: Remove unnecessary default to O_DIRECT. 2018-09-03 07:48:23 -07:00
Jason Volk
be84bf83de ircd::conf: Add item init callback. 2018-09-03 04:41:14 -07:00
Jason Volk
ff7fbdf99e ircd::rfc1035: Relax SRV rdata assertion. 2018-09-03 03:36:23 -07:00
Jason Volk
b0e9107870 ircd::db: Cache size cannot be strict here. 2018-09-03 03:24:37 -07:00
Jason Volk
c980ce464f configure: Rework the SSL support sections. 2018-09-03 03:05:09 -07:00
Jason Volk
a0f8fef153 ircd:Ⓜ️:request: Runtime exception for request which is too large. 2018-09-03 00:37:11 -07:00
Jason Volk
08a35bdc6a ircd::conf: Add reset() suite to rexecute item callbacks. 2018-09-02 21:16:49 -07:00
Jason Volk
6f940ab51e ircd::db: Improve debug msg on column init. 2018-09-02 21:16:49 -07:00
Jason Volk
795beb2ad2 ircd:Ⓜ️:dbs: Checkpoint these column descriptions in order already used. 2018-09-02 21:16:49 -07:00
Jason Volk
7145af512d ircd:Ⓜ️:dbs: Update some bloom filter default values. 2018-09-02 21:16:49 -07:00
Jason Volk
6440ea3f11 ircd:Ⓜ️:dbs: Add conf items for events db column caches. 2018-09-02 21:16:49 -07:00
Jason Volk
a5d014d10a ircd::db: Use our cache wrapping for block and compressed column caches. 2018-09-02 17:53:24 -07:00
Jason Volk
084d434c59 ircd::db: Add internal cache wrapper interface; add comment. 2018-09-02 17:53:24 -07:00
Jason Volk
107e4b59af ircd::fs: Use the gnu_dev_*() suite rather than sys/types macros. 2018-09-01 23:51:54 -07:00
Jason Volk
26ed7c2770 ircd::client: Move client make_shared into ircd/client.cc due to SO issues. 2018-09-01 22:35:01 -07:00
Jason Volk
bbc26ebb75 ircd::net: Minor cleanup. 2018-09-01 22:21:42 -07:00
Jason Volk
168b82a972 ircd::client: Improve the acceptance pattern; condition on conf limits. 2018-09-01 22:21:42 -07:00
Jason Volk
384f5917d0 ircd::net::listener: Add callback to proffer the connection before handshake. 2018-09-01 22:12:49 -07:00
Jason Volk
e3262a7b31 ircd::client: Function to count clients connected from remote addr. 2018-09-01 21:19:15 -07:00
Jason Volk
1cedbd7b06 ircd::client: Convert client instance_list to instance_multimap. 2018-09-01 21:05:45 -07:00
Jason Volk
b63c103bb7 ircd: Disable CBOR for now. 2018-09-01 16:57:56 -07:00
Jason Volk
f7813f61a5 ircd::client: Rename the client request pool. 2018-09-01 15:08:48 -07:00
Jason Volk
91dff38a57 ircd:Ⓜ️ Add prefetch() to event::fetch interface. 2018-09-01 07:15:03 -07:00
Jason Volk
62426ab210 ircd::db: Add column prefetch. 2018-09-01 07:15:03 -07:00
Jason Volk
ca1ee19a47 ircd::db: Minor simplify. 2018-09-01 07:15:03 -07:00
Jason Volk
ff7d2514a0 ircd::db: Remove the cache prefetch/fetch interface. 2018-09-01 07:15:03 -07:00
Jason Volk
13c9e5bf6f ircd::client: Add interface to respawn contexts after a terminate w/ console cmd. 2018-09-01 07:15:02 -07:00
Jason Volk
4a1e498059 ircd::openssl: Increase default generated certificate duration value. 2018-08-31 21:53:35 -07:00
Jason Volk
3ee9186173 ircd:Ⓜ️ Improve safe init exception propagation. 2018-08-30 21:55:20 -07:00
Jason Volk
140c4a5143 ircd:Ⓜ️ Only set ircd offline presence on clean ~init. 2018-08-30 21:55:20 -07:00
Jason Volk
32a67c82c9 ircd::mods: Minor cleanup. 2018-08-30 21:55:19 -07:00
Jason Volk
60b3cd828e ircd::net: Add listener::name() interface method. 2018-08-30 19:15:28 -07:00
Jason Volk
e5f94ed704 ircd::http: Simplify interface; DRY. 2018-08-30 19:00:07 -07:00
Jason Volk
83edde639f ircd::http: Improve query::string::at() error message to show key name. 2018-08-30 10:58:32 -07:00
Jason Volk
ac3b45604a ircd::db: Move comment. 2018-08-30 07:21:44 -07:00
Jason Volk
a4bb471cf7 ircd::openssl/ircd::net: Add presupplied rfc3526 DH parameters. 2018-08-29 16:16:55 -07:00
Jason Volk
fcb5965e45 ircd::net: Save listener opts and add accessor. 2018-08-29 15:52:37 -07:00
Jason Volk
b1aa733d95 ircd::db: Additional critical exclusion and interruption zones. 2018-08-28 21:53:17 -07:00
Jason Volk
e8e2ca4850 ircd::fs: Reorg some #include statements. 2018-08-28 20:15:40 -07:00
Jason Volk
5c6874c790 ircd::db: Get better required alignments for direct IO. 2018-08-28 20:15:40 -07:00
Jason Volk
5dd9b7a3cf ircd::fs: Support for finding the O_DIRECT alignments from system. 2018-08-28 20:15:40 -07:00
Jason Volk
76e48b3ef3 ircd::ctx: Test for valid then() before calling from here. 2018-08-28 18:58:09 -07:00
Jason Volk
d70ef25711 ircd::db: Simplify port entry checks. 2018-08-28 15:57:49 -07:00
Jason Volk
3833aa70cb ircd::db: Additional trivial vtable placements. 2018-08-28 15:44:03 -07:00
Jason Volk
a4e4424ede ircd: Improve main control flow for termination condition during init. 2018-08-28 15:04:23 -07:00
Jason Volk
89fbab2d7a ircd::openssl: Add yield points to genprime routine. 2018-08-28 13:15:26 -07:00
Jason Volk
0787b5ff71 ircd::openssl: Add dhparam generator suite. 2018-08-28 13:01:10 -07:00
Jason Volk
0dcaedabff ircd::openssl: Move genrsa_cb to genprime_cb for abstractive reuse. 2018-08-28 12:53:34 -07:00
Jason Volk
8340f005da ircd::db: Use terminate() on the request pool on ~init(); log messages. 2018-08-28 12:06:56 -07:00
Jason Volk
2b199ae3ed ircd::net/ircd::server/ircd::client: Various cleanup; log messages. 2018-08-28 12:06:45 -07:00
Jason Volk
2a11c33c9f ircd::ctx: More list assertions. 2018-08-27 01:45:31 -07:00
Jason Volk
cd74a39330 ircd::db: Move the write mutex to a global and lock for compaction points too. 2018-08-26 20:46:59 -07:00
Jason Volk
edbc0984c5 ircd::ctx: Linkage for default and move semantics of ctx::context. 2018-08-26 20:46:59 -07:00
Jason Volk
48a436fcc1 ircd:Ⓜ️:event: Addl prev utils; simplify before(). 2018-08-26 07:13:47 -07:00
Jason Volk
02d1cd1115 ircd:Ⓜ️ Add central linkage for m::feds::state. 2018-08-26 07:13:47 -07:00
Jason Volk
0a9fdda893 ircd::allocator: Add state::available(n) query. 2018-08-25 18:46:54 -07:00
Jason Volk
2424208a01 ircd::json: Reverse number's <alternative>. 2018-08-25 15:06:17 -07:00
Jason Volk
41dd3cca29 ircd::resource: Better debug log indication of chunked encoding response. 2018-08-25 13:59:22 -07:00
Jason Volk
74bb040b8c ircd::resource: Make response head buffer size a named const; fix comment. 2018-08-25 13:58:49 -07:00
Jason Volk
170475f374 ircd:Ⓜ️ Add user::events iterator w/ console cmd. 2018-08-24 14:01:32 -07:00
Jason Volk
bf234c77a4 ircd:Ⓜ️:user: Ensure bools are returned from iteration closures here. 2018-08-24 13:55:33 -07:00
Jason Volk
0b98144cfe ircd::db: Minor cleanup; assertions. 2018-08-24 10:59:22 -07:00
Jason Volk
0f79ad7b08 ircd:Ⓜ️:room: Officiate random_origin w/ central linkage; use view closure. 2018-08-24 04:19:55 -07:00
Jason Volk
84f4cbd359 ircd::db: Serialize entry to rdb's write impl to circumvent pthread deadlock. 2018-08-24 03:40:37 -07:00
Jason Volk
c94b6f02ca ircd::db: Options package; no DIO writes 2018-08-24 03:40:25 -07:00
Jason Volk
5825b21231 ircd::fs: Disable fsync()/fdatasync() via AIO for now. 2018-08-24 00:40:35 -07:00
Jason Volk
1450678b83 ircd::db: Plug remaining filesystem operations into ircd::fs / AIO. 2018-08-24 00:40:35 -07:00
Jason Volk
e0024b82ea ircd::fs: Use fallocate() rather than posix_fallocate(); add keep_size. 2018-08-23 23:08:41 -07:00
Jason Volk
6f2eeaec67 ircd::db: Full dressing on the environment. 2018-08-23 23:08:41 -07:00
Jason Volk
f666728d37 ircd::fs: Add assertion; minor. 2018-08-23 23:08:41 -07:00
Jason Volk
e3827124e9 ircd::fs: Use lseek() for size(fd) overload. 2018-08-23 23:08:22 -07:00
Jason Volk
79d4c15ff5 ircd::fs: Deinline and improve append() related. 2018-08-23 23:08:22 -07:00
Jason Volk
55b2b128c6 ircd::fs: Add an fallocate wrapper for now. 2018-08-23 21:24:35 -07:00
Jason Volk
0ce45b50d6 ircd::fs: Add truncate() suite. 2018-08-23 21:24:19 -07:00
Jason Volk
888862ec56 ircd::fs: Deinline and improve overwrite() suite. 2018-08-23 21:23:42 -07:00
Jason Volk
ec0670262e ircd::db: Give some env callbacks handlers. 2018-08-23 18:57:24 -07:00
Jason Volk
bbcddbcf5b ircd::db: Use our fs::size() for file sizing env callback. 2018-08-23 05:37:32 -07:00
Jason Volk
29d4ec71d5 ircd::db: Update env exception handlers to propagate to rocksdb. 2018-08-23 04:20:16 -07:00
Jason Volk
f630c28439 ircd::db: Add error_to_status conversion for rocksdb::Status. 2018-08-23 04:19:32 -07:00
Jason Volk
585f6c97c3 ircd::db: Minor cleanup. 2018-08-23 04:16:49 -07:00
Jason Volk
1a1002c96d ircd::fs: Propagate error_code through exception system; improve stack. 2018-08-23 03:31:36 -07:00
Jason Volk
ed6dc56d35 ircd: Add make_error_code(std::system_error) for completeness. 2018-08-23 03:23:59 -07:00
Jason Volk
671170afb4 ircd::db: Use an ircd::assertive so failure happens in optimized mode here. 2018-08-23 02:19:28 -07:00
Jason Volk
824e3305a4 ircd::db: Implement WaitForJoin() to wait on all ctx pool joins. 2018-08-23 02:16:44 -07:00
Jason Volk
d01430e64a ircd::db: Replace default sleep() callback with ctx::sleep(). 2018-08-23 02:14:50 -07:00
Jason Volk
5239e49f4f ircd::db: Improve opts related for random_access_file; minor cleanup. 2018-08-23 01:54:58 -07:00
Jason Volk
7698759d04 ircd::db: Integrate env::sequential_file with AIO. 2018-08-23 01:54:18 -07:00
Jason Volk
1748ff843b ircd::info: Sample system page size from sysconf(). 2018-08-23 01:09:11 -07:00
Jason Volk
cbd149b650 ircd:Ⓜ️:room::origins: Add a bool for_each() to eventually replace test(). 2018-08-22 17:42:35 -07:00
Jason Volk
f48ec4a6a4 ircd::resource: Minor cleanup. 2018-08-22 15:17:55 -07:00
Jason Volk
2b4a727671 ircd::client: Client pool conf item notify callback to effect update. 2018-08-22 14:37:52 -07:00
Jason Volk
b753637385 ircd::db: request pool conf item set callback. 2018-08-22 14:37:52 -07:00
Jason Volk
6cdb1bba63 ircd::ctx: Add pool::set convenience. 2018-08-22 14:37:40 -07:00
Jason Volk
ea172a3378 ircd::conf: Add set callback notification. 2018-08-22 14:02:09 -07:00
Jason Volk
63aa8e310e ircd::conf: Restructure virtuals to direct all entry through parent. 2018-08-22 13:57:03 -07:00
Jason Volk
b964f9520f ircd::db: max_open_files must NOT be 0 or files are open/close too often. 2018-08-22 13:13:03 -07:00
Jason Volk
de973740e3 ircd::db: Additional db env debug log. 2018-08-22 12:56:17 -07:00
Jason Volk
23d0c7384d ircd::db: Catch everything here because there's nowhere else to go. 2018-08-21 08:49:11 -07:00
Jason Volk
a4e1162ae2 ircd:Ⓜ️:room: Pass db get options to the iterations. 2018-08-21 08:48:42 -07:00
Jason Volk
3a4817354e ircd:Ⓜ️ Add room state types iteration. 2018-08-21 08:37:44 -07:00
Jason Volk
7fb2a825a1 ircd::ctx: Minor cleanup. 2018-08-21 08:10:37 -07:00
Jason Volk
57ea362daa ircd::ctx: Fix stale comment. 2018-08-21 04:57:36 -07:00
Jason Volk
b3ff44d0fb ircd::db: Fix the cache insert misapprehensions. 2018-08-21 00:49:40 -07:00
Jason Volk
6d3eb3ae85 fixup! ircd::db: Fix cache iteration interpretation. 2018-08-21 00:42:13 -07:00
Jason Volk
ca0dcd36e4 ircd::db: Supply fs::uuid in this env callback. 2018-08-21 00:21:06 -07:00
Jason Volk
1f8a756f23 ircd::db: Comment / minor cleanup. 2018-08-21 00:20:54 -07:00
Jason Volk
0f021e09d4 ircd::db: Fix cache iteration interpretation. 2018-08-21 00:20:30 -07:00
Jason Volk
11f266aa37 ircd::db: Fix exclusion and lock option required for cache iteration. 2018-08-21 00:19:53 -07:00
Jason Volk
35a0f1ea51 ircd::aio: Various cleanup. 2018-08-20 22:57:33 -07:00
Jason Volk
32285d5dac ircd::fs: Add a uuid-ish util for an fd. 2018-08-20 22:44:39 -07:00
Jason Volk
99ed82f52d ircd:Ⓜ️ Remove the listeners first on deinit. 2018-08-19 20:19:43 -07:00
Jason Volk
85d4a4f5ed ircd::ctx: Further tweak interruption masking semantics. 2018-08-19 20:11:41 -07:00
Jason Volk
d4c51a2d45 ircd::db: Disable interruption for rocksdb entry surface. 2018-08-19 20:11:41 -07:00
Jason Volk
ff66bc441c ircd::ctx: Stack uninterruptible's gracefully; assume context. 2018-08-19 20:11:41 -07:00
Jason Volk
c7080bf144 ircd::db: Disable interruption for these env surfaces. 2018-08-19 20:11:40 -07:00
Jason Volk
d4b98e04e9 ircd::db: Minor cleanup. 2018-08-19 18:35:42 -07:00
Jason Volk
10434c96c5 ircd::ctx: Consistent use of interruption. 2018-08-19 18:29:46 -07:00
Jason Volk
38c5679b5a ircd::ctx: Use terminate() rather than interrupt() during ~context(). 2018-08-19 18:18:15 -07:00
Jason Volk
ee9343a68f ircd::client: Improve main exception propagation for termination/shutdown related. 2018-08-19 18:15:33 -07:00
Jason Volk
1492770f6b ircd::ctx: Various minor fixes. 2018-08-19 18:09:04 -07:00
Jason Volk
ccf5b79e6a ircd::ctx: Allow this_ctx::interruption toggle to no-op if no ctx. 2018-08-19 17:43:25 -07:00
Jason Volk
b796668a77 ircd::ctx: Minor movement/cleanup. 2018-08-19 16:21:33 -07:00
Jason Volk
f4a4674daa ircd::ctx::pool: Add a terminate(); cleanup del(). 2018-08-19 15:55:35 -07:00
Jason Volk
0dd075ab78 ircd::db: Checkin some options related. 2018-08-19 01:16:49 -07:00
Jason Volk
b8936261b5 ircd::db: Add some exception handlers on these envs. 2018-08-19 01:14:54 -07:00
Jason Volk
b5c2270e8c ircd::fs: Add prefetch skeleton linkage. 2018-08-18 23:08:55 -07:00
Jason Volk
adee757303 ircd::fs: Add fsync()/fdsync() w/ AIO. 2018-08-18 23:02:34 -07:00
Jason Volk
6e0f53c00d ircd::aio: Minor cleanup / reorg interface definition location. 2018-08-18 22:52:08 -07:00
Jason Volk
e620965d4c ircd::db: Make request pool size a conf item. 2018-08-18 22:10:39 -07:00
Jason Volk
ff4e20d948 ircd::db: Minor commentary on interruption. 2018-08-18 21:02:42 -07:00