0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-05 13:28:54 +01:00
Commit graph

2470 commits

Author SHA1 Message Date
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
Jason Volk
c2c68e386d ircd::db: Fix these missing retvals. 2018-08-18 20:59:42 -07:00
Jason Volk
9165c71afd ircd::db: Concurrent row seek. 2018-08-18 20:59:28 -07:00
Jason Volk
89e920fdd4 ircd::db: Add column cache check util. 2018-08-18 20:40:23 -07:00
Jason Volk
65b18ae7a6 ircd::db: Concurrent row requests. 2018-08-18 19:30:25 -07:00
Jason Volk
1b7e3af966 ircd::db: Simplify internal seek stack; minor cleanup. 2018-08-18 18:41:22 -07:00
Jason Volk
e2c17d2595 ircd::db: Add some arbitrary sanity checks on port structures. 2018-08-18 18:20:38 -07:00
Jason Volk
8537cca439 ircd::db: Improvements to cache interface. 2018-08-18 17:59:31 -07:00
Jason Volk
141f4e1c0a ircd::ctx: Move this branch condition. 2018-08-17 21:31:54 -07:00
Jason Volk
9cee6a40c9 construct: Interruption point after command. 2018-08-17 14:26:44 -07:00
Jason Volk
bf429e0c9e ircd::db: Mask interruption for compaction operations. 2018-08-17 14:13:27 -07:00
Jason Volk
eca3a5b85b ircd::db: No need for adopt_lock here. 2018-08-17 13:38:32 -07:00
Jason Volk
fe69a41255 ircd::ctx::pool: Fix dtor; use terminate() rather than interrupt(). 2018-08-17 12:51:49 -07:00
Jason Volk
ff050ae7b0 ircd: Simplify runlevels on shutdown. 2018-08-17 12:51:49 -07:00
Jason Volk
e8e8d282b2 ircd: Minor cleanup. 2018-08-17 12:51:49 -07:00
Jason Volk
e1c5e55737 ircd: Pass hostname from init(). 2018-08-17 12:51:49 -07:00
Jason Volk
61fade178e ircd::m/modules/key: Various reorg / modularization. 2018-08-17 12:51:49 -07:00
Jason Volk
d7075d73e5 ircd::fs: Additional make_path() overload. 2018-08-17 12:51:49 -07:00
Jason Volk
4fc728540e ircd::exception: Minor cleanup. 2018-08-17 12:51:49 -07:00
Jason Volk
682c4651d2 eircd::aio: Update some assumptions; minor cleanup. 2018-08-17 12:51:49 -07:00
Jason Volk
850fd0238a ircd::db: Remove offload shenanigans. 2018-08-17 12:51:49 -07:00
Jason Volk
31ff4f68cb ircd::db: Plug env::random_access_file into AIO. 2018-08-17 12:51:48 -07:00
Jason Volk
6db0659c06 ircd::db: Enable port; minimal context pool state. 2018-08-17 12:51:48 -07:00
Jason Volk
26a856acb8 ircd::db: Appropriately case these reflections. 2018-08-17 12:51:48 -07:00
Jason Volk
928e40ada0 ircd::db: Minor cleanup; add additional env log msg. 2018-08-17 12:51:48 -07:00
Jason Volk
570f715c87 ircd::net: Improve listener to-string related. 2018-08-17 12:51:48 -07:00
Jason Volk
4199d5026c ircd: Factor out the ircd::BUFSIZE; remove stale ircd::config extern. 2018-08-17 12:51:48 -07:00
Jason Volk
3f064ed172 ircd::log: Eliminate stack buffers; simplify w/ error directory to stderr. 2018-08-17 12:51:48 -07:00
Jason Volk
9a08305bc4 ircd:Ⓜ️ Partial listen init / init related. 2018-08-14 20:09:20 -07:00
Jason Volk
c442954e12 ircd:Ⓜ️ Various init reorg related. 2018-08-14 16:47:42 -07:00
Jason Volk
19b4e58944 ircd:Ⓜ️ Rename modules map to imports. 2018-08-14 15:51:57 -07:00
Jason Volk
c00d27d7ea ircd::conf: Simplify conf related; add \brief blerb. 2018-08-13 14:51:06 -07:00
Jason Volk
d1944c6006 construct/ircd: Use hostname-based init from command line params. 2018-08-13 14:36:50 -07:00
Jason Volk
951cd4ad63 ircd::fs: Update/fix syspaths related. 2018-08-12 16:46:52 -07:00
Jason Volk
32b6e018c9 ircd::fs: Show path in rethrown errmsg. 2018-08-12 16:42:50 -07:00
Jason Volk
9ae4e225d3 ircd::fs: Automatic -p behavior for mkdir(). 2018-08-12 16:38:50 -07:00
Jason Volk
ccefb9d354 ircd::log: Remove old cruft. 2018-08-12 16:30:51 -07:00
Jason Volk
8fb580aaf5 configure/ircd: Overhaul install system directory related. 2018-08-12 16:30:51 -07:00
Jason Volk
a8a2015ec9 ircd: Cleanup runlevel change routine. 2018-08-11 00:42:09 -07:00
Jason Volk
f51fde206a ircd:Ⓜ️ Remove unused event_id to optimize query. 2018-08-11 00:42:09 -07:00
Jason Volk
2d04d51cdc ircd: Prevent nulls in the output buffer of u2a(). 2018-08-11 00:42:09 -07:00
Jason Volk
1d11659c43 ircd::js: Remove xdr. 2018-08-11 00:42:08 -07:00
Jason Volk
9aedac4461 ircd: Move preliminary cbor into directory. 2018-08-11 00:42:08 -07:00
Jason Volk
6dddf9135d ircd:Ⓜ️:dbs: Minor simplify. 2018-07-22 12:05:24 -07:00
Jason Volk
e5834065ed ircd::net: Unionize datagram for bidirections. 2018-07-07 22:10:29 -07:00
Jason Volk
fe0bd19763 ircd::net: Add udp listener. 2018-07-07 21:33:23 -07:00
Jason Volk
1c6a4bc8d1 ircd::net: Ensure flag happens before cancel. 2018-07-06 18:40:58 -07:00
Jason Volk
dd037988f3 ircd::m/modules: Update various client listeners w/ callback. 2018-07-06 18:40:15 -07:00
Jason Volk
02fcdc8635 ircd::net::listener: Add callback-action for proper abstraction. 2018-07-06 18:38:08 -07:00
Jason Volk
a98bd357df construct/ircd: Add -pitrecdb option to allow point-in-time recovery. 2018-07-06 17:09:33 -07:00
Jason Volk
712b343017 ircd: Remove internal main_exit callback. 2018-07-06 00:44:24 -07:00
Jason Volk
e2edd13a33 ircd: Remove ircd::strand related. 2018-07-06 00:44:24 -07:00
Jason Volk
0f0ed1ba08 ircd: Fix width of string to not assume and case for implicit null. 2018-07-05 19:05:00 -07:00
Jason Volk
7de1c38d0e ircd: Use std snprintf() in u2a(). 2018-07-05 18:57:58 -07:00
Jason Volk
e7ede89884 ircd::js: Use fixed-width integer buildId like version number. 2018-07-05 16:57:47 -07:00
Jason Volk
8fcd6379a4 construct/ircd: Add -nojs option to not init js engine. 2018-07-05 16:57:47 -07:00
Jason Volk
b80468d6c8 ircd::js: Checkpoint corrections to XDR layout. 2018-07-04 21:44:45 -07:00
Jason Volk
3ba3ef46af ircd::db: Fix SST file creation on open; disable sst mgr to remove extra thread spawn. 2018-07-04 16:47:11 -07:00
Jason Volk
da04032cc4 ircd::js: Checkpoint corrections to XDR; esr52. 2018-07-03 18:50:05 -07:00
Jason Volk
9a579c8dcb ircd::js: Support JS::SetBuildIdOp context callback. 2018-07-03 16:49:08 -07:00
Jason Volk
cc85c1cd35 ircd::js: Fix the JS_EncodeScript -> JS::EncodeScript for latest esr52. 2018-07-03 16:32:15 -07:00
Jason Volk
6ddbe2b25d ircd::info: Add js::version() to appropriate logged info string. 2018-07-03 15:48:13 -07:00
Jason Volk
ae5678269c ircd::js: Fixes for js bitrot / maintenance cleanup. 2018-07-03 15:44:44 -07:00
Jason Volk
b6f7a64c4c ircd::cbor: checkpoint; item header size and value counter gauge. 2018-07-02 01:31:59 -07:00
Jason Volk
c26255290b ircd:Ⓜ️:room::members: Allow empty membership string to count() all members. 2018-07-01 14:49:24 -07:00
Jason Volk
a3db6f2a95 ircd: Replace iostream include with iosfwd to elide inits in every unit. 2018-07-01 14:29:52 -07:00
Jason Volk
d3f8a84ca8 ircd::net::listener: Add default generated paths for some ssl options. 2018-07-01 02:16:00 -07:00
Jason Volk
e03f50c427 ircd: Clarify type of ircd::strand instance pointer. 2018-07-01 02:14:34 -07:00
Jason Volk
7cafbc972a ircd::net: Listener defaults to all interfaces. 2018-07-01 02:13:29 -07:00
Jason Volk
01d9ce038c ircd: Preliminary CBOR namespace and unit. 2018-07-01 02:09:35 -07:00
Jason Volk
08d45dc838 ircd:Ⓜ️ Generalize room::lonly into more efficient room::origins::only(origin). 2018-06-30 21:57:09 -07:00
Jason Volk
8038faf8e0 ircd:Ⓜ️ Add conditionals to bootstrap() operations. 2018-06-30 18:49:38 -07:00
Jason Volk
85d1c924a5 ircd:Ⓜ️ Add function to query if room only has our origin joined. 2018-06-30 18:49:03 -07:00
Jason Volk
7d4eb46a1a ircd:Ⓜ️ Interface/linkage to generate room account_data type string. 2018-06-19 21:47:26 -06:00
Jason Volk
f8763af509 ircd:Ⓜ️ Add user interface w/ linkage for room account data. 2018-06-19 21:33:03 -06:00
Jason Volk
c136e82a57 ircd:Ⓜ️ Temporary fixes for stale static initializations. 2018-06-16 23:00:47 -06:00
Jason Volk
c5d11b7b07 ircd:Ⓜ️ Defaults for some initial config related. 2018-06-16 20:45:28 -06:00
Jason Volk
9601dac9cc ircd: Consolidate stdinc.h and ircd.h and fix precompiled headers. 2018-06-15 16:13:18 -06:00
Jason Volk
383f97cdb7 ircd: Promote info init before conf init; minor cleanup. 2018-06-15 15:24:49 -06:00
Jason Volk
fefe965149 ircd:Ⓜ️:init: Improve some conf related defaults; ctor error log cleanup. 2018-06-15 15:22:27 -06:00
Jason Volk
4c39840352 ircd:Ⓜ️:state: Checkpoint relaxed assumptions about creating new tree roots. 2018-06-12 01:00:15 -07:00
Jason Volk
e889c54bc3 ircd:Ⓜ️:dbs: Checkpoint changes to default cache sizes (un-conf'ed) for now. 2018-06-12 01:00:15 -07:00
Jason Volk
d912400f32 ircd:Ⓜ️:vm: Move vm submodules ctor/dtor into libircd for recursive issues for now. 2018-06-12 01:00:15 -07:00
Jason Volk
5ab8b9bdae ircd::db: Add init warning for no compression; minor reorg inits. 2018-06-12 01:00:15 -07:00
Jason Volk
b4e7bb062c modules: Rename root to webroot. 2018-06-12 01:00:14 -07:00
Jason Volk
912562f469 ircd:Ⓜ️:vm: Checkpoint phase-as-class skeleton. 2018-06-12 01:00:14 -07:00
Jason Volk
6236cf230f ircd::util: Better to return the input symbol rather than throwing not_mangled. 2018-06-11 00:26:20 -07:00
Jason Volk
0da4dec13c ircd:Ⓜ️:event: Add topological before; improve prev iteration closure; reorg some util. 2018-06-09 14:37:31 -07:00
Jason Volk
acddfa77f8 ircd::allocator: Add mallinfo to string support w/ console command. 2018-06-09 14:37:31 -07:00
Jason Volk
feb1aa5d2f ircd::info: Add glibc related to info. 2018-06-09 13:42:35 -07:00
Jason Volk
960553f279 ircd::db: Checkpoint skeleton state structure for env. 2018-06-09 13:40:21 -07:00
Jason Volk
55a8391e48 ircd::allocator: Add trim() if available. 2018-06-09 13:34:01 -07:00
Jason Volk
de07d32afd ircd/modules: Update various conditional json::iov nodes. 2018-06-05 11:19:40 -07:00