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

200 commits

Author SHA1 Message Date
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
301b1d684b ircd::db: Adjust txn seq_closure to take seqnum reference. 2018-03-27 21:44:01 -07:00
Jason Volk
d3c5845ee4 ircd::db: Support different db::op types in txn::append(tuple). 2018-03-24 23:29:46 -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
046029725a ircd::db: Explicit bool cast for column. 2018-03-10 23:04:58 -08:00
Jason Volk
28c7826032 ircd::db: Add txn::append optimization allowing tuple to make direct column deltas. 2018-03-09 19:41:16 -08:00
Jason Volk
2b05df12e3 ircd::db: minor cleanup: move this here. 2018-02-07 23:15:17 -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
610d4ad9da ircd: Minor comment cleanup. 2018-01-25 12:15:40 -08:00
Jason Volk
755783ade8 ircd::db: cleanup: database::column section to column.h; rocksdb fwdecls to file. 2018-01-23 16:35:28 -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
d436861aed ircd::db: Update comment. 2018-01-18 03:55:28 -08:00
Jason Volk
ce89a705c0 ircd::db: Add remaining environment stubs. 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
94b5bc75d3 ircd::db: Update README; remove old cruft. 2017-12-03 13:34:42 -08:00
Jason Volk
4793e4906c ircd:Ⓜ️ Checkpoint matrix top-half / modules. 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
43e35786ce ircd: Move subsystem 'index header' into subsystem directories. 2017-10-19 01:38:03 -07:00
Jason Volk
0d2430fc32 ircd::db: Add iov append for json::tuple. 2017-10-15 21:13:44 -07:00
Jason Volk
d7406d47cc ircd::db: Better hack handling for not-found integer values. 2017-10-03 04:27:14 -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
ec18d81d56 ircd::db: These can be public. 2017-10-03 04:17:07 -07:00
Jason Volk
b2f7e360a1 ircd::db: Allow empty query to index through cursor. 2017-10-03 04:17:07 -07:00
Jason Volk
50eda73d7d ircd::db: Consistent row validity tests for cursor. 2017-09-24 18:16:45 -07:00
Jason Volk
a65a033c3b ircd::db: Add reverse long int comparator; fix reverse string comparator; cleanup. 2017-09-24 18:16:44 -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
1a35514653 ircd::db: Fixes for reverse iteration. 2017-09-24 18:16:43 -07:00
Jason Volk
703121f867 ircd::db: Add reverse string_view comparator. 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
fc753f7440 ircd::db: Add constant time seek to column in row by index number. 2017-09-24 18:16:40 -07:00
Jason Volk
59f9a51404 ircd::db: Cleanup json::tuple assignment related. 2017-09-24 18:16:40 -07:00
Jason Volk
234a34086f ircd::db: Improve where semantics. 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
44f3d2cd27 ircd::json: Recursive tuple members. 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
676baec73d ircd::db: Better cursor comparison. 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
92548464d3 ircd::db: Enumerate all deltas. 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
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
c58836ed56 ircd::db: Move set() for json::tuple; check for undefined. 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
8e9a25aa96 ircd::db: Default init invalid row values. 2017-09-24 18:16:35 -07:00
Jason Volk
12c7999172 ircd::db: Include a difference_type for distance. 2017-09-24 18:16:35 -07:00
Jason Volk
79cb0b0fd3 ircd::db: Move items out of delta.h 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
6c9ad5e513 ircd::db: Remove cruft. 2017-09-24 18:16:34 -07:00
Jason Volk
54d6793f59 Update various documentation and comments. 2017-09-24 18:16:33 -07:00
Jason Volk
6f29784573 ircd: Fix json::member alias. 2017-09-24 18:16:33 -07:00
Jason Volk
aa6cd82fbc ircd::db: Rename file tuple.h to json.h 2017-09-24 18:16:33 -07:00
Jason Volk
a89a8dfa5f ircd::db: Add preliminary cursor and where clause query. 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
0ffaa0d3d6 ircd::db: Add preliminary tuple specific interface. 2017-09-08 03:47:52 -07:00
Jason Volk
d99b927c4a ircd::db: Allow empty delta value with default argument param. 2017-09-08 03:47:51 -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
e583c0885d ircd::db: Improve seek() interface suite. 2017-09-08 03:47:49 -07:00
Jason Volk
62a68d8931 ircd::db: Use pointers in the delta tuple for more flexible semantics. 2017-09-08 03:47:49 -07:00
Jason Volk
d9a4f06bf6 ircd: Employ namespace scope extensions from c++1z/gnu++14.
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00
Jason Volk
f7c1e43ae9 ircd::db: Abort the object. 2017-09-08 03:45:09 -07:00
Jason Volk
d9f13ee3f1 fixup! ircd::db: Various improvements to DB subsystem. 2017-08-23 15:52:15 -06:00
Jason Volk
ca608402f5 ircd::db: Various improvements to DB subsystem. 2017-08-23 15:52:15 -06:00
Jason Volk
9bbe7b8b4d ircd::db: Add schema_error exception; use for bad column names. 2017-08-23 15:52:15 -06:00
Jason Volk
88201f4e32 ircd::db: Additional comments and explanations. 2017-08-23 15:52:14 -06:00
Jason Volk
e09f272592 ircd::db: Improve/comment DB subsystem; Add version identification. 2017-08-23 15:38:51 -06:00
Jason Volk
e7844a0771 ircd::db: Database system developments. 2017-04-04 16:10:29 -07:00
Jason Volk
a2625b9f4b fixup! ircd::db: Develop object-store out of db system. 2017-03-30 18:18:28 -07:00
Jason Volk
16c1326d40 ircd::db: Develop object-store out of db system. 2017-03-30 16:04:20 -07:00