What's new

4.1.6 (41014) - 2019/05/21

Server

  • [Attachments] preventing the insertion of a document with attachment if those do not exist
  • [Cluster] fixed possible loop that could occur during database deletion when database was removed immediately after it was created
  • [Cluster] stability improvements
  • [Encryption] better memory management when database is being encrypted
  • [Indexing] proper change detection when additional sources are changing
  • [Migration] fixed RavenFS NRE and context misuse
  • [Patching] fixed issue with rounding when overwriting ints with decimals
  • [Patching] fixed possibility of endless loop when no modifications are being applied by the patch
  • [Patching] patching by index query should properly delay the cancellation token
  • [Querying] fixed 'TotalResults' value when streaming using collection query
  • [Querying] optimized Lucene query generation, by removing redundant parathesis, which reduces the computation power needed by the Lucene to process the query
  • [Replication] fixed 'item with the same key has already been added' issue
  • [Subscriptions] added the ability to disable subscription w/o a name
  • [Voron] fixing syncing issue due to missing handling of empty journal
  • [.NET Core] updated to 2.1.11

Embedded

  • 'WaitForUserToContinueTheTest' will only trigger when debugger is attached

Client

  • [Caching] aggressive cache now has an option to 'do not track changes' via Changes API (passive mode)
  • [Caching] properly update the cache generation if the document wasn't modified
  • [Conventions] added AggresiveCache conventions for 'Duration' and 'Mode'
  • [Memory] fixed possible memory leaks when Changes API is used or change detection is executed
  • [Patching] patching a field with 'null' value should not throw 'NullReferenceException'
  • [Projections] using 'id()' in map-reduce indexes, instead of 'Id' to let decide the server-side from where the identifier should be retrieved
  • [Querying] added 'SearchOperator' parameter to 'Search' method
  • [Querying] parameters should not use the convention serializer
  • [Session] using read balance behavior from request executor, so it can be properly injected by the server-side

4.1.5 (41013) - 2019/04/15

Server

  • [Backups] fixed calculation if incremental backup should have been started when only Compare Exchange and/or Identities were changed
  • [Cluster] stability improvements
  • [Cluster] fixed possibility of database hanging in 'pending for deletion' progress
  • [Cluster] prevent adding node to a cluster when leader is initialized with port 0 (random)
  • [Documents] better validation for document ID, counter & attachment name sizes
  • [ETL] fixed failover in ETL that could occur when node was no relevant for this operation
  • [ETL] fixed the possibility of ETL hanging when too many counters were replicated at once
  • [Indexing] fixed possible NRE when defining Output Collection in JavaScript indexes
  • [Indexing] better index name validation
  • [Indexing] added support for Count() method, previously only Count property was supported
  • [Indexing] optimize querying, by reusing and refreshing the IndexReader, not opening a new one after each indexing batch
  • [Indexing] filtering-out terms that do not have any matching documents anymore
  • [Indexing] fixed issue with switching back index to normal operation from low-memory mode
  • [JavaScript] fixed possibility of non-disposing the blittable JSON objects, when patching script was throwing an exception
  • [Subscriptions] limited the maximum send batch size to 32MB on x64 and 4MB on x86 machines
  • [Subscriptions] fixed the possibility of an invalid Subscription state in non-leader nodes
  • [Replication] fixed Counter replication discrepancies
  • [Replication] fixed missing Attachment handling in Replication that could case endless repeats of replicationbatches in certain cases
  • [RQL] support for 'exact' in 'startsWith' and 'endsWith'
  • [Voron] fixed possible 'UnauthorizedAccessException' that could happen during disposal or deletion of a database of an index
  • [.NET Core] updated to .NET Core 2.1.10

Client API

  • [Compare Exchange] correctly escape characters in URLs
  • [LINQ] taking into account 'PropertyNameAttribute' from JSON.NET when converting LINQ to RQL
  • [Projections] fixed issue with projecting array length to custom projection class
  • [Projections] fixed issue with projecting identity of sub-collection object
  • [Projections] properly handling counter names with spaces
  • [Projections] fixed issue with projections failing when there are multiple loads with nested sibling lists
  • [Querying] support for 'exact' in 'StartsWith' and 'EndsWith'
  • [Session] state of Session will be cleared only after successful SaveChanges operation
  • [Subscriptions] fixed issue with retrieving subscription information via 'GetOngoingTaskInfoOperation'
  • fixed possible StackOverflowException that could occur rarely during Database deletion when Client tried to switch to a different node

Studio

  • [Indexing] added 'LowerCaseWhitespaceAnalyzer' to the list of analyzers
  • [Storage] added Storage Report for Server Store
  • reduced CPU usage needed for 'Server Dashboard View'
  • fixed memory leak in 'Server Dashboard View'
  • fixed caching issue with Studio files

4.1.5-patch-41012 - 2019/03/15

