Jason Volk
7201a11c7a
ircd::db: Optimize iterator comparison operators.
2020-09-21 20:50:58 -07:00
Jason Volk
2741ab785c
ircd::db: Inline trivial operator wrappers.
2020-09-21 20:50:58 -07:00
Jason Volk
8155c38f7f
ircd::db: Compression hierarchy; increase compaction readahead; table options.
2020-09-21 20:50:57 -07:00
Jason Volk
5ac0457d55
configure: Support libzstd related in build.
2020-09-21 16:22:23 -07:00
Jason Volk
ca9314ce49
ircd::db: Add newer checksum interposition.
2020-09-21 16:22:23 -07:00
Jason Volk
312625bc08
ircd::db: Use ZSTD compression by default.
2020-09-20 12:50:17 -07:00
Jason Volk
e2ac5c6fc7
ircd::db: Use conf item for default compression string in descriptor.
2020-09-20 12:50:17 -07:00
Jason Volk
358008e8e7
ircd::db: Improve compression options; bottommost LZ4HC.
2020-09-19 07:47:21 -07:00
Jason Volk
305aa691e7
ircd::json: Improve return count; add condition for noisy dwarning.
2020-09-18 22:09:56 -07:00
Jason Volk
6edb1d4eec
ircd::db: Skip infolog under condition with mostly zero values.
2020-09-18 22:09:53 -07:00
Jason Volk
f5931e8fc7
ircd::server: Fix repeated log message; additional assertions.
2020-09-18 22:01:16 -07:00
Jason Volk
60382c2371
ircd::db: Improve universal compaction descent; flush on shutdown.
2020-09-18 18:47:15 -07:00
Jason Volk
5762513c73
ircd::db: Use warning level for certain compaction/flush reasons.
2020-09-18 18:47:15 -07:00
Jason Volk
229efaf486
ircd::db: Obtain file creation time if available in metadata.
2020-09-18 18:47:15 -07:00
Jason Volk
d229f32a46
ircd::json: Fix double indirect call.
2020-09-18 18:47:15 -07:00
Jason Volk
70860ecaa2
ircd::db: Add parallel read suite to interface.
2020-09-17 10:49:41 -07:00
Jason Volk
ac64faee5f
ircd::db: Minor reorder column definitions.
2020-09-17 10:49:41 -07:00
Jason Volk
66368d1cdc
ircd::db: Add typedefs for parallel query argument templates.
2020-09-17 10:49:41 -07:00
Jason Volk
bd3d34adb2
ircd::db: Additional compaction log related.
2020-09-17 10:49:41 -07:00
Jason Volk
6fed4f53d7
ircd::db: Reorg options by compaction type.
2020-09-16 06:55:14 -07:00
Jason Volk
f8841a7f60
ircd::server: Check for empty buffer and bail before recv()'ing on it.
2020-09-16 01:42:27 -07:00
Jason Volk
ebef47f32d
ircd::db: Improve logged flush and compaction information.
2020-09-16 01:03:42 -07:00
Jason Volk
4ecb2d0d5f
ircd: Add distinct maintenance mode; chain write-avoid/read-only and net listen modes.
2020-09-15 22:16:11 -07:00
Jason Volk
772022a74e
ircd::ed25519: Add create option to ctor; remove reference to global.
2020-09-15 18:46:28 -07:00
Jason Volk
1668bee2e5
ircd::json: Logical revert of a4766e583; reduces to minor cleanup/simplify.
2020-09-15 16:53:45 -07:00
Jason Volk
a2df9a9cdc
ircd::db: Add conf item to toggle WAL in write opts.
2020-09-15 04:33:28 -07:00
Jason Volk
3cf21998ae
ircd::db: Partial revert of 614f9cb31
due to unaligned throughput complications.
2020-09-15 04:33:28 -07:00
Jason Volk
9e7991900c
ircd::db::database::env: Fix size assumption for this->buffer.
2020-09-15 04:33:28 -07:00
Jason Volk
0a7b8f03c9
irdb::db::database::env: Fix deprecated unbounded buffer offset constructions.
2020-09-15 04:33:28 -07:00
Jason Volk
8bdedb569c
ircd::db: Add preliminary custom rate limiter drop-in.
2020-09-15 04:33:28 -07:00
Jason Volk
f7400edc75
ircd::db: Tweak write-side column buffer and level0 scale; concurrent flush.
2020-09-15 04:33:28 -07:00
Jason Volk
439fb28854
ircd::fs: Relax assertion on buffer length at alignment.
2020-09-15 04:33:28 -07:00
Jason Volk
00657475d1
ircd::db: Relax assertions from concurrent flush.
...
ircd::db: Relax assertion when reflecting IO_TOTAL.
2020-09-15 04:33:28 -07:00
Jason Volk
121de5a6dc
ircd::db: Fix comment; tweak universal compaction max width.
2020-09-14 14:16:31 -07:00
Jason Volk
a02bd474d7
Fix EXTRA_CXXFLAGS append order regression.
2020-09-13 14:32:47 -07:00
Jason Volk
a4766e5834
ircd::json: Remove redundant type determination from value constructions.
2020-09-13 10:29:26 -07:00
Jason Volk
e39182be25
ircd::fs: Add prefetch convenience to interface.
2020-09-13 08:42:34 -07:00
Jason Volk
66f99f70c2
ircd::fs: Fix ifdef wrapping for symbol.
2020-09-13 08:42:34 -07:00
Jason Volk
ed01ed05dc
ircd::db: Variable per-column write buffer derived from block size.
2020-09-12 22:31:06 -07:00
Jason Volk
614f9cb312
ircd::db: Enable asynchronous flush and compaction.
2020-09-12 07:03:21 -07:00
Jason Volk
afe0b96249
ircd::db: Support universal compaction by default; various write tweaks.
2020-09-12 07:03:21 -07:00
Jason Volk
cbeedf2cf7
ircd::ed25519: Add non-throwing failure state for instances; bool operators.
2020-09-10 23:50:47 -07:00
Jason Volk
da56bb1a9d
ircd::db: Allow more L0 files before trigger for larger combines.
2020-09-10 23:50:47 -07:00
Jason Volk
407202f85f
ircd::util: Improvements to timer tool; fix accumulator semantics; comments.
2020-09-10 23:50:47 -07:00
Jason Volk
f51ffb1530
ircd::db: Tweak block restart toward more conservative interval.
2020-09-10 12:45:44 -07:00
Jason Volk
84564aee5f
ircd::simd: Add a streaming transform boilerplate template for the common pattern.
...
ircd::simd: Add a streaming consumer boilerplate template for the common pattern.
ircd::json: Simplify w/ stream templates; update counter lane convention.
2020-09-09 04:47:27 -07:00
Jason Volk
98dd705de9
ircd::ctx: Default to DISPATCH method to wrap context switch spawn; simplify stack.
2020-09-08 22:43:30 -07:00
Jason Volk
a68702249d
ircd::db: Add interface to count cache entries.
...
modules/console: Add count column to db cache cmd.
2020-09-08 22:27:06 -07:00
Jason Volk
023e1341a1
ircd::json: Only call _post_append() under nominal unwind.
2020-09-07 17:01:45 -07:00
Jason Volk
7eaf60c308
ircd::fs: Add interface to madvise on mapped file.
2020-09-07 17:01:45 -07:00
Jason Volk
97248b2f44
ircd::simd: Refactor typedefs to not require external header.
2020-09-06 00:11:17 -07:00
Jason Volk
82308ee4b3
ircd::simd: Consolidate sum_ templates into lateral template template.
2020-09-05 14:34:48 -07:00
Jason Volk
6577365d40
ircd::log: Remove unnecessary flush.
2020-09-04 21:09:49 -07:00
Jason Volk
ba564d6bdb
ircd: Tweak continue handler format string.
2020-09-04 21:09:49 -07:00
Jason Volk
c92127a8cd
ircd::utf16: Fix masking of unused lane result values.
2020-09-04 00:16:18 -07:00
Jason Volk
dd610a0d6b
ircd::json: Add faster backward branch without bitcounting in inner loop.
2020-09-03 21:14:43 -07:00
Jason Volk
68ffcea1fc
ircd::json: Additional document comments; minor cleanup.
2020-09-03 21:14:43 -07:00
Jason Volk
4a5d6066fe
ircd::utf: Simplify interfaces with weak specializations for vector widths; template inline.
2020-09-03 21:14:43 -07:00
Jason Volk
91485016e2
ircd::b64: Simplify error vector reduction; fix type to match specialization.
2020-09-02 00:14:14 -07:00
Jason Volk
f9e1b90b51
ircd::json: Add simd string component.
2020-08-31 16:21:19 -07:00
Jason Volk
16721a10be
ircd::b64: Use sum tool; fix explicit instantiation linkage issue on GCC.
2020-08-31 12:11:14 -07:00
Jason Volk
d64d038911
ircd::spirit: Adjust generator_state linkage for clang/gcc.
2020-08-31 12:09:31 -07:00
Jason Volk
8505635716
ircd::spirit: Use per-unit thread-local internal generator_state ptr.
2020-08-30 05:43:12 -07:00
Jason Volk
5104e284cb
ircd::spirit: Split into headers; move into directory; reorg definitions.
2020-08-29 17:38:54 -07:00
Jason Volk
e6e5b14b93
ircd::http: Assert enough buffer for valid chunk size value.
2020-08-28 05:18:57 -07:00
Jason Volk
8e7002a4b6
ircd::spirit: Eliminate buffer construction frequent allocation.
2020-08-28 05:18:57 -07:00
Jason Volk
1422b68666
ircd::spirit: Fix buffering strategy; fix align directive.
2020-08-28 05:18:57 -07:00
Jason Volk
a7b6001d49
ircd: Ⓜ️ :db: Additional debug for txn contents.
2020-08-28 05:18:57 -07:00
Jason Volk
64e5df1d86
ircd::fs: Use fd::map object for fincore() impl.
2020-08-28 05:18:57 -07:00
Jason Volk
f6475a2906
ircd::fs: Add interface to mmap fd.
2020-08-28 05:18:57 -07:00
Jason Volk
f5dd9debb6
ircd: Move magick support to core lib. ( #109 )
2020-08-24 03:04:05 -07:00
Jason Volk
9925fc919d
ircd: Adjust object order based on running theory of dependencies.
2020-08-24 03:03:59 -07:00
Jason Volk
2381f07d2f
ircd::ios: Assume direct dispatch; use epoch continuation closure.
2020-08-23 04:20:48 -07:00
Jason Volk
f16eb0b558
ircd::db: Use caller provided string buffer for debug.
2020-08-23 03:49:20 -07:00
Jason Volk
77f858d27d
ircd::simd: Use explicit instantiations w/ optimal conversions for lzcnt/tzcnt generation.
2020-08-23 02:32:54 -07:00
Jason Volk
669c8d0d0f
ircd::ctx: Remove leaf attribute; use hot section attribute in unit.
2020-08-23 02:32:54 -07:00
Jason Volk
f8b9652555
ircd::mods: Call module fini after child reference counts incremented.
2020-08-23 01:56:37 -07:00
Jason Volk
4292365abf
ircd::log: Simplify epoch column value; fixed width.
2020-08-23 01:56:37 -07:00
Jason Volk
07830f1413
ircd::ctx: Integrate slice cycle counters with ios.
2020-08-21 10:43:04 -07:00
Jason Volk
a864cc73b2
ircd::ios: Fix object initialization order.
2020-08-21 10:43:04 -07:00
Jason Volk
7c583061f3
ircd::b64: Simplify padded length conditionals.
2020-08-21 10:43:04 -07:00
Jason Volk
3e2aff3a71
ircd::b64: Simplify trailing error negation and propagaton.
2020-08-21 06:21:49 -07:00
Jason Volk
d4a7acb8ea
ircd::b64: Simplify stream loop control.
2020-08-21 06:21:49 -07:00
Jason Volk
385ade0154
ircd::b64: Fixes for size computing constexprs.
2020-08-21 06:21:49 -07:00
Jason Volk
99acb1bc15
ircd::json: Suppress uninitialized warning from recursive grammar reference.
2020-08-21 06:20:26 -07:00
Jason Volk
246ae05881
ircd::rfc1459: Reorg grammar instantiations; visibility; initialization issues.
2020-08-21 06:20:26 -07:00
Jason Volk
eb43826d99
ircd::rfc3986: Consolidate visibility attributions; additional comments.
2020-08-21 06:20:26 -07:00
Jason Volk
c8deea2e8b
ircd::b64: Use standard alignas().
2020-08-12 02:55:35 -07:00
Jason Volk
ff19991163
ircd::b64: Optimize transforms; padding.
2020-08-12 01:52:16 -07:00
Jason Volk
6bca16c277
ircd::b64: Add decoding error condition logic.
2020-08-11 19:38:16 -07:00
Jason Volk
0a542e6424
ircd::b64: Improve loop control and range constraints.
2020-08-11 16:15:53 -07:00
Jason Volk
c941e13ed0
ircd::b64: Adjust for types most amenable to vectorizing lookup phase.
2020-08-11 15:50:52 -07:00
Jason Volk
3cf8b949bf
ircd::b64: Use typedef for static dictionaries.
2020-08-11 15:50:52 -07:00
Jason Volk
f3f441ac19
ircd::b64: Add parallel SIMD base64 decoder.
2020-08-11 15:50:52 -07:00
Jason Volk
d51082ef17
ircd::db: Handle SST file query errors per column.
2020-08-10 11:32:24 -07:00
Jason Volk
44bd60ea08
ircd::b64: Add encoding diction parameter; remove converters; reorg interface.
2020-08-10 06:19:48 -07:00
Jason Volk
7ff89fbd17
ircd: Split base64 and base58 into separate namespaces.
2020-08-10 04:56:28 -07:00
Jason Volk
3a887b4ca6
ircd::base: Optimize b64 table type; optimal lookup stride.
2020-08-09 04:36:47 -07:00
Jason Volk
abc41ca666
ircd::base: Indicate noexcept on apropos out-of-line declarations.
2020-08-09 04:36:47 -07:00
Jason Volk
1baa590d9c
ircd::fpe: Add scope_round tool.
...
ircd::fpe: Inline exception flag setter.
ircd::fpe: Add fesetround() wrapper.
2020-08-09 02:39:31 -07:00