350 Commits

Author SHA1 Message Date
Vishesh Yadav
6cd5ad2ffe Add code back 2024-07-10 18:52:14 -07:00
dependabot[bot]
97e0725a5b
Bump zipp from 3.4.1 to 3.19.1 in /contrib/pkg_tester
Bumps [zipp](https://github.com/jaraco/zipp) from 3.4.1 to 3.19.1.
- [Release notes](https://github.com/jaraco/zipp/releases)
- [Changelog](https://github.com/jaraco/zipp/blob/main/NEWS.rst)
- [Commits](https://github.com/jaraco/zipp/compare/v3.4.1...v3.19.1)

---
updated-dependencies:
- dependency-name: zipp
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-09 18:17:40 +00:00
Vishesh Yadav
591efa1d1b Remove swift 2024-06-29 11:11:48 -07:00
Simon Waldherr
b4126f364e fix two misspelled words 2024-06-17 16:38:28 -05:00
Doğan Çeçen
edbdd74acf Fix bindingTestScript.sh shebang and use /usr/bin/env to find bash
This change allows people to run this script on macOS, which has quite an old version of bash at /bin/bash. Without it, I see the following error:

```
build/bindingtester/localClusterStart.sh: line 209: syntax error near unexpected token `>'
build/bindingtester/localClusterStart.sh: line 209: `  elif "${BINDIR}/fdbcli" -C "${FDBCONF}" --exec "kill; kill ${FDBCLUSTERTEXT}; sleep 3" --timeout 120 &>> "${LOGDIR}/fdbcli-kill.log"'
```

Also, note that the old shebang in bindingTestScript.sh was also missing the ! character.

localClusterStart.sh didn't need to be changed since it is directly sourced by
bindingTestScript.sh, but there's no harm to correct it, and it could perhaps
become useful if one tries to use it directly.
2024-06-05 08:43:34 -05:00
hao fu
b26cb205e0 Fix bug when there is no data in the first half of a binary search itereation 2024-04-15 14:08:52 -07:00
hao fu
4f2bdc72e9 Add convert.py that converts between timestamp and version for clusters 2024-04-15 14:06:14 -07:00
Hao Fu
9a0bd9701e
Parse version_stamp and print if necessary (#11231)
* Parse version_stamp and print if necessary

* Update contrib/transaction_profiling_analyzer/transaction_profiling_analyzer.py

Co-authored-by: Jingyu Zhou <jingyuzhou@gmail.com>

---------

Co-authored-by: Jingyu Zhou <jingyuzhou@gmail.com>
2024-03-01 15:44:07 -08:00
James Nugent
3813e08129 Do not opt into sse4.2 for arm64 CPUs in crc32 library
The fork of the crc32 library in contrib makes use of streaming SIMD
instructions where possible. This is achieved via a preprocessor directive, but
short-circuiting of the evaluation previously meant that any use of clang or
GCC opted into SSE regardless.

This commit adds additional parentheses to ensure a warning-free build of the
CRC32 library using clang on ARM64 machines.

On macOS on Apple Silicon:

```
$ uname -m
arm64
```

Before:

```
$ ninja crc32
[0/2] Re-checking globbed directories...
[3/4] Building CXX object contrib/crc32/CMakeFiles/crc32.dir/crc32c.cpp.o
'+sse4.2' is not a recognized feature for this target (ignoring feature)
'+sse4.2' is not a recognized feature for this target (ignoring feature)
[4/4] Linking CXX static library lib/libcrc32.a
```

After:

```
$ ninja -t clean
Cleaning... 5 files.

$ ninja crc32
[0/2] Re-checking globbed directories...
[4/4] Linking CXX static library lib/libcrc32.a
```
2024-01-11 19:40:15 -06:00
Jingyu Zhou
6b45aff627
Merge pull request #10914 from drTr0jan/contrib-fmt
Add preinstalled libfmt support
2023-09-25 11:18:43 -07:00
Dan Lambright
93140ebf9d
support 7.4 in transaction_profiling_analyzer.py (#10925)
* support 7.4

* Update transaction_profiling_analyzer.py

* Update transaction_profiling_analyzer.py
2023-09-22 14:10:40 -07:00
Boris Korzun
4419cd6bec Implib.so: Fix issue with trailing newline in c++filt output 2023-09-20 15:25:42 +03:00
Boris Korzun
dbfd624ab3 Add preinstalled libfmt support 2023-09-20 15:08:54 +03:00
Xiaoge Su
056a670b63 Pull request cherry-pick helper
This is a modified version of old cherry-pick-upstream.py which supports
continuing a pull request merge which failed by a conflict.

Usage:

    prx.py merge [PR ID]

This will merge a pull request with an ID, e.g. 10460 or so. The merge
will stop when a cherry-pick fails with conflict, and the state will be
stored. The user should manually fix the conflict, commit the chagnes
and use prx.py continue to continue the process.

The merge command will fail if a current prx.py merge is undergoing.

NOTE: This merge will have its own internal state, and is different from
the standard git merge.

    prx.py abort

Abort the current merge.

    prx.py continue

Continue the current merge, assuming the conflicting commit is resolved
and can be skipped.

    prx.py status

Report the current status of merge.
2023-07-24 18:43:07 -07:00
Ata E Husain Bohra
784c99f698
Remove mockkms dir from the build dir (#10650)
Description

Remove mockkms dir from the build dir

Testing
2023-07-20 16:14:29 -05:00
Xiaoge Su
252cf224e4 fixup! Set up fdbcli path when running a local cluster 2023-07-11 13:13:39 -07:00
Jingyu Zhou
bbf9632964 Fix joshua_logtool.py to allow . in ensemble ID
e.g., 20230627-102446-nightly-release-7.3-clang-45609535-729-20a8c
2023-06-27 15:09:47 -07:00
Jingyu Zhou
321b77d809 Add 7.3 protocol version to transaction_profiling_analyzer.py
Manually tested the tool to be working.
2023-06-27 10:19:10 -07:00
Xiaoge Su
86f33ea37c fixup! Fix various issues in test_harness
* Fix the issue that Testharness crashes when unseed is not available
* Fix the issue that JoshuaLogTool is not called when the test fails.
2023-06-12 11:42:08 -07:00
Jingyu Zhou
818e1814d0
Merge pull request #10344 from xis19/main
Tool that diffs two branches, e.g. 7.2.0 .. release-7.3
2023-06-08 18:04:18 -07:00
Yanqin Jin
483960c30e SNOW-XXXXXX Check if var is None before comparing with int (#358)
We should check a variable is not None before comparing with integer in python.

100k ensemble: 20230607-173503-yajin-a01d9450252da05e
2023-06-07 12:34:34 -07:00
Trevor Clinkenbeard
63f9674fa8
Merge pull request #9418 from sfc-gh-tclinkenbeard/improve-test-harness
Increase coverage for slow tests in TestHarness2
2023-06-07 08:08:18 -07:00
Konrad `ktoso` Malawski
c26aa0b2a3
Introduce initial Swift support in fdbserver (#10156)
* [fdbserver] workaround the FRT type layout issue to get Swfit getVersion working

* MasterData.actor.h: fix comment typo

* masterserver.swift: some tweaks

* masterserver.swift: remove getVersion function, use the method

* masterserver.swift: print replied version to output for tracing

* [swift] add radar links for C++ interop issues found in getVersion bringup

* Update fdbserver.actor.cpp

* Migrate MasterData closer to full reference type

This removes the workaround for the FRT type layout issue, and gets us closer to making MasterData a full reference type

* [interop] require a new toolchain (>= Oct 19th) to build

* [Swift] fix computation of toAdd for getVersion Swift implementation

* add Swift to FDBClient and add async `atLeast` to NotifiedVersion

* fix

* use new atLeast API in master server

* =build fixup link dependencies in swift fdbclient

* clocks

* +clock implement Clock using Flow's notion of time

* [interop] workaround the immortal retain/release issue

* [swift] add script to get latest centos toolchain

* always install swift hooks; not only in "test" mode

* simulator - first thing running WIP

* cleanups

* more cleanup

* working snapshot

* remove sim debug printlns

* added convenience for whenAtLeast

* try Alex's workaround

* annotate nonnull

* cleanup clock a little bit

* fix missing impls after rebase

* Undo the swift_lookup_Map_UID_CommitProxyVersionReplies workaround

No longer needed - the issue was retain/release

* [flow][swift] add Swift version of BUGGIFY

* [swiftication] add CounterValue type to provide value semantics for Counter types on the Swift side

* remove extraneous requestingProxyUID local

* masterserver: initial Swift state prototype

* [interop] make the Swiftied getVersion work

* masterserver - remove the C++ implementation (it can't be supported as state is now missing)

* Remove unnecessary SWIFT_CXX_REF_IMMORTAL annotations from Flow types

* Remove C++ implementation of CommitProxyVersionReplies - it's in Swift now

* [swift interop] remove more SWIFT_CXX_REF_IMMORTAL

* [swift interop] add SWIFT_CXX_IMMORTAL_SINGLETON_TYPE annotation for semanticly meaningful immortal uses

* rename SWIFT_CXX_REF_IMMORTAL -> UNSAFE_SWIFT_CXX_IMMORTAL_REF

* Move master server waitForPrev to swift

* =build fix linking swift in all modules

* =build single link option

* =cmake avoid manual math, just get "last" element from list

* implement Streams support (#18)

* [interop] update to new toolchain #6

* [interop] remove C++ vtable linking workarounds

* [interop] make MasterData proper reference counted SWIFT_CXX_REF_MASTERDATA

* [interop] use Swift array to pass UIDs to registerLastCommitProxyVersionReplies

* [interop] expose MasterServer actor to C++ without wrapper struct

* [interop] we no longer need expose on methods 🥳

* [interop] initial prototype of storing CheckedContinuation on the C++ side

* Example of invoking a synchronous swift function from a C++ unit test. (#21)

* move all "tests" we have in Swift, and priority support into real modules (#24)

* Make set continuation functions inline

* Split flow_swift into flow_swift and flow_swift_future to break circular dependency

* rename SwiftContinuationCallbackStruct to FlowCallbackForSwiftContinuation

* Future interop: use a method in a class template for continuation set call

* Revert "Merge pull request #22 from FoundationDB/cpp-continuation" (#30)

* Basic Swift Guide (#29)

Co-authored-by: Alex Lorenz <arphaman@gmail.com>

* Revert "Revert "Merge pull request #22 from FoundationDB/cpp-continuation" (#30)"

This reverts commit c025fe6258c4c4904d5e70cd549d408bb61f2802.

* Restore the C++ continuation, but it seems waitValue is broken for CInt somehow now

* disable broken tests - waitValue not accessible

* Streams can be async iterated over (#27)

Co-authored-by: Alex Lorenz <arphaman@gmail.com>

* remove work in progress things (#35)

* remove some not used (yet) code

* remove expose func for CInt, it's a primitive so we always have witness info (#37)

* +masterdata implement provideVersions in Swift (#36)

* serveLiveCommittedVersion in Swift (#38)

* Port updateLiveCommittedVersion to swift (#33)

Co-authored-by: Konrad `ktoso` Malawski <konrad_malawski@apple.com>

* Implement updateRecoveryData in Swift (#39)

Co-authored-by: Alex Lorenz <arphaman@gmail.com>

* Simplify flow_swift to avoid multiple targets and generate separate CheckedContinuation header

* Uncomment test which was blocked on extensions not being picked up (#31)

* [interop] Use a separate target for Swift-to-C++ header generation

* reduce boilerplate in future and stream support (#41)

* [interop] require interop v8 - that will fix linker issue (https://github.com/apple/swift/issues/62448)

* [interop] fix swift_stream_support.h Swift include

* [interop] bump up requirement to version 9

* [interop] Generalize the Flow.Optional -> Swift.Optional conversion using generics

* [WIP] masterServer func in Swift (#45)

* [interop] Try conforms_to with a SWIFT_CONFORMS_TO macro for Optional conformance (#49)

* [interop] include FlowOptionalProtocol source file when generating Flow_CheckedContinuation.h

This header generation step depends on the import of the C++ Flow module, which requires the presence of FlowOptionalProtocol

* conform Future to FlowFutureOps

* some notes

* move to value() so we can use discardable result for Flow.Void

* make calling into Swift async funcs nicer by returning Flow Futures

* [interop] hide initial use of FlowCheckedContinuation in flow.h to break dependency cycle

* [fdbserver] fix an EncryptionOpsUtils.h modularization issue (showed up with modularized libc++)

* Pass GCC toolchain using CMAKE_Swift_COMPILE_EXTERNAL_TOOLCHAIN to Swift's clang importer

* [interop] drop the no longer needed libstdc++ include directories

* [cmake] add a configuration check to ensure Swift can import C++ standard library

* [swift] include msgpack from msgpack_DIR

* [interop] make sure the FDB module maps have 'export' directive

* add import 'flow_swift' to swift_fdbserver_cxx_swift_value_conformance.swift

This is needed for CONFORMS_TO to work in imported modules

* make sure the Swift -> C++ manually bridged function signature matches generated signature

* [interop][workaround] force back use of @expose attribute before _Concurrency issue is fixed

* [interop] make getResolutionBalancer return a pointer to allow Swift to use it

We should revert back to a reference once compiler allows references again

* [interop] add a workaround for 'pop' being marked as unsafe in Swift

* masterserver.swift: MasterData returns the Swift actor pointer in an unsafe manner

* Add a 'getCopy' method to AsyncVar to make it more Swift friendly

* [interop] bump up the toolchain requirement

* Revert "[interop][workaround] force back use of @expose attribute before _Concurrency issue is fixed"

This reverts commit b01b271a76d1677bbb7c5c9c64cdad4b8b2b9612.

* [interop] add FIXME comments highlighting new issue workarounds

* [interop] adopt the new C++ interoperability compiler flag

* [interop] generate swift compile commands

* Do not deduplicate Swift compilation commands

* [interop] generate swift compile commands

* Do not deduplicate Swift compilation commands

* flow actorcompiler.h: add a SWIFT_ACTOR empty macro definition

This is needed to make the actor files parsable by clangd

* [cmake] add missing dependencies

* experimental cross compile

* [cmake] fix triple in cross-compiled cmake flags

* [interop] update to interop toolchain version 16

* [x-compile] add flags for cross-compiling boost

* cleanup x-compile cmake changes

* [cmake] fix typo in CMAKE_Swift_COMPILER_EXTERNAL_TOOLCHAIN config variable

* [interop] pass MasterDataActor from Swift to C++ and back to Swift

* [fdbserver] Swift->C++ header generation for FDBServer should use same module cache path

* Update swift_get_latest_toolchain.sh to fetch 5.9 toochains

* set HAVE_FLAG_SEARCH_PATHS_FIRST for cross compilation

* Resolve conflicts in net2/sim2/actors, can't build yet

* undo SWIFT_ACTOR changes, not necessary for merge

* guard c++ compiler flags with is_cxx_compile

* Update flow/actorcompiler/ActorParser.cs

Co-authored-by: Evan Wilde <etceterawilde@gmail.com>

* update the boost dependency

* Include boost directory from the container for Swift

* conform flow's Optional to FlowOptionalProtocol again

* Guard entire RocksDBLogForwarder.h with SSD_ROCKSDB_EXPERIMENTAL to avoid failing on missing rocksdb APIs

* remove extraneous merge marker

* [swift] update swift_test_streams.swifto to use vars in more places

* Add header guard to flow/include/flow/ThreadSafeQueue.h to fix moduralization issue

* Update net and sim impls

* [cmake] use prebuilt libc++ boost only when we're actually using libc++

* [fdbserver] Swift->C++ header generation for FDBServer should use same module cache path

* fixups after merge

* remove CustomStringConvertible conformance that would not be used

* remove self-caused deprecation warnings in future_support

* handle newly added task priority

* reformatting

* future: make value() not mutating

* remove FIXME, not needed anymore

* future: clarify why as functions

* Support TraceEvent in Swift

* Enable TraceEvent using a class wrapper in Swift

* prearing WITH_SWIFT flag

* wip disabled failing Go stuff

* cleanup WITH_SWIFT_FLAG and reenable Go

* wip disabled failing Go stuff

* move setting flag before printing it

* Add SWIFT_IDE_SETUP and cleanup guides and build a bit

* Revert "Wipe packet buffers that held serialized WipedString (#10018)"

This reverts commit e2df6e33029897360f8e11b3aea8fef97393a98c.

* [Swift] Compile workaround in KeyBackedRangeMap; default init is incorrect

* [interop] do not add FlowFutureOps conformance when building flow clang module for Flow checked continuation header pre-generation

* make sure to show  -DUSE_LIBCXX=OFF in readme

* readme updates

* do not print to stderr

* Update Swift and C++ code to build with latest Swift 5.9 toolchain now that we no longer support universal references and bridge the methods that take in a constant reference template parameter correctly

* Fix SERVER_KNOBS and enable use them for masterserver

* Bump to C++20, Swift is now able to handle it as well

* Put waitForPrev behind FLOW_WITH_SWIFT knob

* Forward declare updateLiveCommittedVersion

* Remove unused code

* fix wrong condition set for updateLiveCommittedVersion

* Revert "Revert "Wipe packet buffers that held serialized WipedString (#10018)""

This reverts commit 5ad8dce0525fb1844664ed2ccd7ba595db6913dd.

* Enable go-bindings in cmake

* Revert "Revert "Wipe packet buffers that held serialized WipedString (#10018)""

This reverts commit 5ad8dce0525fb1844664ed2ccd7ba595db6913dd.

* USE_SWIFT flag so we "build without swift" until ready to by default

* uncomment a few tests which were disabled during USE_SWIFT enablement

* the option is WITH_SWIFT, not USE

* formatting

* Fix masterserver compile error

* Fix some build errors.

How did it not merge cleanly? :/

* remove initializer list from constructor

* Expect Swift toolchain only if WITH_SWIFT is enabled

* Don't require Flow_CheckedContinuation when Swift is disabled

* Don't compile FlowCheckedContinuation when WITH_SWIFT=OFF

* No-op Swift macros

* More compile guards

* fix typo

* Run clang-format

* Guard swift/bridging include in fdbrpc

* Remove printf to pass the test

* Remove some more printf to avoid potential issues

TODO: Need to be TraceEvents instead

* Remove __has_feature(nullability) as its only used in Swift

* Don't use __FILENAME__

* Don't call generate_module_map outside WITH_SWIFT

* Add some more cmake stuff under WITH_SWIFT guard

* Some more guards

* Bring back TLSTest.cpp

* clang-format

* fix comment formatting

* Remove unused command line arg

* fix cmake formatting in some files

* Address some review comments

* fix clang-format error

---------

Co-authored-by: Alex Lorenz <arphaman@gmail.com>
Co-authored-by: Russell Sears <russell_sears@apple.com>
Co-authored-by: Evan Wilde <etceterawilde@gmail.com>
Co-authored-by: Alex Lorenz <aleksei_lorenz@apple.com>
Co-authored-by: Vishesh Yadav <vishesh_yadav@apple.com>
Co-authored-by: Vishesh Yadav <vishesh3y@gmail.com>
2023-06-02 16:09:28 -05:00
Xiaoge Su
ec05da3607 fixup! joshua_logtool error should be reported as a XML element by test_harness 2023-05-31 11:38:18 -07:00
Xiaoge Su
99b1a2ba8b Tool that diffs two branches, e.g. 7.2.0 .. release-7.3
* Diff two branches FROM..TO
  * Record all commits that in TO but not in FROM
  * List the Pull Requests related to the commits together with authors in a Markdown format

An example output:

|PR ID|Author|Title|
|-----|------|-----|
|10302|Yao Xiao|[release-7.3] Knobs to speed up DB open.|
|10311|Jingyu Zhou|Fix assertion failure in RangeResultRef::getReadThrough() [release-7.3]|
|10306|Zhe Wang|[release-7.3] Cherry-pick Improve throughput of audit storage (#10245)|
|10289|Zhe Wu|[Release 7.3] GC earlier TLog generation using each generation's recover at version instead of start version|
|10296|Jingyu Zhou|Don't retry consistency scan if expected TSS faults [release-7.3]|
|10276|Jingyu Zhou|Fix ConsistencyCheck_DataInconsistent failure in simulation [release-7.3]|
|10257|Yao Xiao|[release-7.3] Add knobs for rocksdb logger and flush options. |
2023-05-26 16:48:36 -07:00
Yanqin Jin
16df5a8517
Make redwood tests terminate after certain amount of time (#10032)
This PR avoids "external timeout" for redwood correctness tests.

Update the logic in fdbserver.actor.cpp so that -1 instead of 0 is considered a noUnseed. If "noUnseed == true", then -1 will be logged as "RandomUnseed" in the end of the trace.

Tweak the finish condition of redwood unit tests so that if wall clock time reaches a certain threshold, finish the test and set nounseed to true.
2023-05-23 21:29:45 -07:00
A.J. Beamon
686c391281
Merge pull request #10093 from sfc-gh-ajbeamon/apply-flake8
Fix several issues found by flake8
2023-05-09 09:05:14 -07:00
Xiaoge Su
467b9cdbde If no log file generated, report the stderr of the fdbserver process 2023-05-04 11:01:53 -07:00
Xiaoge Su
17487abb93 Add tag for a cherry-pick 2023-05-04 11:01:53 -07:00
A.J. Beamon
fef2967d62 Fix several issues found by flake8. Ignore E402, which detects when we have import statements not at the top of the file, since we have many files that use this pattern and are not easy to fix. 2023-05-02 10:06:40 -07:00
A.J. Beamon
182dc93ebd Apply black format to most Python files, excluding a few cases where we have Python 2 files and a few files written externally. Add external files as exclusions to the precommit checks. 2023-04-28 11:46:41 -07:00
Xiaoge Su
bd80d7d4a4 Update build instruction 2023-04-27 15:25:57 -07:00
Xiaoge Su
938397b457 Parallelized scanning of C++ source files 2023-04-26 17:24:59 -07:00
Xiaoge Su
bc7783eb83 Remove unused include directory 2023-04-26 16:09:10 -07:00
Xiaoge Su
4567673356 Update the build instructor for source_scanner 2023-04-26 16:09:10 -07:00
Xiaoge Su
a6cce6b079 Collect the serializable objects and record them to a Markdown file
This code is used to detect any change of serialized objects that causes incompatibility between FoundationDB releases, by dumping all those objects, including the class member variables and the serialization code, into a markdown file. The user could then do a `diff` over the result between two versions.

The code contains two parts:

1. SourceScanner which traverses C++ code and generates intermediate JSON data
2. renormalize.py which triggers SourceScanner over FDB source code and collects the JSON data into a report.

See README.md for build instructions and usage.
2023-04-26 16:09:10 -07:00
Xiaoge Su
d5473b0cd4 Properly react to fast-forward merges 2023-04-18 11:19:16 -07:00
Xiaoge Su
eda038c23c A script that helps cherry picking PR commits to other branches
Usage:
    cherry-pick-upstream.py [PR id] [PR id] ...

Run the script in the branch that will receive the PRs.

It handles merge/fast-forward pull requests. If the commits are already
in the current branch, the script will do nothing.

The author thanks Henry Phan (hphan3@apple.com) for helpful discussion
about the relationship between Pull Requests and merge commits.
2023-04-18 11:19:16 -07:00
Jingyu Zhou
5c659d3ea0
Merge pull request #9758 from xis19/binding
Fix the bindingtest2 package error
2023-03-26 22:12:48 -07:00
Xiaoge Su
f27e3b0055 Add a linter scans for wait in when clause 2023-03-24 11:14:49 -07:00
Xiaoge Su
88eeb5a526 Remove WolfSSL support in FoundationDB 2023-03-23 20:17:18 -07:00
Xiaoge Su
c479ac4889 Remove unnecessary loggger configuration 2023-03-22 15:15:54 -07:00
Xiaoge Su
39369e63c2 fixup! Additional fixes 2023-03-22 15:15:53 -07:00
Xiaoge Su
819f0427b3 fixup! Fix a bunch of bugs/linter hints in binding_test.py 2023-03-22 15:15:53 -07:00
A.J. Beamon
2ceca2bde7 Report the time and type of the last logged event when getting TestUnexpectedlyNotFinished 2023-03-20 13:58:28 -07:00
A.J. Beamon
7b2b021079 Use the buggify config parameter to decide whether to enable buggify on a test 2023-03-20 13:58:05 -07:00
Markus Pilman
7a108a2768 Add framework for writing negative simulation tests 2023-03-15 11:22:25 -07:00
Markus Pilman
f0b079bc85 Fix mockkms build with disabled go 2023-02-28 09:00:36 -07:00
Markus Pilman
a0e347c7ba Merge remote-tracking branch 'origin/main' into features/tenant-lock-fdbcli 2023-02-27 09:09:20 -07:00
Jingyu Zhou
67f84cc802
Merge pull request #9448 from xis19/main
Provide a tool that allows downloading logs when simulation RocksDB f…
2023-02-23 15:55:22 -08:00