0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-11 04:58:40 +02:00
Commit graph

472 commits

Author SHA1 Message Date
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 53651ad808 ircd::db: Move database::descriptor out to db::descriptor. 2018-09-19 15:38:37 -07:00
Jason Volk 3abfb6b949 ircd::db: Some auto-compaction hard values for now. 2018-09-19 00:12:55 -07:00
Jason Volk b979426f7a ircd::db: Update event-listener related. 2018-09-18 18:37:46 -07:00
Jason Volk fc09ba81af ircd::db: Add compaction callback interface. 2018-09-18 15:07:09 -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 81d7ba8c39 ircd: Various string_view conversion fixes. 2018-09-13 06:47:52 -07:00
Jason Volk 09529ae311 ircd: Fix std::ios::openmode name. 2018-09-13 05:12:01 -07:00
Jason Volk 5e06c4795b ircd: Replace any std::uncaught_exception() -> std::uncaught_exceptions(). 2018-09-13 05:02:24 -07:00
Jason Volk 66edb4a7fb ircd::db: Add custom cache stats ticker. 2018-09-05 03:13:05 -07:00
Jason Volk 7f43da8a07 ircd::db: Test if directory for db::available() listing. 2018-09-04 02:32:12 -07:00
Jason Volk f7fbd0f5d2 ircd::db: Detect O_DIRECT possible for database directory on init. 2018-09-04 02:32:12 -07:00
Jason Volk 4f55dac071 ircd::db: Minor cleanup. 2018-09-03 21:43:31 -07:00
Jason Volk 60a0694853 construct: Add program option to disable direct IO. 2018-09-03 07:59:05 -07:00
Jason Volk 80d0db9f26 ircd::db: Remove unnecessary default to O_DIRECT. 2018-09-03 07:48:23 -07:00
Jason Volk b0e9107870 ircd::db: Cache size cannot be strict here. 2018-09-03 03:24:37 -07:00
Jason Volk 6f940ab51e ircd::db: Improve debug msg on column init. 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 62426ab210 ircd::db: Add column prefetch. 2018-09-01 07:15:03 -07:00
Jason Volk ca1ee19a47 ircd::db: Minor simplify. 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 ac3b45604a ircd::db: Move comment. 2018-08-30 07:21:44 -07:00
Jason Volk b1aa733d95 ircd::db: Additional critical exclusion and interruption zones. 2018-08-28 21:53:17 -07:00
Jason Volk 5c6874c790 ircd::db: Get better required alignments for direct IO. 2018-08-28 20:15:40 -07:00
Jason Volk d70ef25711 ircd::db: Simplify port entry checks. 2018-08-28 15:57:49 -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 8340f005da ircd::db: Use terminate() on the request pool on ~init(); log messages. 2018-08-28 12:06:56 -07:00
Jason Volk cd74a39330 ircd::db: Move the write mutex to a global and lock for compaction points too. 2018-08-26 20:46:59 -07:00
Jason Volk 0b98144cfe ircd::db: Minor cleanup; assertions. 2018-08-24 10:59:22 -07:00
Jason Volk 84f4cbd359 ircd::db: Serialize entry to rdb's write impl to circumvent pthread deadlock. 2018-08-24 03:40:37 -07:00
Jason Volk c94b6f02ca ircd::db: Options package; no DIO writes 2018-08-24 03:40:25 -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 6f2eeaec67 ircd::db: Full dressing on the environment. 2018-08-23 23:08:41 -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 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 b753637385 ircd::db: request pool conf item set callback. 2018-08-22 14:37:52 -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 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 d4c51a2d45 ircd::db: Disable interruption for rocksdb entry surface. 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 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 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 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 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 a98bd357df construct/ircd: Add -pitrecdb option to allow point-in-time recovery. 2018-07-06 17:09:33 -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 5ab8b9bdae ircd::db: Add init warning for no compression; minor reorg inits. 2018-06-12 01:00:15 -07:00
Jason Volk 960553f279 ircd::db: Checkpoint skeleton state structure for env. 2018-06-09 13:40:21 -07:00
Jason Volk 4ce6b69f69 ircd::db: Additional env debug messages. 2018-06-02 09:18:01 -07:00
Jason Volk fd41a3b9c1 ircd::db: Add db env debug log msg to WaitForJoin. 2018-06-01 12:36:46 -07:00
Jason Volk 7e25d99cc6 ircd::db: Convert rocksdb::port from pthread to ircd::ctx. 2018-06-01 12:36:46 -07:00
Jason Volk d56c856573 ircd::db: Reorg to group all thread related env callbacks together. 2018-06-01 06:23:39 -07:00
Jason Volk 7461de8b3d ircd::db: Condition to check database from ircd::checkdb via -checkdb command line option. 2018-05-31 12:47:37 -07:00
Jason Volk 73fc596cb6 ircd::db: Add experimental port linktime override suite. 2018-05-30 04:59:04 -07:00
Jason Volk 3e6fdbd93d ircd::db: Use #defines rather than comments for excessive log calls. 2018-05-29 02:52:47 -07:00
Jason Volk 4dd0b6c7b2 ircd::db: Minor syntax cleanups. 2018-05-29 01:42:04 -07:00
Jason Volk d4c2ec6b22 ircd::db: Fix iterator invalidation from a cache-missing seek. 2018-05-25 06:21:03 -07:00
Jason Volk 2564b28743 ircd::db: Properly maintain db::gopts as iterator state. 2018-05-25 03:07:30 -07:00
Jason Volk ff21175036 ircd::db: Integrate checkpointing with database name and path schema. 2018-05-24 20:52:49 -07:00
Jason Volk 4ce29f1d22 ircd::db: Add cache clear interface w/ console cmd. 2018-05-24 01:18:58 -07:00
Jason Volk 7bfe9e94a1 ircd::db: Default to no checksums on all reads; add conf item; adjust opts. 2018-05-23 18:45:27 -07:00
Jason Volk 5708d9c36b ircd::db: Consolidate various stats interfaces into header. 2018-05-23 17:04:02 -07:00
Jason Volk 77755a2ab4 ircd::db: Add interface to rocksdb iostats w/ console cmd. 2018-05-23 16:57:49 -07:00
Jason Volk 1c20df652b ircd::db: Elaborate interface to the rocksdb perf_context. 2018-05-23 16:27:44 -07:00
Jason Volk 8b15512849 ircd::db: Add database's unique id string interface. 2018-05-22 17:01:01 -07:00
Jason Volk 9d5afc8e87 ircd::db: Add separate check(database); Add log notice when checking on open. 2018-05-22 16:52:34 -07:00
Jason Volk 1afba986b3 ircd::db: Support additional rdb comparator features. 2018-05-21 19:52:18 -07:00
Jason Volk c2b45aacc3 ircd::db: Use better column count in row ctor. 2018-05-19 23:13:54 -07:00
Jason Volk 296eff7c5d ircd::db: Removed unused cell features. 2018-05-19 18:49:06 -07:00
Jason Volk ab4f2b362f ircd::db: Decrease temp default row cache size. 2018-05-19 18:49:05 -07:00
Jason Volk 47b28d9295 ircd::db: Add cache key remover. 2018-05-19 18:49:04 -07:00
Jason Volk 9e0acde5cf ircd::db: Add cache entry iteration (experimental). 2018-05-19 18:49:04 -07:00
Jason Volk 8f40fd574a ircd::db: Interface to test if cache entry exists. 2018-05-19 18:49:04 -07:00
Jason Volk f97c9fff99 ircd::db: Add interface to database & column caches. 2018-05-19 18:49:04 -07:00
Jason Volk 507b8e4f1c ircd::db: Minor cleanup. 2018-05-19 18:49:04 -07:00
Jason Volk 9388e65250 ircd::db: Fix constness of colname vector values. 2018-05-19 18:49:02 -07:00
Jason Volk 508baeb4a5 ircd::db: Move vector of colptrs to stack. 2018-05-19 18:49:02 -07:00
Jason Volk f160963c02 ircd::db: Split column compact range and files operations for interface. 2018-05-10 17:06:35 -07:00
Jason Volk f34ebec1cf ircd::db: Add convenience read(column) nothrow overloads. 2018-05-04 20:43:05 -07:00
Jason Volk e6fe7805c1 ircd::db: Minor simplify db::read(column). 2018-05-04 20:43:04 -07:00
Jason Volk 9af649f739 ircd::db: Consolidate write(column) overloads. 2018-04-30 07:18:06 -07:00
Jason Volk a734798100 ircd::db: Minor cleanup. 2018-04-26 17:52:24 -07:00
Jason Volk 8083a5d71c ircd::db: Add WAL fflush; move table flushes to "sort()"; adjust interfaces. 2018-04-26 17:19:29 -07:00
Jason Volk 93ca1448d1 ircd::db: Verify SST checksums on db open. 2018-04-26 16:48:35 -07:00
Jason Volk 94439a334e ircd::db: Cleanup/Simplify db open ptr construction. 2018-04-26 16:39:59 -07:00
Jason Volk 173093e45a ircd::db: Fix default description to include default column. 2018-04-26 16:22:16 -07:00
Jason Volk f866c9a4de ircd::db: Flush here does not mean what one might think it means. 2018-04-22 15:08:26 -07:00
Jason Volk ebea2e2385 ircd::db: Explicitly involve SST files in column compaction. 2018-04-20 17:03:20 -07:00
Jason Volk 6de7fb7b8c ircd::db: Adjust destruction sequence for rocksdb DB::Close() call. 2018-04-20 17:03:20 -07:00
Jason Volk f3b0fa3b4e ircd::db: Additional option tweaks. 2018-04-20 17:03:20 -07:00
Jason Volk e3b2bcf19d ircd::db: Maintain SST file manager instance. 2018-04-20 15:45:57 -07:00
Jason Volk 532f987bd6 ircd::db: Move column compact()/flush() to more consistent place. 2018-04-20 15:22:50 -07:00
Jason Volk 666e509c97 ircd::db: Expose setoptions interface. 2018-04-20 15:22:50 -07:00
Jason Volk f805344604 ircd::db: Options package for file growth, count and compaction related. 2018-04-20 15:22:50 -07:00
Jason Volk e6a80082c8 ircd::db: Assertion for non-empty key seek. 2018-04-17 20:30:06 -07:00
Jason Volk b95a588bc4 ircd::db: Comment/improve descriptor/column options. 2018-04-17 15:28:08 -07:00
Jason Volk 330fe74035 ircd::db: Add file_count and bytes aggregator for all columns in db. 2018-04-17 14:13:36 -07:00
Jason Volk e009d6763e ircd::db: Fix issues with txn interface. 2018-04-16 15:20:08 -07:00
Jason Volk 7b54dba291 ircd::db: Expose an interface for some counters; add ticker command. 2018-04-15 16:43:09 -07:00
Jason Volk 0c78bf7a9b ircd::db: Add compaction interface. 2018-04-15 02:42:57 -07:00
Jason Volk f7f2194745 ircd::db: Reenable the histogram collection. 2018-04-15 00:36:33 -07:00
Jason Volk 0a3259afae ircd::db: Custom table opts; table cache; introduce the bloom filter. 2018-04-14 23:10:09 -07:00
Jason Volk 3f72b7ce19 ircd::db: Update gopts; add seqnum option; fix missing readahead. 2018-04-13 22:46:31 -07:00
Jason Volk bd4a16fab1 ircd::db: Tweak sundry open options. 2018-04-12 23:07:46 -07:00
Jason Volk b5dd434e7c ircd::db: Adjust db open and close log messages for where waiting happens. 2018-04-12 23:07:46 -07:00
Jason Volk ae528af7cd ircd::db: Reduce the offloading to a wieldy statement. 2018-04-12 23:07:46 -07:00
Jason Volk 455ff99b93 ircd::db: Error reporting and fallbacks for db property queries. 2018-04-12 23:07:45 -07:00
Jason Volk 28d4ebfba2 ircd::db: Improve the db::has() query: no value read when using iterator. 2018-04-09 16:57:13 -07:00
Jason Volk dc5a1554f6 ircd::db: Fallback wo/ user equality comparator. 2018-04-09 16:50:50 -07:00
Jason Volk 1268d90fb0 ircd::db: RocksDB to 5.12.2. 2018-04-09 15:57:05 -07:00
Jason Volk e160205959 ircd::db: Mark sundry db open options related. 2018-04-09 15:56:14 -07:00
Jason Volk 3e27f5be06 ircd::db: Fix/tweak db fsck log messages. 2018-04-09 11:52:06 -07:00
Jason Volk 343a1f38a3 ircd::db: Improve dbopts string manipulation related. 2018-04-09 11:51:36 -07:00
Jason Volk 23b1a7e032 ircd::db: Workaround issue querying the filtration after db reopen. 2018-04-08 22:11:29 -07:00
Jason Volk 2bce600a60 ircd::db: Wrap interface to get db's file list. 2018-04-03 11:44:57 -07:00
Jason Volk 1dc2daa5e9 ircd::db: Wrap interface to toggle file deletions. 2018-04-03 11:30:37 -07:00
Jason Volk cfb80085a8 ircd::db: Support map-based property retrieval. 2018-04-03 11:14:47 -07:00
Jason Volk 0bf6742ac9 ircd::db: Typedef / minor reorg property related interface. 2018-04-03 11:01:28 -07:00
Jason Volk b5060a5e46 ircd::db: Create specific DB dir manually to avoid rocksdb error log msg. 2018-04-02 17:19:01 -07:00
Jason Volk 14b7a088ee ircd::db: Minor cleanup. 2018-04-02 17:18:56 -07:00
Jason Volk 7657fde5db ircd::db: Add function to get single txn into closure by seqnum. 2018-03-27 21:44:01 -07:00
Jason Volk 1e99077169 ircd::db: Fix erroneous param in debug log. 2018-03-24 14:55:53 -07:00
Jason Volk 83bdb7161c ircd::db: Add interface to iterate the database's txn log. 2018-03-22 20:52:14 -07:00
Jason Volk 2671f4eb90 ircd::db: Add txn ctor claiming a rocksdb::WriteBatch. 2018-03-22 20:52:14 -07:00
Jason Volk d40b18633f ircd::db: Move txn::handler struct to db/database headers. 2018-03-22 20:47:46 -07:00
Jason Volk fcbc2bf650 ircd::db: Add database checkpointing feature. 2018-03-22 20:08:50 -07:00
Jason Volk 421f2f5220 ircd::db: Util to flush all columns in db. 2018-03-22 19:55:15 -07:00
Jason Volk cbfb105765 ircd::db: Minor cleanup; interface const consistency on our side. 2018-03-22 19:39:14 -07:00
Jason Volk 23f294df86 ircd::db: Timers on has() and commit paths. 2018-03-13 22:44:13 -07:00
Jason Volk baa7a80b68 ircd: Various fixes; bump default db LRU cache sizes. 2018-03-02 08:02:20 -08:00
Jason Volk 57ed24f868 ircd::db: Reenable the background work cancel for shutdown sequence. 2018-02-05 21:24:36 -08:00
Jason Volk 5cf77cf87c ircd::db: Don't silently refuse seek() when no snapshot. 2018-02-05 21:24:36 -08:00
Jason Volk 06816f9e33 ircd::db: Allow gopts parameter to the cell::seek(). 2018-02-05 21:24:36 -08:00
Jason Volk be624ca7f6 Update Copyrastafaris. 2018-02-05 21:24:34 -08:00
Jason Volk d53eef4ab6 ircd: Eliminate the raw_buffer concept. 2018-02-05 18:54:55 -08:00
Jason Volk 365fabe638 ircd::db: Rename iov to txn (since iov should really be a rocksdb::SliceParts). 2018-01-30 09:58:36 -08:00
Jason Volk b926e6b42d ircd::db: Add nothrow overloads to the column viewer. 2018-01-27 10:07:08 -08:00
Jason Volk b34608fba2 ircd::db: Update arguments to ircd::buffer; fix error. 2018-01-26 10:29:36 -08:00
Jason Volk c06dd2e9df ircd::db: Split internal db header. 2018-01-23 16:35:28 -08:00
Jason Volk 1a90a91a7b ircd::db: Suppress this noise for now. 2018-01-23 15:07:05 -08:00
Jason Volk 054c50edcc ircd::db: Split up / reorg database/env related. 2018-01-18 17:59:22 -08:00
Jason Volk c9b89ec6ef ircd::db: Plan on not sending any exceptions through RocksDB... 2018-01-18 03:55:28 -08:00
Jason Volk 09e32dce56 ircd::db: Move this out of the ptr's destructor. 2018-01-17 21:44:56 -08:00
Jason Volk ce89a705c0 ircd::db: Add remaining environment stubs. 2018-01-17 21:38:17 -08:00
Jason Volk 8f3483391e ircd: Minor log suppressions via comment. 2018-01-17 21:38:17 -08:00
Jason Volk 169f5aef84 ircd::db: Add data() participant for rocksdb::Slice. 2018-01-17 21:38:17 -08:00
Jason Volk 87f0f3bc5a ircd::db: Add additional environment stubs for writable_file; minor cleanup. 2018-01-17 21:38:17 -08:00
Jason Volk 48c798de3f ircd::db: Add size() participant for rocksdb::Slice. 2018-01-17 21:38:17 -08:00
Jason Volk 625dc73978 ircd::db: Skeleton stubs for basic environment. 2018-01-17 21:38:17 -08:00
Jason Volk 79447c504a ircd::db: Reorg internal headers to directory. 2018-01-17 21:38:17 -08:00
Jason Volk e4f6b64fec ircd::db: Update copyrights; use doxygen comments; minor cleanup. 2018-01-17 21:38:17 -08:00
Jason Volk 51d729fa3a ircd::db: Use off-stack buffer here for logging. 2018-01-11 22:29:00 -08:00
Jason Volk 01feeaab6e ircd::db: Provide len to elide the strlen(buf) on string_view{buf}. 2017-12-28 13:32:44 -07:00
Jason Volk 1ddf0f546a ircd: Update various comments / documentation. 2017-12-12 14:59:40 -07:00
Jason Volk f928630747 ircd::db: Checkpoint current experimentals here. 2017-11-30 11:23:47 -08:00
Jason Volk 1c4d519db7 ircd::db: Use log::NOTICE facility rather than log::WARNING here. 2017-11-30 11:23:47 -08:00
Jason Volk a046a56d0d ircd: Wrap the std::terminate() handler and add some related toys. 2017-11-30 11:23:46 -08:00
Jason Volk f81a9d8da9 ircd::db: Remove cruft from moving query out of db. 2017-11-30 11:23:46 -08:00
Jason Volk 5b61e1d01f ircd::net/db: Hard debug log quiet for now; minor cleanup. 2017-11-30 11:23:44 -08:00
Jason Volk 87c6f91530 ircd::db: Improve column find by name from linear to logn; can still be O(1) with more work. 2017-11-30 11:23:44 -08:00
Jason Volk bc5f429681 ircd::db: Fix a rocksdb api misuse. 2017-11-30 11:23:41 -08:00
Jason Volk 417e8ecad0 ircd::db: Fix comment; suppress a very verbose seek log message here. 2017-11-30 11:23:40 -08:00
Jason Volk 3c0d5bd5d6 ircd::db: Fix empty row seek; fix potential coherence issue on offload. 2017-10-17 00:47:30 -07:00
Jason Volk 5ca5f4b405 ircd::db: Improve formatting for seek debug messages. 2017-10-15 21:19:34 -07:00
Jason Volk db43edb212 ircd: Various labels to help de-virtualization on recommendation of -Wsuggest-final-types. 2017-10-11 18:18:18 -07:00
Jason Volk ec89d0ca25 ircd::db: I don't think this warning matters... 2017-10-03 04:27:13 -07:00
Jason Volk 3d754bffba ircd::db: Give RocksDB its own logging facility. 2017-10-03 04:17:11 -07:00
Jason Volk ade7a138c4 ircd::db: Simplify the db::row using vector_view<cell>. 2017-10-03 04:17:09 -07:00
Jason Volk dc1281a17c ircd::db: Fix iov related. 2017-10-03 04:17:08 -07:00
Jason Volk f8d6e2dddc ircd::db: Update docs. 2017-10-03 04:17:08 -07:00
Jason Volk dacff8eb9f ircd::db: Rename where to query. 2017-10-03 04:17:08 -07:00
Jason Volk d4508e157f ircd:Ⓜ️ Deduplicate user related in m::user. Update various resource related. 2017-09-24 20:48:53 -07:00
Jason Volk 196d158398 ircd::db: Improve debug log messages. 2017-09-24 18:16:45 -07:00
Jason Volk 2a579390be ircd::db: Minor cleanup. 2017-09-24 18:16:45 -07:00
Jason Volk 0b1c37c585 ircd::db: Fix reverse iteration; cleanup seek; add ORDERED flag (prelim). 2017-09-24 18:16:44 -07:00
Jason Volk c138c53449 ircd::db: Log snapshot sequence numbers. 2017-09-24 18:16:44 -07:00
Jason Volk dd7c1adb05 ircd::db: Add timer to row seek. 2017-09-24 18:16:44 -07:00
Jason Volk d7c59f4e49 ircd::db: Improve seek() stack. 2017-09-24 18:16:44 -07:00
Jason Volk 4077307ab5 ircd::db: Minor cleanup. 2017-09-24 18:16:43 -07:00
Jason Volk 1a35514653 ircd::db: Fixes for reverse iteration. 2017-09-24 18:16:43 -07:00
Jason Volk 10eabc5e40 ircd::db: Remove this from row constructor. 2017-09-24 18:16:43 -07:00
Jason Volk c4b34b9e66 ircd::db: cell constructor branch on empty key. 2017-09-24 18:16:43 -07:00
Jason Volk b29224aa3a ircd::db: Cleanup comparator related. 2017-09-24 18:16:43 -07:00
Jason Volk 56074325a1 ircd::db: Use extern const comparators and expose them in headers. 2017-09-24 18:16:41 -07:00
Jason Volk 69eab27209 ircd::db: Complete reverse iterations. 2017-09-24 18:16:41 -07:00
Jason Volk dae391a578 ircd::db: Refactor opts to not store ilists; cleanup index/column relationship; cleanup where. 2017-09-24 18:16:41 -07:00
Jason Volk f7708f47f6 ircd::db: Test valid-equal to index on cell load. 2017-09-24 18:16:40 -07:00
Jason Volk fc753f7440 ircd::db: Add constant time seek to column in row by index number. 2017-09-24 18:16:40 -07:00
Jason Volk 46588d0ae8 ircd::db: Public functions to get the descriptor for a column. 2017-09-24 18:16:39 -07:00
Jason Volk 0d393c58dd ircd::db: Various cleanup / movements. 2017-09-24 18:16:38 -07:00
Jason Volk 68b0356203 ircd: Simplify some info log messages. 2017-09-24 18:16:37 -07:00
Jason Volk 5e137c676f ircd::db: Use vector for descriptors. 2017-09-24 18:16:37 -07:00
Jason Volk c50461c4c6 ircd::db: Rename txn to iov. 2017-09-24 18:16:37 -07:00
Jason Volk fb026f58a7 ircd::db: Add features to txn. 2017-09-24 18:16:37 -07:00
Jason Volk d7e9c9182a ircd::db: Add txn class to compose a transaction in stages. 2017-09-24 18:16:37 -07:00
Jason Volk b27a2a6423 ircd::db: Support constant-time column lookup by id; various cleanup/fixes. 2017-09-24 18:16:37 -07:00
Jason Volk 5261f9dd25 ircd::db: row cleanup / fixes. 2017-09-24 18:16:36 -07:00
Jason Volk 7d61dc4441 ircd::db: Reflect with string_view. 2017-09-24 18:16:36 -07:00
Jason Volk 276a902a62 ircd::db: Improve valid checking and valid() suite. 2017-09-24 18:16:36 -07:00
Jason Volk 1f8fb24e8d ircd: Update various comments. 2017-09-24 18:16:36 -07:00
Jason Volk ccbd507c35 ircd::db: Fix issues with cell. 2017-09-24 18:16:35 -07:00
Jason Volk eaca7429b6 ircd::json: Simplify grammar / various cleanup. 2017-09-24 18:16:35 -07:00
Jason Volk ca9ea5ac0c ircd::db: Simplify/fix seek(row). 2017-09-24 18:16:34 -07:00
Jason Volk a89a8dfa5f ircd::db: Add preliminary cursor and where clause query. 2017-09-08 03:47:52 -07:00
Jason Volk d219858e73 ircd::db: Improve commitment stack. 2017-09-08 03:47:52 -07:00
Jason Volk 682686bcae ircd::db: Employ c++1z extensions to namespacing. 2017-09-08 03:47:52 -07:00
Jason Volk 5f25d90fd2 ircd::db: Add index interface. 2017-09-08 03:47:52 -07:00
Jason Volk 1e7c0daed2 ircd::db: Improve opts, snapshot, and conversions for column::iterator. 2017-09-08 03:47:51 -07:00
Jason Volk cbdd176819 ircd::db: Remove unnecessary shared_ptr for column instance. 2017-09-08 03:47:50 -07:00
Jason Volk e46faaf882 ircd::db: Support prefix indexing. 2017-09-08 03:47:50 -07:00
Jason Volk 69917f153f ircd::db: Add json::tuple related and utils to row. 2017-09-08 03:47:50 -07:00
Jason Volk 0ca1ebba61 ircd::db: Fix valid condition bugs and minor cleanup. 2017-09-08 03:47:49 -07:00
Jason Volk 19c5e6c83b ircd::db: Add generalized database delta interface. 2017-09-08 03:47:49 -07:00
Jason Volk f729fd0917 ircd::db: Expose enum class pos. 2017-09-08 03:47:49 -07:00