0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-07-07 19:18:35 +02:00
Commit graph

289 commits

Author SHA1 Message Date
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