-
Notifications
You must be signed in to change notification settings - Fork 124
Closed
Labels
questionQueries on usage of the library, architectural patterns and alikeQueries on usage of the library, architectural patterns and alike
Description
I am facing an issue while using range search using KeyRange.
In lmdb, the following is stored:
key: event timestamp in millis
value: event payload
What I want to do:
- count query by for a given time range (how many events between 1000 hrs to 1010 hrs)
- fetch all the events for a given time range
Issue:
- if counts are queried using
KeyRange.all(), correct count is returned. - but, if queried using specific range, it does not return current count:
KeyRange.closed(min, max)returns 0
Observations:
- strangely, if queried using
KeyRange.closed(min, max * numberOfKeys), it returns correct result. - if the keys are
dense, then things work as expected- say,
long start = toMillis(LocalDateTime.of(2018, Month.JANUARY, 1, 0, 0)); for(int i = 0; i < numberOfKeys; i++) { dbi.put(bb(start + i), bb(i)); }- in this scenario,
KeyRange.closed()etc. work as expected.
My question is :
am I using the correct APIs for my usecase? is it a configuration issue?
Note:
- Java version
$ java -version java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode) - Windows 10 dev environment
A reproducible test case: gist
Metadata
Metadata
Assignees
Labels
questionQueries on usage of the library, architectural patterns and alikeQueries on usage of the library, architectural patterns and alike