fdb-record-layer
fdb-record-layer copied to clipboard
A record-oriented store built on FoundationDB
This adds a new `FunctionKeyExpression` representing some basic arithmetic functions on `long`s, including `sum` and `bitand` (useful for when long fields are used as bitsets, and the user wants to...
Some of the code in the record layer changes behavior based on the default locale of the system. Most of this does not seem intentional.
``` LuceneIndexMaintenanceTest > flakyMerge(boolean, boolean, boolean, int, long, boolean) > com.apple.foundationdb.record.lucene.LuceneIndexMaintenanceTest.flakyMerge(boolean, boolean, boolean, int, long, boolean)[6] FAILED org.opentest4j.AssertionFailedError: Group: (0), partition: 0 ==> expected: but was: at app//org.junit.jupiter.api.AssertionUtils.fail(AssertionUtils.java:55) at app//org.junit.jupiter.api.AssertionUtils.failNotEqual(AssertionUtils.java:62)...
FDBLuceneQueryTest.threadedLuceneScanDoesntBreakPlannerAndSearch sometimes times out after 5 minutes
FDBLuceneQueryTest.threadedLuceneScanDoesntBreakPlannerAndSearch normally takes a few seconds.
Using `FunctionKeyExpressions`, we can support indexes on things like "a + b" or "a & b" (bitwise and). We should provide those as some built-in queryable function key expressions that...
This avoids having to recover a `TupleRange` from an unbuilt `Range`. See https://github.com/FoundationDB/fdb-record-layer/pull/2651#discussion_r1559872782
For example, if we have a `Value` like this: `$q42.0.1` then the corresponding ordering part of it will become `_.0.1`, this breaks immediately when the optimiser attempts to push it...