NoSQL Database Documentation

We hereby welcome you into the RavenDB Documentation.
Feel free to explore the sizeable world of our premier NoSQL database.

Become part of the community! Contribute to documentation.

What's new

6.0.106 (60052) - 2024/09/17

Server

  • [Audit] added audit log to the database configuration changes
  • [Audit] added revision setting changes to the audit log
  • [Backup] fixed issue with backup not waking up immediately the database when 'UpdateResponsibleNodeForTasksCommand' command is executed
  • [Backup] properly restoring Refresh, Integrations and RevisionsForConflicts configuration during the restore process
  • [Backup] fixed issue with restoring DatArchival and QueueSink configurations
  • [Backup] fixed issue with backup restore cancellation not working
  • [Backup] import properly checks for license restrictions
  • [Backup] fixed backup timer calculations
  • [Cluster] fixed issue with not all databases waking up when server starts to calculate heal and backup status due to concurrent database load timeout
  • [Cluster] redirecting to leader PutDatabaseCommand
  • [Cluster] added more grace time before moving node into rehab for nodes that are lagging behind to avoid constant topology changes
  • [Cluster] fixed potential issue of Heartbeat spam when CPU credits are low on CPU bounded instances like T3 family in AWS
  • [Cluster] stabilized the behavior of cluster
  • [Changes] fixed issue with concurrent usage of AggresiveCache notification which could end up in sending incorrect notification JSON and not refreshing client-side aggressive cache
  • [Cluster Transaction] fixed possible race with creation of document with atomic guard and not getting concurrency exception
  • [Corax] fixed incorrect results wen performing And operation on MultiUnaryMatch
  • [Corax] increased facets performance for simple aggregations
  • [Corax] implemented SortUsingIndex for MultiSortMatch to increase performance
  • [Corax] increased alphanumerical sorting performance
  • [Corax] fixed unexpected index errors on complex fields after side-by-side indexing
  • [Corax] fixed issue with concurrent access to LuceneAnalyzerAdapter in Corax
  • [Corax] Fix querying documents with missing fields when there is order by and no where statement
  • [Debug] added the ability to log internal .NET events to the log
  • [Indexes] more strict parsing of TimeSpan to avoid false positives when strings containing timespans are passed to the index
  • [Indexes] skip deleting a document entry for new indexes to avoid unnecessary work
  • [Indexes] fixed issue with extraction of group by field name for additional expression types
  • [JavaScript] updated Jint to 3.1.6 to resolve issue with custom reference resolvers not handling properly unresolvable references due to Jint bug
  • [JSON] fixed possible JSON corruption due to reading native memory and HttpClient handling serialization tasks in some cases in the background without waiting for them to complete when HTTP/2 is used
  • [Http] fixed possible ArgumentException when HTTP/2 is used and we are establishing a connection
  • [Monitoring] fixed number of threads returned via SNMP for Windows instances
  • [Notifications] introduced max queue size for the notifications that are sent to the Studio
  • [Querying] fixed issue with parameters not being added to high latency query alerts
  • [Replication] fixed leak of SINK tags in Hub/Sink Replication when Sink Task is defined
  • [Replication] fixed issue with SINK tags not being restored as TRXN when getting the document back from the replication
  • [Replication] fixed issue with Pull Replication not connecting properly when 2+ Sinks have the same database name
  • [Revisions] fixed issue with making revisions orphaned after executing revert revision without configuration
  • [Subscriptions] fixed issue with not taking into account if subscription is disabled or not when updating the subscription
  • [Subscriptions] fixed memory leak in Subscription when revisions are being processed and we do a lot of skip operations
  • [Subscriptions] fixed issue with filtering 'current == null' when subscription on revisions is used
  • [Threads] implemented cleanup mechanism for built-in PoolOfThreads to avoid having a lot of threads in the pool that hold the memory
  • [Traffic Watch] fixed NRE caused by opened Traffic Watch on /docs endpoint
  • [.NET] updated to .NET 8.0.8

Client API

  • [Documentation] documented more interfaces and classes
  • [Indexes] fixed issue with IndexCreation.CreateIndexes ignoring SearchEngineType property
  • [Indexes] fixed index syntax creation for ListInitExpression
  • [JSON] fixed possible JSON corruption due to reading native memory and HttpClient handling serialization tasks in some cases in the background without waiting for them to complete when HTTP/2 is used
  • [Subscriptions] properly registering missing Ids in subscription session
  • [NuGet] added ContinuousIntegrationBuild=true to the CI when package is being built

