Commit Graph

14 Commits (a3d3949dce4aae5d48a94a3d32ed1dfeee392c57)

Author SHA1 Message Date
Vitaliy Filippov a3d3949dce Do not overwrite same journal sector multiple times
It doesn't reduce actual WA, but it reduces tail latency (Q=32, 10% / 50% / 90% / 99% / 99.95%):
- write: 766us/979us/1090us/1303us/1729us vs 1074us/1450us/2212us/3261us/4113us
- sync: 701us/881us/1188us/1762us/2540us vs 269us/955us/1663us/2638us/4146us
2020-01-15 02:53:01 +03:00
Vitaliy Filippov bf3eecc159 Extract 512 to constants 2020-01-06 14:11:47 +03:00
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 fd13965b90 Force start when journal is full 2019-12-03 02:23:29 +03:00
Vitaliy Filippov 40781c67b2 Trim journal on start 2019-11-29 02:13:32 +03:00
Vitaliy Filippov 9fa0d3325f Support inmemory journal 2019-11-28 18:06:50 +03:00
Vitaliy Filippov e2b91968c5 Fix sync confirmations and some pipeline-stall bugs 2019-11-27 18:07:38 +03:00
Vitaliy Filippov 78807eb244 Fix journal space check (do not overwrite the beginning of the journal) 2019-11-27 11:35:11 +03:00
Vitaliy Filippov 3bfa2f5f39 Fix io_uring submission, journal sector selection 2019-11-19 18:07:40 +03:00
Vitaliy Filippov c2de733e35 Copy io_uring_prep_* to my_uring_prep_* so they do not clear user_data 2019-11-17 21:39:30 +03:00
Vitaliy Filippov 1c6b9778a4 Handle all io_uring events using lambdas 2019-11-13 22:46:42 +03:00
Vitaliy Filippov 46e96c5128 Remove duplicate journal buffer submission code 2019-11-11 18:38:57 +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