-
Notifications
You must be signed in to change notification settings - Fork 871
OrientDB 3.1 Release Notes
tglman edited this page Aug 30, 2022
·
29 revisions
- 3.1.20 - 1 September 2022
- 3.1.19 - 18 July 2022
- 3.1.18 - 25 May 2022
- 3.1.17 - 25 April 2022
- 3.1.16 - 22 February 2022
- 3.1.15 - 10 November 2021
- 3.1.14 - 25 October 2021
- 3.1.13 - 28 September 2021
- 3.1.12 - 26 May 2021
- 3.1.11 - 20 April 2021
- 3.1.10 - 16 March 2021
- 3.1.9 - 24 February 2021
- 3.1.8 - 9 February 2021
- 3.1.7 - 12 January 2021
- 3.1.6 - 15 December 2020
- 3.1.5 - 23 November 2020
- 3.1.4 - 21 October 2020
- 3.1.3 - 30 September 2020
- 3.1.2 - 20 August 2020
- 3.1.1 - 8 July 2020
- 3.1.0 - 1 June 2020
- 3.1.0-beta1 - 25 october 2019
- Fix release session lock in any case of error
- Prevent Live Query thread hot looping on idle queue.
- Fix regression on btree v3 value replace
- Fix copy stream to not terminate on 0 byte read.
- Reduce buffer duplicate calls for improve performances
- Fixes in logging messages and exceptions
- Mark HA STATUS idempotent so it can be used from SQL API.
- Include individual DB status across cluster in HA STATUS result
- Changed update value of index entry to use the correct offset in all cases
- Fixed multivalue composite index queries to not return duplicates
- Fix thread pool executors to operate as intended.
- Changed storage failed state management to avoid deadlock on fail
- Disable pre-allocation of whole this cache on startup
- Make sure to drop the database also when drop listeners fail
- Make sure to release lock on close of failed storage
- Avoid that wrong validation value stop opening a database
- Size check on string write in network protocol
- Unblock distributed request handling in case of install error, issue #9815
- Support parameterised metadata in Lucene queries
- Use correct search function in SEARCH_FIELDS test
- Make sure that lucene parsing exception do not set the storage in read only mode, issue #9498
- Avoid NPE running LIST INDEXES on remote db
- Remove edges with in or out null during bonsai repair, issue #9806
- handle thread interruption while data read and write with correct exception
- Lucene index fix on delete and rebuild.
- Exceptions inside the reads do not put storage in read mode. Reads are interrupted by interruption of thread.
- Support masking of Lucene query in log/exceptions
- Install ShutdownLogManager in distributed mode
- Correct failure when distributed lock not obtained
- Improvements in between node network to better handle keep alive retries and errors
- Binary compatibility issue was fixed.
- Storage state lock was replaced by standard JDK lock
- Minor fix for distributed on deploy database backup in case of source folder and dest folder in different volumes issue #9770
- Updated jnr-posix version for m1 support
- Tracking of consistency of atomic operation on restore was added.
- If Unsafe is present it is used for memory allocation/de-allocation.
- Prevention of recursive flow of exception is case of internal error.
- Bug during removal of items inside BTree is fixed.
- Add check to avoid distributed backup path to be in the same location of databases
- Avoid to lock record with no content changes in distributed
- Fix NPE on network reconnect
- Add reset of previous sync backup on ddl execution
- Add new two phase operations for DDL
- Minor fix in the distributed sequence manager
- Minor fix on sync backup reset
- Fix ORDER BY with LET
- BinaryBTree: unsigned byte array comparison is implemented inside the bucket
- BinaryBTree : key prefix is stored inside of leaf pages
- BinaryBTree : iteration over a tree was implemented
- add removed of changed record from the cache in case of rollback of microtrasnsactions
- minor fix to avoid a storage to go to read only if the backup fail
- minor fix in the loop resolution of temporary ids
- minor fix in storage validation logic
- removed cleanup of locks on shutdown from HZ lock manager, try finally should already cover all cases
- additional cleanups in case of full sync failure
- refactor distributed startup to avoid to deadlock on remote databases install
- minor fix on record id reset in case of distributed concurrent creation
- Add new interfacte for live query batch and optimise live query execution in remote (Send results in batches)
- Improve logging
- Import - Fix RID conversion in list of embedded objects
- Making segments to have the same maximum size
- Fix illegal memory access in Unsafe byte array comparator
- Fix bug when second attempt to close disk cache causes cleanup of file registry
- Add method in local cache to clear referred record instances
- Add property for generate and hold database instance id (for incremental backup)
- Fix DB backup UUID checks
- Minor refactor to avoid cache clear on rollback
- Add quorum in error message for not enough nodes online
- Add security check on cached sequences
- Optimise security checks, record save, field conversion
- Errors in space management of indexes were fixed.
- Optimise views management
- Optimization in internal hook for security operations
- Fix security checks on Class in remote
- Fix StackOverflow error when adding the owner document to OTracked
- minor refactor to linearize document entry logic
- add option for disable advanced security checks
- Check that prevents restore of database in another version after crash was introduced
- Exceptions inside the reads do not put storage in read mode. Reads are interrupted by interruption of thread.
- Allow choice of storage cluster version via global config
- removed not needed page change event tracking
- delete all the PageOperations WAL entries
- removed operation tracking atomic operation, and removed flag usage in relative tests
- Read and write channels are separated.
- Synchronize view updates
- minor performance fix in listing on databases during subscribe on push notifications
- Implement DROP CLASS with parameter
- Fix UPDATE UPSERT with cluster as target
- Enhance live queries to allow projections
- Fix management of embedded objects on Live Query DELETE
- Implement support for index chains in SQL with CONTAINSANY
- better support tree ridbag in remote
- Optimise query execution planning in distributed
- ported fix for avoid distributed cluster selection when disabled
- minor fix in delta sync, for avoid triggering a full sync
- automatic renew token in distributed channel when close to expire
- removed specialization of token for the distributed case
- fixed reconnect of distributed to reduce session and delay on error
- Optimize addition of index entry in transaction
- Reload all the shared context after db restore (fixes metadata inconsistency problem)
- Optimise predicate security checks on property validation
- Allow concurrent access to active queries stats
- Allow binary connections without session token (backward compatibility with old drivers, disabled by default for security reasons, it can be enabled with global config network.binary.allowNoToken)
- Fix class name escape in MATCH statements
- Fix NPE in eval() function
- Fix funciton parameters count validation
- Fix management of dot notation for maps (collision with context variables)
- Fix ORDER BY with big LIMIT
- Fix command timeout from binary and from Studio
- Add check for expired sessions in the client side
- Fix import with links in embedded collections of maps
- Fixed deadlock on orient shutdown
- Fix assignment of cluster IDs in import from previous releases
- Invalidate SQL statement cache when command timeout changes
- Fix lucene drop on full sync
- Fix ClassCastException in Distributed
- Update dependencies for reported vulnerabilities
- Removed not needed lock for client side connection open
- Fix NPE in exception management
- Improve management of client connections with nodes that are doing a db sync (fast redirect)
- Bug fixes in database restore procedure
- restoreFrom method was modified to support incremental backup
- Profiling of direct memory allocations has been implemented
- Fix creation of edges with special characters in class name
- Add profiling info at database level
- Enhance index stats with UNIQUE (query execution planning)
- Fix query timeout in distributed
- Fix extranction of transactions from WAL (for delta sync)
- Fix issue in delta sync implementation
- Fixed current status loading from databsae, transaction order fetching, transaction reapply checks
- Fix OCommandExecutorNotFoundException when executing a scheduled function
- Fix Console optimize
- Minor fix in storage error heandling when failing to open a database
- Implementation of generation of operation id for all operations which update content of the pages
- MT issue during calculation of operation id was fixed
- Both operation id and LSN are tracked inside of the page
- Fix firing of all OSchedule on server start
- Check wether WAL contains enough information to restore broken database
- Indication of progress of file scan was added
- Fix TIMEOUT RETURN behaviour in SQL
- Enhance aggregate queries with LIMIT
- Minor fix in hazelcast shutdown, Improved restart testing
- Remove wrong response count increase on node disconnect, relie on timeout instead
- Minor fix in distributed listener register
- Space overhead during replacement of records was fixed
- Handle correctly the remove of the storage from context in case of open failure
- Add check for avoid the use of reserver characters in the database name
- Storage is put in read-only mode in case of internal error
- Mark dirty is called inside of all modification methods
- Add check for missing session in remote next url selection
- Fix warning log about memory limit
- Reduced lock span on remote OrientDB context
- Database tries to keep at most single WAL segment which is generated every 10 min
- Add OGlobalConfiguration.QUERY_MAX_HEAP_ELEMENTS_ALLOWED_PER_OP checks to DISTINCT SQL execution
- Fix command timeout
- Enhance optimizations for count queries with a single indexed condition
- Make first round robin node select more reliable
- Make sure to cleanup background threads after distributed sync
- Improve handle of node selection per session
- Review the startup wait logic for avoid clients to wait long for node getting online
- Add check to protect of missing index during transaction commit
- Change logic for deinit to be executed all the time and expect to self clean
- NPE during check of ridbags was fixed
- Add internal API to safely interrupt thread execution
- Implementation of free space map for the V2 cluster
- Bugs in FreeSpaceMap were fixed
- FreeSpaceMap bug in cluster rename was fixed
- Fix security checks for ROOT user (check ALL permission as a fallback)
- Fix broken conversion within ORecordLazyList Issue #9421
- Fix SQL any() and all() calculation
- Add support for OGlobalConfiguration.COMMAND_TIMEOUT in new SQL executor and all scripts
- Fix NPE on FOREACH statement with null iterator
- Make sure distributed install run only when there re no request running
- Fixed parsing of multi-host urls
- fixed to avoid to invalidate sessions on node offline when not needed
- make sure to make remote round robin work even with only one session open close
- DirectIO support was removed because of stability issues
- Missed ridbag containers are created on storage open
- Re-try in backup if atomic moves are not supported. Empty backup directory is created
- Handled the case when the locale is not defined in the database
- Fix index iterations in TX with both create and delete of the same element. Resolves Issue #9402
- Disc deserialization do not mark dirty collections anymore
- Errors during cluster truncation are not re-thrown
- Server memory usage limit was removed
- Startup metadata are moved without atomic move if such option is not supported
- If Bonsai tree already deleted we do not try to delete it again
- Fix backward compatibility issue with custom TinkerPop predicates
- Use SequenceOrderType.ORDER_POSITIVE as default for sequence order type
- Events in WAL are fired only once
- Fix NPE during acquiring of component lock
- Stop accepting new requests if limit of memory consumption is reached Issue #9387
- Prevention of deletion of WAL segment if data is not written in that segment yet
- Fix security context creation to avoid race conditions (deadlock)
- StorageStartupMetadata made durable. During backup of database in distributed storage all file operations are checked on success and DB move made atomic.
- Fix usage of composite indexes with index chains
- Fix usage of indexes with subqueries (colleciton results)
- Fix NPE on count() on non existing class
- Fix shortestPath() with multiple edge types Issue #9388
- make sure to return valid value on distributed status even if no value present
- update to Hazelcast 3.12.8
- avoided to run database sync from message executor
- serialized rid allocation execution for distributed
- reduced length of locking of whole cluster for insert to only messages executions
- add check for ridbag missing in delta deserialization
- moved storage replace in session on background to avoid deadlocks
- Fixed NPE when trying to update a vertex that has an rid bag
- Ensure that file writes are finished on close
- Parameter to setup value of minimal compressed record size for WAL was introduced
- Infinite loop in case of restore was fixed
- Index check was removed from database check
- fixed timer creation in remote context
- managed correctly storage frozen status from transactions and sync
- Incremental backup does not introduce GC overhead
- Fix console output on CREATE INDEX
- add validation for embedded collections when creating properties in the schema
- Fix csv export (http) to also use schema to infer columns
- Improve logging of errors related to exceeded packet size (remote binary)
- Tracking of labels without vertex classes was disabled
- re-introduced record not found instead illegal argument in case of cluster not there
- Improve management of TIMEOUT in SQL for aggregations and ORDER BY
- Fix regression on SQL range queries with indexes
- add reentrant logic to distributed lock hazelcast implementation
- first definition of the new executor for distributed requests
- passed list of rids from first phase to the second phase to make sure to follow the same locking logic
- fixed distributed executor thread factory
- handled the case of rejectd execution in distributed executor
- changed the database drop to not wait for the distributed executor shutdown
- add unique index keys to tx phase 1
- add some buffering in the distributed executor queue
- add tracking of transactions pending in the distributed executor queue
- add unique keys for execution scheduling in distributed second phase
- add transaction id partition as locking key for schedule operation sequential
- add check for transaction already included in the database due to synch appening while the transaction is active
- add check for avoid to apply second phases if the state already contains the transactions
- changed first phase to return invalid sequential in case of already present transaction id
- add coordinator scheduler locking for distributed tx
- add reset to temporary id for created record in transaction, in case of retry for concurrent create
- add context registration for already present transaction to avoid trigger sync
- removed wait in execution of distributed tasks that was not needed and could cause deadlocks
- fixed wrong cluster drop logic in distributed implementation
- Fix concurrency issues with security cache
- Fix IMPORT from 3.0.x to 3.1.x
- Fix race usage of unique field in tx issue #9281
- Fix import so that only records which exist in database before import are over written.
- Broken files are detected in DWL during restore
- Out of bounds error was fixed in DWL
- Fix detection of memory cgroups
- Performance statistic monitoring was removed because were not completed and out of date Issue #9169
- Add implementation for automatic close for idle sockets
- remove use of ODocumentSerializable from global properties
- fixed wrong usage of mutable schema in place where immutable is available
- Fix binary version of config properties
- Fix StringIndexOutOfBoundsException
- Fix data flush in background and system stuck
- Fix usage of ZFS
- In cache entries atomic fields replaced by atomic field updaters
- fixed global config dump issue introduced in 3.1
- Fix usage of
$matched
in MATCH statements - Fix count(*) with LIMIT
- Added interval() function
- Improve TIMEOUT on SELECT
- Fixed NPE when passing any "bad value" to spatial funcitons
- add configuration for disable automatic creation of cluster when new node joins
Official 3.1 release, see What's New
- predicate-based record-level security
- predicate-based property-level security
http://orientdb.com/docs/3.1.x/security/Database-Security.html#predicate-security
Copyright (C) Orient Technologies LTD - All rights reserved.