0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-09 11:31:11 +01:00
Commit graph

3261 commits

Author SHA1 Message Date
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
24ad230aed ircd::fmt: Modernize buffering, cleanup, comment various. 2018-11-28 14:41:27 -08:00
Jason Volk
ad5305f151 ircd::util: Use tuple rather than pair for va_rtti value_type. 2018-11-28 13:15:42 -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
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
26ed0ee0e4 ircd::buffer: Add an alignment check util. 2018-11-16 19:22:44 -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
c891b82ebd ircd::ctx: Relayout members for package. 2018-11-15 18:46:40 -08:00
Jason Volk
76913eb6ab ircd:📅 Add typedef; minor cleanup. 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
895768837f ircd::conf: Add support for double/float through lex_castable. 2018-11-14 18:45:10 -08:00
Jason Volk
fb230a6630 ircd::conf: Fix assumptional integer type. 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
6576406123 ircd::json: Various tuple cleanup; split tuple transform suites into files. 2018-11-14 00:58:55 -08:00
Jason Volk
4dd8f5ab3a ircd::buffer: Minor move misplaced buffer base cast operators. 2018-11-14 00:31:55 -08:00
Jason Volk
1f9eadc058 ircd::mods: Minor cleanup; reuse calls in stack. 2018-11-14 00:16:19 -08:00
Jason Volk
fea02ba300 ircd::ctx::latch: Minor rename; add explicit move semantic. 2018-11-13 19:05:16 -08:00
Jason Volk
67e6c63580 ircd::ctx: Add additional shared_mutex timed functionality. 2018-11-13 19:05:16 -08:00
Jason Volk
fe45b08f8a ircd::ctx: Refactor mutexes to reuse ctx::dock for queueing. 2018-11-13 19:05:16 -08:00
Jason Volk
8cbb354c64 ircd::ctx: Fix move assignment semantics. 2018-11-13 19:05:16 -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
d589ce2c61 ircd::tokens: Add default argument for tokens_after/before position. 2018-11-13 10:40:00 -08:00
Jason Volk
19ef3cfb67 ircd::fpe: Condition experimental asynchronous exception use. 2018-11-12 18:55:00 -08:00
Jason Volk
2ab314e687 ircd::buffer: Improve exceptions thrown from aligned_alloc(). 2018-11-12 16:49:06 -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
6967ad1faa ircd::fpe: Add floating point environment suite; error scoping device. 2018-11-11 18:28:28 -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
382dc67ca1 ircd::buffer: Use runtime alignment for unique_buffer rather than template value. 2018-11-09 15:55:20 -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
a7e4acc519 ircd: Split and reorg ircd::hash/ircd::crh related headers and units. 2018-11-08 17:04:15 -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
7c0b4dcbe8 ircd::json: Remove cruft. 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
308bbf854d ircd::resource: Devirtualize resource::method. 2018-11-05 19:16:11 -08:00
Jason Volk
d49b3ba7dd ircd::resource: Minor reorg class layout / opts. 2018-11-05 19:14:53 -08:00
Jason Volk
e03d36aa48 ircd::allocator: Add allocator::scope device. 2018-11-05 16:45:08 -08:00
Jason Volk
2d2e708264 ircd::allocator: Fix fixed allocator template name conflicts. 2018-11-04 18:00:24 -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
6b1fd6c559 ircd:Ⓜ️:dbs: Remove the _event_bad column; patch event exists/good/bad stack. 2018-11-02 19:42:20 -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
1d03747da3 ircd::db: Toward O_DIRECT writes from writable_file environment. 2018-11-02 01:11:36 -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
10cf8e798c ircd::buffer: Abstract the aligned_alloc() out of the unique_buffer template. 2018-11-01 23:27:51 -07:00
Jason Volk
8db063bfc4 ircd::fs: Remove internal alignment paddings. 2018-11-01 22:23:04 -07:00
Jason Volk
a62469a9d6 ircd::fs: Add additional write_opts comments. 2018-11-01 20:26:31 -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
c0e92eb2a1 ircd::fs: Add boolean operators for fd. 2018-10-31 17:54:57 -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
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
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
a91cdeec0c ircd::ctx: Reorg / abstract / deinline promise related. 2018-10-30 12:18:16 -07:00
Jason Volk
0ea1ba2968 ircd:Ⓜ️:room::power: Simplify level_event / level_state interface related. 2018-10-27 14:27:53 -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
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
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
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
Jason Volk
0291a0d83e ircd:Ⓜ️:rooms: Move iteration base to module; fix interface return types. 2018-10-24 17:31:21 -07:00
Jason Volk
62177dca20 modules: Start an m_rooms unit; move publicrooms summary chunk generation. 2018-10-24 17:31:21 -07:00
Jason Volk
6f2c9631a1 ircd::resource: Add snomask'ed log facility. 2018-10-24 12:44:13 -07:00
Jason Volk
dacbbbb051 ircd::client: Add snomask'ed log facility. 2018-10-24 12:44:00 -07:00
Jason Volk
16ac997220 ircd:Ⓜ️:users: Add lower_bounding for_each; prefix search to users console cmd. 2018-10-23 14:17:42 -07:00
Jason Volk
ba70c1b128 ircd:Ⓜ️:room: Add lower_bound state_key only iteration to interface. 2018-10-23 14:16:36 -07:00
Jason Volk
537b7e26aa ircd:Ⓜ️:state: Add unmake_key() inverse convenience to make_key(). 2018-10-23 13:48:23 -07:00
Jason Volk
33aea3fd19 ircd:Ⓜ️ Start a users coarse convenience interface. 2018-10-23 13:32:00 -07:00
Jason Volk
bfa76efbc1 ircd::mods: Reorg primary interface / addl utils. 2018-10-23 11:15:21 -07:00
Jason Volk
15b300657f ircd::mods: Add unloading state; add public interface for loading()/unloading() query. 2018-10-23 11:03:57 -07:00
Jason Volk
242516c853 ircd:Ⓜ️ Add central interface for room state prefetch; add console cmd; apply to client sync. 2018-10-23 10:01:36 -07:00
Jason Volk
8be65012ec ircd::db: Refactor column indexing and state to handle dropped columns. 2018-10-22 07:09:55 -07:00
Jason Volk
183be76a3a ircd::db: Use reference to descriptor in database::column object. 2018-10-22 07:09:16 -07:00
Jason Volk
d3e61abe7d ircd::db: Implement interface for column dropping. 2018-10-22 04:34:05 -07:00
Jason Volk
87feb65615 ircd::db: Integrate more detailed rocksdb::TableProperties into db::sst::info. 2018-10-21 09:26:02 -07:00
Jason Volk
b1bbbfe50b ircd::db: Convert sst::info ctors to assignment operators. 2018-10-21 09:15:30 -07:00
Jason Volk
100325b5a8 ircd::server: deinline peer::err ctor. 2018-10-21 05:35:02 -07:00
Jason Volk
3ffb91d0fd ircd::ctx: Deinline to_asio continuation ctor. 2018-10-21 01:09:07 -07:00
Jason Volk
10d59dec9a ircd::ctx::dock: Make notify() an unconditional notify rather than direct jump. 2018-10-21 01:00:41 -07:00
Jason Volk
045a944911 ircd: Move a2u / pretty() suites from lex_cast to util::; start util.cc unit. 2018-10-21 01:00:41 -07:00
Jason Volk
50acb06dcf ircd: Add missing using std::chrono::duration in stdinc main imports. 2018-10-21 00:55:33 -07:00
Jason Volk
66a936233a ircd::ctx::queue: Add waiter counter. 2018-10-21 00:44:07 -07:00
Jason Volk
337810d7e0 ircd:Ⓜ️:dbs: Add meta block size confs for select direct columns; tweak block sizes. 2018-10-21 00:20:02 -07:00
Jason Volk
5a82a2e4e5 ircd::db: Move stats ticker hostpoint from database::cache to database::column. 2018-10-20 23:30:27 -07:00
Jason Volk
0d6b49a0b6 ircd: Add pretty() human readable time utils. 2018-10-18 17:31:43 -07:00
Jason Volk
5eacd22866 ircd::buffer: Enable the templated value for unique_buffer alignment. 2018-10-18 09:01:25 -07:00
Jason Volk
9da3d20e5c ircd::db: Precache required buffer alignment of random access file for repeat calls. 2018-10-18 08:27:03 -07:00
Jason Volk
02f64c7f34 ircd: Add ios unit to provide a more central control point for asio. 2018-10-17 05:12:10 -07:00
Jason Volk
9833b50551 ircd:Ⓜ️:dbs: Add metadata block size conf items for various meta columns. 2018-10-16 15:53:47 -07:00
Jason Volk
468c7e6f07 ircd::db: Add metadata block size parameter to the descriptor. 2018-10-16 13:39:43 -07:00
Jason Volk
a24270d2bb deps: RocksDB to v5.15.10. 2018-10-15 22:31:29 -07:00
Jason Volk
ca11351692 ircd: Add assertion() overload taking message string. 2018-10-15 22:31:28 -07:00
Jason Volk
f216f60583 ircd:Ⓜ️:vm: Add more options for fine-grained hook call control during eval. 2018-10-11 01:30:31 -07:00
Jason Volk
9aa6e2b768 ircd:Ⓜ️ Rename most vm.notify hooks to vm.effect; Refactor vm::accept related. 2018-10-09 20:56:12 -07:00
Jason Volk
f369af944b ircd::ctx: Remove unused peek. 2018-10-06 22:16:37 -07:00
Jason Volk
efd8a8c640 ircd::buffer: Make shared_buffer work. 2018-10-04 15:42:24 -07:00
Jason Volk
0e5f8141c3 ircd::net: Add more tls cert verification exceptions w/ conf. 2018-10-04 15:16:15 -07:00
Jason Volk
66ab3d85a5 ircd::net: Use ip to test ipport falsiness; typedef a resource record vector. 2018-10-03 14:17:27 -07:00
Jason Volk
95c6f69e5d ircd::net::dns: Add explicit qtype to opts and integrate w/ query stack. 2018-10-02 22:53:23 -07:00
Jason Volk
14a1be0aaf ircd::net: Add validations on hostport constructions. 2018-10-02 18:39:34 -07:00
Jason Volk
67a759ac21 ircd::rfc3986: Add validation suite for hostname strings related. 2018-10-02 18:11:50 -07:00
Jason Volk
1cf0b629cb ircd::spirit: Add a template for the common expectation failure rethrow integration. 2018-10-02 18:11:50 -07:00
Jason Volk
b9aa697206 ircd::resource: Make Access-Control-Allow-Origin response header a conf item. 2018-10-02 15:58:03 -07:00
Jason Volk
fdb3f9bc4a ircd::conf: Disambiguate string item access via cast conversion. 2018-10-02 15:58:03 -07:00
Jason Volk
450ec3523e modules/s_dns: Consolidate DNS related into units of a single module. 2018-10-01 13:56:00 -07:00
Jason Volk
5b7cf5a8eb ircd::net::dns: Reorg namespace structure related. 2018-10-01 12:03:31 -07:00
Jason Volk
cbf96969db ircd::http: Support 524 "A Timeout Occurred" 2018-10-01 11:30:34 -07:00
Jason Volk
05cc6ddf83 ircd::net: Move resolver service out to modules/s_resolver. 2018-09-30 20:18:32 -07:00
Jason Volk
b43b094f2c ircd::rfc1035: Add reverse qtype mapping. 2018-09-30 20:18:32 -07:00
Jason Volk
5a627efaad ircd::net::dns: Move cache related out to modules/s_dns. 2018-09-30 20:18:32 -07:00
Jason Volk
da8beda0c3 ircd:Ⓜ️🆔 Support intuitive constructions of m::node::id. 2018-09-30 17:58:16 -07:00
Jason Volk
4f3f729d9b ircd:Ⓜ️🆔 Minor cleanup. 2018-09-30 17:37:24 -07:00
Jason Volk
ccaaf22cac ircd::net::dns: Use conf item for resolver servers. 2018-09-29 19:56:22 -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
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
a220891800 ircd::util: Support comparator in instance_multimap template. 2018-09-29 16:46:55 -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
771ecaef7e ircd::client: Simplify log calls with single loghead() string. 2018-09-27 17:05:19 -07:00
Jason Volk
0d4013536a ircd::util: Add overload to ircd::string() to pubsetbuf() a provided buffer. 2018-09-27 17:00:15 -07:00
Jason Volk
b93b4e31f6 ircd::client: Move dock into client namespace. 2018-09-27 16:36:50 -07:00
Jason Volk
e542ef76fb ircd::db: Add per-cache statistics. 2018-09-26 18:00:18 -07:00
Jason Volk
45c215eb8d ircd::db: Comment to clarify txn iface. 2018-09-26 15:28:36 -07:00
Jason Volk
3421667a45 ircd::db: Interface to get cache pinned usage. 2018-09-26 02:34:47 -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
c90b530656 ircd:Ⓜ️:feds: Add central interface linkage for feds head. 2018-09-25 17:14:48 -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
64ccbea79d ircd:Ⓜ️:room: Refactor out remaining "test protocol" iterations from state interface. 2018-09-25 16:02:19 -07:00
Jason Volk
4788ac4e86 ircd:Ⓜ️ Redeclare is_sigil() suite for clarity. 2018-09-25 15:26:38 -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
2f3c461664 ircd::db: Place linkage for db comparators so they have one address. 2018-09-24 22:00:21 -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
4214977b78 ircd: Rename; use precision for pretty_iec(). 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
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
1faa7e5fdd ircd::db: Update and add various README's. 2018-09-19 16:11:21 -07:00
Jason Volk
53651ad808 ircd::db: Move database::descriptor out to db::descriptor. 2018-09-19 15:38:37 -07:00
Jason Volk
d13ed5854b ircd::ctx::queue: Remove exception assertion on pops. 2018-09-19 01:44:13 -07:00
Jason Volk
592ad284f9 ircd::ctx::queue: Simplify pops; universal push. 2018-09-18 23:53:44 -07:00
Jason Volk
d2fbc30d4e ircd::ctx: Use better notify member here. 2018-09-18 21:41:21 -07:00
Jason Volk
be7a20d39a ircd::ctx: Move any renotifying to the ctx::dock itself. 2018-09-18 21:35:27 -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
a66c312c92 ircd::ctx::queue: Renotify the dock on context interruption, then propagate. 2018-09-18 16:43:50 -07:00
Jason Volk
fc09ba81af ircd::db: Add compaction callback interface. 2018-09-18 15:07:09 -07:00
Jason Volk
75ea43885b ircd:Ⓜ️:dbs: Add conf items for column block sizes. 2018-09-17 23:42:25 -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
0ed617c889 ircd:Ⓜ️🪝 Add option for propagating exceptions. 2018-09-17 20:45:05 -07:00
Jason Volk
38b3bf3abe include/Makefile: Add other flags vars. 2018-09-17 18:52:26 -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
fb6bb04207 ircd: Various fixes for resolution of constexpr string_view & hash related; cleanup. 2018-09-16 21:28:46 -07:00
Jason Volk
f3539ddb37 ircd:Ⓜ️:room: Fix stale comment. 2018-09-16 21:28:45 -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
5218cd681a ircd: Add missing minutes chrono import. 2018-09-16 18:19:23 -07:00
Jason Volk
c06c119ef9 ircd:Ⓜ️:name: Minor; make types consistent; fix spacing. 2018-09-15 11:25:19 -07:00
Jason Volk
d72713d91c ircd::util: Fix comment. 2018-09-15 10:15:02 -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
e6a62b41b3 ircd::util: Start an env var convenience suite. 2018-09-15 03:27:26 -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
16bbecf649 ircd::util: Add a callbacks list util. 2018-09-15 00:35:57 -07:00
Jason Volk
9f35483e4e ircd: Include unistd.h in stdinc stack; remove the syscall() fwddecl. 2018-09-15 00:14:22 -07:00
Jason Volk
5b870f9437 ircd: Add ihas() case insensitive string searching. 2018-09-14 07:44:44 -07:00
Jason Volk
8900c7d95e Add datadir (share) configure, Makefile and ircd::fs related. 2018-09-13 22:02:52 -07:00
Jason Volk
9232319f0c modules/vm: Add eval argument to various hooks; tweak eval struct. 2018-09-13 19:49:25 -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
75a05d864c ircd::mods: Minor move import member defs outside of class def. 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
0238364421 ircd::util: Fix template function reference. 2018-09-13 06:39:04 -07:00
Jason Volk
7d94b1c17b ircd: Relax noexcept in std::function template declarations. 2018-09-13 05:12:25 -07:00
Jason Volk
994916b7eb ircd::buffer: Deconflict buffers templates in separate namespace. 2018-09-13 05:12:10 -07:00
Jason Volk
09529ae311 ircd: Fix std::ios::openmode name. 2018-09-13 05:12:01 -07:00
Jason Volk
e1b9d69c21 ircd::json: Fix exporting path operator<< to ircd:: in include stack here. 2018-09-13 05:02:24 -07:00
Jason Volk
5e06c4795b ircd: Replace any std::uncaught_exception() -> std::uncaught_exceptions(). 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
8593d09c80 ircd::json: Enforce string type for member key on constructions. 2018-09-05 23:23:26 -07:00
Jason Volk
85aef85f61 ircd:Ⓜ️:vm: Support client unsigned.transaction_id. 2018-09-05 20:16:01 -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
c189feb87b ircd::json: Assignment semantic for 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
6dc3f4044a modules: Checkpoint vm_fetch fwiw (disabled from active eval codepaths). 2018-09-04 23:27:01 -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
bb6ab49fe1 ircd::exception: Update comment. 2018-09-04 21:09:12 -07:00
Jason Volk
aeb41e7341 ircd:Ⓜ️ Add pretty_msgline() suite. 2018-09-04 06:35:10 -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
1346fdd639 ircd: Fix bug. 2018-09-04 00:43:54 -07:00
Jason Volk
60a0694853 construct: Add program option to disable direct IO. 2018-09-03 07:59:05 -07:00
Jason Volk
be84bf83de ircd::conf: Add item init callback. 2018-09-03 04:41:14 -07:00
Jason Volk
08a35bdc6a ircd::conf: Add reset() suite to rexecute item callbacks. 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
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
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
1154d15c5e ircd::util: Add instance_multimap. 2018-09-01 21:04:34 -07:00
Jason Volk
349edc2c97 ircd::util: Fix instance_list noexcept specification for move semantics. 2018-09-01 20:45:04 -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
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
5f9c12bddc ircd::ctx: Break down when() templates; fix mutability. 2018-08-30 21:20:43 -07:00
Jason Volk
4b2ff18f6c ircd::ctx: Add ADL'ed state() convenience for promise template. 2018-08-30 19:53:16 -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
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
5dd9b7a3cf ircd::fs: Support for finding the O_DIRECT alignments from system. 2018-08-28 20:15:40 -07:00
Jason Volk
0f2dd85a47 ircd::ctx: Disable interrupt for the view producer sequence. 2018-08-28 18:58:09 -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
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
0787b5ff71 ircd::openssl: Add dhparam generator suite. 2018-08-28 13:01:10 -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
0eaa2fe211 ircd::ctx: Add motivation section to README. 2018-08-26 20:46:59 -07:00
Jason Volk
04175d62b2 ircd::ctx: Object semantics on unlock_guard<>. 2018-08-26 20:46:59 -07:00
Jason Volk
600a73d566 ircd::ctx: Add an upgrade_lock<> template. 2018-08-26 20:46:59 -07:00
Jason Volk
3a8f3c58de ircd::ctx: Add some indicators on shared_mutex. 2018-08-26 18:01:12 -07:00
Jason Volk
26d062e3f7 ircd::ctx: Fix erroneous have-include guard here. 2018-08-26 17:19:53 -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
74bb040b8c ircd::resource: Make response head buffer size a named const; fix comment. 2018-08-25 13:58:49 -07:00
Jason Volk
6fc078395b ircd::fs: Fix formatting. 2018-08-24 15:44:00 -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
0f79ad7b08 ircd:Ⓜ️:room: Officiate random_origin w/ central linkage; use view closure. 2018-08-24 04:19:55 -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
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
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
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