wesley
57f68f119d
Merge branch 'main' into wesley
il y a 8 mois
wesley
0ae41c46ef
Merge remote-tracking branch 'refs/remotes/origin/main'
il y a 8 mois
ArcueidType
339d0a57c0
add size method for fields
il y a 8 mois
wesley
7578f5d728
test_bench ver1
il y a 8 mois
wesley
ebecd08378
Merge branch 'main' into wesley
il y a 8 mois
wesley
97cbccbc4f
Merge remote-tracking branch 'refs/remotes/origin/main'
il y a 8 mois
李畅
b31487747b
benchmark test with diff args
il y a 8 mois
ArcueidType
096f6fddfb
gc function
il y a 8 mois
李畅
52e7b38f62
ver1 bug fix again
il y a 8 mois
李畅
071dffd533
unnecessary modeldb ignored
il y a 8 mois
李畅
5901b845ed
ver1 bug fix
il y a 8 mois
李畅
2e031d6c63
Merge branch 'main' into wesley
il y a 8 mois
李畅
e4eb3154ae
benchmark test_1
il y a 8 mois
ArcueidType
568fe7ac2e
vtable manager
il y a 8 mois
李畅
f5d9f6bb32
benchmark test_0
il y a 8 mois
ArcueidType
39187ba9d5
modify experiment config
il y a 8 mois
ArcueidType
f1d10e175c
benmark bug fixed
il y a 8 mois
Arcueid
1118a1c75c
some fix
il y a 8 mois
ArcueidType
8fd263dcd5
update code structure
il y a 8 mois
Arcueid
1b23620856
append basic io test and pass
il y a 8 mois
Arcueid
5f34bd07a9
install vTable builder and reader into leveldb
il y a 8 mois
Arcueid
704800e4db
builder and reader pass test_vtable
il y a 8 mois
Arcueid
7ec558c54b
first release of vTable builder and reader, pass test_vtable
il y a 8 mois
ArcueidType
f438aaef82
basic structure of vtable
il y a 8 mois
ArcueidType
c6783d62f1
update original get
il y a 8 mois
ArcueidType
3a042c5b30
clear useless code
il y a 8 mois
ArcueidType
5babb13211
optimize FindKeyByField
il y a 9 mois
ArcueidType
61e7ce6d93
Implement Fields and pass the tests
il y a 9 mois
ArcueidType
d62f278508
edit fields test
il y a 9 mois
ArcueidType
ab2ffc2059
design of field str
il y a 9 mois
ArcueidType
a3ec99aecb
update README
il y a 9 mois
ArcueidType
9180866551
detailed missions
il y a 9 mois
ArcueidType
1c55356058
Merge branch 'wesley'
il y a 9 mois
李畅
7be10da2d0
finish PLAN.md
il y a 9 mois
ArcueidType
bc369456e8
fix code display
il y a 9 mois
ArcueidType
6845e682c5
fix pic path
il y a 9 mois
ArcueidType
9d24c6f959
fix pic path
il y a 9 mois
ArcueidType
d87b364f9d
Complete Part 2, 3, 4 of Plan
il y a 9 mois
韩晨旭
0c88a409d2
Complete Part 2, 3, 4 of Plan
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