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

5.3.108 (53043) - 2023/01/09

Server

  • [Backup] Fixed issue with a backup status after changing the type of a backup
  • [Backup] Changed the order in which we perform the snapshot backup - first the indexes then the documents.
  • [Backup] Fixed issue with calculating the space required for snapshot backup if indexes were excluded
  • [Cluster] Fixed the format of atomic guard values used by Cluster Transactions and block using them via the session
  • [Cluster] Improved handling of a database shutdown
  • [ETL] Added ability to enable compatibility mode when sending documents to Elasticsearch
  • [ETL] Fixed handling of scripts containing getMetadata() and delete behavior functions
  • [Indexing] Fixed handling of Distinct() with mixed values of string and LazyStringValue types
  • [Logging] Enhancements in the cluster logging to improve logs readability
  • [Logging] Added schema upgrades progress to the init log
  • [Logging] Added ability to get internal Microsoft logs (in particular Kestrel logs)
  • [Monitoring] Fixed the issue that average request time stays on last value if traffic moves to an another node
  • [PostgreSQL] Fixed handling of fields with large values
  • [PostgreSQL] Better schema generation if first item has null values
  • [Querying] Fixed regression issue that we stopped detecting enums as server known type during indexing
  • [Querying] Fixing WaitForNonStaleResults for Time Series and Counters
  • [Replication] Fixed very high memory usage when replicating a big transaction and using encryption
  • [Subscriptions] Subscription worder will continue to retry on DatabaseDisabledException and AllNodesTopologyDownException
  • [TimeSeries] Improved memory usage when importing .ravendump with high number of time series to an encrypted database
  • [TimeSeries] Fixed clone document with a rollup time series
  • [.NET] Updated to .NET 6.0.12

Client API

  • Making sure that the HiLo number we got is used with the server node tag it came from to avoid duplicate ids

Studio

  • Fixed visibility of time series requests on studio dashboard

5.3.107 (53042) - 2022/11/21

Server

  • [Attachments] prevent saving attachments inside a batch for documents with server-side generated IDs
  • [Backup] optimized cluster transaction restore performance
  • [Backup] added the ability to exclude indexes for Snapshot backup
  • [Backup] after restore database will be automatically loaded to apply the journals
  • [Backup] using 'Backup.TempPath' for one time backups
  • [Batch] fixed issue with waiting for indexes not working when batch is a cluster transaction
  • [Cluster] fixed possibility of Cluster Transaction application hanging after Database is being initialized
  • [Certificates] allow to start the server with expired certificate to allow certificate refresh to take place
  • [Indexes] added support for file-scoped namespace declarations in additional sources
  • [Indexes] fixed issue with optimize hanging during index compaction
  • [Licensing] fixed issue throwing a 'LicenseLimitException' when asserting PostgreSQL license limit, even if license has this feature enabled
  • [PostgreSQL] disposing documents transaction properly after handling query
  • [Querying] fixed IndexOutOfBoundsException when skip is greater than number of results in index after Distinct is used
  • [Replication] delay replication on missing attachments
  • [Voron] do not change valid pages if the page checksum or number is invalid
  • [.NET] updated to .NET 6.0.11

Client API

  • [Events] invoke 'OnAfterConversionToEntity' event after entity has been tracked so methods like 'GetMatadataFor' can be used inside the event
  • [Querying] fixed issue with SELECT clause containing unnecessary aliases for methods
  • [Session] fixed possible NRE when updating compare exchange metadata in the session
  • [Subscriptions] forbid opening more than one session per each subscription batch

Studio

  • [Cluster Dashboard] added average request time per database
  • [Thread Info] added websockets for live updates

5.3.106 (53041) - 2022/10/10

Server

  • [Backup] fixed issue with OLAP ETL not being disabled when 'Disable Ongoing Task' is set during restore
  • [Backup] fixed issue with Elasticsearch not being disabled when 'Disable Ongoing Task' is set during restore
  • [Backup] fixed issue with creating new server-wide backup with name identical to existing backup
  • [Backup] restore of compare exchange should not only be count-based but also size based
  • [Backup] restore of cluster transactions should not only be count-based but also size based
  • [Certificates] using EphemeralKeySet and UserKeySet as a default key set instead of MachineKeySet with MachineKeySet as a failover
  • [Configuration] added 'Databases.DeepCleanupThresholdInMin'
  • [Configuration] added 'Databases.RegularCleanupThresholdInMin'
  • [Indexes] fixed race condition when handling nested references
  • [Indexes] adjustments in index merge suggestions mechanism
  • [Memory] fixed memory leak that could happen for large allocations, especially when compression is used (e.g. Revisions). This should reduce the memory footprint needed for processing compressed documents e.g. during backup operation
  • [Monitoring] added 'AvailableMemoryForProcessing' to SNMP
  • [PAL] fixed issue with writing large transactions to journals on Posix (over 2GB)
  • [Time Series] fixed issue with start and end range being in different TZ when getting range stats
  • [Voron] fixed faulty error handling during the recovery of storage environment that could happen if recyclable journal is being used
  • [Voron] fixed issue with updating headers when partial recovery is being done
  • [Voron] fixed issue with gathering data needed to display storage report in Studio
  • [.NET] updated .NET to 6.0.9

