What's new
5.2.6 (52021) - 2022/01/07
Server
[Compression]
fixed possible data corruption issue that could occur when transaction which used compression was rolled-back
5.2.5 (52020) - 2021/12/21
Server
[Backup]
fixed issue with testing AWS credentials when custom URL is used[Backup]
fixed issue with rescheduling backup when during processing it is being moved to another node[Backup]
added 'ForcePathStyle' option to S3 settings[Backup]
properly escaping tombstone ID during backup[Backup]
fixed issue when exporting and importing could lose ID capitalization when cluster transaction with atomic guard was used to create that document[Cluster]
idle indexes should not be taken into account when calculating promotable state[Compare Exchange]
fixed possible NRE when 'AddOrUpdateCompareExchangeCommand' is executed due to possibility of early context release[Configuration]
added 'Indexing.TimeSinceLastQueryAfterWhichDeepCleanupCanBeExecutedInMin' configuration option[Configuration]
added 'Indexing.IndexStartupBehavior' configuration option[ETL]
fixed possibility of infinite loop in ETL (backported from 5.2)[ETL]
fixed issue with removing node from database too early when deletion status is still set to 'no'[Indexing]
added support for 'LoadDocument' without adding a tracking reference[Indexing]
early stop reference processing if server is under memory pressure[Indexing]
fixed issue with retrying 'OutputReduceToCollectionCommand' in transaction merger which could result in not deleting relevant documents[Indexing]
fixed issue with calculating hash incorrectly for double values in map-reduce indexes causing increased number of hash collisions to handle[Indexing]
expose batch complete reason in the indexing performance stats for Cleanup & References[Querying]
fixed issue with calculating total number of results when using collection query on a non-existent property[Querying]
properly handling NULL_VALUE when sorting alphanumerically[Querying]
added the ability to do JavaScript projection of Time Series values[Replication]
fixed issue with calculating properly HasRevisions flag when replicating document delete[Replication]
revision configuration should create revision bin for documents deleted by replication[Replication]
expose incoming replication stats from external replication to the Ongoing Tasks View[Time Series]
decrease CPU usage during streaming of large time series[Transactions]
fixed issue with re-running some of the commands when merging fails and they need to be executed once again one by one[Voron]
using 'mmap' instead of 'posix_memalign' when allocating 4KB aligned memory for encryption buffers to avoid memory fragmentation[.NET]
updated to .NET 5.0.13
Client API
[Querying]
throw when whole entity instance is compared inside conditional statement[Querying]
support for using select after select (will be handled same as 'let')[Querying]
caching index metadata to increase query building process performance[Querying]
caching query parameter names to increase query build process performance
Other
[Docker]
added the ability to override server URL via RAVEN_ServerUrl environment variable
5.2.4 (52016) - 2021/11/15
Server
[Backup]
do not cancel running backup even if task was moved to another node[Backup]
fixed issue with restoring Snapshot backup when compare exchange values exist[Cluster]
fixed issue with Cluster might accepting commands from higher version than the current one when doing mixed version clusters[Cluster]
properly snapshot compare exchange with expiration[Counters]
remove leading whitespace from Counter Values Change Vector[Counters]
prevent from generating invalid Change Vector that starts with comma[ETL]
properly validate if number of transform scripts is greater than 0[ETL]
properly handling casing mismatch between table name and table definition[ETL]
state should be tracked per database ID instead of node tag to avoid progress miscalculations when node is being removed and re-added[ETL]
allow to pass SQL table name with a schema in the script[Import]
handle compare exchange values incrementally when doing an import from v4.x[Import]
properly handle revisions when doing an import with time series[Indexes]
validate if index was created using our database and not copied from a different one[Indexes]
properly handle cancellation when doing flush and sync to avoid generating index error[Indexes]
fixed issue with throttled indexes getting stuck sometimes[Indexes]
added the ability to turn off the size limit check when requesting for index entries[Monitoring]
exposed MemInfo (linux) to SNMP[Monitoring]
exposed number of faulted databases to SNMP[Querying]
fixed issue with collection size limitation when using 'Not In' clause and the possibility to return invalid results[Querying]
properly handle NULL_VALUE when using alphanumeric sorting[Replication]
do not stop replication when replicating a document with a changed collection and there is a conflict already[Replication]
properly handling Tombstones for legacy 3.x replication[Replication]
properly setting HasAttachment, HasCounters flag in reverted revision documents[Replication]
fixed issue with negotiating replication protocol version[Transactions]
properly handling Change Vector when TxMerger executes transactions one by one to avoid returning invalid Change Vector[TCP]
properly dispose Ping connections to avoid having a lot of CLOSED_WAIT sockets[Voron]
fixed invalid handling of journals created based on recyclable ones during the storage recovery on startup[Voron]
fixed 'Collection was modified; enumeration operation may not execute.' when generating a storage report[.NET]
updated to .NET Core 5.0.12
Client API
[Document Store]
exposed 'HiLoIdGenerator'[Session]
support for selecting metadata in single call expressions[Session]
support for nested projections when using LINQ[Operations]
fixed issue with using TypeNameHandling.None by user and deserialization of Operations[Operations]
fixed issue with contacting server when using server-wide operations and node is a watcher
Studio
[Admin Logs]
clearing admin logs when they are paused should not start them[Compare Exchange]
display Raft Index[Licenses]
display connectivity to api.ravendb.net[Licenses]
show force update license on all license types[Notifications]
added total documents size for page size is too big performance hint[OLAP ETL]
fixed issue with opening Test Area[Patching]
provide number of affected documents before executing patch[Querying]
fixed issue with providing query parameters as inline JSON[Threads]
added the ability to view a stack trace of a single thread[Threads]
added the ability to filter by thread Id
5.2.3 (52012) - 2021/09/29
Server
[Backups]
fixed issue with restoring snapshots that were 2GB+ because of limitations of ZipArchive in .NET[Backups]
fixed issue with Azure client having issues with staging large blocks[Backups]
fixed progress update in AWS S3 and AWS Glacier clients[Backups]
fixed issue with restoring snapshot backups containing compression recovery files[Cluster]
decrease the amount of locks taken by cluster to avoid contention[Cluster]
check for topology changes also on server-wide requests resulting in faster topology change discovery by Client APIs[Configuration]
added 'Backup.UploadTimeoutInMin'[Configuration]
added 'Security.Certificate.Validation.KeyUsages'[Encryption]
decreased memory footprint when generating storage report with attachments on an encrypted database[Indexes]
fixed possible storage corruption in indexes that are using Suggestions[Indexes]
fixed issue when modifying 'PatternReferencesCollectionName' in map-reduce indexes could create conflicts during replication[Indexes]
fixed issue with using 'IfEntityIs'[Indexes]
fixed NRE when database compaction is executed - could happen if auto indexes were merged[Indexes]
prevent database from unloading because of idleness during index compaction[Indexes]
'ErrorIndexStartupBehavior.ResetAndRestart' will also try to reset the Faulty indexes[Indexes]
index will create a Studio performance hint notifications when substantial amount of LoadDocument & LoadCompareExchangeValue calls per single reference item exists[Linux]
set 'TasksMax' to infinity in 'ravendb.service' file[Memory]
fixed memory leak that could occur in Databases cache when a lot of databases is being added and deleted[Monitoring]
exposed writes and data written per second in SNMP for server and per database[Monitoring]
exposed average request duration for server[Querying]
better exception when page size is negative[Querying]
fixed issue with 'Not In' not support more than 128 items[Replication]
fixed issue that could cause replication problem if a revision of a conflict between document and document deletion occurs[Subscriptions]
do not send includes in every subscription batch when the list of them is empty[Revisions]
properly set etag when revision bin entry is created to avoid issues with ordering and therefore retrieving the revisions bin entries[Voron]
immediate process exit on catastrophic failure in server store to avoid running with invalid state
Client API
[Session]
using 'Evict' method should release memory immediately to release memory pressure as soon as possible[Operations]
fixed issue with deserialization of 'IOperationResult' when 'TypeNameHandling.None' is set in conventions[Operations]
fixed possible NRE when waiting for smuggler operation if it was completed before the wait was called
Studio
[Certificates]
added the ability to generate client certificate with expiration date in days instead of months[Certificates]
allow Operators to enter Custom Analyzers & Sorters views[ETL]
added the ability to edit script name[Indexes]
fixed NRE when navigating to a non-existing index[Indexes]
more detailed index change history[Ongoing Tasks]
added the ability to create ongoing task as disabled[Querying]
fixed issue with Spatial queries not showing 'Map view'
Embedded
- added support for
+
inServerOptions.FrameworkVersion
for Patch number with default set to5.0.10+
Tools
[rvn]
proper 'CTRL+D' and 'EOF' handling
Docker
- added support for
$RAVEN_DATABASE
parameter which creates given database on a first run - added support for 'arm64' docker image
5.2.2 (52003) - 2021/08/16
Server
[Backups]
moved to official Azure, AWS S3 and AWS Glacier clients[Backups]
on export avoid ArgumentNullException because of lack of ClusterTransactionId which was added in 5.2[Bulk Insert]
added 'SkipOverwriteIfUnchanged' support[Certificates]
added support for 'PBEwithHmacSHA-256 encrypted certificates'[Concurrency]
fixed possibility of loosing a document tombstone when optimistic concurrency 'put' is done after 'delete'[Configuration]
added 'Storage.DiscardVirtualMemory' option[Compression]
added the ability to compress all collections without specifying their name individually[Encryption]
fixed issue with removing encrypted node with wrong key[Indexing]
decreased CPU pressure by scheduling indexing cleanup only when it is needed[Indexing]
avoid creating index writer if no results were generated[Indexing]
handle properly OperationCancelledException and ObjectDisposedException when querying an index that is being replaced at the same time[Indexing]
handle 'SelectMany' in nested dictionary properly in indexing functions[Indexing]
fixed select value from collection in indexing function while using 'FirstOrDefault' method[Indexing]
method 'LoadDocument' should return null for null IDs[JavaScript]
releasing memory earlier in Jint engine to reduce the memory footprint[Monitoring]
added endpoints to monitor number of indexes, stale indexes and indexing performance in all loaded databases[Querying]
when projecting from a document that does not exist already, we should skip that document[Querying]
fixed issue with paging on unbounded set when 'StartsWith' on 'id()' is used[Querying]
support for loading multiple values from Lucene document when doing a projection[Replication]
when replication failovers it should check destination change vector and start from there, not from scratch[Revisions]
enforcing revision configuration should also take into account document tombstones[Revisions]
added 'MaximumRevisionsToDeleteUponDocumentUpdate' option[RQL]
added support for parameters starting with a number e.g. $1[Voron]
fixed issue with recursive write lock acquisitions when removing inactive scratches[Voron]
fixed possibility of accessing disposed pager of 'compression.buffers'[Voron]
fixed int.MaxValue overflow in 'AdjustPagesRequiredFor32Bits' when running on 32-bits[Windows]
server will take into account Job memory limits when amount of resources available is calculated[.NET]
updated to 5.0.8
Client API
[Bulk Insert]
added 'SkipOverwriteIfUnchanged' option[Indexing]
fixed issue with generated index definition from LINQ when generic arguments are used[Querying]
fixed issue with using 'Group' as a property name in includes[Querying]
fixed missing alias when doing a secondary level includes[Operations]
added 'GetDatabaseSettingsOperation' and 'PutDatabaseSettingsOperation'[Revisions]
added the ability to include revisions by date and Change Vector[Session]
methodAttachmnts.GetNames
should return correct number of attachments after deletion[Session]
properly detect changes in documents containing Unicode characters[Session]
fixed cache issue when using MultiGet[Subscriptions]
added 'Disabled' to 'SubscriptionCreationOptions'
Studio
[Ongoing Tasks]
will keep their state (Disabled/Enabled) on save instead of becoming enabled[Performance Hints]
added Total Documents Size to paging performance hint[Querying]
correctly display number of documents when delete by collection is executed[Replication]
added number of replicated counters to Replication Stats Graph[Storage]
added grouping of the data in the graph if number of items is excessive[Traffic Watch]
added response size- do not align text in all of the notifications to center
- fixed issue with setting LoadBalanceBehavior
Tools
[Debug]
added ability to save traffic watch