ACID Document Database
[Backup]
Fixed an issue that restoring from incremental backup with atomic guard, a tombstone could be handled before creating the document[Corax]
Fixed descending sorting string values when querying[Corax]
Added support for MultiSortingMatch to allow a user to use score as secondary comparer[Corax]
Added support for @AllResults facet aggregations in Corax[Corax]
Fixed incorrect result from MultiTermMatch AndWithFill[Cluster Transactions]
Improved performance of cluster-wide transactions[Cluster Transactions]
Fixed the restore of a database with cluster transactions[Cluster]
Improved performance of updating database values by using separate semaphores for database record changes and value changes[Debug]
Added method to delete document by Etag[Expiration & Refresh]
Added an option to specify max number of items to process in a single run[Indexing]
Fixed unhandled cases in Index Merger. Added better error handling.[Indexing]
Aggregating CPU credits exhaustion notifications into a single alert[Indexing]
Improved the performance of indexes with LoadDocument
from different collections[Licensing]
Preventing the downgrade of the license when features are being used[Monitoring]
Exposed alerts and notifications via /databases/*/notifications
endpoint[Querying]
Fixed translation of DateTime.MaxValue
to JS date when building RQL with JS projection[Querying]
Fixed count, distinct, and paging for very specific cases of collection queries[Querying]
Fixed the detection of index staleness which could result in returning stale results in specific scenarios[Querying]
Fixed OutOfRangeException in alphanumerical sorter[Replication]
Added authorization check for the legacy replication for indexes[Replication]
Improved Usability & Self-Service for replication monitoring[Replication]
Fixed active connections preview[Replication]
Fixed access to delete Filtered replication[Sharding]
Making DeleteBucketCommand
aware of size of the transaction[Sharding / Voron]
Fixed addition of a value to a dynamic index (used in sharded databases)[Sharding / Backup]
Fixed wrong folder name in Server-wide sharded backups with script-generated settings[Voron]
Fixed dispose patterns in internal structures[.NET]
Updated to .NET 8.0.4[Bulk Insert]
Fixed a possible NRE in the heartbeat timer[Cluster Transactions]
Removed a legacy check if Cluster Transactions are supported[Indexing]
Exposed referenced collection in index statistics[Import]
Enforcing available feature restrictions during the import (according to the license)[Backup]
Fixed an issue that restoring from incremental backup with atomic guard, a tombstone could be handled before creating the document[Cluster Transactions]
Improved performance of cluster-wide transactions[Cluster Transactions]
Fixed the restore of a database with cluster transactions[Cluster]
Improved performance of updating database values by using separate semaphores for database record changes and value changes[Debug]
Added method to delete document by Etag[Expiration & Refresh]
Added an option to specify max number of items to process in a single run[Indexing]
Fixed unhandled cases in Index Merger. Added better error handling.[Monitoring]
Exposed alerts and notifications via /databases/*/notifications
endpoint[Querying]
Fixed translation of DateTime.MaxValue
to JS date when building RQL with JS projection[Querying]
Fixed count, distinct, and paging for very specific cases of collection queries[Querying]
Fixed the detection of index staleness which could result in returning stale results in specific scenarios[Replication]
Added authorization check for the legacy replication for indexes[.NET]
Updated to .NET 7.0.18[Bulk Insert]
Fixed a possible NRE in the heartbeat timer[Cluster Transactions]
Removed a legacy check if Cluster Transactions are supported[Indexing]
Exposed referenced collection in index statistics[Cluster]
Avoid logging expected cluster exception[Cluster]
Fixed the failover mechanism for cluster transactions[Cluster]
Using SemaphoreSlim
instead of a blocking Monitor.TryEnter
as the cluster lock to prevent potential ThreadPool starvation[Cluster]
Fixed an edge case of NRE in ClusterStateMachine
when adding a database[Cluster]
Fixing Raft log truncation[Corax]
Fixed usage of AndNot in CoraxQueryBuilder[Corax]
Exposing Corax query structure when including timings()
[Corax]
Added support for phrase querying[Corax]
EntryReader must use more accurate comparison than lowest bit set for storing numeric values[Corax]
Fixed an issue with ordering by fields having no terms[Counters]
Fixing the allocation size for a counter group name when purging counter tombstones[ETL]
Stopping an ETL tasks in an async fashion to avoid holding the cluster lock[Indexing]
Fixed incorrect staleness status due to unprocessed document tombstones after the replication[Indexing]
Fixed handling of field names extraction for boosted fields in JavaScript index definition[Indexing]
Making Corax default search engine for Community, Developer, AGPL licenses[Licensing]
Making sure the license verification check will be executed when running as Windows Service[Performance]
Optimization of blittable JSON text writer[Performance]
Optimized Page Locator Reset mechanism in Voron[Performance]
Routing performance improvements[Querying]
Fixed TotalResults
number in query statistics for collection query with load or include[QueueSink]
Prevented from unloading an idle database it if has an active Queue Sink task so it will be able to consume incoming messages[Revisions]
Fixing an issue that Enforce revisions configuration was skipping on docs when passing multiple collections[Subscriptions]
Fixed an issue with missing metadata on subscriptions with revisions enabled[Subscriptions]
Fixed a task connection status when getting subscription ongoing task by name[Subscriptions]
Fixed the update of change vector when task gets back on previously processing node[Subscriptions]
Fixed an issue that concurrent subscription connection would not pickup the latest subscription state change vector in rare case[ThreadPool]
Doubling the minimum workers of ThreadPool in the default configuration[Voron]
Fixed occasional failures in loading the storage report[.NET]
Updated to .NET 8.0.3[Performance]
Optimized session start by wrapping JavascriptCompilationOptions
into lazy[Cluster]
Avoid logging expected cluster exception[Cluster]
Fixed the failover mechanism for cluster transactions[Cluster]
Using SemaphoreSlim
instead of a blocking Monitor.TryEnter
as the cluster lock to prevent potential ThreadPool starvation[Cluster]
Fixed an edge case of NRE in ClusterStateMachine
when adding a database[ETL]
Stopping an ETL tasks in an async fashion to avoid holding the cluster lock[Indexing]
Fixed incorrect staleness status due to unprocessed document tombstones after the replication[Indexing]
Fixed handling of field names extraction for boosted fields in JavaScript index definition[Licensing]
Making sure the license verification check will be executed when running as Windows Service[Revisions]
Fixing an issue that Enforce revisions configuration was skipping on docs when passing multiple collections[Subscriptions]
Fixed an issue with missing metadata on subscriptions with revisions enabled[Subscriptions]
Foxed a task connection status when getting subscription ongoing task by name[ThreadPool]
Doubling the minimum workers of ThreadPool in the default configuration[Voron]
Fixed occasional failures in loading the storage report[.NET]
Updated to .NET 7.0.17HandleClusterDatabaseChanged()
Storage.Temp
configuration option for temporary directoryMySqlConnector
in
clauseGetMultipleTimeSeriesOperation
was not using returnFullResults
valueWhatChanged()
did not return old value for RemovedField on DictionaryRequestExecutor
instancesHiLoIdGenerator
while a custom AsyncDocumentIdGenerator
convention was setHandleClusterDatabaseChanged()
Storage.Temp
configuration option for temporary directoryMySqlConnector
in
clauseWhatChanged()
did not return old value for RemovedField on DictionaryRequestExecutor
instancesHiLoIdGenerator
while a custom AsyncDocumentIdGenerator
convention was set[JavaScript Indexes]
Fixed regression introduced in 6.0.2 which made that date fields indexed by JavaScript indexes got different format so queries could not find old results. If an index is affected (has a date field) then the reset is required in order to recover.
[Counters]
Fixing the allocation size for a counter group name when purging counter tombstones
[JavaScript Indexes]
Fixed regression introduced in 5.4.113 which made that date fields indexed by JavaScript indexes got different format so queries could not find old results. If an index is affected (has a date field) then the reset is required in order to recover.
[Counters]
Fixing the allocation size for a counter group name when purging counter tombstones