Client API

  • [Conventions] added 'HttpPooledConnectionLifetime' and 'HttpPooledConnectionIdleTimeout' conventions
  • [HTTP] limit number of HttpClient recreations during error handling to 1 per 5 seconds
  • [HTTP] immediately recreate HttpClient after getting 'SocketError.TryAgain'
  • [Querying] fixed issue with LINQ 'As<>' not taking into account the projection used
  • [Session] fixed issue with Compare Exchange metadata not marking values as dirty so they are ignored during 'SaveChanges'

Studio

  • [Dashboard] added disk metrics to Cluster Dashboard
  • [Documents] fixed issue in collection tracker that was detecting changes in collection (an displaying 'Your data has changed' notification) despite nothing being changed
  • [Notifications] Merging 'DeleteByQuery' notifications into one to avoid flooding the notification center
  • [Traffic Watch] added average response size to stats
  • [Traffic Watch] added the ability to save to file

5.3.105 (53040) - 2022/09/01

Server

  • [Cluster] Fixed infinite leader/follower negotiation
  • [Cluster] Fixed incapability to expand database group
  • [Compression] Fixed potential usage of disposed buffer in ZstdStream
  • [Core] Fixed possible leak of an instance of a document database that could lead to data corruption or errors with accessing db.lock file
  • [Debug] Fixed dump creation via /admin/debug/gcdump
  • [Indexing] Support for creation of dynamic and spatial fields on arrays inside JavaScript indexes
  • [Indexing] Added a performance hint when fanout index is outputting a source document
  • [Indexing] Added a performance hint warning about too many usages of 'let' in index definition
  • [Indexing] Fixed side-by-side index duplication after server restart
  • [Indexing] Fixed handling of out of disk space errors
  • [Memory] Fixed native memory allocation when in specific case of fragmentation
  • [Querying] Fixed performance of collection query with startsWith()
  • [Setup] Allow to create a setup package for unsecured setup via Setup Wizard
  • [Subscriptions] Fixed problem with a subscription not sending over new docs after restart of responsible node
  • [.NET] updated to .NET 6.0.8

Client

  • Improved error messages in case of broken responses
  • [Session] Fixed marking document as dirty if only read operations or no-op operations were performed on metadata
  • [Session] Added ability to include counters, time series when including revisions
  • [Querying] Support for more complex scenarios when querying on a dictionary

Studio

  • [Cluster Dashboard] Added details per database to Ongoing Tasks widget
  • [Cluster Dashboard] Added Elasticsearch ETL to Ongoing Tasks widget
  • [Cluster Dashboard] Added configuration option to scale disk size based on its size
  • [Cluster Dashboard] Added server and OS info to Cluster Overview widget
  • [Ongoing tasks] Added Hub task details
  • [Traffic Watch] Added a request size
  • [Index Terms] Fixed querying on complex term objects
  • [Backup Task] Fixed testing credentials functionality
  • Fixed and enhancements

Tools

  • Replay traffic watch tool for queries

5.3.104 (53029) - 2022/07/18

Server

  • [Batches] WaitForIndexesAfterSaveChanges and WaitForReplicationAfterSaveChanges timeouts would return status code that could cause Client API to failover instead of failing immediately
  • [Cluster] avoid holding read transaction for a long time while processing stat changes via the cluster observer
  • [Cluster] fixed issue with handling non-existent server-wide task deletion
  • [CPU] fixed CPU usage calculation on Linux
  • [Indexes] fixed unexpected error in indexing thread which effectively was expected TaskCanceledException
  • [Indexes] fixed possibility of occurrence of infinite loop when handing a document with a lot of references
  • [JSON] prevent StackOverflowException on complex nested JSON
  • [Linux] added the ability t track disk metrics
  • [Logging] added the ability to download logs via '/admin/logs/download' endpoint
  • [macOS] added support for macOS ARM x64
  • [PostgreSQL] added named statement handling for Azure Data Factory queries
  • [Replication] fixed issue with using TCP compression and replication over SSL between mixed-OS cluster nodes
  • [.NET] updated to .NET 6.0.7

Client API

  • [Querying] added support for LINQ queries with dictionary entity types
  • [Session] timeout caused by WaitForIndexes could cause Client API to failover instead of throwing immediately
  • fixed issue with picking a node when operating a one node cluster and server previously failed with server unavailable

Studio

  • [Logging] added the ability o downloads logs directly from Admin Logs View
  • [Revisions] exposed flags for deleted revisions

Tools

  • [daemon] make sure that all daemon installation scripts have TasksMax set properly