Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add useBaseAddress to OptionTypeInfo #397

Merged
merged 261 commits into from
Nov 1, 2023
Merged
Show file tree
Hide file tree
Changes from 247 commits
Commits
Show all changes
261 commits
Select commit Hold shift + click to select a range
59495ff
Update HISTORY and bump version to 7.7.2
riversand963 Oct 5, 2022
6296ac6
Fix bug in HyperClockCache ApplyToEntries; cleanup (#10768)
pdillinger Oct 6, 2022
eb9a80f
Update HISTORY and version.h for 7.7.3
pdillinger Oct 11, 2022
7e4c534
Init
rtpro May 24, 2022
c7e17a2
SPDB-126: status: don't include private headers from public headers
isaac-io Jun 15, 2021
1e7d495
build: fix clang diagnostics
isaac-io Jun 20, 2021
d7ddc9b
tests: add initialisation in gtest in order to resolve a GCC diagnostic
isaac-io May 19, 2021
1c72bf7
tests: resolve GCC diagnostics
isaac-io May 20, 2021
707cb4b
build: compilation fixes
Yuval-Ariel May 17, 2022
7b7c088
SPDB-165: build: fix building on CentOS 7 with old versions of gflags…
isaac-io Jul 6, 2021
b801cfe
SPDB-556: build: fix clang 12 compilation errors
isaac-io Mar 9, 2022
daaffd6
SPDB-553: build: support sccache in the CMake config
isaac-io Mar 8, 2022
56134ce
SPDB-181: tests: add missing `override` specifier in gtest to fix a c…
isaac-io Jul 8, 2021
f7b7e1a
SPDB-87: build: fix clang compilation errors
isaac-io Apr 14, 2021
284f164
#15: fault_injection_fs: avoid division by zero in DropRandomUnsynced…
Yuval-Ariel Jun 23, 2022
09157e4
customizable_test: fix breakage caused by SPDB-556 (#27)
isaac-io Jun 23, 2022
e917872
SPDB-209: crash_test: bail if the run failed before the driver killed it
isaac-io Aug 22, 2021
9c831ca
SPDB-225: crash_test: backup last two db states
Yuval-Ariel Jun 14, 2022
f42bc0b
SPDB-229: crash_test: add timestamp and PID to command execution output
isaac-io Oct 6, 2021
54f06e9
SPDB-231: crash_test: clean left-over copies of the database on success
isaac-io Oct 6, 2021
0efaf2a
SPDB-235: crash_test: remove redundant command execution print
isaac-io Oct 6, 2021
b2d6786
SPDB-266: crash_test: fix parsing of boolean arguments
isaac-io Oct 13, 2021
bb89735
SPDB-331: db_stress: fix compare_full_db_state_snapshot with batched …
Yuval-Ariel Jun 27, 2022
4e3f1ca
SPDB-331: crash_test: don't toggle test_batches_snapshots
Yuval-Ariel Jun 23, 2022
66e52b0
SPDB-241: crash_test: add narrow crash test
Yuval-Ariel Jun 23, 2022
2442cdc
SPDB-284: crash_test: increase stress test coverage
Yuval-Ariel Jun 14, 2022
781a88b
SPDB-495: crash_test: disable test_batches_snapshots when cf_consiste…
Yuval-Ariel Jun 14, 2022
7a6441e
SPDB-469: db_stress: add data_block_index_type
Yuval-Ariel Jan 20, 2022
469665b
stress_test: fix test_cf_consistency msg and ..
Yuval-Ariel Jun 27, 2022
1a9490d
git: add clangd cache to .gitignore
isaac-io Apr 6, 2021
8b36673
column_family: make the comparison of the SuperVersion pointer explicit
Yuval-Ariel Jun 6, 2022
50f3e26
Rename rocksdb threads to speedb
speedbmike Jan 31, 2021
b4857b1
log: change log header to SpeeDB
Yuval-Ariel May 17, 2022
da3e7b0
SPDB-467: Report the metadata_cache_options table options to the trace
udi-speedb Jan 17, 2022
dc180a6
SPDB-538: Support configuration of metadata-cache-options in db_bench
udi-speedb Feb 28, 2022
bfe8152
SPDB-632: Print write_buffer_manager size to LOG
Yuval-Ariel Apr 17, 2022
09af7f3
SPDB-347: Add a version number to our builds
isaac-io Nov 25, 2022
6361dfd
SPDB-382: Exclude third party code from the checks
Yuval-Ariel Jul 3, 2022
da63840
SPDB-270: db_bench: add SeekRandomWriteRandom test
Yuval-Ariel Jul 12, 2022
c1aea6f
README: Update to contain a quick start guide for speedb
Nov 23, 2022
62ff2f1
customizable_test: revert the offsetof() build-related fixes (#55)
isaac-io Jul 14, 2022
6e10924
SPDB-180: general: avoid comparing Status using == as it only compare…
isaac-io Jul 8, 2021
33de8af
SPDB-180: tests: avoid comparing Status using == as it only compares …
isaac-io Jul 13, 2022
4d4f9ef
SPDB-156: db_test: add test for - forward the incomplete status on no_io
Yuval-Ariel May 17, 2022
49350fb
SPDB-341: optimistic_transaction_example: fix snapshots leak
isaac-io Nov 16, 2021
96c2dca
SPDB-96: ldb: fix get to print the entire value
isaac-io Apr 27, 2021
326005c
SPDB-534: db_bench: fix rocksdb bug of last_ref assertion
Yuval-Ariel Feb 23, 2022
92e8736
SPDB 521: db_bench: fix SeekRandom and ReadRandomWriteRandom
Yuval-Ariel Jun 20, 2022
4a70aa7
mutable_db_options: fix a Clang 14 build error (#57)
isaac-io Jul 14, 2022
4d6e346
db_bench: reset the last operation time where rate limiting is applied
hilikspdb Jul 10, 2022
d7362f8
Add ability to create MemTableFactory from URI/string to tools
mrambacher Jul 27, 2022
0e4658e
cmake: use the old plugin infra and add support for *_FUNC registrati…
isaac-io Jul 27, 2022
849fb7e
spdb memtable: add a new hash-based memtable
ayulas Aug 4, 2021
bdc04c2
build: always add the Speedb plugin to the build (#87)
isaac-io Jul 31, 2022
d41ef3a
crash_test: add the new memtable as a random choice (#89)
isaac-io Jul 31, 2022
783b0b6
spdb_memtable: fix an unused parameter issue (#91)
isaac-io Jul 31, 2022
88d1e94
crash_test: fix incorrect passing of the memtablerep argument (#93)
isaac-io Aug 1, 2022
35c5e62
crash_test: remove the hash-based memtable from crash test (#98)
isaac-io Aug 1, 2022
477d9c8
CI: initial setup
Nov 23, 2022
e35995f
Update issue templates
rtpro Nov 23, 2022
9de11a8
Devops ci/add build tools (#104)
nathan-bo Aug 3, 2022
8924080
ci: add a /var/tmp volume to the QA tests to fix tests failing (#107)
isaac-io Aug 3, 2022
ca0ca78
new release line network hotfix (#109)
nathan-bo Aug 4, 2022
e916378
release: publish version 2.0.0
isaac-io Aug 4, 2022
1c9a9e1
Create README.md
rtpro Aug 3, 2022
8537dcc
Update README.md
rtpro Aug 9, 2022
234ac3d
#53: Update contributing guide (#59)
isaac-io Aug 16, 2022
badefe6
Update README.md
rtpro Aug 17, 2022
8ffe798
Update CODE_OF_CONDUCT.md
rtpro Aug 18, 2022
2b8346a
build: fix the java test target dependencies (#128)
isaac-io Aug 19, 2022
c4c978a
flush_job: do not roll back memtable flush on CF drop and DB shutdown…
isaac-io Aug 18, 2022
0c30bd7
Update test_fuzz.yml
nathan-bo Aug 22, 2022
96287ff
bloom_test: fix compilation error with GCC 12 (#136)
isaac-io Aug 24, 2022
a13fd1f
build: clean up the Makefile a bit (#118)
isaac-io Aug 9, 2022
add4101
build: allow setting the path to GNU Parallel in the Makefile (#118)
isaac-io Aug 10, 2022
06497e2
licence: remove the GPL as an alternative licence (#118)
isaac-io Aug 9, 2022
c1f151a
docs: update license files to comply with Apache 2.0 (#111)
rtpro Aug 25, 2022
c0d9d0b
Adding logo to readme (#135)
rtpro Aug 30, 2022
48be17d
ci: move fuzz testing to reusable workflow (#133)
nathan-bo Sep 5, 2022
c13de62
plugins: add Plugin Tests to builds (#123)
mrambacher Sep 13, 2022
01128bf
makefile: avoid setting TEST_TMPDIR unnecessarily (#140)
isaac-io Aug 25, 2022
681938d
build: replace usages of egrep with grep -E (#166)
isaac-io Sep 16, 2022
5d2c7ea
crash_test: clean up DB copies in whitebox and narrow test (#159)
isaac-io Sep 19, 2022
229fa84
#34: set purges as Pri::Low
Yuval-Ariel Jun 28, 2022
c5c7e56
db: Fixes for db_test2 and deletefile_test
AmnonHanuhov Sep 6, 2022
324514e
Accurate memory tracking of immutable memory (#132)
udi-speedb Aug 17, 2022
36627aa
Update logo dark mode
rtpro Nov 23, 2022
380dfac
db_bench: allow setting avoid_unnecessary_blocking_io (#183)
isaac-io Sep 29, 2022
76049b5
makefile: fix shell tab-completions (#147)
isaac-io Aug 30, 2022
6c14e1d
makefile: fix parallel `make check` failing on the first run (#177)
isaac-io Sep 23, 2022
17b0e81
fix a typo
jsteemann Sep 30, 2022
c000d6c
docs: fix a broken link in the contributing guide (#153)
dinga-dinga Oct 3, 2022
8f7ea10
docs: update HISTORY.md (#189)
bosmatt Oct 3, 2022
0011841
CI: run stress tests for 1hr instead of 500secs
Yuval-Ariel Oct 3, 2022
f162f8a
cmake: allow running the tests in parallel like in the Makefile (#102)
isaac-io Aug 2, 2022
2dbc6bb
makefile: rework the dependency graph for faster test runs startup (#…
isaac-io Aug 22, 2022
9ae2752
tools: Make FilterPolicy settable via URI/CreateFromString (#71)
mrambacher Jul 28, 2022
d1540fe
options: fix documentation from #34 purges set to LOW
Yuval-Ariel Oct 20, 2022
05055a6
options: change the default value for compaction threads to 8 (#169)
isaac-io Oct 19, 2022
f9c553c
Speedb's Paired Block Bloom (#29)
udi-speedb Jul 11, 2022
b78a738
tests: fix breakage caused by the compaction threads value change (#197)
isaac-io Oct 23, 2022
72799b2
paired_filter: fix copyright and licence headers (#199) (#204)
isaac-io Oct 24, 2022
77d8bea
build: clean up the build configuration to allow rebranding (#64)
isaac-io Aug 25, 2022
b0a6256
build: rename artefacts from RocksDB to Speedb (#64)
isaac-io Jul 25, 2022
3715f3d
scripts: rename RocksDB references to Speedb (#64)
isaac-io Nov 24, 2022
a9e9f3d
general: replace RocksDB references in strings with Speedb (#64)
isaac-io Jul 25, 2022
b293388
tools: replace RocksDB version information with the Speedb version (#64)
isaac-io Jul 25, 2022
bc766ae
build: update zlib to 1.2.13 (#206)
isaac-io Nov 24, 2022
2ea92d9
Added questions section to the README file
bosmatt Oct 26, 2022
894e51a
ci: fix the release pipeline
isaac-io Oct 26, 2022
b9f0f18
release: publish version 2.1.0
Oct 26, 2022
5f08895
cmake: clean up on successful runs and randomise test scheduling (#202)
isaac-io Oct 24, 2022
d0dbefe
build: add a version build-tag for non-release builds (#156)
isaac-io Nov 25, 2022
fe0d0ea
build: support ccache and sccache in the Makefile build (#170)
isaac-io Sep 21, 2022
461e6f6
crashtest: fix 0 value of data_block_hash_table_util_ratio (#214)
Yuval-Ariel Nov 6, 2022
78ad8e7
memtable_list: avoid rolling back memtable flush on CF drop (#144)
isaac-io Aug 30, 2022
9138814
deletefile_test: fix breakage caused by the compaction threads change…
isaac-io Nov 7, 2022
567c8d5
docs: Update README.md (#212)
Yuval-Ariel Nov 25, 2022
c8b0dba
docs: readme typo fix (#223)
azmisaquib Nov 9, 2022
cf2fbe3
docs: fix instructions for building Speedb in README.md and INSTALL.md
isaac-io Nov 10, 2022
2f2e344
ci: build a release without a debug tag (#228)
isaac-io Nov 10, 2022
b482ff7
build: correctly handle merge commits when calculating a build tag (#…
isaac-io Nov 9, 2022
b14e9df
db_test2: fix BackgroundPurgeTest (#236)
Yuval-Ariel Nov 11, 2022
f29c535
docs: Update HISTORY.md README.md (#239)
bosmatt Nov 25, 2022
6c4895c
db_bench: Fix a bug when destructing a Benchmark with multiple db-s (…
udi-speedb Nov 10, 2022
8a85b53
hash spd memtable (#98)
ayulas Nov 14, 2022
eadf04b
db_bench: add benchmark - seektodeletedranges (#200)
Yuval-Ariel Nov 14, 2022
cf0fceb
db_bench: Make -statistics_string behave as -statistics (#248)
udi-speedb Nov 17, 2022
a936fdb
docs: Add db_bench README
bosmatt Nov 27, 2022
6d3349b
QA tool to check artifacts (#120)
RoyBenMoshe Nov 20, 2022
9190699
ci: added db_bench_README.txt to db_bench-speedb-V.tar.gz (#253)
maxb-io Nov 25, 2022
24f28fa
cmake: Fix build for rebase 7.7.3 (#264)
Yuval-Ariel Nov 25, 2022
a9ecde4
java makefile: fix dependencies
Yuval-Ariel Nov 25, 2022
67825ec
Fix check sources to ignore GIF files
mrambacher Nov 15, 2022
eb8b39d
rebase 7.7: Fix merge issues
mrambacher Nov 25, 2022
8c8b740
rebase 7.7: fix merge issues
Yuval-Ariel Nov 26, 2022
f3f5521
db_bench: Enhancement - Support multiple benchmarks groups, each with…
udi-speedb Nov 27, 2022
3427275
db_bench: Support control over WBM's allow_stall ctor parameter (#187)
udi-speedb Nov 24, 2022
abf2272
db_bench: Enhancement - Allow specifying the db-s to use in each group
udi-speedb Nov 27, 2022
810110f
db_bench: fix compiler warnings (#263)
Yuval-Ariel Nov 28, 2022
1dc9082
db_bench: ErrorExit from static func compiler error (#277)
Yuval-Ariel Nov 28, 2022
c528ec8
build: Add gtest-parallel to project
AmnonHanuhov Nov 22, 2022
553c63b
Update README.md (#280)
bosmatt Dec 5, 2022
badbbc6
Update README.md (#291)
bosmatt Dec 7, 2022
934b849
db_stress: Support control over WBM's allow_stall (#287)
udi-speedb Dec 7, 2022
ed71d66
db_bench: Support '--groups' in addition to '-groups' (#283)
udi-speedb Dec 14, 2022
a8226e7
unit tests: disable CompactionServiceTest.RemoteEventListener (#300)
Yuval-Ariel Dec 18, 2022
14177a2
generic switch memtable allows the ability to pre create memtable tha…
ayulas Dec 14, 2022
51efd6d
Smaller batch size in the paired bloom filter (#161)
udi-speedb Dec 14, 2022
0ceb2d6
misc: add build properties info to LOG file (#262)
RoyBenMoshe Dec 18, 2022
f1846de
Dynamic Delay: new feature - Dynamic Delay (#276)
Yuval-Ariel Dec 19, 2022
e097334
Proactive Flushes (#155)
udi-speedb Sep 29, 2022
b5ae932
unit tests: disable LoadCustomizableTest.LoadMemTableRepFactoryTest (…
ayulas Dec 21, 2022
bed23e3
Proactive Flushes: compilation warnings fix (#304)
Yuval-Ariel Dec 21, 2022
7d6ad9d
release: publish version 2.2.0
Dec 21, 2022
f34368c
Update artifact-release.yml
maxb-io Dec 21, 2022
14a511c
Update artifact-release.yml
maxb-io Dec 21, 2022
be12d4d
Update artifact-release.yml
maxb-io Dec 21, 2022
3cccb33
release: publish version 2.3.0
Dec 21, 2022
16b67f4
Update version.h
maxb-io Dec 21, 2022
520d978
Update version.h
maxb-io Dec 21, 2022
c8e7bfb
release: publish version 2.3.0
Dec 21, 2022
12f8bc7
Update version.h
maxb-io Dec 21, 2022
a846525
release: publish version 2.3.0
Dec 21, 2022
91c7b6c
Update version.h
maxb-io Dec 21, 2022
a2c3d50
release: publish version 2.2.0
Dec 22, 2022
2f46760
Delayed Writes: fix L0 calc bug (#310)
Yuval-Ariel Dec 25, 2022
9ae26fb
Print WBM's cache info to log (#312)
udi-speedb Dec 25, 2022
1e6fd16
artifacts check tool: update readme file (#293)
RoyBenMoshe Jan 1, 2023
ba4939d
unit tests: fix CompactionServiceTest.RemoteEventListener (#314)
Yuval-Ariel Jan 6, 2023
6a577bc
Update README.md
bosmatt Jan 8, 2023
8a81432
build: remove the dependency on GNU Parallel for running unit tests (…
AmnonHanuhov Nov 15, 2022
fa31dd3
db_bench: set db_bench defaults to speedbs (#61)
Yuval-Ariel Jan 1, 2023
14486a6
Use malloc/free for LRUHandle instead of new[]/delete[] (#10884)
ltamasi Oct 27, 2022
1e29d09
Update HISTORY and version for 7.7.4
pdillinger Oct 28, 2022
f553739
Reduce heap operations for range tombstone keys in iterator (#10877)
cbi42 Oct 27, 2022
f6b9267
Update HISTORY and version.h for 7.7.5
cbi42 Oct 28, 2022
30691f0
Fix async_io failures in case there is error in reading data (#10890)
akankshamahajan15 Nov 1, 2022
e47981d
Update HISTORY and version.h for 7.7.6
akankshamahajan15 Nov 3, 2022
6d4e92a
Fix async_io regression in scans (#10939)
akankshamahajan15 Nov 11, 2022
a78ece4
Fix db_stress failure in async_io in FilePrefetchBuffer (#10949)
akankshamahajan15 Nov 15, 2022
68378ff
Update HISTORY and version.h for 7.7.7
akankshamahajan15 Nov 15, 2022
4155158
Add some async read stats (#10947)
Nov 14, 2022
be39240
Fix flush picking non-consecutive memtables (#10921)
ajkr Nov 4, 2022
692f785
Fix CompactionIterator flag for penultimate level output (#10967)
ajkr Nov 22, 2022
dcceb07
fixup HISTORY.md
ajkr Nov 24, 2022
278ce6c
Prevent iterating over range tombstones beyond `iterate_upper_bound` …
cbi42 Nov 28, 2022
66413ff
update HISTORY.md and version.h for 7.7.8
ajkr Nov 28, 2022
1247fca
Spdb memtable: improve performance (#298)
ayulas Dec 18, 2022
38b4ac1
add speedb is awesome example to support new getting started instruct…
RoyBenMoshe Feb 1, 2023
24be917
db_bench: align used tests (#325)
Yuval-Ariel Jan 10, 2023
0582054
windows build failed in speedb_paired_bloom_internal files due to bad…
ayulas Feb 2, 2023
1d3804f
unit_tests: Generate new db dir per test (#353)
mrambacher Feb 7, 2023
ed180bf
MAC_build: Add F_BARRIERFSYNC (#319)
mrambacher Feb 7, 2023
a30c67a
db_bench: Fix compilation issues on Mac (#393)
mrambacher Feb 8, 2023
61974b1
Add Injection and NoSyncFS (#380)
mrambacher Feb 9, 2023
acd646b
Add useBaseAddress to OptionTypeInfo
mrambacher Feb 10, 2023
b76dd95
live config changes: add RefreshOptions method (#294)
mrambacher Feb 11, 2023
5344acd
db_bench: fix for issue (#290) (#370)
andy-byers Feb 11, 2023
fa371b1
Paired-Bloom-Filter: Balancing rounding to batches between the bottom…
noamhaham Feb 13, 2023
2369e50
AXV512: don't use XXH3_accumulate_512 with ASAN (#398)
Yuval-Ariel Feb 14, 2023
a83f8b8
util: Add DECLARE_uint32 to gflags compatibility (#396)
AmnonHanuhov Feb 14, 2023
c2372d3
Report to Log the Index size per CF - LRU Cache Only (#338)
udi-speedb Feb 14, 2023
883a9a2
Remove dead lines
mrambacher Feb 14, 2023
ae78980
release: publish version 2.3.0
Feb 15, 2023
ea5b771
fault_injection_fs: Add back accidental revert in DropRandomUnsyncedD…
mrambacher Feb 15, 2023
6b5eb12
Add speedb licenses to code (#409)
ofriedma Feb 23, 2023
354c6a1
CI: Enforce writing licenses inside source files (#410)
ofriedma Feb 23, 2023
86a6dbf
Makefile: Use speedb libs in `build_size` target (#399)
AmnonHanuhov Feb 28, 2023
a35a064
ci job test_fuzz - removed saving logs to s3, it is not needed as the…
maxb-io Jan 30, 2023
9530d03
removed AWS credentials as they are not required, were used for uploa…
maxb-io Mar 1, 2023
0d43a01
Win build: Replace uint with unsinged int (Windows Build Failure) (#421)
udi-speedb Mar 12, 2023
2574f8f
Global Write Controller: share write controller across dbs (#346)
Yuval-Ariel Feb 23, 2023
3a1541a
added ci_macos.yml file for automation of tests and builds on MacOS (…
maxb-io Mar 19, 2023
cffb516
added ci_windows.yml for automation of tests and build on Windows (#435)
maxb-io Mar 19, 2023
ee8beac
added a step that copies thirdparty.inc from external dir to the spee…
maxb-io Mar 19, 2023
19d5597
Global delay bug fix: use credits only under mutex (#438)
Yuval-Ariel Mar 22, 2023
3abde67
crashtest: dont reroll skip_list or HashSpdRepFactory (#452)
Yuval-Ariel Mar 29, 2023
ed310b7
options: Forward declare WriteBufferManager (#279)
AmnonHanuhov Mar 29, 2023
c2ec2e5
CI windows: switched VC 2019 to VC 2022 in the ci_windows.yml in orde…
maxb-io Mar 29, 2023
e1fa41e
dynamic delay: fix pending bytes rate calculation (#451)
Yuval-Ariel Apr 2, 2023
033718d
Write Flow: Spdb WF (#445)
ayulas Apr 3, 2023
df25119
TTL: Skip expired object when using DBWithTtl (#403)
ofriedma Apr 4, 2023
e1955f3
added readline-dev package to the alpine container in the CI test (#463)
maxb-io Apr 4, 2023
4091672
adding beezcli and ttl support (#427)
ofriedma Apr 5, 2023
de9aacd
release: publish version 2.4.0
Apr 5, 2023
0a218cd
added temporary workflow to test artifact build with readline-dev ins…
maxb-io Apr 5, 2023
a2a7fac
466 artifact build fails due to beezcli is missing (#468)
maxb-io Apr 5, 2023
09a50e4
466 artifact build fails due to beezcli is missing (#469)
maxb-io Apr 5, 2023
1e6cabf
release: publish version 2.5.0
Apr 5, 2023
836f97e
466 artifact build fails due to beezcli is missing (#470)
maxb-io Apr 5, 2023
8ef7469
release: publish version 2.4.0
Apr 5, 2023
6f4d068
Write Flow: Reduce debug logs (#472)
ayulas Apr 17, 2023
5817370
Java FilterPolicy: Add Filter::CreateFromString to Java (#387)
mrambacher Apr 19, 2023
236de93
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Apr 20, 2023
0961fc2
Add unit test for kBaseAddress
mrambacher Apr 24, 2023
b2a28e4
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Aug 4, 2023
425e7d8
Fix merge issues
mrambacher Aug 7, 2023
4d0b3fe
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 16, 2023
5f6114c
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 19, 2023
0af152b
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 19, 2023
48eda08
Make format
mrambacher Oct 19, 2023
ad67f74
Update HISTORY
mrambacher Oct 19, 2023
4579252
Fix merge issue
mrambacher Oct 19, 2023
c211316
Another make format
mrambacher Oct 19, 2023
b4d3b0b
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 20, 2023
5bf40a5
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 24, 2023
eee34eb
Revert two unchanged files
mrambacher Oct 30, 2023
5f34349
Merge remote-tracking branch 'upstream/main' into Speedb/OptionsAddrO…
mrambacher Oct 30, 2023
a9e53a5
Add license
mrambacher Oct 30, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1.
2.
3.
4.

**Expected behavior**
A clear and concise description of what you expected to happen.

**System (please complete the following information):**
- OS: [e.g. RHEL8.6]
- Hardware [e.g. Intel Xeon Ice Lake, 64GB, NVMe]

**Additional context**
Add any other context about the problem here.
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

Owner:

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
Binary file added .github/new-bee-mascot-dark.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/new-bee-mascot.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/speedb-b.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/speedb-logo-dark.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .github/speedb-logo.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
113 changes: 113 additions & 0 deletions .github/workflows/artifact-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
name: Create release artifacts

on:
push:
tags:
- 'speedb/v*'

permissions:
contents: write # Needed for release assets upload
id-token: write # Needed for AWS credentials setting

jobs:
build:
runs-on: [self-hosted, ubuntu, asrunner]

container:
image: centos:7.9.2009

steps:
- name: pre
run: |
yum install -y centos-release-scl epel-release
yum install -y make devtoolset-11-gcc-c++ \
coreutils wget unzip which git python3 openssl openssl-devel \
libzstd-devel lz4-devel snappy-devel zlib-devel readline-devel \
java-1.8.0-openjdk-devel
echo "PATH=/opt/rh/devtoolset-11/root/usr/bin:${PATH}" >> $GITHUB_ENV
echo "RELEASE_VERSION=${GITHUB_REF_NAME#speedb/v}" >> $GITHUB_ENV

- name: Install CMake
run: |
CMAKE_RELEASE=3.20.1
wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_RELEASE}/cmake-${CMAKE_RELEASE}.tar.gz
tar xf cmake-${CMAKE_RELEASE}.tar.gz
cd cmake-${CMAKE_RELEASE}
./bootstrap
make -j$(nproc) && make install
cd .. && rm -rf cmake-${CMAKE_RELEASE}*

- name: Install awscli
run: |
wget "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -O "awscliv2.zip"
unzip awscliv2.zip
./aws/install
rm -rf aws awscliv2.zip

- uses: actions/checkout@v3

- run: mkdir "$GITHUB_WORKSPACE/out"

- name: Build and package release libraries
run: |
rm -rf build && mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DSPDB_RELEASE_BUILD=1 -DPORTABLE=1 -DWITH_GFLAGS=0 -DWITH_SNAPPY=1 -DWITH_LZ4=1 -DWITH_ZLIB=1 -DWITH_ZSTD=1
mkdir -p "$GITHUB_WORKSPACE/out/root"
DESTDIR="$GITHUB_WORKSPACE/out/root" make -j$(nproc) install
( cd "$GITHUB_WORKSPACE/out/root" && tar czf ../speedb-${RELEASE_VERSION}.tar.gz . )
rm -rf "$GITHUB_WORKSPACE/out/root"
cd .. && rm -rf build

- name: Build release Jar
run: |
make clean
SPDB_RELEASE_BUILD=1 LIB_MODE=static DEBUG_LEVEL=0 PORTABLE=1 JAVA_HOME=/usr/lib/jvm/java-openjdk make -j$(nproc) rocksdbjavastatic
cp "java/target/speedbjni-${RELEASE_VERSION}-linux64.jar" "$GITHUB_WORKSPACE/out"

- name: Build db_bench
run: |
yum install -y gflags-devel
rm -rf build && mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DSPDB_RELEASE_BUILD=1 -DPORTABLE=1 -DWITH_GFLAGS=1 \
-DWITH_SNAPPY=1 -DWITH_LZ4=1 -DWITH_ZLIB=1 -DWITH_ZSTD=1 \
-DWITH_BENCHMARK_TOOLS=1 -DROCKSDB_BUILD_SHARED=1
make -j$(nproc) db_bench
cp ../docs/db_bench_README.txt .
tar czf "$GITHUB_WORKSPACE/out/db_bench-speedb-${RELEASE_VERSION}.tar.gz" db_bench db_bench_README.txt
cd .. && rm -rf build

- name: Generate checksums
run: |
for f in $GITHUB_WORKSPACE/out/*; do
sha256sum "$f" > "$f.sha256"
done

- name: Get release date
run: |
echo "RELEASE_DATE=$(git for-each-ref "--format=%(creatordate:short)" "refs/tags/${GITHUB_REF_NAME}")" >> $GITHUB_ENV

- name: Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
with:
generate_release_notes: false
name: Speedb ${{ env.RELEASE_VERSION }} (${{ env.RELEASE_DATE }})
files: |
out/db_bench-speedb-${{ env.RELEASE_VERSION }}.tar.gz
out/db_bench-speedb-${{ env.RELEASE_VERSION }}.tar.gz.sha256
out/speedb-${{ env.RELEASE_VERSION }}.tar.gz
out/speedb-${{ env.RELEASE_VERSION }}.tar.gz.sha256
out/speedbjni-${{ env.RELEASE_VERSION }}-linux64.jar
out/speedbjni-${{ env.RELEASE_VERSION }}-linux64.jar.sha256

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: eu-west-2

- name: Upload artifacts to S3
run: |
aws s3 cp "$GITHUB_WORKSPACE/out" "s3://spdb-github-artifacts/release-${RELEASE_VERSION}" --recursive
rm -rf "$GITHUB_WORKSPACE/out"
24 changes: 24 additions & 0 deletions .github/workflows/ci_macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# This workflow will build Speedb on a Mac OS server
#
# This workflow assumes the self hosted runner on a Mac machine is ready.
# The Mac OS server must have all the tools and software required for Speedb building to be installed


name: Build on Mac

on:
workflow_dispatch:

jobs:
build-and-deploy:
runs-on: macOSi86 # a test self hosted runner on a vm with MacOS
steps:
- name: 'Checkout GitHub Action'
uses: actions/checkout@v3

- name: 'build'
run: |
export JAVA_HOME=/usr/local/opt/openjdk@11
export CPPFLAGS="-I/usr/local/opt/openjdk@11/include"
export CXXFLAGS="-I/usr/local/opt/openjdk@11/include"
DEBUG_LEVEL=0 make -j 4 rocksdbjavastatic
107 changes: 107 additions & 0 deletions .github/workflows/ci_pipeline.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
name: CI

on:
#push:
workflow_dispatch:
workflow_call:
pull_request_review:
types: [submitted]


permissions: write-all

jobs:
#Sanity:
#uses: speedb-io/speedb/.github/workflows/sanity_check.yml@main

Build:
#needs: [Sanity]
if: ${{ github.event.review.state == 'approved' || github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/release') }}
runs-on: [self-hosted, ubuntu, asrunner]
strategy:
matrix:
include:
- name: verify build
command: cmake .. -GNinja
- name: optimized build
command: cmake .. -DCMAKE_BUILD_TYPE=Release -GNinja
- mame: clang build
command: CC=clang CXX=clang++ cmake .. -GNinja
container:
image: alpine:3.14

steps:
- name: Pre-build
run: |
env
rm -rf /usr/share/dotnet || echo ""
df -h
apk add git
echo "nameserver 8.8.8.8" > /etc/resolv.conf
apk add bash python3 py3-pip clang clang-extra-tools shellcheck gcc g++ cmake ninja ccache \
openjdk10 gflags-dev snappy-dev lz4-dev bzip2-dev zstd-dev zlib-dev linux-headers openssh-client tar readline-dev
python3 -m pip install lint-diffs flake8


- name: Checkout
uses: actions/checkout@v3


- name: Prepare ccache timestamp
id: ccache_cache_timestamp
shell: cmake -P {0}
run: |
string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC)
message("::set-output name=timestamp::${current_date}")


- name: ccache cache files
uses: actions/cache@v2
with:
path: ~/.ccache
key: ${{runner.os}}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}}
restore-keys: |
${{runner.os}}-ccache-


- name: ${{ matrix.name }}
run: |
if [ -d "$GITHUB_WORKSPACE/build" ]; then
echo >&2 "error: the build directory should not exist" && false NIK
fi
if [ -d "~/.ccache" ]; then
echo "Already exists"
else
mkdir -p ~/.ccache
ls ~ | grep cache || echo ""
touch ~/.ccache/ccache.txt
echo "aaa" > ~/.ccache/ccache.txt
ls ~/.ccache
cat ~/.ccache/ccache.txt
fi
mkdir -p "$GITHUB_WORKSPACE/build"
cd "$GITHUB_WORKSPACE/build"
export "CCACHE_BASEDIR=$HOME"
export "CCACHE_DIR=$HOME/.ccache"
export "CCACHE_COMPILERCHECK=content"
${{ matrix.command }} -DPORTABLE=1 -DWITH_GFLAGS=1 \
-DWITH_ZLIB=1 -DWITH_SNAPPY=1 -DWITH_BZ2=1 -DWITH_LZ4=1 -DWITH_ZSTD=1 \
-DWITH_JNI=1 -DJAVA_HOME=/usr/lib/jvm/default-jvm \
-DWITH_BENCHMARK_TOOLS=1 -DWITH_CORE_TOOLS=1 -DWITH_TOOLS=1 \
-DWITH_TESTS=1 -DWITH_ALL_TESTS=1 -DWITH_EXAMPLES=1
ninja

#Performance:
#if: ${{ github.event.review.state == 'approved' || github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/release') }}
#needs: [Build]
#uses: speedb-io/speedb/.github/workflows/perf-test.yml@main

QA-Tests:
if: ${{ github.event.review.state == 'approved' || github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/release') }}
needs: [Build]
uses: speedb-io/speedb/.github/workflows/qa-tests.yml@main

Fuzz:
if: ${{ github.event.review.state == 'approved' || github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/release') }}
needs: [Build]
uses: ./.github/workflows/test_fuzz.yml
27 changes: 27 additions & 0 deletions .github/workflows/ci_windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# This workflow will build Speedb on a Windows server
#
# This workflow assumes the self hosted runner on a Windows machine is ready.
# The Windows server must have all the tools and software required for Speedb building to be installed


name: Build on Windows

on:
workflow_dispatch:

jobs:
build-and-deploy:
runs-on: win1 # a test self hosted runner on a win vm
steps:
- name: 'Checkout GitHub Action'
uses: actions/checkout@v3

- name: 'build and present'
shell: powershell # For Linux, use bash
run: |
$env:THIRDPARTY_HOME='C:/Users/builder/code'
cp $env:THIRDPARTY_HOME\thirdparty.inc . # copy the thirdparty.inc that reflects the env on the runner machine
mkdir runner_bld
cd runner_bld
cmake -G "Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_STANDARD=20 -DJNI=1 -DGFLAGS=1 -DSNAPPY=1 -DLZ4=1 -DZLIB=1 -DZSTD=1 -DXPRESS=1 -DFAIL_ON_WARNINGS=0 ..
msbuild speedb.sln /p:Configuration=Release /t:speedbjni-shared
Loading