0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-03 04:02:47 +01:00
Commit graph

2890 commits

Author SHA1 Message Date
Jason Volk
3af70e75c3 ircd::ctx: Minor cleanup / struct packing / type. 2018-12-07 10:13:29 -08:00
Jason Volk
caa92a98c3 ircd::ctx: Don't execute an interrupt handler for uninterruptible ctx. 2018-12-06 19:07:36 -08:00
Jason Volk
bacfa6de95 ircd::ctx: Assert interruption points aren't useless calls. 2018-12-06 19:04:31 -08:00
Jason Volk
086f92f989 ircd::rfc3986: Type checking on form encoding from json::members. 2018-12-06 17:31:22 -08:00
Jason Volk
6de17431ff ircd: Reverse arguments for url::encode()/decode(); minor reorg. 2018-12-06 16:41:47 -08:00
Jason Volk
2caf425fde ircd::rfc3986: Add form_encode() composer from json::members. 2018-12-06 16:27:05 -08:00
Jason Volk
e4922772f4 ircd::server: Fix issues with non-matrix peer construction. 2018-12-05 19:38:40 -08:00
Jason Volk
3f939367c0 ircd::log: Add console_enable/disable for all facilities. 2018-12-05 19:00:10 -08:00
Jason Volk
99001a4ea5 ircd: Initial ap. 2018-12-05 15:17:00 -08:00
Jason Volk
b9974bf4ab ircd::http: Allow empty chunk header to indicate a zero length. 2018-12-05 15:15:49 -08:00
Jason Volk
10b8db0bb3 ircd::http: Add format string construction for http::error. 2018-12-05 15:15:26 -08:00
Jason Volk
d6241c66de ircd: Add synchronization for runlevel changes. 2018-12-05 14:31:05 -08:00
Jason Volk
760bd0f19c ircd::db: Workaround allow_fallocate options issue. 2018-12-03 14:31:48 -08:00
Jason Volk
0250c0f2ec ircd::db: Disable fallocate() use for now. 2018-12-03 13:01:36 -08:00
Jason Volk
24e423c714 ircd::fs: Add support test for fallocate(). 2018-12-03 12:58:42 -08:00
Jason Volk
47d6fbb35f ircd::fs: Consolidate support tests and indications into namespace. 2018-12-03 12:55:52 -08:00
Jason Volk
f2ecf617ba ircd::db: Stub a place to put the runtime loaded library version information. 2018-12-03 12:30:59 -08:00
Jason Volk
6d80be2d7a ircd::db: Cleanup / comment db options initialization. 2018-12-03 11:54:35 -08:00
Jason Volk
402f0f91f1 ircd::db: Create DBOptions earlier for use when reading column names. 2018-12-02 17:45:36 -08:00
Jason Volk
e8088ce52a ircd::db: Assert synchronization for sequential file operations; update offset on PositionedRead(). 2018-12-02 17:19:13 -08:00
Jason Volk
c1d915db7a ircd::db: Fix pragma. 2018-12-02 17:16:32 -08:00
Jason Volk
b45b25bdcd ircd::db: Dressing for C99 array on stack here. 2018-12-01 17:07:15 -08:00
Jason Volk
b31432aae1 ircd::db: Checkpoint some table options for compression. 2018-12-01 16:11:32 -08:00
Jason Volk
711dfacd9a ircd::fs: Improve strategy for AIO fsync/fdsync related. 2018-12-01 16:10:53 -08:00
Jason Volk
ca525b081f ircd: Add noaio global flag; add command line option. 2018-12-01 15:55:53 -08:00
Jason Volk
965ecd16e5 ircd::fs: Break apart / improve make_iov() related stack / cleanup typedefs. 2018-12-01 15:46:38 -08:00
Jason Volk
2dc36775a8 ircd::fs: Check IOV_MAX limits for make_iov(). 2018-12-01 15:21:06 -08:00
Jason Volk
62053e66e2 ircd::db: Minor interruption point tweaks. 2018-12-01 14:55:38 -08:00
Jason Volk
36b4e3cabe ircd: Add init parameters for different origin and hostname strings. 2018-12-01 14:55:38 -08:00
Jason Volk
f9def72a89 ircd::db: Fix propagation of column's compression type to compaction options. 2018-11-30 15:19:49 -08:00
Jason Volk
ea0ad518ea ircd::db: Fix interface / linkage for getting ColumnFamilyOptions ref from database::column. 2018-11-30 15:19:00 -08:00
Jason Volk
c451571108 ircd::db: Fix finding supported compression error. 2018-11-30 15:07:51 -08:00
Jason Volk
17817db656 ircd:Ⓜ️:dbs: Add back the deprecated _event_bad descriptor marked for drop. 2018-11-30 14:44:16 -08:00
Jason Volk
3f6ae85f8f ircd::db: Add automated column drop support; update existing descriptors. 2018-11-30 14:43:51 -08:00
Jason Volk
b0bfd87e9f ircd::net: Support interruption of UDP listening. 2018-11-29 19:16:05 -08:00
Jason Volk
13bce714ab ircd::rfc1035: Add constant for name buffer size. 2018-11-29 18:04:19 -08:00
Jason Volk
5db6447c4f ircd::db: Disable thread tracking; add compression to column open log msg. 2018-11-29 16:47:17 -08:00
Jason Volk
d1bfba2204 ircd::db: Remove critical assertion here and add note. 2018-11-29 16:18:29 -08:00
Jason Volk
c74debac01 ircd::ctx: Cleanup / fixes for critical assertion related. 2018-11-29 16:12:33 -08:00
Jason Volk
60dd8c0eea ircd::db: Enable block alignment based on compression; Enable O_DIRECT writes. 2018-11-29 15:41:42 -08:00
Jason Volk
4d9027088f ircd:Ⓜ️:state: No throwing when state node is not found here. 2018-11-29 15:24:39 -08:00
Jason Volk
0b0d20884d ircd:Ⓜ️:state: Eliminate remaining test-protocol iterations. 2018-11-29 15:10:51 -08:00
Jason Volk
d35dad46c2 configure: Add EXTRA_LIBS rather than modifying LIBS here. 2018-11-29 13:46:45 -08:00
Jason Volk
3ab6d4df79 ircd::fs::aio: Improve stats related. 2018-11-29 13:46:44 -08:00
Jason Volk
731c154b19 ircd::db: Disable AIO for fsync related for now. 2018-11-29 13:08:37 -08:00
Jason Volk
58d80ddc53 ircd::fs: Add option to toggle AIO for fsync related. 2018-11-29 10:18:43 -08:00
Jason Volk
44bf18d4df ircd::fs: Integrate read(iov) suite. 2018-11-28 17:26:25 -08:00
Jason Volk
466ad228b0 ircd::fs: Integrate an overwrite() iov suite. 2018-11-28 17:26:06 -08:00
Jason Volk
20fe537409 ircd::fs: Integrate append() iov suite. 2018-11-28 17:21:28 -08:00
Jason Volk
db36ea6255 ircd::fs: fs::write() stack based on pwritev() using iov. 2018-11-28 17:10:48 -08:00
Jason Volk
c9b10bd841 ircd::fs: Use better typedefs for vector_view of buffers. 2018-11-28 17:10:17 -08:00
Jason Volk
322e25e725 ircd::info: Add runtime sysconf to get IOV_MAX. 2018-11-28 16:53:59 -08:00
Jason Volk
eff4c475e3 ircd::fs: Add iov util header; make aio interface to fs exclusively iov. 2018-11-28 16:53:04 -08:00
Jason Volk
67772facef ircd::fs::aio: Add specific read and write stat counters. 2018-11-28 15:01:00 -08:00
Jason Volk
a70d65f171 ircd::util: Allow custom format string for pretty() suite. 2018-11-28 14:41:27 -08:00
Jason Volk
fde8dbc69d ircd::fmt: Cleanup/reorg definition namespace scoping. 2018-11-28 14:41:27 -08:00
Jason Volk
24ad230aed ircd::fmt: Modernize buffering, cleanup, comment various. 2018-11-28 14:41:27 -08:00
Jason Volk
5cdd2e6376 ircd::fs::aio: Add statistics for AIO subsystem w/ console cmd. 2018-11-27 19:54:24 -08:00
Jason Volk
12cf8c8772 ircd::fs::aio: Add additional assertions. 2018-11-27 19:53:32 -08:00
Jason Volk
0451dfd925 ircd::fs::aio: Add iovec bytes counter. 2018-11-27 19:53:05 -08:00
Jason Volk
062906143f ircd::fs: Add an fs/aio.h header. Reorg various aio namespace related. 2018-11-27 18:09:12 -08:00
Jason Volk
0de55ce111 ircd::db: Attempt at direct IO writable_file (append) implementation. 2018-11-27 17:30:59 -08:00
Jason Volk
adf2de8aed ircd::buffer: Add include-conditioned zero() fallback and improve return semantic. 2018-11-16 14:28:03 -08:00
Jason Volk
49354027a6 ircd::db: Various cleanup; simplify. 2018-11-15 20:54:50 -08:00
Jason Volk
ae1c6cc680 ircd::net: Catch std::system_error rather than boost here. 2018-11-14 18:57:42 -08:00
Jason Volk
46690f433c ircd::ctx: Condition rdtsc linkage based on x86intrin availability. 2018-11-14 18:45:10 -08:00
Jason Volk
28115730de ircd::info: Get the RLIMIT_RTTIME on startup info. 2018-11-14 18:45:10 -08:00
Jason Volk
48a15e026b ircd::ctx::prof: Convert the settings into conf items. 2018-11-14 18:45:10 -08:00
Jason Volk
9222de0b34 ircd::ctx: Add access to rdtsc through ctx::prof; minor comments. 2018-11-14 16:55:46 -08:00
Jason Volk
70099d70a2 ircd:Ⓜ️:room::messages: Add depth convenience; return parsed event_idx value. 2018-11-13 17:04:57 -08:00
Jason Volk
19ef3cfb67 ircd::fpe: Condition experimental asynchronous exception use. 2018-11-12 18:55:00 -08:00
Jason Volk
aee34ec734 ircd::allocator: Remove erroneous assertions. 2018-11-11 20:00:11 -08:00
Jason Volk
47732a0075 ircd::fpe: Add experimental exception-throwing SIGFPE w/ -fnon-call-exceptions. 2018-11-11 20:00:11 -08:00
Jason Volk
5d36bdf476 ircd: Remove redundant flag from Makefile. 2018-11-11 18:28:28 -08:00
Jason Volk
6967ad1faa ircd::fpe: Add floating point environment suite; error scoping device. 2018-11-11 18:28:28 -08:00
Jason Volk
c0de9b2e76 ircd: Propagate the ec message here. 2018-11-11 15:52:48 -08:00
Jason Volk
bbe676a392 ircd::ctx: Split this_ctx devices into files; minor interface tweaks. 2018-11-11 14:13:37 -08:00
Jason Volk
e90f1729f0 ircd::db: Split writable_file into writable_file_direct using vtable for functionality. 2018-11-09 18:24:51 -08:00
Jason Volk
9e97ac0564 ircd: Simplify system_category / posix errno code test. 2018-11-09 00:29:31 -08:00
Jason Volk
af93d55927 ircd: Minor cleanup: simplify decl; fix comment; relax log level. 2018-11-08 23:05:12 -08:00
Jason Volk
36bb0d3175 ircd: Integrate all boost::system::system_error with stdlib. 2018-11-08 23:05:11 -08:00
Jason Volk
4c85f11a02 ircd: Add suite for equating std::system_category() with boost::system. 2018-11-08 23:05:11 -08:00
Jason Volk
cfcbbad0c0 ircd: Additional completeness overloads for make_system_error. 2018-11-08 18:07:22 -08:00
Jason Volk
86ab32e664 ircd: Minor section markings in exception.cc. 2018-11-08 17:10:56 -08:00
Jason Volk
a7e4acc519 ircd: Split and reorg ircd::hash/ircd::crh related headers and units. 2018-11-08 17:04:15 -08:00
Jason Volk
26d7e4e6de ircd::db: Remove unused path from flush-begin log message. 2018-11-07 00:57:11 -08:00
Jason Volk
c5b8276840 ircd::resource: Improve stack to gather accurate internal error counts. 2018-11-07 00:24:18 -08:00
Jason Volk
7d47ee4d5a ircd::resource: Return BAD_REQUEST rather than NOT_FOUND for required JSON missing. 2018-11-06 21:36:51 -08:00
Jason Volk
1f9afbd09c ircd::resource: Improve method stats gathered. 2018-11-06 21:36:36 -08:00
Jason Volk
8b9b27d8bc ircd::resource: Simplify the resource entry interface. 2018-11-06 21:35:30 -08:00
Jason Volk
fdff7428ce ircd::client: Add request counting stats; console cmd related. 2018-11-06 21:34:28 -08:00
Jason Volk
7c815116a6 ircd::ctx: Fix comment typo. 2018-11-06 19:48:06 -08:00
Jason Volk
cc818f15b6 ircd::resource: Add stats for methods. 2018-11-05 20:45:30 -08:00
Jason Volk
8217b51526 ircd::resource: Reorg resource/method handler stack; devirtualize resource. 2018-11-05 20:45:30 -08:00
Jason Volk
d49b3ba7dd ircd::resource: Minor reorg class layout / opts. 2018-11-05 19:14:53 -08:00
Jason Volk
cbbfbcac72 ircd::db: Optimize away one of the row ctor's vector heap allocations. 2018-11-05 17:12:29 -08:00
Jason Volk
e03d36aa48 ircd::allocator: Add allocator::scope device. 2018-11-05 16:45:08 -08:00
Jason Volk
2914487aad ircd::json: Add more explicit integer ctors to value; minor reorg ctors. 2018-11-04 18:00:24 -08:00
Jason Volk
9299b0df9f ircd: Make ircd::terminate / ircd::assertion funcjects. 2018-11-04 18:00:24 -08:00
Jason Volk
9d7032e29e ircd:Ⓜ️:room: Make the state iteration readahead value a conf item. 2018-11-02 20:05:11 -07:00
Jason Volk
8af997ab2e ircd:Ⓜ️:room: Add conf item to disable all state btree history queries. 2018-11-02 20:04:17 -07:00
Jason Volk
5236790228 ircd:Ⓜ️ Handle json::not_found on index() for more descriptive error. 2018-11-02 19:42:20 -07:00
Jason Volk
6b1fd6c559 ircd:Ⓜ️:dbs: Remove the _event_bad column; patch event exists/good/bad stack. 2018-11-02 19:42:20 -07:00
Jason Volk
a5955fc9ae ircd:Ⓜ️:dbs: Options package; configuration tweak. 2018-11-02 19:15:57 -07:00
Jason Volk
25e6cd1332 ircd::db: Add compression string option to column descriptor. 2018-11-02 18:32:47 -07:00
Jason Volk
8311c1e7ff ircd::db: Improve supported compressions listing w/ console cmd. 2018-11-02 18:02:27 -07:00
Jason Volk
ad003a0d66 ircd:Ⓜ️:dbs: Add conf items for bloom filters. 2018-11-02 18:01:03 -07:00
Jason Volk
f2a08426c5 ircd:Ⓜ️:dbs: Add conf item for meta block size of all direct event columns. 2018-11-02 09:01:23 -07:00
Jason Volk
49bad9f01d ircd::db: Check for posix_fadvise(); implement InvalidateCache for environment if not direct IO. 2018-11-02 01:30:15 -07:00
Jason Volk
1d03747da3 ircd::db: Toward O_DIRECT writes from writable_file environment. 2018-11-02 01:11:36 -07:00
Jason Volk
95d42686f3 ircd::db: Add reflection for WriteLifeTimeHint. 2018-11-02 01:07:09 -07:00
Jason Volk
7b798645a4 ircd::db: Downgrade error severity to allow administrative resume. 2018-11-02 00:05:21 -07:00
Jason Volk
94bfe39ec6 ircd::fs: Save the std openmode in the fd::opts struct. 2018-11-01 23:35:52 -07:00
Jason Volk
916a5b26ea ircd: Additional ircd::terminate() output and flushing. 2018-11-01 22:25:10 -07:00
Jason Volk
8db063bfc4 ircd::fs: Remove internal alignment paddings. 2018-11-01 22:23:04 -07:00
Jason Volk
13e6e02901 ircd::fs: Improve request priority value related; get sysconf info. 2018-11-01 20:19:55 -07:00
Jason Volk
3385d25c97 ircd::info: Improve various version information gathering. 2018-11-01 20:14:00 -07:00
Jason Volk
6b6106499f ircd::fs: Add write_options.alignment; padding out to alignment for aio write. 2018-10-31 17:00:17 -07:00
Jason Volk
88be871149 ircd::aio: Switch to PREADV/PWRITEV iovector operations. 2018-10-31 16:29:20 -07:00
Jason Volk
5dcc7cd93b ircd::db: Add error report state w/ interface w/ console cmd. 2018-10-31 15:53:43 -07:00
Jason Volk
0f7e17a519 ircd::db: Add resume from error interface w/ console cmd. 2018-10-31 15:03:32 -07:00
Jason Volk
5da7f20a9a ircd::db: Add and use reflection for Status::Severity. 2018-10-31 14:48:14 -07:00
Jason Volk
ac01ae0936 ircd::db: Move reflections for WriteStall- and BackgroundError- related. 2018-10-31 14:40:00 -07:00
Jason Volk
ee670af436 ircd::db: Fix WriteStallInfo reflection and log message. 2018-10-31 14:22:31 -07:00
Jason Volk
34e330d77b ircd::db: Simplify buffer alignment callback related; fix log message. 2018-10-31 14:09:10 -07:00
Jason Volk
f46886e0b8 ircd::db: Support future CanKeysWithDifferentByteContentsBeEqual feature. 2018-10-31 11:25:07 -07:00
Jason Volk
941b4ff8eb ircd::db: Support passthru stub for comparator feature. 2018-10-31 11:23:55 -07:00
Jason Volk
895c52694e ircd::db: Deinline database::comparator ctor. 2018-10-31 11:23:30 -07:00
Jason Volk
fec935463b Merge branch 'libressl' of https://github.com/DanySpin97/charybdis 2018-10-30 13:58:18 -07:00
Jason Volk
22d06a4670 Merge branch 'libressl-2' of https://github.com/DanySpin97/charybdis 2018-10-30 13:38:14 -07:00
Jason Volk
a91cdeec0c ircd::ctx: Reorg / abstract / deinline promise related. 2018-10-30 12:18:16 -07:00
Danilo Spinella
4e1be6d1fd Drop const modifier for libressl 2018-10-29 15:37:51 +00:00
Danilo Spinella
0258ea7999 Add ASN1_TIME_seconds method for LibreSSL
Credits to https://github.com/Castaglia.
a3d65e8683
2018-10-29 15:28:18 +00:00
Jason Volk
0ea1ba2968 ircd:Ⓜ️:room::power: Simplify level_event / level_state interface related. 2018-10-27 14:27:53 -07:00
Jason Volk
01ec851b4d ircd:Ⓜ️:dbs: Improve some column description strings. 2018-10-27 13:44:40 -07:00
Jason Volk
3447a1cc45 ircd:Ⓜ️:room::power: Support power for state events in the interface. 2018-10-25 18:19:54 -07:00
Jason Volk
39eb015565 ircd:Ⓜ️:room: Add join_rule query convenience suite. 2018-10-25 18:19:53 -07:00
Jason Volk
61016b479b ircd:Ⓜ️:room::power: Support defaulting level for the room creator. 2018-10-25 18:09:31 -07:00
Jason Volk
8733e16ca4 ircd:Ⓜ️ Add convenience suite to get or check the room creator's user id. 2018-10-25 18:09:31 -07:00
Jason Volk
e209d1661b ircd:Ⓜ️:room::state: Improve the present() state query. 2018-10-25 18:09:31 -07:00
Jason Volk
7d489a40e7 ircd:Ⓜ️🪝 Adjust hook matching to condition event.membership and event.content.membership. 2018-10-25 18:09:31 -07:00
Jason Volk
13f38782f5 ircd::util: Deinline various utils; minor cleanup. 2018-10-25 13:39:41 -07:00
Jason Volk
d19edbda98 ircd::mods: Improve MAPI header layout; various cleanup. 2018-10-25 13:03:07 -07:00
Jason Volk
30d938530a ircd::client: Tweak log message format. 2018-10-24 19:06:35 -07:00
Jason Volk
d65c22fd9f ircd: Use resource log facility for HTTP status related; add path to log msg. 2018-10-24 18:24:51 -07:00
Jason Volk
133cb4825c ircd:Ⓜ️:rooms: Add central linkage to send a summary to !public. 2018-10-24 18:08:46 -07:00
Jason Volk
72bfd645da ircd:Ⓜ️:rooms: Retype and rekey the state in !public organized by server. 2018-10-24 17:31:22 -07:00
Jason Volk
3a36bbfca5 ircd::server: Fix dangling-type exception_ptr in peer::err by clearing peers here.
This will destruct the exception first before the module which introduced the
exception's type unloads. On daemon shutdown, the module will unload and if
an instance of the exception is still held by peer::err bad things happen.
2018-10-24 17:31:22 -07:00
Jason Volk
e85917abb1 ircd:Ⓜ️:rooms: Add public rooms count for total_room_count_estimate; cleanup. 2018-10-24 17:31:21 -07:00
Jason Volk
f7c7850465 ircd:Ⓜ️:rooms: Add and use interface for publicrooms iteration. 2018-10-24 17:31:21 -07:00