0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-10 12:38:36 +02:00
Commit graph

2536 commits

Author SHA1 Message Date
Jason Volk 4dc1e2d7fc ircd::json: Add tuple ctor from json::object with keys selection. 2019-01-16 16:38:14 -08:00
Jason Volk 0cb79728f9 ircd::json::tuple: Add membership test for keys selection. 2019-01-16 16:38:14 -08:00
Jason Volk 2b12c8a9c5 ircd:Ⓜ️:dbs: Use event source if available; add write options. 2019-01-16 15:55:08 -08:00
Jason Volk f857e25ea7 ircd:Ⓜ️:event: Add a source json::object as a member. 2019-01-16 14:35:10 -08:00
Jason Volk 918bc95d1a ircd::db: Add nothrow column construction overload. 2019-01-16 13:23:00 -08:00
Jason Volk 4ded053406 ircd::db: Add cfid() lookup suite. 2019-01-16 13:21:36 -08:00
Jason Volk 5ae495031f ircd:Ⓜ️:event::fetch: Improve fetch options related; minor cleanup. 2019-01-16 12:19:25 -08:00
Jason Volk 1e7325eb40 ircd::db: Allow default empty index for cell ctor. 2019-01-15 19:03:52 -08:00
Jason Volk 52a9ca9635 ircd:Ⓜ️:vm: Add json vm option. 2019-01-15 19:03:52 -08:00
Jason Volk c5489cecb0 ircd:Ⓜ️:event::fetch: Add options to seek(); add event_json query branch. 2019-01-15 19:03:52 -08:00
Jason Volk c314a9bb78 ircd:Ⓜ️:dbs: Add event_json column with conditional indexer. 2019-01-15 15:36:18 -08:00
Jason Volk 7c998e48ed ircd:Ⓜ️:dbs: Cleanup / reorg write-indexers stack. 2019-01-15 13:00:15 -08:00
Jason Volk 1ab20cf721 ircd:Ⓜ️ Reorg / split / de-friend-inject various event interfaces. 2019-01-15 12:49:53 -08:00
Jason Volk cbf456a388 ircd: Rename and refactor ircd::assertion interface into ircd::panic. 2019-01-13 16:37:31 -08:00
Jason Volk 522656047e ircd:Ⓜ️:events: Add clarification to comment. 2019-01-13 14:02:54 -08:00
Jason Volk 4871928bfa ircd::ctx: Partial de-inline of dock methods. 2019-01-13 13:57:34 -08:00
Jason Volk 3fae228c1a ircd::json: Simplify json::object interface: eliminate path traversing overloads. 2019-01-12 16:47:48 -08:00
Jason Volk 8421dd46b6 modules/client/register: Support the inhibit_login option. 2019-01-12 12:34:34 -08:00
Jason Volk b42ded1fc7 ircd::http: Add string views to make the raw head data available. 2019-01-12 11:56:00 -08:00
Jason Volk f6e1311e21 ircd::json: Split path related from util header. 2019-01-12 11:51:15 -08:00
Jason Volk f55ad72ed5 ircd::db: Maintain our own names for caches. 2019-01-11 16:21:04 -08:00
Jason Volk 1198f7bc56 ircd::json::stack: Add object::append() convenience. 2019-01-10 16:58:44 -08:00
Jason Volk 4c495e1f44 modules/client/sync: Various cleanup / simplify. 2019-01-10 16:58:37 -08:00
Jason Volk 26ee1c9b5c ircd:Ⓜ️ Minor cleanup. 2019-01-10 13:16:41 -08:00
Jason Volk 2d860b25a8 ircd:Ⓜ️:sync: Checkpoint. 2019-01-09 20:39:12 -08:00
Jason Volk 5815fc87c2 ircd:Ⓜ️:events: Simplify interface. 2019-01-09 18:08:29 -08:00
Jason Volk 6c96e0d785 ircd:Ⓜ️:events: Simplify the for_each iteration interface. 2019-01-09 17:11:00 -08:00
Jason Volk 067a2f8651 ircd::util: Use a long double nanoseconds template rep. 2019-01-09 17:05:58 -08:00
Jason Volk 443905859f ircd:Ⓜ️:sync: Additional abstraction; checkpoint polylog /sync modules. 2019-01-08 17:17:41 -08:00
Jason Volk 32aa9b4833 ircd:Ⓜ️ Various cleanup. 2019-01-08 15:53:42 -08:00
Jason Volk f9ec33916c ircd::json::stack: Add internal convenience member instance in the object and array class. 2019-01-08 15:53:41 -08:00
Jason Volk ce999b916a ircd::json::stack: Add chase device; add top() conveniences. 2019-01-08 11:06:00 -08:00
Jason Volk cf6fc070a7 ircd::json::stack: Keep state for member append; null member if no append. 2019-01-07 14:00:24 -08:00
Jason Volk 77295f3a3e ircd::fs: Minor comment clarification. 2019-01-05 17:18:43 -08:00
Jason Volk 005e4217ed ircd::mods: Various cleanup. 2019-01-05 17:18:08 -08:00
Jason Volk b878f577d5 ircd:Ⓜ️:user: Add a query for user to user visibility. 2019-01-04 14:47:46 -08:00
Jason Volk 61e88e75bc modules/client/sync: Additional sync items reorganization. 2019-01-04 14:47:01 -08:00
Jason Volk 86911226ed ircd:Ⓜ️ Preliminary modular client sync system. 2019-01-03 17:21:02 -08:00
Jason Volk 1cb3db6726 ircd::util: Add scope_restore; remove scope_light because generalized. 2019-01-02 15:19:05 -08:00
Jason Volk 815252e71f ircd: Remove unused ap/cbor on this branch. 2019-01-02 12:27:17 -08:00
Jason Volk 523577c652 ircd::json: Add doc \brief for json::buffer. 2019-01-02 10:48:30 -08:00
Jason Volk 7628b8b7f7 ircd::util: Add scope_count tool. 2019-01-02 10:48:05 -08:00
Jason Volk 09424ab344 ircd::util: Add scope_light tool. 2019-01-02 10:47:56 -08:00
Jason Volk 84265c3a13 ircd::ctx::parallel: Ensure the counters are not affected by exceptions. 2019-01-01 21:15:10 -08:00
Jason Volk 7f4bb1a7db ircd::ctx::parallel: Handle case for empty pool by executing receiver immediately. 2019-01-01 21:15:10 -08:00
Jason Volk c2103ec0d6 ircd::fs: Add sysfs access interface. 2019-01-01 21:15:10 -08:00
Jason Volk 23c1a87c4c ircd::fs: Add tools for device related. 2019-01-01 19:53:12 -08:00
Jason Volk 254e6c287d ircd::ctx: Synchronize workers before rethrowing the eptr. 2019-01-01 17:05:15 -08:00
Jason Volk eba727a9db ircd::db: Add a counter for the env pool tasks. 2018-12-31 16:12:10 -08:00
Jason Volk d983970907 ircd::http: Improve conditions for header generation. 2018-12-31 12:28:28 -08:00
Jason Volk 1ceded5ffa ircd: Cleanup/simplify case-insensitive comparisons. 2018-12-31 12:28:28 -08:00
Jason Volk 57079c0276 ircd::http: Add more functionality to headers class. 2018-12-31 12:28:28 -08:00
Jason Volk 27bd661e5a ircd::parse: Add additional const_buffer construction for parse::buffer. 2018-12-31 12:28:28 -08:00
Jason Volk d7ee810bc0 ircd::parse: Fix misconstruction; fix loop condition. 2018-12-31 12:28:28 -08:00
Jason Volk 6a25df6582 ircd::http: Check for user supplied header before generating one. 2018-12-30 18:07:18 -08:00
Jason Volk 6e71c05586 ircd:Ⓜ️:error: Improve constructions; ensure json content-type. 2018-12-30 17:35:34 -08:00
Jason Volk af37529470 ircd:Ⓜ️:vm: Add a second sequence number; split out pdu write function. 2018-12-30 17:09:57 -08:00
Jason Volk 52c3350817 ircd:Ⓜ️:vm: Add http::code to error construction stack. 2018-12-30 16:24:04 -08:00
Jason Volk 56474586a1 ircd:Ⓜ️:vm: Use the proper m::error derived-class construction. 2018-12-30 15:59:18 -08:00
Jason Volk 43a354da49 ircd::util: Add a format option for pretty_nanoseconds() et al for abbreviated units. 2018-12-30 13:38:14 -08:00
Jason Volk 663b164f39 ircd::fs: Abstract the common options into opts struct. 2018-12-29 20:02:22 -08:00
Jason Volk 3466597981 ircd::fs: Various reorg; cleanup. 2018-12-29 19:43:17 -08:00
Jason Volk c93cd90db1 ircd::aio: Simplify stats. 2018-12-28 16:30:27 -08:00
Jason Volk 30dc2ce7ed ircd::fs: Various cleanup / renames. 2018-12-28 15:30:29 -08:00
Jason Volk 9bdb7410d2 configure: Move boost deprecation warning suppression to asio.h. 2018-12-28 14:35:10 -08:00
Jason Volk 16ebbbfa8a ircd::ctx: Move and adjust default stack size. 2018-12-28 14:07:40 -08:00
Jason Volk a4ed2debd4 ircd::conf: Update doc related to conf item env vars and the related namespace. 2018-12-28 13:36:23 -08:00
Jason Volk b50bb8e49b ircd::ios: Add convenience function to check if this thread is same as static. 2018-12-28 13:24:33 -08:00
Jason Volk c97fcb3b2a ircd::ios: Add function to check if an ios available. 2018-12-28 13:05:03 -08:00
Jason Volk 4a47b39298 ircd::ctx: Create and use an options structure for ctx::pool. 2018-12-28 12:57:32 -08:00
Jason Volk c9c280c864 ircd::ctx: Simplify queue interface; remove access to dock. 2018-12-28 12:42:08 -08:00
Jason Volk fe0f548496 ircd::db: Update / cleanup / comment various opts related. 2018-12-28 10:55:57 -08:00
Jason Volk 364302c212 ircd::ctx: Add soft and hard limit logic for submitting to pool. 2018-12-27 17:20:42 -08:00
Jason Volk 73459e75ff ircd::ctx: Update assumptions for yielding during pool submit. 2018-12-27 16:30:04 -08:00
Jason Volk 62bf807ad2 ircd::db: Wire up more IOPriority and write_opts related. 2018-12-27 14:58:04 -08:00
Jason Volk 7f41ca2f48 ircd::fs: Add nodelay option to write_opts; relax the flush on write by default. 2018-12-27 14:58:04 -08:00
Jason Volk 0c5ebde1fc ircd::fs::aio: Add blocking point to manage io_submit's in flight; various reorg. 2018-12-27 14:58:03 -08:00
Jason Volk 69ae8308e5 ircd::fs::aio: Various improvements; fix cancel w/ queue; class member queues rather than tls. 2018-12-27 14:58:03 -08:00
Jason Volk e58a975750 ircd::fs: Use a nice-style value for request priority; default to zero. 2018-12-27 14:58:03 -08:00
Jason Volk 2f5d175957 ircd::db: Add cached membership test to row interface. 2018-12-26 19:45:04 -08:00
Jason Volk 38920719de ircd:Ⓜ️ Add suite to check if event is cached. 2018-12-26 19:01:13 -08:00
Jason Volk 4c5891e354 ircd::ctx: Block the caller after submit when parallel saturated. 2018-12-26 17:35:49 -08:00
Jason Volk d80a39097c ircd: Tweak vector_view construction semantics. 2018-12-26 17:19:03 -08:00
Jason Volk b0d5e5d4c8 ircd::ctx: Improve ctx::parallel template. 2018-12-26 17:19:03 -08:00
Jason Volk 444000faf1 ircd::fs: Add a nodelay option on reads. 2018-12-26 15:42:23 -08:00
Jason Volk 3d79c94bb2 ircd::ctx: Add ctx::parallel device. 2018-12-24 18:36:56 -08:00
Jason Volk 9f70ce1b28 ircd::ctx: Add pool::min() convenience. 2018-12-24 16:20:03 -08:00
Jason Volk c1c11b4aed ircd::db: Enrich seek(row) opts; add proper error handling and propagation. 2018-12-24 14:33:35 -08:00
Jason Volk b035bb9824 ircd::db: No need to copy gopts in db::cell related. 2018-12-24 14:32:33 -08:00
Jason Volk 171f5ff623 ircd::fs: Use string_view for error fmt string args. 2018-12-24 13:34:59 -08:00
Jason Volk 2876398c04 ircd::db: Simplify/Consolidate error hierarchy. 2018-12-24 13:32:22 -08:00
Jason Volk aa166d0c5d ircd::json::stack: Add noexcept for non-throwers called during stack unwinds. 2018-12-24 12:06:57 -08:00
Jason Volk 387e8b8eed ircd::ctx: Improve pool loop; improve log msg; add interruption point. 2018-12-24 12:06:05 -08:00
Jason Volk b8fd399bf4 ircd::ctx: Remove this export down to ircd::. 2018-12-23 15:23:53 -08:00
Jason Volk 29e7fa3515 ircd::ctx: Use closure for continuation. 2018-12-22 21:03:14 -08:00
Jason Volk 37ba013413 ircd::ctx: Simplify continuation; eliminate to_asio derived type. 2018-12-22 20:11:00 -08:00
Jason Volk c2b344b74e ircd: Allow exceptions to propagate from various interruptors. 2018-12-22 17:24:48 -08:00
Jason Volk 365cf865d0 ircd::ctx: Various improvements/reorg of continuation/to_asio. 2018-12-22 17:24:48 -08:00
Jason Volk d5ffc6b0de ircd::ctx: Improve prof related; add full ticker of counters. 2018-12-22 15:17:18 -08:00
Jason Volk 39d4f2fb83 ircd::ctx: Expose the profile state struct in the prof:: interface. 2018-12-22 13:47:13 -08:00
Jason Volk a590ad1a03 ircd::ctx: Another attempt at using continuation dtor as an interruption point. 2018-12-22 13:36:48 -08:00
Jason Volk 3c4591b121 ircd::fs: Fix fs::error template. 2018-12-21 15:32:12 -08:00
Jason Volk 31ffcfa859 ircd:Ⓜ️🆔 De-template grammars and assume iterator type; minor fixes. 2018-12-21 13:55:11 -08:00
Jason Volk a5ebc28928 ircd::fs::aio: Reorganize with symbol overriding; add conf items. 2018-12-21 13:04:57 -08:00
Jason Volk c3d95aa8de ircd::fs: Remove the thread_local convenience for make_iov(). 2018-12-21 12:57:58 -08:00
Jason Volk 2f36fec41a ircd::fs: Cleanup the duplicate support state indicators. 2018-12-21 12:09:44 -08:00
Jason Volk f9ee616a9a ircd::ctx::prof: Use a profile instance as a totals counter. 2018-12-21 11:55:43 -08:00
Jason Volk 2c5d6bb7ba ircd::fs::aio: Preliminary io_submit queue to leverage disk controller optimizations. 2018-12-21 10:36:05 -08:00
Jason Volk 9d7a53ae49 ircd::ctx: Move resume-interruption point to this_ctx::wait() suite. 2018-12-20 13:27:21 -08:00
Jason Volk 009979a544 ircd:Ⓜ️ Increase error buffer size. 2018-12-19 15:57:23 -08:00
Jason Volk 605cce9ed1 ircd::db: Propagate the FlushOptions.allow_write_stall option; improve sort cmd. 2018-12-19 13:58:09 -08:00
Jason Volk 5a0a9989e4 ircd::log: Rename facility to level. 2018-12-19 12:52:08 -08:00
Jason Volk b4910319e0 ircd: Add various comments / documentations. 2018-12-19 12:35:21 -08:00
Jason Volk 0017a942e2 ircd::info: Reorganize info. 2018-12-19 12:35:21 -08:00
Jason Volk 566c2ef4ec ircd::conf: Add int32 conf items. 2018-12-18 17:00:11 -08:00
Jason Volk bd5ecceb65 ircd::info: Reorg / add some more info. 2018-12-18 16:01:45 -08:00
Jason Volk 3afce36dd4 ircd::info: Get sysconf() for maximum AIO operations. 2018-12-18 15:44:43 -08:00
Jason Volk 582628fb71 ircd::fs: Add read/write options to restart operation on EINTR. 2018-12-18 14:44:25 -08:00
Jason Volk 254d5ccb50 ircd::fs: Add 'all' write option with internal loop. 2018-12-18 14:44:25 -08:00
Jason Volk c312f07893 ircd::buffer: Export buffers:: down to ircd::. 2018-12-18 14:44:25 -08:00
Jason Volk 541b020a19 ircd::db: Add read options for 'aio' and 'all' to file env classes. 2018-12-18 14:44:25 -08:00
Jason Volk bb3a68a95e ircd::fs: Handle partial reads internally with 'all' option. 2018-12-18 14:44:25 -08:00
Jason Volk 77a84b18d3 ircd::fs: Add offset to make_iov() suite. 2018-12-18 14:21:09 -08:00
Jason Volk a7b2f76c11 ircd::ctx: Add slice_usage_warning device. 2018-12-17 16:20:53 -08:00
Jason Volk 4686139f8e ircd::ctx: Rework the prof stack to make a public test interface. 2018-12-17 15:24:41 -08:00
Jason Volk beda5abc2a ircd:Ⓜ️:dbs: Add conf items for some buffer sizes. 2018-12-17 13:18:27 -08:00
Jason Volk ba10948e9d ircd::ctx: Move principal interruption point into continuation. 2018-12-16 18:37:51 -08:00
Jason Volk fae947d433 ircd::db: Add a background cancel interface w/ console cmd. 2018-12-16 18:37:51 -08:00
Jason Volk 55023041b8 ircd::db: Reorg environment task pool related. 2018-12-16 18:37:51 -08:00
Jason Volk 2a23d9e6dd ircd::ctx: Add more interface access to pool/queue; various cleanup. 2018-12-16 16:27:11 -08:00
Jason Volk 72859c650b ircd::ctx: Convert various name character strings to string_view. 2018-12-16 16:27:11 -08:00
Jason Volk a513ba9cf3 ircd::db: Deinline some env::state related. 2018-12-16 16:27:11 -08:00
Jason Volk e22162f505 ircd::db: Add noexcept specifiers to all port interfaces. 2018-12-16 16:27:11 -08:00
Jason Volk ad46a3e49a ircd::ctx: Relax object permissions. 2018-12-15 23:05:48 -08:00
Jason Volk a2a66eb314 ircd::fs: Deinline various error ctor; simplify various error handling. 2018-12-15 20:50:32 -08:00
Jason Volk 3fd689931c ircd::db: Add state and conditions for AIO operations on sequential_file. 2018-12-15 20:29:54 -08:00
Jason Volk 2cc7831770 ircd::fs: Add option to bypass AIO for specific operations. 2018-12-15 18:17:59 -08:00
Jason Volk 70d4b32c3d ircd::db: Add interface for pause/continue of background work w/ console cmd. 2018-12-14 17:27:48 -08:00
Jason Volk 2eaf5c74c2 ircd::fmt: Minor simplify; cleanup. 2018-12-14 15:51:12 -08:00
Jason Volk c4d5f03725 ircd::fs: Add compat interface for range flush()/sync(). 2018-12-13 18:04:48 -08:00
Jason Volk 5e8d5562da ircd::fs: Simplify interface. 2018-12-13 17:46:08 -08:00
Jason Volk 9d423f84d8 ircd:;fs: Rename various fsync/sync related. 2018-12-13 16:54:09 -08:00
Jason Volk 399198deac ircd::ctx: Add flags for slice and stack usage watchdog exemption. 2018-12-13 16:21:54 -08:00
Jason Volk e2cb79e28d ircd::db: Minor cleanup; comments. 2018-12-13 13:44:37 -08:00
Jason Volk 04f3dc4d17 ircd::fs: Make fs::error inherit from std::system_error. 2018-12-12 17:32:24 -08:00
Jason Volk 62874ff498 ircd::db: Add src and dst level arguments to db::compact files interface. 2018-12-12 15:53:16 -08:00
Jason Volk b80735c575 ircd::fs: Add sync()/syncfs(). 2018-12-12 13:16:47 -08:00
Jason Volk 41fd658b24 ircd::db: Add interface to get column and database options. 2018-12-12 10:17:47 -08:00
Jason Volk a133235f82 ircd::db: Move database::options to db::options. 2018-12-12 10:17:47 -08:00
Jason Volk e97742ef39 ircd::net: Add loghead() similar to client::loghead(). 2018-12-12 10:12:24 -08:00