Server

  • [Backup] Fixed possible NRE if last backup status was created in older version
  • [Backup] Fixed restore operation so it won't create new change vectors
  • [Backup] Fixed restore of backup including subscriptions
  • [Cluster] Stability improvements
  • [Configuration] Added Storage.SkipChecksumOnRecovery option
  • [Data Subscriptions] Fixed respecting of MaxBatchSize option
  • [Data Subscriptions] Fixed possible AVE on running subscription when database is being shut down
  • [Indexing] Fixed possible deadlock during indexing replacement
  • [Indexing] Fixed deletion of artificial documents created by map-reduce indexes
  • [Revisions] Fixed consistency of revision replication
  • [Replication] Fixed possible AVE on attachment replication
  • [Replication] Fixed concurrent access to context in incoming replication handler
  • [Replication] Fixed memory leak when replicating attachments
  • [Replication] Improved handling of dealing with large incoming replication batches
  • [Transaction Replay] Fixed possible NRE
  • [Voron] Reduced initial storage size when running on x86
  • [Voron] Fixed usage of encrypted db when running on x86
  • [Voron] Fixed handling of global indexes usage which could result in AVE or even heap corruption
  • [.NET Core] Updated to .NET Core 2.1.9

Client

  • [Operations] Added overload to GetOngoingTaskInfoOperation allowing to get task info by name
  • [Querying] Fixed projections with the usage of multiple let statements
  • [Querying] Fixed usage of Select in Include for empty lists
  • [Querying] Allow to define boost 0 from the client API

Embedded

  • [Embedded] Added copying missing .so and .dylib files
  • [Embedded] Added ServerDirectory option to allow to point to a server directory

Studio

  • Layout improvements

4.1.4 (41010) - 2019/02/13

Server

  • [Cluster] Fixed logging of exceptions
  • [Compaction] Fixed compaction on 32 bits
  • [Compare Exchange] Deleting compare exchange entries on a database deletion
  • [Indexing] Fixed edge case in data compression of map-reduce indexes
  • [Indexing] Added support for the usage of Normalize() method on string values
  • [Indexing] Fixed indexing of deleted documents
  • [Replication] Fixed database change vector update if there are conflicts
  • [Replication] Fixed handling of conflicted revisions
  • [Replication] Fixed possible AccessViolationException when replicating huge batch
  • [Replication] Fixed replication of revisions
  • [Setup Wizard] Fixed continuation of cluster setup from a ZIP file
  • [Smuggler] Fixed possible NRE during import of tombstones
  • [Smuggler]] Fixed import if only revisions are loaded
  • [.NET Core] Updated to .NET Core 2.1.8

Tools

  • [Voron Recovery] Disabled data file syncing during the recovery

Studio

  • Added view for Transaction Record / Replay feature

4.1.4-patch-41009 - 2019/02/01

Server

  • [Cluster] Stability improvements
  • [Changes API] Support for failover
  • [CLI] Fixed infinite loop in CLI under certain conditions
  • [Debug] Fixed threads CPU usage calculation
  • [ETL] Fixed ETL from encrypted databases is not ignored if AllowEtlOnNonEncryptedChannel is set
  • [ETL] Changed defaults for the following settings: ETL.ExtractAndTransformTimeoutInSec - 30 sec, ETL.MaxNumberOfExtractedDocuments - 8192, ETL.MaxNumberOfExtractedItems - 8192
  • [Indexing] Fixing comparison of two enums in an indexing function
  • [Indexing] Fixed possible races in indexing replacement mechanism
  • [Indexing] Fixed error handling for disk full and out of memory errors
  • [Indexing] Fixed NRE when accessing Id or AsJson of a loaded document
  • [Replication] Fixed attachment change vector on replication
  • [Revisions] Fixed number of revisions after database restore
  • [Revisions] Fixed resolved document and revisions behavior
  • [SNMP] Added entry for total number of indexing errors in database
  • [Voron] Fixed the recovery process on database startup that could cause data corruption and checksum mismatch errors
  • [Voron] Fixed detection if compression buffers needs to be resized
  • [Voron] Fixed update of large values in the same transaction
  • [Voron] Schema updated to version 23
  • [.NET Core] Updated to .NET Core 2.1.7

Experimental

  • [Cluster Transactions] Fixed NRE when putting new counter after cluster transaction
  • [Cluster Transactions] Fixed reapplying cluster transaction commands
  • [Counters] Fixing database change vector update after updating a counter
  • [Counters] Fixed error in delete counter replication

Tools

  • [Voron Recovery] Fixed scenario that applying journals on recovery enlarges data file
  • [Voron Recovery] Added IgnoreInvalidJournalErrors option

Client

  • [Querying] Fixed queries for map-reduce indexes using projection and load
  • [Querying] Marked QueryStatistics.ResultSize and QueryResult.ResultSize as obsolete
  • [Querying] Fixed NRE instead of throwing IndexDoesNotExistException for lazy queries if an index doesn't exist
  • [Session] Fixed order of disposing blittables after calling SaveChanges that resulted in NRE
  • [Session] Fixed loading of a document with the usage of .Include if it was already loaded
  • [Smuggler] Fixed error handling when import operation fails before we send the request or in the middle of it to avoid hanging
  • Increased number of allowed connections when running on full .net framework (from 2 to 10,000)

Studio

  • [Querying] Fixed inifinite loop for queries using distinct
  • [Cluster] Fixed "Voting in progress" message visibility
  • [Backup] Fixed restoring a backup into an encrypted database
  • [Setup Wizard] Let's Encrypt option isn't available on MacOS