Vitaliy Filippov
|
a7e74670a5
|
Split blockstore implementation and interface header
|
2019-12-15 14:57:18 +03:00 |
Vitaliy Filippov
|
749ab6e2c6
|
Rename blockstore_operation to blockstore_op_t
|
2019-12-15 14:57:18 +03:00 |
Vitaliy Filippov
|
a180b4961f
|
Hide block_* fields
|
2019-12-10 00:13:59 +03:00 |
Vitaliy Filippov
|
aaea3e1f99
|
Fix read_fulfill, use vector
|
2019-12-03 12:09:30 +03:00 |
Vitaliy Filippov
|
aa3b252327
|
Fsync data before writing metadata
|
2019-12-03 00:20:13 +03:00 |
Vitaliy Filippov
|
76caecf7c7
|
Inmemory metadata mode
|
2019-12-02 15:42:42 +03:00 |
Vitaliy Filippov
|
a7a0946ba8
|
WIP OP_DELETE
|
2019-12-01 17:25:59 +03:00 |
Vitaliy Filippov
|
00eeedae90
|
Add "fsync disabled" mode
|
2019-12-01 16:41:07 +03:00 |
Vitaliy Filippov
|
76655929c4
|
Add readonly flag
|
2019-12-01 16:41:07 +03:00 |
Vitaliy Filippov
|
9260cd263a
|
Verify data crc32 when reading journal
|
2019-11-30 23:32:10 +03:00 |
Vitaliy Filippov
|
b6fff5a77e
|
Fix metadata area size calculation, print free space, wait for free space
FIXME: Now it crashes with -ENOSPC on linear overwrite
|
2019-11-28 20:23:27 +03:00 |
Vitaliy Filippov
|
cbf5173d1b
|
Allow to specify device paths in fio options
|
2019-11-28 00:50:52 +03:00 |
Vitaliy Filippov
|
9ba243b3ee
|
Add debug prints
|
2019-11-27 18:07:51 +03:00 |
Vitaliy Filippov
|
e2b91968c5
|
Fix sync confirmations and some pipeline-stall bugs
|
2019-11-27 18:07:38 +03:00 |
Vitaliy Filippov
|
ff7469ee91
|
Make allocator a class
|
2019-11-27 00:50:57 +03:00 |
Vitaliy Filippov
|
a7dc759f74
|
Compile fio engine
|
2019-11-26 01:50:26 +03:00 |
Vitaliy Filippov
|
be3015169f
|
Safe stop procedure
|
2019-11-25 01:29:07 +03:00 |
Vitaliy Filippov
|
50cf3667fa
|
Track unstable writes
|
2019-11-25 01:16:34 +03:00 |
Vitaliy Filippov
|
2b12428cb1
|
Debug OP_STABLE so the basic case passes without problem
|
2019-11-21 02:09:18 +03:00 |
Vitaliy Filippov
|
5b8df6768b
|
Try to submit a test write operation
|
2019-11-18 02:36:53 +03:00 |
Vitaliy Filippov
|
c7d9dc027b
|
Remove extra states as they seem useless
|
2019-11-15 14:02:37 +03:00 |
Vitaliy Filippov
|
c38c8ab029
|
Prevent two parallel flushes of the same object
|
2019-11-15 13:58:35 +03:00 |
Vitaliy Filippov
|
71194f014a
|
Update dirty_db and clean_db after flushing an entry
|
2019-11-15 02:26:18 +03:00 |
Vitaliy Filippov
|
0627dd0f5e
|
Used journal sector tracking
|
2019-11-15 02:04:19 +03:00 |
Vitaliy Filippov
|
bc549553e4
|
Rename dirty_entry.size to len, remove some unneeded methods and fields, read metadata correctly
|
2019-11-14 01:13:07 +03:00 |
Vitaliy Filippov
|
1c6b9778a4
|
Handle all io_uring events using lambdas
|
2019-11-13 22:46:42 +03:00 |
Vitaliy Filippov
|
214da03735
|
Move flusher into a separate file
|
2019-11-13 17:46:05 +03:00 |
Vitaliy Filippov
|
75398414d1
|
Add grouping flusher class
|
2019-11-13 17:41:57 +03:00 |
Vitaliy Filippov
|
db66b3916e
|
Begin metadata read-modify-write
|
2019-11-13 16:07:29 +03:00 |
Vitaliy Filippov
|
bb55a7fbf4
|
Zero-fill new objects and write them to the main storage
|
2019-11-12 20:49:57 +03:00 |
Vitaliy Filippov
|
4afa95b0e3
|
FSM is a dreadful unreadable thing, reimplement using gotos
|
2019-11-12 18:16:41 +03:00 |
Vitaliy Filippov
|
34451b6e44
|
Try to implement journal flusher as a FSM
|
2019-11-12 18:16:38 +03:00 |
Vitaliy Filippov
|
f892104aed
|
Begin journal flusher
|
2019-11-12 12:02:11 +03:00 |
Vitaliy Filippov
|
e807d7433e
|
Add stop method stub
|
2019-11-11 21:22:28 +03:00 |
Vitaliy Filippov
|
71552adf79
|
Do not use deque, test cpp-btree
|
2019-11-11 19:42:18 +03:00 |
Vitaliy Filippov
|
46e96c5128
|
Remove duplicate journal buffer submission code
|
2019-11-11 18:38:57 +03:00 |
Vitaliy Filippov
|
1f04db7d68
|
Begin to implement stabilize as a batch operation
|
2019-11-11 16:30:47 +03:00 |
Vitaliy Filippov
|
d2d8d6e7fb
|
Comments about stabilize operation, track unsynced_writes correctly
|
2019-11-11 02:53:19 +03:00 |
Vitaliy Filippov
|
8edb9e9d6f
|
Remove duplicate journal writing code (and fix it at the same time)
|
2019-11-11 00:28:14 +03:00 |
Vitaliy Filippov
|
ff57dd420e
|
Rename object_db to clean_db
|
2019-11-10 22:41:40 +03:00 |
Vitaliy Filippov
|
890335bff6
|
Begin implementation of the STABLE operation
|
2019-11-10 14:37:45 +03:00 |
Vitaliy Filippov
|
7aabe11ef9
|
Switch object states after sync
|
2019-11-10 13:49:26 +03:00 |
Vitaliy Filippov
|
64185f7a1f
|
Move enqueue_write to _write.cpp
|
2019-11-10 13:27:59 +03:00 |
Vitaliy Filippov
|
e5caffb6ac
|
Allow to read specific versions
|
2019-11-10 13:26:56 +03:00 |
Vitaliy Filippov
|
2d0334f9b9
|
Remove in_progress_ops
|
2019-11-10 12:52:37 +03:00 |
Vitaliy Filippov
|
ae56fe1067
|
Finish sync algorithm in theory
|
2019-11-10 12:52:37 +03:00 |
Vitaliy Filippov
|
24f5d71595
|
Move handle_event code into _read.cpp, _write.cpp; move sync code into _sync.cpp
|
2019-11-10 02:27:27 +03:00 |
Vitaliy Filippov
|
8e634d5b74
|
Continue sync implementation
|
2019-11-09 02:16:44 +03:00 |
Vitaliy Filippov
|
7456f0f7e2
|
Remove duplicate code
|
2019-11-08 19:54:57 +03:00 |
Vitaliy Filippov
|
153de65ce7
|
Begin sync implementation
|
2019-11-08 19:54:45 +03:00 |