Studio

  • [Create Database] style and behavior adjustments
  • [Indexes] exposed the ability to convert auto indexes to static
  • [What's New] introduced to the Menu and About page

TestDriver

  • [Licensing] added configuration options in TestServerOptions to pass license and license related properties in a more easy manner with the ability to throw if no license is provided or license is invalid

6.0.105 (60039) - 2024/07/23

Server

  • [Backup] Fixed an issue with the backup running on UTC instead of server's local time
  • [Backup] Allowed to backup all shards of the same database concurrently
  • [Backup] Fixed the cancellation of a backup
  • [Backup/Import/Export] Handling the export and import of time series deleted ranges
  • [Backup/Import/Export] Fixed an potential race condition issue with applying commands during import / export
  • [Compression] Fixed a potential issue with stats of a collection when compression was turned on/off during large import
  • [Containers] Set HTTPs scheme in Docker automatically if cert options were passed
  • [Containers] Publishing Docker multi-arch images
  • [Corax] Fixed an issue with updating query statistics
  • [Corax] Fixed implementation of dynamic fields in JS indexes
  • [Corax] Fixed take and skip parameters handling in MoreLikeThis queries
  • [Corax] Fixed in and all in queries with null parameter
  • [Corax] Fixed error handling during indexing
  • [Corax] Fixed ordering by multiple fields
  • [Databases] Fixed an issue with databases loading if there was an inconsistent casing
  • [ETL] Replaced deprecated System.Data.SqlClient dependency with Microsoft.Data.SqlClient (existing connection strings will default to Encrypt=Optional option which is mandatory since version 5.0 of Microsoft.Data.SqlClient to ensure backward compatibility)
  • [Expiration/Refresh] Improved size calculation of expiration/refresh commands so it will reduce the memory usage
  • [Import] Allowed to import a disabled configuration of the revisions
  • [Indexing] Improved memory usage of loaded documents that are compressed
  • [Indexing] Fixed the hash of query results after resetting an index
  • [Indexing] Rollback indexing for a document where exception happened during indexing/mapping in case of fanout index
  • [JS Admin] Added ability to use internal operation contexts to execute some emergency operations
  • [Logging] Audit log improvements
  • [Monitoring] Added ability to monitor number of ongoing tasks via SNMP
  • [Monitoring] Exposed Monitor.LockContentionCount via SNMP
  • [Monitoring] Added MIB generator for easy integration with SNMP monitoring tools
  • [Setup] Fixed regression issue with RavenDB deb package dependencies
  • [Setup] Added Ubuntu Deb Packages distribution for Ubuntu 24.04 and dropped distribution for Ubuntu 18.04
  • [Patching] Fixed and issue with patching a document metadata
  • [Replication] Fixed issue that WaitForReplicationAfterSaveChanges() didn't account itself to calculate majority
  • [Server] Added -i | --info switch to Raven.Server
  • [Sharding] Implemented a backoff strategy for failed resharding attempt
  • [Subscriptions] Throwing less SubscriptionDoesNotBelongToNodeException on unstable cluster
  • [.NET] Updated to .NET 8.0.7

Client

  • [Querying] Implemented LongCountLazily and LongCountLazilyAsync
  • [Patching] Fixed consistency of serialization of enums between storing and patching (SaveEnumsAsIntegersForPatching convention was added)

Studio

  • Added navigation buttons to Revisions Compare view
  • Fixed and issue with the export visible columns to CSV - studio did not include @id
  • Fixed NRE on the Indexes view related to referenced collections
  • Fixed an issue with showing Insufficient security clearance while it's not true
  • Making the date of index creation consistent on Index view
  • Better copying of subscription errors
  • Fixed the button on Admin JS Console view
  • Added ability to export query results to JSON directly
  • Fixed all documents deletion

Articles

6.0.104 (60035) - 2024/06/17

Server

  • [Cluster] Fixed possible race that upon cluster tx failover it could have waited for the task after it was already completed
  • [Cluster] Fixed an issue that WaitForIndexNotification wasn't waiting until the command was done
  • [Configuration] Added Indexing.AllowStringCompilation and Patching.AllowStringCompilation configuration options
  • [Corax] Sort results in MultiTermMatch.AndWithFill when Fill is called multiple times
  • [Corax] Fixed AccessViolationException in BinaryMatch and enhancements around that area
  • [Corax] Fixed an issue that paging when order by is set on multiple fields doesn't work
  • [Corax] Allowed to store field without indexing
  • [Corax] Fixed an issue with a search analyzer producing multiple tokens from single words
  • [Databases] Fixed an issue with a database getting occasionally stuck in due to The database 'xxx' has been unloaded and locked by IdleOperations
  • [Debug] Increased timeout for getting Debug Package
  • [Docker] Make overriding default UnsecuredAccessAllowed settings more intuitive in Docker image
  • [ETL] Fixed an issue of respecting cancellation during the load phase of Elasticsearch, Kafka and RabbitMQ ETLs
  • [ETL] Upgraded Npgsql driver from v5 to v8
  • [Expiration/Refresh] Fixed an issue with unreleased buffers on compressed databases
  • [Expiration/Refresh] Added a transaction size limit in the Expiration and Refresh commands
  • [Import/Export] Decrypting and Encrypting streams should not use synchronous IO in async methods
  • [Indexing] Include the index names that are stale after getting a timeout on WaitForIndexesAfterSaveChanges() in the error message
  • [Indexing] Added ability to perform the side-by-side index reset
  • [Licensing] Fixed an issue with license signature verification on some Linux distributions
  • [Logging] Fixed a bug when downloading logs from the Studio returns empty zip
  • [Logging] Fixed a potential deadlock in the logging
  • [Logging] Unified audit log lines
  • [Performance] Improved performance of retrieving query string parameters
  • [Replication] Fixed NRE in /databases/*/debug/replication/all-items endpoint
  • [Sharding] Fixed an issue of inability to save the unused database IDs for sharded db
  • [Sharding] Fixed NRE in ShardExecutor.Dispose()
  • [Sharding] Fixed implementation of Revisions.GetAsync()
  • [Subscriptions] On update subscription populate PinToMentorNode from existing state if needed
  • [Time Series] Optimized Time Series retention
  • [Voron] Fixed a bug in clustering code which could result in runnnig and committing two write transactions concurrently. This could result in InvalidJournalException after the restart.
  • [Voron] Optimized allocations and performance
  • [.NET] Updated to .NET 8.0.5

Client

  • [Certificates] Throwing meaningful exception when HttpClientHandler does not support certificates
  • [Querying] Fixed an issue with missing parentheses when combining Where and Search clauses
  • [Changes API] Don't allow automatic fail over in Changes API when tracking node-specific operations
  • [Changes API] Fixed an issue with cache wasn't invalidated after Changes API reconnection
  • [HTTP] Flushing request stream to send the headers in all customized HttpContent implementations

Studio

  • [Cluster Dashboard] Added the Lucene Unmanaged Allocations to the memory widget
  • [Indexes] Showing referenced collections
  • [Indexes] Added ability to reset multiple indexes
  • [Traffic Watch] Fixed an issue that it couldn't view a MultiGet request
  • [Create database] New database creator
  • [About] Redesigned About page
  • Redesigned Path Selector component
  • Fixed an issue with Connection string dialog getting closed when we get any Changes API update

6.0.103 (60028) - 2024/05/16

Server

  • [Certificates] Adjusted client certificate trust logic to ensure compatibility with shorter intermediate certificates
  • [Containers] Adjusted settings.json permissions after copying default content into the image as root
  • [Import] Fixed import of indexes from .ravendump files when using a secured server

6.0.102 (60026) - 2024/04/29

Server

  • [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

Client

  • [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
  • Fixed inconsistent exceptions between sync and async API

Smuggler

  • [Import] Enforcing available feature restrictions during the import (according to the license)

Studio

  • Added ignore MaxStepsForScript option on the Patching view
  • Exposed info about compressed document
  • Fixed Edit view of Sink in Pull Replication
  • Fixed handling 404 for load document
  • Fixed Custom sorters view where new sorters had the same key
  • Fixed an issue where detailed database & indexing stats disappeared automatically
  • Improved Unused Database IDs page