augurier
76b52eb235
Merge branch 'cyq' into ld
il y a 8 mois
augurier
65bbece7d0
对benchmark部分修改
il y a 8 mois
cyq
0c1d366879
fix bug
il y a 8 mois
cyq
dc056b92b6
Merge commit '8dfdd9b9e92b8c26d4e4b37b24e3c90a47d49762' into cyq
il y a 8 mois
augurier
8dfdd9b9e9
findkeysbyfield 迭代器引用问题修复,注释整理
il y a 8 mois
augurier
791c69262b
Merge branch 'cyq' into ld
il y a 8 mois
augurier
ea3d7c31f5
模拟崩溃测试综合版
il y a 8 mois
cyq
622ce1e987
fielddb的benchmark、性能插桩以及一个对比的testdb
il y a 8 mois
cyq
91eaddd125
Merge commit '23b603dda024e20c6e7238ef5f132be2e3ad59d8' into cyq
il y a 8 mois
augurier
23b603dda0
模拟插入数据时崩溃的测试
il y a 8 mois
augurier
6c0b64cfa3
正常退出的恢复测试
il y a 8 mois
augurier
d5e46b56b3
增加并通过了write相关测试
il y a 8 mois
augurier
c7bfb1f725
Merge branch 'cyq' into ld
il y a 8 mois
cyq
0fed70d5c3
Batchreq和Write接口的实现,但未完成测试
il y a 8 mois
cyq
8657ec3748
完成了recover,修复了有关ParseValuede的内存泄漏问题和有关Transput和TransDelete的潜在内存访问异常问题
il y a 8 mois
augurier
462019353e
加了点测试,修了点bug
il y a 8 mois
augurier
cefdd3db4f
补充delete,一并修改了put逻辑,支持put和delete的合并req
il y a 8 mois
augurier
32d8a45989
测试框架和并发测试,并跑通(没有实现delete和恢复)
il y a 8 mois
cyq
d30aaecf56
iDeleteReq的prepare
il y a 8 mois
cyq
f2f8f8200d
补充
il y a 8 mois
cyq
f464e09933
并发控制的基本框架和大部分实现
il y a 8 mois
cyq
98f5c9d2c5
Merge commit '099d8183448d6fe2d38f21bfe768b1f5651324ae' into cyq
il y a 9 mois
augurier
099d818344
lab2部分基础实现(没有并发和metadb)
il y a 9 mois
augurier
d6995373ea
修完bug,补充lab1测试,跑通
il y a 9 mois
augurier
c6e83ce91e
Merge branch 'cyq' into ld
il y a 9 mois
cyq
26bdb79590
一些初步的想法和实现,可能需要大改
il y a 9 mois
cyq
f06fd7b5e5
3DB设计设想草稿
il y a 9 mois
augurier
abe34b2c6b
分工与补充
il y a 9 mois
cyq
1257726781
封装了InternalFieldArray,初步搭建了FieldDB框架
il y a 9 mois
cyq
c614bd6197
Merge branch 'ld' into cyq
il y a 9 mois
augurier
17ed0600c7
大致完成设计文档
il y a 9 mois
augurier
de6d67f12b
补充了一些
il y a 9 mois
cyq
18634883f3
一些想法
il y a 9 mois
cyq
53da4d14ff
一些想法
il y a 9 mois
augurier
2801f6c624
设计文档初稿
il y a 9 mois
augurier
c942a4415d
实现了(反)序列化存储
il y a 9 mois
augurier
ff5c0b84bf
补充接口
il y a 9 mois
augurier
96b892b5af
添加了(反)序列化接口,原始测试,通过编译
il y a 9 mois
augurier
69148c94b6
初始readme
il y a 9 mois
Austin Sullivan
23e35d792b
Merge pull request #1202 from pkasting/main
[jumbo] Add begin()/end() to Slice.
il y a 1 an
leveldb Team
eb31d19999
Allow compaction to finish in TEST_CompactRange
Waits for a current transaction to finish in TEST_CompactRange when the
`background_work_finished_signal_` signal may be emitted due to an error. This is a prospective fix for flaky crashes observed in b/351680196#comment5.
PiperOrigin-RevId: 663457574
il y a 1 an
Peter Kasting
2cc36eb566
[jumbo] Add begin()/end() to Slice.
This allows this type to meet the requirements of e.g.
std::ranges::range, which is necessary for it to work with the
std::span range constructor, or the "non-legacy" constructor for
Chromium's base::span.
Bug: none
il y a 1 an
leveldb Team
068d5ee1a3
leveldb: Check slice length in Footer::DecodeFrom()
Without this check decoding the footer in Table::Open() can read
uninitialized bytes from a buffer allocated on the stack if the file
was unexpectedly short.
In practice this is probably fine since this function validates a magic
number but MSan complains about branching on uninitialized data.
PiperOrigin-RevId: 525271012
il y a 2 ans
leveldb Team
c61238dcf3
Support Zstd compression level in Leveldb
PiperOrigin-RevId: 520556840
il y a 2 ans
Victor Costan
77d66aaf3e
Fix GitHub CI on Linux.
This PR temporarily removes a package that is currently broken on
GitHub's Ubuntu 22.04 installation. This is the most expedient way to
make the CI green again, so we can test any other changes we may want to
land.
PiperOrigin-RevId: 520206940
il y a 2 ans
Victor Costan
9cbbc5fb75
Merge pull request #1104 from reillyeon:chromium_env
PiperOrigin-RevId: 520172744
il y a 2 ans
Victor Costan
80d858fb2a
Merge pull request #1106 from reillyeon:run_many
PiperOrigin-RevId: 520171344
il y a 2 ans
leveldb Team
1d6e8d64ee
Add support for Zstd-based compression in LevelDB.
This change implements support for Zstd-based compression in LevelDB. Building
up from the Snappy compression (which has been supported since inception), this
change adds Zstd as an alternate compression algorithm.
We are implementing this to provide alternative options for users who might
have different performance and efficiency requirements. For instance, the
Zstandard website (https://facebook.github.io/zstd/ ) claims that the Zstd
algorithm can achieve around 30% higher compression ratios than Snappy, with
relatively smaller (~10%) slowdowns in de/compression speeds.
Benchmarking results:
$ blaze-bin/third_party/leveldb/db_bench
LevelDB: version 1.23
Date: Thu Feb 2 18:50:06 2023
CPU: 56 * Intel(R) Xeon(R) CPU E5-2690 v4 @ 2.60GHz
CPUCache: 35840 KB
Keys: 16 bytes each
Values: 100 bytes each (50 bytes after compression)
Entries: 1000000
RawSize: 110.6 MB (estimated)
FileSize: 62.9 MB (estimated)
------------------------------------------------
fillseq : 2.613 micros/op; 42.3 MB/s
fillsync : 3924.432 micros/op; 0.0 MB/s (1000 ops)
fillrandom : 3.609 micros/op; 30.7 MB/s
overwrite : 4.508 micros/op; 24.5 MB/s
readrandom : 6.136 micros/op; (864322 of 1000000 found)
readrandom : 5.446 micros/op; (864083 of 1000000 found)
readseq : 0.180 micros/op; 613.3 MB/s
readreverse : 0.321 micros/op; 344.7 MB/s
compact : 827043.000 micros/op;
readrandom : 4.603 micros/op; (864105 of 1000000 found)
readseq : 0.169 micros/op; 656.3 MB/s
readreverse : 0.315 micros/op; 350.8 MB/s
fill100K : 854.009 micros/op; 111.7 MB/s (1000 ops)
crc32c : 1.227 micros/op; 3184.0 MB/s (4K per op)
snappycomp : 3.610 micros/op; 1081.9 MB/s (output: 55.2%)
snappyuncomp : 0.691 micros/op; 5656.3 MB/s
zstdcomp : 15.731 micros/op; 248.3 MB/s (output: 44.1%)
zstduncomp : 4.218 micros/op; 926.2 MB/s
PiperOrigin-RevId: 509957778
il y a 2 ans
Reilly Grant
13ebad24dc
Address comments.
il y a 2 ans
Reilly Grant
df68d9578c
Fix EnvTest.RunMany to allow parallel execution
As allowed by the documentation for Env::Schedule(), ChromiumEnv may
execute functions on multiple threads and guarantees no sequencing.
EnvTest.RunMany assumed that functions ran in order, is the case for the
stock PosixEnv and WindowsEnv implementations. This change updates the
test to not assume sequential execution.
il y a 2 ans