diff --git a/pom.xml b/pom.xml
index 0904ea5..66b8948 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,7 +15,7 @@
1.9.5
9.4.2
5.9.0
- 1.0.198
+ 1.0.203
diff --git a/src/main/data-generator/lucene-query.yaml b/src/main/data-generator/lucene-query.yaml
index 669152c..83e4c3c 100644
--- a/src/main/data-generator/lucene-query.yaml
+++ b/src/main/data-generator/lucene-query.yaml
@@ -2,360 +2,359 @@
currentVersion: "0.0.0"
interfacesData:
Query: []
-# versions must have only numbers, lowercase letters, dots, dashes. Maximum: 99.999.9999
+superTypesData:
+ Query: [
+ BoxedQuery, TermQuery, IntTermQuery, IntNDTermQuery, LongTermQuery, LongNDTermQuery, FloatTermQuery,
+ FloatNDTermQuery, DoubleTermQuery, DoubleNDTermQuery,
+ PhraseQuery, WildcardQuery, SynonymQuery, FuzzyQuery, MatchAllDocsQuery, MatchNoDocsQuery,
+ BooleanQuery, SortedNumericDocValuesFieldSlowRangeQuery, SortedDocFieldExistsQuery,
+ ConstantScoreQuery, BoostQuery, IntPointRangeQuery, IntNDPointRangeQuery, LongPointRangeQuery,
+ FloatPointRangeQuery, DoublePointRangeQuery, LongNDPointRangeQuery, FloatNDPointRangeQuery,
+ DoubleNDPointRangeQuery, IntPointExactQuery, IntNDPointExactQuery, LongPointExactQuery, FloatPointExactQuery,
+ FloatPointExactQuery, DoublePointExactQuery, LongNDPointExactQuery, FloatNDPointExactQuery,
+ DoubleNDPointExactQuery, IntPointSetQuery, LongPointSetQuery, FloatPointSetQuery, DoublePointSetQuery,
+ StandardQuery, FieldExistsQuery
+ ]
+ Occur: [OccurMust, OccurMustNot, OccurShould, OccurFilter]
+ Sort: [NoSort, NumericSort, ScoreSort, DocSort, RandomSort]
+ NumberFormat: [NumberFormatDecimal]
+ PointType: [PointTypeInt, PointTypeLong, PointTypeFloat, PointTypeDouble]
+customTypesData: {}
+baseTypesData:
+
+ # Basic data
+ # ==========
+
+ # Wrapper for type Query
+ BoxedQuery:
+ data:
+ query: Query
+ # A term consists in a field that is exactly equal to the value string
+ Term:
+ data:
+ field: String
+ value: String
+ # A Term with a position relative to the start of the query. Used internally in some specific queries
+ TermPosition:
+ data:
+ term: Term
+ position: int
+ # A Term with a specified boost. Used internally in some specific queries
+ TermAndBoost:
+ data:
+ term: Term
+ boost: float
+ # Occur options used for boolean queries
+ OccurMust:
+ data: { }
+ OccurMustNot:
+ data: { }
+ OccurShould:
+ data: { }
+ OccurFilter:
+ data: { }
+
+ # Special queries
+ # ===============
+
+ # Raw lucene string query, parsable by lucene StandardQueryParser
+ StandardQuery:
+ data:
+ query: String
+ # Should be at least one field!
+ defaultFields: String[]
+ pointsConfig: PointConfig[]
+ termFields: String[]
+ PointConfig:
+ data:
+ field: String
+ data: PointConfigData
+ PointConfigData:
+ data:
+ numberFormat: NumberFormat
+ type: PointType
+ NumberFormatDecimal: { data: { } }
+ PointTypeInt: { data: { } }
+ PointTypeLong: { data: { } }
+ PointTypeFloat: { data: { } }
+ PointTypeDouble: { data: { } }
+
+ # Text queries
+ # ============
+
+ # Query that matches a term.
+ TermQuery:
+ data:
+ term: Term
+ # Query that matches a term.
+ LongTermQuery:
+ data:
+ field: String
+ value: long
+ LongNDTermQuery:
+ data:
+ field: String
+ value: long[]
+ # Query that matches a term.
+ IntTermQuery:
+ data:
+ field: String
+ value: int
+ # Query that matches a term.
+ IntNDTermQuery:
+ data:
+ field: String
+ value: int[]
+ # Query that matches a term.
+ FloatTermQuery:
+ data:
+ field: String
+ value: float
+ # Query that matches a term.
+ FloatNDTermQuery:
+ data:
+ field: String
+ value: float[]
+ # Query that matches a term.
+ DoubleTermQuery:
+ data:
+ field: String
+ value: double
+ # Query that matches a term.
+ DoubleNDTermQuery:
+ data:
+ field: String
+ value: double[]
+ # Query that matches the existence of a field.
+ FieldExistsQuery:
+ data:
+ field: String
+ # Query that matches a phrase.
+ PhraseQuery:
+ data:
+ # A phrase is a collection of positioned terms, with absolute positions,
+ # counted as characters from the beginning of the phrase.
+ phrase: TermPosition[]
+ slop: int
+ # Advanced query that matches text allowing asterisks in the query
+ WildcardQuery:
+ data:
+ field: String
+ pattern: String # Example: "*ing"
+ # Advanced query that matches different exact values (synonyms)
+ SynonymQuery:
+ data:
+ field: String
+ parts: TermAndBoost[] # Each term has a boost. The preferred synonym has the highest boost value.
+ # Advanced query. todo: document it
+ FuzzyQuery:
+ data:
+ term: Term
+ maxEdits: int
+ prefixLength: int
+ maxExpansions: int
+ transpositions: boolean
+
+
+ # Combination queries
+ # ===================
+
+ # Query that matches everything
+ MatchAllDocsQuery:
+ data: {}
+ # Query that matches nothing
+ MatchNoDocsQuery:
+ data: {}
+ # Query that matches if the document satisfies all the required parts
+ BooleanQuery:
+ data:
+ # Each part can be:
+ # - "MUST"
+ # - "MUST_NOT"
+ # - "SHOULD"
+ # - "FILTER" (advanced, ignore this)
+ # "SHOULD" is like "MUST" but it's not necessary.
+ parts: BooleanQueryPart[]
+ minShouldMatch: int # If set, it specifies how many "SHOULD" parts must be matched. 0 if not set
+ # Part of a boolean query
+ BooleanQueryPart:
+ data:
+ query: Query
+ occur: Occur
+
+
+ # Number queries
+ # ==============
+
+ # Advanced query that matches only a range of a sorted field, from "min" to "max".
+ SortedNumericDocValuesFieldSlowRangeQuery:
+ data:
+ field: String
+ min: long
+ max: long
+ # Query that matches if the sorted field exist in the document
+ SortedDocFieldExistsQuery:
+ data:
+ field: String
+
+
+ # Score modifying queries
+ # ============
+
+ # Query that fixes the score of a query to 1
+ ConstantScoreQuery:
+ data:
+ query: Query
+ # Query that boosts the query score
+ BoostQuery:
+ data:
+ query: Query
+ scoreBoost: float
+
+
+ # Sorted fields queries
+ # =====================
+
+ # Query that matches an int point field, from "min", to "max"
+ IntPointRangeQuery:
+ data:
+ field: String
+ min: int
+ max: int
+ # Query that matches an int point field, from "min", to "max"
+ IntNDPointRangeQuery:
+ data:
+ field: String
+ min: int[]
+ max: int[]
+ # Query that matches a long point field, from "min", to "max"
+ LongPointRangeQuery:
+ data:
+ field: String
+ min: long
+ max: long
+ # Query that matches a float point field, from "min", to "max"
+ FloatPointRangeQuery:
+ data:
+ field: String
+ min: float
+ max: float
+ # Query that matches a double point field, from "min", to "max"
+ DoublePointRangeQuery:
+ data:
+ field: String
+ min: double
+ max: double
+ # Query that matches a long point field, from "min", to "max"
+ LongNDPointRangeQuery:
+ data:
+ field: String
+ min: long[]
+ max: long[]
+ # Query that matches a float point field, from "min", to "max"
+ FloatNDPointRangeQuery:
+ data:
+ field: String
+ min: float[]
+ max: float[]
+ # Query that matches a double point field, from "min", to "max"
+ DoubleNDPointRangeQuery:
+ data:
+ field: String
+ min: double[]
+ max: double[]
+ # Query that matches an int point field
+ IntPointExactQuery:
+ data:
+ field: String
+ value: int
+ # Query that matches an int point field
+ IntNDPointExactQuery:
+ data:
+ field: String
+ value: int[]
+ # Query that matches a long point field
+ LongPointExactQuery:
+ data:
+ field: String
+ value: long
+ # Query that matches a float point field
+ FloatPointExactQuery:
+ data:
+ field: String
+ value: float
+ # Query that matches a double point field
+ DoublePointExactQuery:
+ data:
+ field: String
+ value: double
+ # Query that matches a long point field
+ LongNDPointExactQuery:
+ data:
+ field: String
+ value: long[]
+ # Query that matches a float point field
+ FloatNDPointExactQuery:
+ data:
+ field: String
+ value: float[]
+ # Query that matches a double point field
+ DoubleNDPointExactQuery:
+ data:
+ field: String
+ value: double[]
+ # Query that matches a set of int point field
+ IntPointSetQuery:
+ data:
+ field: String
+ values: int[]
+ # Query that matches a set of long point field
+ LongPointSetQuery:
+ data:
+ field: String
+ values: long[]
+ # Query that matches a set of float point field
+ FloatPointSetQuery:
+ data:
+ field: String
+ values: float[]
+ # Query that matches a set of double point field
+ DoublePointSetQuery:
+ data:
+ field: String
+ values: double[]
+
+
+ # Extra data used for parameters and the client
+ # =============================================
+
+ # Query parameters
+ QueryParams:
+ data:
+ query: Query
+ offset: long
+ limit: long
+ sort: Sort
+ computePreciseHitsCount: boolean
+ timeoutMilliseconds: long
+ NoSort:
+ data: { }
+ NumericSort:
+ data:
+ field: String
+ reverse: boolean
+ RandomSort:
+ data: { }
+ ScoreSort:
+ data: { }
+ DocSort:
+ data: { }
+ TotalHitsCount:
+ stringRepresenter: "it.cavallium.dbengine.lucene.LuceneUtils.toHumanReadableString"
+ data:
+ value: long
+ exact: boolean
versions:
0.0.0:
details:
changelog: "First version"
- superTypes:
- Query: [
- BoxedQuery, TermQuery, IntTermQuery, IntNDTermQuery, LongTermQuery, LongNDTermQuery, FloatTermQuery,
- FloatNDTermQuery, DoubleTermQuery, DoubleNDTermQuery,
- PhraseQuery, WildcardQuery, SynonymQuery, FuzzyQuery, MatchAllDocsQuery, MatchNoDocsQuery,
- BooleanQuery, SortedNumericDocValuesFieldSlowRangeQuery, SortedDocFieldExistsQuery,
- ConstantScoreQuery, BoostQuery, IntPointRangeQuery, IntNDPointRangeQuery, LongPointRangeQuery,
- FloatPointRangeQuery, DoublePointRangeQuery, LongNDPointRangeQuery, FloatNDPointRangeQuery,
- DoubleNDPointRangeQuery, IntPointExactQuery, IntNDPointExactQuery, LongPointExactQuery, FloatPointExactQuery,
- FloatPointExactQuery, DoublePointExactQuery, LongNDPointExactQuery, FloatNDPointExactQuery,
- DoubleNDPointExactQuery, IntPointSetQuery, LongPointSetQuery, FloatPointSetQuery, DoublePointSetQuery,
- StandardQuery, FieldExistsQuery
- ]
- Occur: [OccurMust, OccurMustNot, OccurShould, OccurFilter]
- Sort: [NoSort, NumericSort, ScoreSort, DocSort, RandomSort]
- NumberFormat: [NumberFormatDecimal]
- PointType: [PointTypeInt, PointTypeLong, PointTypeFloat, PointTypeDouble]
- customTypes: {}
- classes:
-
- # Basic data
- # ==========
-
- # Wrapper for type Query
- BoxedQuery:
- data:
- query: Query
- # A term consists in a field that is exactly equal to the value string
- Term:
- data:
- field: String
- value: String
- # A Term with a position relative to the start of the query. Used internally in some specific queries
- TermPosition:
- data:
- term: Term
- position: int
- # A Term with a specified boost. Used internally in some specific queries
- TermAndBoost:
- data:
- term: Term
- boost: float
- # Occur options used for boolean queries
- OccurMust:
- data: { }
- OccurMustNot:
- data: { }
- OccurShould:
- data: { }
- OccurFilter:
- data: { }
-
- # Special queries
- # ===============
-
- # Raw lucene string query, parsable by lucene StandardQueryParser
- StandardQuery:
- data:
- query: String
- # Should be at least one field!
- defaultFields: String[]
- pointsConfig: PointConfig[]
- termFields: String[]
- PointConfig:
- data:
- field: String
- data: PointConfigData
- PointConfigData:
- data:
- numberFormat: NumberFormat
- type: PointType
- NumberFormatDecimal: { data: { } }
- PointTypeInt: { data: { } }
- PointTypeLong: { data: { } }
- PointTypeFloat: { data: { } }
- PointTypeDouble: { data: { } }
-
- # Text queries
- # ============
-
- # Query that matches a term.
- TermQuery:
- data:
- term: Term
- # Query that matches a term.
- LongTermQuery:
- data:
- field: String
- value: long
- LongNDTermQuery:
- data:
- field: String
- value: long[]
- # Query that matches a term.
- IntTermQuery:
- data:
- field: String
- value: int
- # Query that matches a term.
- IntNDTermQuery:
- data:
- field: String
- value: int[]
- # Query that matches a term.
- FloatTermQuery:
- data:
- field: String
- value: float
- # Query that matches a term.
- FloatNDTermQuery:
- data:
- field: String
- value: float[]
- # Query that matches a term.
- DoubleTermQuery:
- data:
- field: String
- value: double
- # Query that matches a term.
- DoubleNDTermQuery:
- data:
- field: String
- value: double[]
- # Query that matches the existence of a field.
- FieldExistsQuery:
- data:
- field: String
- # Query that matches a phrase.
- PhraseQuery:
- data:
- # A phrase is a collection of positioned terms, with absolute positions,
- # counted as characters from the beginning of the phrase.
- phrase: TermPosition[]
- slop: int
- # Advanced query that matches text allowing asterisks in the query
- WildcardQuery:
- data:
- field: String
- pattern: String # Example: "*ing"
- # Advanced query that matches different exact values (synonyms)
- SynonymQuery:
- data:
- field: String
- parts: TermAndBoost[] # Each term has a boost. The preferred synonym has the highest boost value.
- # Advanced query. todo: document it
- FuzzyQuery:
- data:
- term: Term
- maxEdits: int
- prefixLength: int
- maxExpansions: int
- transpositions: boolean
-
-
- # Combination queries
- # ===================
-
- # Query that matches everything
- MatchAllDocsQuery:
- data: {}
- # Query that matches nothing
- MatchNoDocsQuery:
- data: {}
- # Query that matches if the document satisfies all the required parts
- BooleanQuery:
- data:
- # Each part can be:
- # - "MUST"
- # - "MUST_NOT"
- # - "SHOULD"
- # - "FILTER" (advanced, ignore this)
- # "SHOULD" is like "MUST" but it's not necessary.
- parts: BooleanQueryPart[]
- minShouldMatch: int # If set, it specifies how many "SHOULD" parts must be matched. 0 if not set
- # Part of a boolean query
- BooleanQueryPart:
- data:
- query: Query
- occur: Occur
-
-
- # Number queries
- # ==============
-
- # Advanced query that matches only a range of a sorted field, from "min" to "max".
- SortedNumericDocValuesFieldSlowRangeQuery:
- data:
- field: String
- min: long
- max: long
- # Query that matches if the sorted field exist in the document
- SortedDocFieldExistsQuery:
- data:
- field: String
-
-
- # Score modifying queries
- # ============
-
- # Query that fixes the score of a query to 1
- ConstantScoreQuery:
- data:
- query: Query
- # Query that boosts the query score
- BoostQuery:
- data:
- query: Query
- scoreBoost: float
-
-
- # Sorted fields queries
- # =====================
-
- # Query that matches an int point field, from "min", to "max"
- IntPointRangeQuery:
- data:
- field: String
- min: int
- max: int
- # Query that matches an int point field, from "min", to "max"
- IntNDPointRangeQuery:
- data:
- field: String
- min: int[]
- max: int[]
- # Query that matches a long point field, from "min", to "max"
- LongPointRangeQuery:
- data:
- field: String
- min: long
- max: long
- # Query that matches a float point field, from "min", to "max"
- FloatPointRangeQuery:
- data:
- field: String
- min: float
- max: float
- # Query that matches a double point field, from "min", to "max"
- DoublePointRangeQuery:
- data:
- field: String
- min: double
- max: double
- # Query that matches a long point field, from "min", to "max"
- LongNDPointRangeQuery:
- data:
- field: String
- min: long[]
- max: long[]
- # Query that matches a float point field, from "min", to "max"
- FloatNDPointRangeQuery:
- data:
- field: String
- min: float[]
- max: float[]
- # Query that matches a double point field, from "min", to "max"
- DoubleNDPointRangeQuery:
- data:
- field: String
- min: double[]
- max: double[]
- # Query that matches an int point field
- IntPointExactQuery:
- data:
- field: String
- value: int
- # Query that matches an int point field
- IntNDPointExactQuery:
- data:
- field: String
- value: int[]
- # Query that matches a long point field
- LongPointExactQuery:
- data:
- field: String
- value: long
- # Query that matches a float point field
- FloatPointExactQuery:
- data:
- field: String
- value: float
- # Query that matches a double point field
- DoublePointExactQuery:
- data:
- field: String
- value: double
- # Query that matches a long point field
- LongNDPointExactQuery:
- data:
- field: String
- value: long[]
- # Query that matches a float point field
- FloatNDPointExactQuery:
- data:
- field: String
- value: float[]
- # Query that matches a double point field
- DoubleNDPointExactQuery:
- data:
- field: String
- value: double[]
- # Query that matches a set of int point field
- IntPointSetQuery:
- data:
- field: String
- values: int[]
- # Query that matches a set of long point field
- LongPointSetQuery:
- data:
- field: String
- values: long[]
- # Query that matches a set of float point field
- FloatPointSetQuery:
- data:
- field: String
- values: float[]
- # Query that matches a set of double point field
- DoublePointSetQuery:
- data:
- field: String
- values: double[]
-
-
- # Extra data used for parameters and the client
- # =============================================
-
- # Query parameters
- QueryParams:
- data:
- query: Query
- offset: long
- limit: long
- sort: Sort
- computePreciseHitsCount: boolean
- timeoutMilliseconds: long
- NoSort:
- data: { }
- NumericSort:
- data:
- field: String
- reverse: boolean
- RandomSort:
- data: { }
- ScoreSort:
- data: { }
- DocSort:
- data: { }
- TotalHitsCount:
- stringRepresenter: "it.cavallium.dbengine.lucene.LuceneUtils.toHumanReadableString"
- data:
- value: long
- exact: boolean
diff --git a/src/main/data-generator/quic-rpc.yaml b/src/main/data-generator/quic-rpc.yaml
index a5efb15..f863853 100644
--- a/src/main/data-generator/quic-rpc.yaml
+++ b/src/main/data-generator/quic-rpc.yaml
@@ -27,353 +27,352 @@ interfacesData:
minBlobSize: -long
blobFileSize: -long
blobCompressionType: -Compression
-# versions must have only numbers, lowercase letters, dots, dashes. Maximum: 99.999.9999
+superTypesData:
+ RPCEvent: [
+ Empty,
+ Binary,
+ BinaryOptional,
+ SingletonUpdateOldData,
+ GeneratedEntityId,
+ GetDatabase,
+ GetLuceneIndex,
+ Disconnect,
+ GetSingleton,
+ SingletonGet,
+ SingletonSet,
+ SingletonUpdateInit,
+ SingletonUpdateEnd,
+ RPCCrash,
+ CloseDatabase,
+ CloseLuceneIndex
+ ]
+ ServerBoundRequest: [
+ GetDatabase,
+ GetLuceneIndex,
+ Disconnect,
+ GetSingleton,
+ SingletonGet,
+ SingletonSet,
+ SingletonUpdateInit,
+ CloseDatabase,
+ CloseLuceneIndex
+ ]
+ ClientBoundResponse: [
+ Empty,
+ GeneratedEntityId,
+ Binary,
+ BinaryOptional,
+ RPCCrash
+ ]
+ ClientBoundRequest: [
+ SingletonUpdateOldData
+ ]
+ ServerBoundResponse: [
+ Empty,
+ SingletonUpdateEnd
+ ]
+ LuceneDirectoryOptions: [
+ ByteBuffersDirectory,
+ MemoryMappedFSDirectory,
+ NIOFSDirectory,
+ RAFFSDirectory,
+ DirectIOFSDirectory,
+ RocksDBStandaloneDirectory,
+ RocksDBSharedDirectory,
+ NRTCachingDirectory
+ ]
+ StandardFSDirectoryOptions: [
+ MemoryMappedFSDirectory,
+ NIOFSDirectory,
+ RAFFSDirectory
+ ]
+ PathDirectoryOptions: [
+ MemoryMappedFSDirectory,
+ NIOFSDirectory,
+ RAFFSDirectory,
+ RocksDBStandaloneDirectory,
+ StandardFSDirectoryOptions
+ ]
+ Filter: [
+ NoFilter,
+ BloomFilter
+ ]
+ ColumnOptions: [
+ DefaultColumnOptions,
+ NamedColumnOptions
+ ]
+customTypesData:
+ Path:
+ javaClass: java.nio.file.Path
+ serializer: it.cavallium.dbengine.database.remote.PathSerializer
+ Compression:
+ javaClass: it.cavallium.dbengine.client.Compression
+ serializer: it.cavallium.dbengine.database.remote.CompressionSerializer
+ TextFieldsAnalyzer:
+ javaClass: it.cavallium.dbengine.lucene.analyzer.TextFieldsAnalyzer
+ serializer: it.cavallium.dbengine.database.remote.TextFieldsAnalyzerSerializer
+ TextFieldsSimilarity:
+ javaClass: it.cavallium.dbengine.lucene.analyzer.TextFieldsSimilarity
+ serializer: it.cavallium.dbengine.database.remote.TextFieldsSimilaritySerializer
+ Duration:
+ javaClass: java.time.Duration
+ serializer: it.cavallium.dbengine.database.remote.DurationSerializer
+ RocksDB:
+ javaClass: org.rocksdb.RocksDB
+ serializer: it.cavallium.dbengine.database.remote.RocksDBSerializer
+ ColumnFamilyHandle:
+ javaClass: org.rocksdb.ColumnFamilyHandle
+ serializer: it.cavallium.dbengine.database.remote.ColumnFamilyHandleSerializer
+ LuceneHacks:
+ javaClass: it.cavallium.dbengine.lucene.LuceneHacks
+ serializer: it.cavallium.dbengine.database.remote.LuceneHacksSerializer
+ UpdateReturnMode:
+ javaClass: it.cavallium.dbengine.database.UpdateReturnMode
+ serializer: it.cavallium.dbengine.database.remote.UpdateReturnModeSerializer
+ LLSnapshot:
+ javaClass: it.cavallium.dbengine.database.LLSnapshot
+ serializer: it.cavallium.dbengine.database.remote.LLSnapshotSerializer
+
+ Bytes:
+ javaClass: it.unimi.dsi.fastutil.bytes.ByteList
+ serializer: it.cavallium.dbengine.database.remote.ByteListSerializer
+ StringMap:
+ javaClass: java.util.Map
+ serializer: it.cavallium.dbengine.database.remote.StringMapSerializer
+ String2FieldAnalyzerMap:
+ javaClass: java.util.Map
+ serializer: it.cavallium.dbengine.database.remote.String2FieldAnalyzerMapSerializer
+ String2FieldSimilarityMap:
+ javaClass: java.util.Map
+ serializer: it.cavallium.dbengine.database.remote.String2FieldSimilarityMapSerializer
+ String2ColumnFamilyHandleMap:
+ javaClass: java.util.Map
+ serializer: it.cavallium.dbengine.database.remote.String2ColumnFamilyHandleMapSerializer
+baseTypesData:
+ BoxedRPCEvent:
+ data:
+ val: RPCEvent
+
+ # Server-bound requests
+
+ GetDatabase:
+ data:
+ name: String
+ columns: Column[]
+ databaseOptions: DatabaseOptions
+ GetLuceneIndex:
+ data:
+ clusterName: String
+ structure: LuceneIndexStructure
+ indicizerAnalyzers: IndicizerAnalyzers
+ indicizerSimilarities: IndicizerSimilarities
+ luceneOptions: LuceneOptions
+ Disconnect: { data: { } }
+ GetSingleton:
+ data:
+ databaseId: long
+ singletonListColumnName: byte[]
+ name: byte[]
+ defaultValue: -Bytes
+ SingletonGet:
+ data:
+ singletonId: long
+ snapshot: -LLSnapshot
+ SingletonSet:
+ data:
+ singletonId: long
+ value: -Bytes
+ SingletonUpdateInit:
+ data:
+ singletonId: long
+ updateReturnMode: UpdateReturnMode
+ SingletonUpdateEnd:
+ data:
+ exist: boolean
+ value: byte[]
+ CloseDatabase:
+ data:
+ databaseId: long
+ CloseLuceneIndex:
+ data:
+ luceneIndexId: long
+
+ # Client-bound responses
+
+ GeneratedEntityId:
+ data:
+ id: long
+ RPCCrash:
+ data:
+ code: int
+ message: -String
+
+ # Client-bound requests
+
+ SingletonUpdateOldData:
+ data:
+ exist: boolean
+ oldValue: byte[]
+
+ # Server-bound responses
+
+
+ # Data
+
+ LuceneIndexStructure:
+ data:
+ totalShards: int
+ activeShards: int[]
+ SingleIndex:
+ data:
+ name: String
+ ClusteredShardIndex:
+ data:
+ clusterName: String
+ shard: int
+ BinaryOptional:
+ data:
+ val: -Binary
+ Binary:
+ data:
+ val: byte[]
+ Empty: { data: { } }
+ Column:
+ data:
+ name: String
+ DatabaseOptions:
+ data:
+ volumes: DatabaseVolume[]
+ extraFlags: StringMap
+ absoluteConsistency: boolean
+ lowMemory: boolean
+ useDirectIO: boolean
+ allowMemoryMapping: boolean
+ allowNettyDirect: boolean
+ optimistic: boolean
+ maxOpenFiles: -int
+ blockCache: -long
+ compressedBlockCache: -long
+ persistentCaches: PersistentCache[]
+ writeBufferManager: -long
+ spinning: boolean
+ defaultColumnOptions: DefaultColumnOptions
+ columnOptions: NamedColumnOptions[]
+ logPath: -String
+ walPath: -String
+ # Remember to update ColumnOptions common getters
+ DefaultColumnOptions:
+ data:
+ levels: DatabaseLevel[]
+ memtableMemoryBudgetBytes: -long
+ cacheIndexAndFilterBlocks: -boolean
+ partitionFilters: -boolean
+ filter: -Filter
+ blockSize: -int
+ persistentCacheId: -String
+ writeBufferSize: -long
+ blobFiles: boolean
+ minBlobSize: -long
+ blobFileSize: -long
+ blobCompressionType: -Compression
+ # Remember to update ColumnOptions common getters
+ NamedColumnOptions:
+ data:
+ columnName: String
+ levels: DatabaseLevel[]
+ memtableMemoryBudgetBytes: -long
+ cacheIndexAndFilterBlocks: -boolean
+ partitionFilters: -boolean
+ filter: -Filter
+ blockSize: -int
+ persistentCacheId: -String
+ writeBufferSize: -long
+ blobFiles: boolean
+ minBlobSize: -long
+ blobFileSize: -long
+ blobCompressionType: -Compression
+ NoFilter:
+ data: {}
+ BloomFilter:
+ data:
+ bitsPerKey: int
+ optimizeForHits: -boolean
+ PersistentCache:
+ data:
+ id: String
+ path: String
+ size: long
+ optimizeForNvm: boolean
+ DatabaseVolume:
+ data:
+ volumePath: Path
+ targetSizeBytes: long
+ DatabaseLevel:
+ data:
+ maxDictBytes: int
+ compression: Compression
+ IndicizerAnalyzers:
+ data:
+ defaultAnalyzer: TextFieldsAnalyzer
+ fieldAnalyzer: String2FieldAnalyzerMap
+ IndicizerSimilarities:
+ data:
+ defaultSimilarity: TextFieldsSimilarity
+ fieldSimilarity: String2FieldSimilarityMap
+ LuceneOptions:
+ data:
+ extraFlags: StringMap
+ queryRefreshDebounceTime: Duration
+ commitDebounceTime: Duration
+ lowMemory: boolean
+ directoryOptions: LuceneDirectoryOptions
+ indexWriterReaderPooling: -boolean
+ indexWriterRAMBufferSizeMB: -double
+ indexWriterMaxBufferedDocs: -int
+ applyAllDeletes: -boolean
+ writeAllDeletes: -boolean
+ allowNonVolatileCollection: boolean
+ maxInMemoryResultEntries: int
+ mergePolicy: TieredMergePolicy
+ TieredMergePolicy:
+ data:
+ forceMergeDeletesPctAllowed: -double
+ deletesPctAllowed: -double
+ maxMergeAtOnce: -int
+ maxMergedSegmentBytes: -long
+ floorSegmentBytes: -long
+ segmentsPerTier: -double
+ maxCFSSegmentSizeBytes: -long
+ noCFSRatio: -double
+ ByteBuffersDirectory: { data: { } }
+ MemoryMappedFSDirectory:
+ data:
+ managedPath: Path
+ NIOFSDirectory:
+ data:
+ managedPath: Path
+ RAFFSDirectory:
+ data:
+ managedPath: Path
+ DirectIOFSDirectory:
+ data:
+ delegate: StandardFSDirectoryOptions
+ mergeBufferSize: -int
+ minBytesDirect: -long
+ RocksDBStandaloneDirectory:
+ data:
+ managedPath: Path
+ blockSize: int
+ RocksDBSharedDirectory:
+ data:
+ managedPath: Path
+ blockSize: int
+ NRTCachingDirectory:
+ data:
+ delegate: LuceneDirectoryOptions
+ maxMergeSizeBytes: long
+ maxCachedBytes: long
versions:
0.0.0:
details:
changelog: "First version"
- superTypes:
- RPCEvent: [
- Empty,
- Binary,
- BinaryOptional,
- SingletonUpdateOldData,
- GeneratedEntityId,
- GetDatabase,
- GetLuceneIndex,
- Disconnect,
- GetSingleton,
- SingletonGet,
- SingletonSet,
- SingletonUpdateInit,
- SingletonUpdateEnd,
- RPCCrash,
- CloseDatabase,
- CloseLuceneIndex
- ]
- ServerBoundRequest: [
- GetDatabase,
- GetLuceneIndex,
- Disconnect,
- GetSingleton,
- SingletonGet,
- SingletonSet,
- SingletonUpdateInit,
- CloseDatabase,
- CloseLuceneIndex
- ]
- ClientBoundResponse: [
- Empty,
- GeneratedEntityId,
- Binary,
- BinaryOptional,
- RPCCrash
- ]
- ClientBoundRequest: [
- SingletonUpdateOldData
- ]
- ServerBoundResponse: [
- Empty,
- SingletonUpdateEnd
- ]
- LuceneDirectoryOptions: [
- ByteBuffersDirectory,
- MemoryMappedFSDirectory,
- NIOFSDirectory,
- RAFFSDirectory,
- DirectIOFSDirectory,
- RocksDBStandaloneDirectory,
- RocksDBSharedDirectory,
- NRTCachingDirectory
- ]
- StandardFSDirectoryOptions: [
- MemoryMappedFSDirectory,
- NIOFSDirectory,
- RAFFSDirectory
- ]
- PathDirectoryOptions: [
- MemoryMappedFSDirectory,
- NIOFSDirectory,
- RAFFSDirectory,
- RocksDBStandaloneDirectory,
- StandardFSDirectoryOptions
- ]
- Filter: [
- NoFilter,
- BloomFilter
- ]
- ColumnOptions: [
- DefaultColumnOptions,
- NamedColumnOptions
- ]
- customTypes:
- Path:
- javaClass: java.nio.file.Path
- serializer: it.cavallium.dbengine.database.remote.PathSerializer
- Compression:
- javaClass: it.cavallium.dbengine.client.Compression
- serializer: it.cavallium.dbengine.database.remote.CompressionSerializer
- TextFieldsAnalyzer:
- javaClass: it.cavallium.dbengine.lucene.analyzer.TextFieldsAnalyzer
- serializer: it.cavallium.dbengine.database.remote.TextFieldsAnalyzerSerializer
- TextFieldsSimilarity:
- javaClass: it.cavallium.dbengine.lucene.analyzer.TextFieldsSimilarity
- serializer: it.cavallium.dbengine.database.remote.TextFieldsSimilaritySerializer
- Duration:
- javaClass: java.time.Duration
- serializer: it.cavallium.dbengine.database.remote.DurationSerializer
- RocksDB:
- javaClass: org.rocksdb.RocksDB
- serializer: it.cavallium.dbengine.database.remote.RocksDBSerializer
- ColumnFamilyHandle:
- javaClass: org.rocksdb.ColumnFamilyHandle
- serializer: it.cavallium.dbengine.database.remote.ColumnFamilyHandleSerializer
- LuceneHacks:
- javaClass: it.cavallium.dbengine.lucene.LuceneHacks
- serializer: it.cavallium.dbengine.database.remote.LuceneHacksSerializer
- UpdateReturnMode:
- javaClass: it.cavallium.dbengine.database.UpdateReturnMode
- serializer: it.cavallium.dbengine.database.remote.UpdateReturnModeSerializer
- LLSnapshot:
- javaClass: it.cavallium.dbengine.database.LLSnapshot
- serializer: it.cavallium.dbengine.database.remote.LLSnapshotSerializer
-
- Bytes:
- javaClass: it.unimi.dsi.fastutil.bytes.ByteList
- serializer: it.cavallium.dbengine.database.remote.ByteListSerializer
- StringMap:
- javaClass: java.util.Map
- serializer: it.cavallium.dbengine.database.remote.StringMapSerializer
- String2FieldAnalyzerMap:
- javaClass: java.util.Map
- serializer: it.cavallium.dbengine.database.remote.String2FieldAnalyzerMapSerializer
- String2FieldSimilarityMap:
- javaClass: java.util.Map
- serializer: it.cavallium.dbengine.database.remote.String2FieldSimilarityMapSerializer
- String2ColumnFamilyHandleMap:
- javaClass: java.util.Map
- serializer: it.cavallium.dbengine.database.remote.String2ColumnFamilyHandleMapSerializer
- classes:
- BoxedRPCEvent:
- data:
- val: RPCEvent
-
- # Server-bound requests
-
- GetDatabase:
- data:
- name: String
- columns: Column[]
- databaseOptions: DatabaseOptions
- GetLuceneIndex:
- data:
- clusterName: String
- structure: LuceneIndexStructure
- indicizerAnalyzers: IndicizerAnalyzers
- indicizerSimilarities: IndicizerSimilarities
- luceneOptions: LuceneOptions
- Disconnect: { data: { } }
- GetSingleton:
- data:
- databaseId: long
- singletonListColumnName: byte[]
- name: byte[]
- defaultValue: -Bytes
- SingletonGet:
- data:
- singletonId: long
- snapshot: -LLSnapshot
- SingletonSet:
- data:
- singletonId: long
- value: -Bytes
- SingletonUpdateInit:
- data:
- singletonId: long
- updateReturnMode: UpdateReturnMode
- SingletonUpdateEnd:
- data:
- exist: boolean
- value: byte[]
- CloseDatabase:
- data:
- databaseId: long
- CloseLuceneIndex:
- data:
- luceneIndexId: long
-
- # Client-bound responses
-
- GeneratedEntityId:
- data:
- id: long
- RPCCrash:
- data:
- code: int
- message: -String
-
- # Client-bound requests
-
- SingletonUpdateOldData:
- data:
- exist: boolean
- oldValue: byte[]
-
- # Server-bound responses
-
-
- # Data
-
- LuceneIndexStructure:
- data:
- totalShards: int
- activeShards: int[]
- SingleIndex:
- data:
- name: String
- ClusteredShardIndex:
- data:
- clusterName: String
- shard: int
- BinaryOptional:
- data:
- val: -Binary
- Binary:
- data:
- val: byte[]
- Empty: { data: { } }
- Column:
- data:
- name: String
- DatabaseOptions:
- data:
- volumes: DatabaseVolume[]
- extraFlags: StringMap
- absoluteConsistency: boolean
- lowMemory: boolean
- useDirectIO: boolean
- allowMemoryMapping: boolean
- allowNettyDirect: boolean
- optimistic: boolean
- maxOpenFiles: -int
- blockCache: -long
- compressedBlockCache: -long
- persistentCaches: PersistentCache[]
- writeBufferManager: -long
- spinning: boolean
- defaultColumnOptions: DefaultColumnOptions
- columnOptions: NamedColumnOptions[]
- logPath: -String
- walPath: -String
- # Remember to update ColumnOptions common getters
- DefaultColumnOptions:
- data:
- levels: DatabaseLevel[]
- memtableMemoryBudgetBytes: -long
- cacheIndexAndFilterBlocks: -boolean
- partitionFilters: -boolean
- filter: -Filter
- blockSize: -int
- persistentCacheId: -String
- writeBufferSize: -long
- blobFiles: boolean
- minBlobSize: -long
- blobFileSize: -long
- blobCompressionType: -Compression
- # Remember to update ColumnOptions common getters
- NamedColumnOptions:
- data:
- columnName: String
- levels: DatabaseLevel[]
- memtableMemoryBudgetBytes: -long
- cacheIndexAndFilterBlocks: -boolean
- partitionFilters: -boolean
- filter: -Filter
- blockSize: -int
- persistentCacheId: -String
- writeBufferSize: -long
- blobFiles: boolean
- minBlobSize: -long
- blobFileSize: -long
- blobCompressionType: -Compression
- NoFilter:
- data: {}
- BloomFilter:
- data:
- bitsPerKey: int
- optimizeForHits: -boolean
- PersistentCache:
- data:
- id: String
- path: String
- size: long
- optimizeForNvm: boolean
- DatabaseVolume:
- data:
- volumePath: Path
- targetSizeBytes: long
- DatabaseLevel:
- data:
- maxDictBytes: int
- compression: Compression
- IndicizerAnalyzers:
- data:
- defaultAnalyzer: TextFieldsAnalyzer
- fieldAnalyzer: String2FieldAnalyzerMap
- IndicizerSimilarities:
- data:
- defaultSimilarity: TextFieldsSimilarity
- fieldSimilarity: String2FieldSimilarityMap
- LuceneOptions:
- data:
- extraFlags: StringMap
- queryRefreshDebounceTime: Duration
- commitDebounceTime: Duration
- lowMemory: boolean
- directoryOptions: LuceneDirectoryOptions
- indexWriterReaderPooling: -boolean
- indexWriterRAMBufferSizeMB: -double
- indexWriterMaxBufferedDocs: -int
- applyAllDeletes: -boolean
- writeAllDeletes: -boolean
- allowNonVolatileCollection: boolean
- maxInMemoryResultEntries: int
- mergePolicy: TieredMergePolicy
- TieredMergePolicy:
- data:
- forceMergeDeletesPctAllowed: -double
- deletesPctAllowed: -double
- maxMergeAtOnce: -int
- maxMergedSegmentBytes: -long
- floorSegmentBytes: -long
- segmentsPerTier: -double
- maxCFSSegmentSizeBytes: -long
- noCFSRatio: -double
- ByteBuffersDirectory: { data: { } }
- MemoryMappedFSDirectory:
- data:
- managedPath: Path
- NIOFSDirectory:
- data:
- managedPath: Path
- RAFFSDirectory:
- data:
- managedPath: Path
- DirectIOFSDirectory:
- data:
- delegate: StandardFSDirectoryOptions
- mergeBufferSize: -int
- minBytesDirect: -long
- RocksDBStandaloneDirectory:
- data:
- managedPath: Path
- blockSize: int
- RocksDBSharedDirectory:
- data:
- managedPath: Path
- blockSize: int
- NRTCachingDirectory:
- data:
- delegate: LuceneDirectoryOptions
- maxMergeSizeBytes: long
- maxCachedBytes: long