Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
Right now for KeyValueStore we have a range query to return an iterator. For usage in BEAM, we need a iterable which can create an iterator when needed. Add the iterate() function in KeyValueStore to support it. It's implemented as follows:
1) for rocksDb, it will create the iterator when it's called, which will has a snapshot of the elements. Then every time when the iterator is needed, we will seek the iterator from beginning;
2) for inMemoryDb, it will create the snapshot submap when iterate() is called. The submap is an iterable and it can return a new iterator when needed.
Attachments
Issue Links
- links to