Skip to content

OrientDB 3.0 Release Notes

tglman edited this page Aug 9, 2022 · 92 revisions

Table of Contents

  • 3.0.43 - 09 August 2022
  • 3.0.43 - 28 June 2022
  • 3.0.42 - 26 January 2022
  • 3.0.41 - 6 December 2021
  • 3.0.40 - 8 November 2021
  • 3.0.39 - 24 August 2021
  • 3.0.38 - 14 June 2021
  • 3.0.37 - 8 February 2021
  • 3.0.36 - 26 January 2021
  • 3.0.35 - 18 November 2020
  • 3.0.34 - 31 August 2020
  • 3.0.33 - 12 August 2020
  • 3.0.32 - 17 June 2020
  • 3.0.31 - 6 May 2020
  • 3.0.30 - 19 March 2020
  • 3.0.29 - 3 March 2020
  • 3.0.28 - 5 February 2020
  • 3.0.27 - 7 January 2020
  • 3.0.26 - 2 December 2019
  • 3.0.25 - 11 November 2019
  • 3.0.24 - 8 October 2019
  • 3.0.23 - 21 August 2019
  • 3.0.22 - 16 July 2019
  • 3.0.21 - 18 June 2019
  • 3.0.20 - 4 June 2019
  • 3.0.19 - 15 May 2019
  • 3.0.18 - 21 March 2019
  • 3.0.17 - 7 March 2019
  • 3.0.16 - 27 February 2019
  • 3.0.15 - 12 February 2019
  • 3.0.14 - 24 January 2019
  • 3.0.13 - 2 January 2019
  • 3.0.12 - 10 December 2018
  • 3.0.11 - 21 November 2018
  • 3.0.10 - 25 October 2018
  • 3.0.9 - 15 October 2018
  • 3.0.8 - 27 September 2018
  • 3.0.7 - 6 September 2018
  • 3.0.6 - 14 August 2018
  • 3.0.5 - 2 August 2018
  • 3.0.4 - 12 July 2018
  • 3.0.3 - 2 July 2018
  • 3.0.2 - 5 June 2018
  • 3.0.1 - 18 May 2018
  • 3.0.0 - 9 April 2018
  • 3.0.0-RC1 - 18 December 2017
  • 3.0.0-M2
  • 3.0.0-M1

3.0.44 - 09 August 2022

Core

  • Removed some not needed synchronize for sequence logic
  • Release session lock in any case of error
  • Session kill now interrupt the correct thread

3.0.43 - 28 June 2022

Changes

Core

  • fixed multivalue composite index queries to not return duplicates
  • remove edges with in or out null during bonsai repair
  • Storage state lock was replaced by standard JDK lock.
  • Fix of locking error during making of fuzzy checkpoint.
  • Speed up of files flush.
  • LSN of latest applied record returned during restore.
  • If Unsafe is present it is used for memory allocation/de-allocation
  • Flag to skip releasing memory back on shutdown is added

Distributed

  • fix for distributed on deploy database backup in case of source folder and dest folder in different volumes

3.0.42 - 26 January 2022

Changes

General

  • Released OrientDB Enterprise Agent as Open Source!

SQL

  • Fix toJson() with spaces in map key names

3.0.41 - 6 December 2021

Changes

Core

  • Improve timeout exception management for Gremlin queries
  • Revert clear of local cache during rollback

3.0.40 - 8 November 2021

Changes

Core

  • Enhance global timeout management to take write operations into consideration
  • Add property to generate and hold database instance id
  • Add method in local cache to clear referred record instances, add record clear logic in case of clear of local cache
  • Fix excessive logging of OInterruptedException
  • removed clean of local cache during rollback, add remove of specific rollbacked record from local cache

SQL

  • Optimise live query execution in remote (Send results in batches)

3.0.39 - 24 August 2021

Changes

Core

  • Fix security checks on class in Remove
  • Fix selection of cluster to consider all cluster in case of autocreate is disabled
  • Graceful shutdown of file operations in case of thread interruption was implemented

SQL

  • Enhance live queries to allow projections
  • Fix query timeout features

3.0.38 - 14 June 2021

Changes

Core

  • Add check for expired sessions in the client side
  • Allow concurrent access to active queries stats
  • Add security check on cached sequences

Distributed

  • Fix index propagation with collate in distributed

3.0.37 - 8 February 2021

Changes

Distributed

  • Fix query timeout in distributed

3.0.36 - 26 January 2021

Changes

Core

  • Default locale is used if it is not set
  • Add profiling info at database level

SQL

  • Add timeout to SELECT query based on global configuration
  • Enhance optimisations for count queries with a single indexed condition
  • Fix TIMEOUT RETURN behaviour in SQL
  • Enhance aggregate queries with LIMIT
  • Add statistics for query profiling
  • Enhance index stats with UNIQUE (query execution planning)

Distributed

  • Fixed use in all cases of flag for disable distributed cluster selection
  • Fix regression in distributed (StackOverflowError)

3.0.35 - 18 November 2020

Changes

Core

  • Events in WAL are fired only once
  • Re-open WAL file in case of errors
  • During backup of database in distributed storage all file operations are checked on success and DB move made atomic
  • Storage existence check was improved
  • DirectIO support was removed because of stability issues
  • Re-try in backup if atomic moves are not supported
  • Implement COMMAND_TIMEOUT for all types of command executions

SQL

  • Fix usage of indexes with subqueries (colleciton results)
  • Fix NPE on FOREACH statement with null iterator

Distributed

  • disable distributed cluster selection when is disabled auto-creation of clusters
  • fixed parsing of multi-host urls
  • fix to avoid to invalidate sessions on node offline when not needed

3.0.34 - 31 August 2020

Changes

Core

  • Improve logging of errors related to exceeded packet size (remote binary)
  • Prevention of closing of files which are processed by background writer

SQL

  • Fix usage of composite indexes with index chains

3.0.33 - 12 August 2020

Changes

Core

  • Improve management of WAL buffer
  • Fix NPE on WAL flush
  • Fix current() for sequences
  • Silent load of data from the disk cache was implemented
  • Limit of byte buffer in WAL is quantified by page size
  • Optimization of memory consumption of disk cache
  • Byte buffers are protected by lock in WAL cache Issue #9270
  • Lock protection was removed from WAL
  • Ensure that file writes are finished on close
  • Parameter to setup value of minimal compressed record size for WAL was introduced
  • Add timer shutdown on remote context close
  • Infinite loop in case of restore was fixed
  • Index check was removed from database check
  • Started remote connection timer thread only if needed and made it daemon
  • Managed correctly storage frozen status from transactions and sync
  • Fix unconditional interruption Issue #9344
  • Bug in releasing of memory after incremental backup is fixed
  • Error check for the background write operation is performed periodically
  • Log message about interruption of execution of thread was added
  • Optimize data type checks on property creation
  • JNA based memory allocation replaced by Unsafe to speed up freeing of memory during server close
  • Add validation for embedded collections when creating properties in the schema
  • Fix csv export (http) to also use schema to infer columns

SQL

  • Better manage exceptions on script executions
  • Improve TIMEOUT on SELECT

Distributed

  • add configuration for disable automatic creation of cluster when new node joins
  • add flag to disable automatic sync in case of node error

3.0.32 - 17 June 2020

Changes

Core

  • fixed push thread executor to use the correct runnable
  • fixed metadata push in case of already consumed messages
  • add network timeout while reading request from the server
  • managed the shutdown of binary socket in case of java Error
  • Phantom records are skipped during index updates.
  • optimize db import using tree index for rid rebinding and doing batch saves during ridbag import
  • add implementatio for automatic close for idle sockets
  • WAL is not backed up in case of the error and kept untouched.
  • Fix management of ONative#findMemoryGCRoot. Issue #9229
  • Improve exception management on script execution

SQL

  • Fix usage of $matched in MATCH statements
  • Fix count(*) with LIMIT

Distributed

  • hardening of node disconnection logic
  • add minor check for avoid starting a request when there is no quorum of nodes

3.0.31 - 6 May 2020

Changes

Core

  • Fixed issue with boosting on metadata
  • removed early fetching of ridbags tree size for avoid disc accees and network error in case of tree remove
  • unbox Ridbags in live query hook
  • fix NPE for write buffer capacity limit during int type overflow
  • fix invalid JSON response generated with NaN (not a number)
  • Fix IMPORT DATABASE for big ridbags
  • fixed porting of current active database for distributed transaction
  • introduced specific executor for push request to avoid blocking behaviour of core executor
  • Added default header for Content-Security-Policy
  • Implemented SameSite cookie for session with configuration
  • introduced specific executor for push request to avoid blocking behaviour of core executor
  • forced disconnection of client in case of issue reading a message from the network
  • add logging of client IOException in case is not triggered by a disconnection
  • made sure to queue only one event for notification type in push notification

SQL

  • Fixes to OSQLFunctionShortestPath and OSTDistanceFunction
  • Fix UPDATE SET of nested collection elements

Distributed

  • Changed the re-enqueue delay to follow the retry delay configuration
  • fixed issue for use of wrong database instance while running a distributed second phase

3.0.30 - 19 March 2020

Changes

Core

  • Translate optimistic TX operations without locking of high level indexes
  • Fixed issue with index optimizations that caused duplicate entries (indexed EMBEDDEDMAP properties)
  • Reduce memory footprint for IMPORT DATABASE
  • Profiler data are flushed by batches

Distributed

  • add support for timed cancel of sync operations in case node do not request chunks anymore

3.0.29 - 3 March 2020

Changes

Core

  • Fix ArrayIndexOutOfException on remote client reconnect
  • Enhance IMPORT DATABASE to better manage supernodes
  • JS sandboxing
  • Ported fix for restore wal in case of database restore with different name
  • Fix deadlock inside tx
  • Fix unresponsive orientdb / Segment added thread consuming 1 cpu core

SQL

  • Enhance usage of indexes in execution planning when LET and subqueries are involved

Console

  • Fix cluster creation from console (output message)
  • Fix error on highlight query with empty value Issue #9134

Distributed

  • Add clean up operations in queue in case of reinstall

3.0.28 - 5 February 2020

IMPORTANT: In this release, for security reasons, remote scripting was disabled by default (apart from SQL, that is still enabled by default of course). This impacts execution like following

db.execute("gremlin", "<some random script here>");

To re-enable remote scripting, you have to edit your orientdb-server-config.xml, adding the scripting languages you need to OServerSideScriptInterpreter:

        <handler class="com.orientechnologies.orient.server.handler.OServerSideScriptInterpreter">
            <parameters>
                <parameter value="true" name="enabled"/>
                <parameter value="SQL,GREMLIN" name="allowedLanguages"/>
            </parameters>
        </handler>

Changes

Core

  • Optimize import of ridbags (import database)
  • Fix import database with no manual indexes defined
  • Fix NPE in geospatial query with subquery Issue #9105
  • Add option for disable support for custom types, disabled custom types by default
  • Fix for hazelcast event handling implementation to not block on distributed lock management
  • Fix error with spacial functions in projection Issue #8788
  • Made sure that private configurations settings are not accessible from settings fetching API
  • Fix Fulltext Index with Lucene: boost option does not work Issue #9118
  • Disable remote scripting by default (see above)

SQL

  • Fix COUNT with ORDER BY when results are empty

Distributed

  • Fixed issue with lucene index drop in distributed environment
  • Add handling of bail out of execution of a request, terminating multi-queue executiong
  • Fix potential crash that caused install executions to block

3.0.27 - 7 January 2020

Changes

Core

  • Statistics of execution of transaction was added.
  • Fix remote index creation with special characters for properties
  • Fix DROP CLASS with special characters
  • Optimize database export using streams

SQL

  • Fixed MATCH execution planning with RID
  • Fixed complex optional patterns in MATCH statement
  • Fix RETURN of multipe result sets as a collection
  • Fix TRAVERSE in batch, with newly created vertices and edges (in tx) Issue #9096
  • Added traversal through map elements see Issue #9099

Distributed

  • add timed notification for still running transaction from executer to the coordinator for extend waiting timeout
  • made sure to run truncate operations all from the storage to avoid quorum 1 issues. Issue #9073
  • fixed scheduling of task in case of re-enqueue of request
  • Fix timer task cancellation
  • Added keys in ha status -locks

3.0.26 - 2 December 2019

Changes

Core

  • Added storage profiler
  • Speed up of index page split operation (fixes reliability of distributed operations)
  • Fixed issue with delete vertex/edge using the identity

Console

  • Enable usage of 'width' setting with all the console commands

3.0.25 - 11 November 2019

Changes

Core

  • Fix delete of LUCENE indexes directory (port from 2.2.x)
  • Deadlock during deletion of tree rid bag was fixed
  • Fix of page allocation after crash in index
  • Deadlock during deletion of out of dated ridbag was fixed
  • Files are fsynced before close
  • Storage IDs are made persistent
  • Storage IDs are tracked by OrientDB
  • Storage IDs are made unique across OrientDB instances

SQL

  • Fix edge creation in batch script with properties coming from previous statements
  • Fix CONTAINSANY for subqueries Issue #9048
  • Fix CONTAINSALL to work with subqueries Issue #8961

Distributed

  • Improvement of distributed locks for keys
  • Added callbacks for monitoring
  • Added logs for mvcc and index check
  • Fixed NPE on distributed coordination
  • Added playload notification for commit
  • Changed quorum calc by counting only masters
  • Added fix for SplitBrainIT

3.0.24 - 8 October 2019

Changes

Core

  • Added listener unsubscribe on socket close exception
  • Fixed issue with params document and dirty manager
  • Avoided to lazy load record when running a toString of ridbag or linkset
  • Removed no need call in lock for remote rollback
  • Moved query parameters failable logic from network context to failable pre-network context
  • fixed vertex and edge copy() to return the right instance for graph document types
  • Fix CREATE EDGE from graph editor Issue #9008
  • made sure to not load the record from the disc in case of merge of collections
  • removed custom deletes from edge creation that was used to handle noTx errors, that is not needed anymore because we run everytime in tx
  • Add validation of OFunction names
  • Fix database import with record properties containing dots
  • Server side rollback now do rollback only if there is a operation active, otherwise does nothing
  • Added callback for before/after locks
  • Fix creation of sequences in tx
  • Fix usage of large fields (> 32k) as Lucene index keys Issue #9020
  • Fixed issue on configuration with pool and storage remote creation

SQL

  • Reduce synchronization contention when SQL statement and execution plan caches are disabled
  • Add experimental support for field traversal in MATCH statement
  • Fix NullPointerException on edge creation with null vertices
  • Fixed string format type in distributed exceptions
  • Fix LIKE operator with '%' pattern Fix update of newly created document using variables in a SQL batch script Issue #9000

Distributed

  • Minor improvement on the distributed excpetions messages
  • Add custom serialization for distributed network, that validate links
  • Fixed typo + name of the response node
  • Fixed quorum '0' not reached
  • Added listeners for tracing distributed requests

3.0.23 - 21 August 2019

Changes

Core

  • Improve memory management in case of query abort for exceeded limit of records in ORDER BY
  • Check and set record serializer before save (avoids problems saving records created before the DB was open)
  • Add validation for property value types on OResult
  • Add null check on edge traversal
  • Removed ridbag thread local management, used session instead
  • Add delayed ridbag delete for avoid concurrency issue on read
  • Refactor for use methods that do not use the cache for load the tree on delete
  • Add mark of ridbags to delete to make sure to no leak data on the disk
  • Moved the ridbag delete in the same lock of the ridbag cache

SQL

  • Log query when CREATE EDGE fails
  • Add automatic TX in SQL when deleting vertices
  • Fix CONTAINSANY with subqueries and edge traversal
  • Fix usage of unionAll() as a plain condition in LET blocks Issue #8955

Distributed

  • Add distributed lock unlock in case of crash of distributed operation
  • Re-enabled unlock on timeout for long pending transaction
  • simplified the logic for wait for all partitions before execute a distributed operation
  • Added support for -locks option for distributed lock (HA STATUS)

ETL

  • Add option to ETL command transformer to return input instead of command result (returnInput=true)
  • Fix ETL loader to handle situations where actual data loading is made through SQL
  • Fix ETL Link transformer to let it save the record (fixes cases where you have SQL transformers after LINK transformers)
  • Support new SQL executor in ETL command transformer (with a flag, newSqlExecutor=true, set to false by default for backward compatibility)

3.0.22 - 16 July 2019

Changes

IMPORTANT: This release introduces a new configuration parameter to limit the number of heap objects used for sql ORDER BY operations (ie. ORDER BY that are performed without using an index). The limit is set to 500.000 by default, but it can be changed setting 'query.maxHeapElementsAllowedPerOp' global configuration property (-1 means infinite). If the limit is exceeded, the query is aborted. It is intended as a safeguard against OutOfMemory in case of heavy queries.

Core

  • Implementation of support of minimum resource in pool size
  • Fix incorrect check of magic number Issue #8932
  • Fix ClassCastException from NodeJS driver Issue https://github.com/orientechnologies/orientjs/issues/377
  • Fix consistency of DELETE EDGE in noTx
  • Fix rename of JS functions Issue #8940
  • fixed network deserializer for avoid to mark records dirty during deserialization
  • Made sure to the thread local in case of pool close

SQL

  • Fix reverse traversal of bothE and bothV in MATCH execution Issue #8915
  • Fix usage of fulltext hash indexes in new SQL executor Issue #8693
  • Fix usage of @Class in SQL projections for embedded documents
  • Fix depth-frist TRAVERSE with multiple entry points
  • Fix fetch from RIDs in SQL to properly set $current value
  • Fix temporary ID in CREATE VERTEX query with tx Issue #8949
  • Fix automatic conversion of ridbags and removal from ridbags from SQL
  • Fix PROFILE queries
  • Add global configuration 'query.maxHeapElementsAllowedPerOp' to limit the number of elements allowed for ORDER BY in heap. The default value is set to 500.000, when this limit is reached the query fails.

Distributed

  • add checks to avoid to use distributed instances when the server is running in standalone
  • fixed distributed locking issue in case of exception while transaction processing

3.0.21 - 18 June 2019

Changes

Core

  • Add error log in case of exception during serialization on the network
  • Fixed issue with token renewal
  • Fixed minor push notification issue in case of distributed node disconnection
  • Fix wrong logging on class creation with wrong superclass
  • Minor fix in field raw search encoding

SQL

  • Fix --fix-links on repair database Issue #8897
  • Allow execution of plain SQL functions and expressions as statements in SQL scripts
  • Fix FIND REFERENCES from subquery

Distributed

  • Updated to the last hazelcast hotfix
  • Fixed NPE with Round Robin connection strategy

3.0.20 - 4 June 2019

Changes

Core

  • Fix closing of remote TX when no operations are performed
  • Fefactor of url parsing, removed old push logic not used anymore
  • Fixed issue with autotx in case of lightweight edges
  • Moved the logic of sending push messages on the network outside the push manager lock
  • Disk cache pages are preloaded to provide efficient NUMA distribution

SQL

  • Fix serialization of iterators in result sets (IMPORTANT: Iterator is no longer returned as an OResult property, it is converted to a list instead)

Distributed

  • re-enabled hosts avaibility update on push request also when fetch hosts is off

3.0.19 - 15 May 2019

Changes

Core

  • Fixed edge delete with link instead of linkbag
  • Added ability to exclude clusters and indexes from database comparision
  • Fixed usage of the console in background
  • Added javax.activation dependency for v 11 (and following) compatibility
  • Fixed usage of lightweight edges settings with strict schema for regular edges
  • Do not allow special characters in storage name
  • Fixed STTY in console
  • Fixed client side only index update Issue #8861
  • Fixed fall-back to FileChannel for WAL when native IO is not available

SQL

  • Implemented COMMIT RETRY ELSE {script} AND CONTINUE/FAIL in batch scripts
  • Made SQL script execution consistent with named and positional params
  • Fixed index usage with SELECT * plus other expressions
  • Fix array selection in MATCH statements Issue #8833
  • Fixed invalid close of Lucene indexes Issue #8829 Issue #8832
  • Fixed usage of indexes with CONTAINSTEXT in SQL Issue #8683
  • Allow usage of LET variables as target in SQL queries in batch scripts

Distributed

  • Enhance quorum failure logging (distributed)
  • fixes for concurrent operations from multiple nodes in distributed
  • make sure to retry the right number of times in all the cases, fixed timeout messages
  • allocation of rid now pre allocate some rids on need and reused them because rid allocation is protected by locks
  • fixed wrong retry of the second phase when was applied correctly

JDBC

  • Fixed JDBC connection with OrientDataSource(orientDB, dbName) Issue #8831

Graph (legacy, TinkerPop 2.6)

  • Added new graph factory on TinkerPop 2.6 to use new OrientDB v 3.0 instantiation and pooling capabilities

3.0.18 - 21 March 2019

Changes

Core

  • Forced reload of sequences and functions on remote metadata reload
  • Add internal API to choose cached/not cached execution planning for SQL statements
  • Fix CheckIndexTool with indexes on collections
  • Add test cases for live queries on graph
  • Base implementation for autoclosing storages on timeout
  • Deprecated some not used anymore delete methods
  • Prefetch linked edges and vertices in case of remote delete (performance)
  • DocumentWrapper made serializable back again.

SQL

  • Fix index creation on complex field names Issue #8761
  • Fix array selection on edge traversals in SQL from REST Issue #8778
  • Fix usage of positional parameters in subqueries (aggressive cache) Issue #8809
  • Enable caching of DELETE VERTEX execution plan
  • Fix nested MATCH path evaluations with WHERE conditions
  • Enhance caching of SQL execution plans for scripts and subqueries

Server

  • Fix "missing session and token" after a period of time without interacting with OrientDB issue #8772

Distributed

  • Fix concurrent creation on the same cluster in distributed environment
  • Centralize the management of all set online statements to avoid wrongly blocked requests
  • Removed debug logging from distributed channels
  • Implementation of streamed full incremental backup and made sure that delta sync use the streaming correctly
  • interrupt the sync from the receiver thread in case of connection issues
  • trigger reinstall in case of of network failure on synching a database
  • fixed minor issue in distributed sync logic
  • made sure that the database install works even in case of distributed unlock failure
  • deleted the storage in case of failure of incremental sync

JDBC

  • Add constructor to JDBC OrientDataSource to use OrientDB instance and DB name

General

  • review dependency tree (removed findbugs, javamail, beanshell)

3.0.17 - 7 March 2019

Changes

Core

  • Speedup and fix of new CellBTree indexes

SQL

  • Fix management of invalid RIDs (too high cluster ID) in SQL
  • Fix DELETE EDGE with remote transaction
  • Fix indexed queries with NULL parameters

Distributed

  • Made sure that for locking index keys in distributed we make a copy of them to avoid mutation

3.0.16 - 27 February 2019

Changes

Core

  • Optimize disk cache (increased read buffer size, change of management of dirty entries)
  • Fix index iterator (regression in v 3.0.14-15)
  • Optimize metadata update in remote
  • Fix ClassCastException on hash index

SQL

  • Fix usage of indexes in SQL SELECT when value is a RID Issue #8765
  • Fix NullPointerException on SQL ALTER PROPERTY Issue #8763
  • Fix query execution planning with batch variables and multiple indexes (index union)
  • Fix execution of scripts in distributed environment

Distributed

  • Refactor to make sure to allocate record ids inside lock for guarantee order
  • Make sure that in case of sync request timeout the database stay offline
  • Fixed issue in delta sync with record version management

3.0.15 - 12 February 2019

Changes

Core

  • fixed issue with pool high concurrency when pool run out of resources
  • Implementation of cluster based storage configuration.
  • fixed locking issues on concurrent modification exception when a single node is running in quorum 1
  • CHM based async. cache and WTinyLFU policy are introduced.
  • fixed locking issue on high concurrent transactions on the same records
  • Speed up of allocation of new cache pages

SQL

  • Fix result set serialisation (null OType)
  • Fix order of execution of LET statements in SQL
  • Fix SELECT FROM INDEX from a subquery Issue #8745

REST

  • Add option to disable return of execution plan from REST/JSON Issue #8743

TinkerPop2.x

  • Fix moveToClass() in legacy TinkerPop2 API

3.0.14 - 24 January 2019

Bugs Fixed

SQL

  • Fix nested projections to support *:{*} Issue #8724
  • Fix map() function to be recognised as an aggregate function from new SQL executor Issue #8714
  • Fix equality of DECIMAL values in SQL (scale) Issue #8706

Enhancements

Core

  • Enhanced tree index performance

3.0.13 - 2 January 2019

Bugs Fixed

Studio

SQL

  • Fix keys()/values() methods Issue #8705
  • Fix return of multiple results in batch queries
  • Fix CREATE EDGE to avoid to throw exceptions when vertices do not exist (it was like that already for TO vertices, making the behaviour consistent)

Enhancements

SQL

  • Automatic initialisation of embedded collections on SQL UPDATE Issue #8701
  • Add lazy traversal on MATCH execution Issue #

3.0.12 - 10 December 2018

Bugs Fixed

Core

Console

  • Add checks to avoid wrong db drop from console Issue #8690

SQL

  • Fix decoding of special characters (eg. \n \t ) in SQL strings inside JSON Issue #8681
  • Fix calculation of SQL function parameters, also including context and metadata values (eg. LET values) Issue #8671
  • Fix SQL CONTAINS with lists of lists Issue #8653
  • Fix nested projections on INSERT RETURN statement Issue #8543

JDBC Driver

  • Fix NullPointerException on JDBC getByte() and getBoolean() Issue #8677
  • Fix JDBC ResultSet.wasNull() Issue #8674

Enhancements

Console

  • Add --disable-history to OrientDB console Issue #7890

3.0.11 - 21 November 2018

Bugs Fixed

SQL

  • Fix management of "parent" property names in SQL Issue #8669
  • Support parameters for INSERT with CONTENT Issue #8666
  • Fix NPE on index chain calculation (query execution planning) Issue #8665
  • Fix nested projections with nested star Issue #8662
  • Fix CONTAINS operator on list of maps Issue #8654
  • Fix UPDATE REMOVE with LINKSET and subqueries Issue #8647
  • Fix insert on LINKMAP with subqueries Issue #8646
  • Fix SQL GROUP BY with multiple columns that do not appear in the projections Issue #8625
  • Fix general count() with no matching records in SQL Issue #8621

Console

  • Fix execution of batch scripts in console with "load script" Issue #8627

3.0.10 - 25 October 2018

Bugs Fixed

Core

  • Fix potential non-completed atomic operatios

SQL

  • Fix IndexOutOfBounds on traversedElement() function Issue #8624
  • Enhance MATCHES condition to allow any expression on the right Issue #8612
  • Fix CONTAINS operator on lists of maps Issue #8604
  • Fix .append() method to correctly manage quoted strings Issue #6250

3.0.9 - 15 October 2018

Bugs Fixed

Core

SQL

  • Fix comparison with subqueries Issue #8540
  • Fix usage of LET with indexes Issue #8572
  • Fix NullPointerException on SQL queries with orphaned links Issue #8574
  • Fix UPDATE SET on embedded maps with subqueries Issue #8583
  • Fix execution planning of inner TRAVERSE statements Issue #8592
  • Fix usage of "parent" as a projection name in SQL Issue #8565

Enhancements

HTTP

  • Add actual execution time to SQL query requests Issue #8579

3.0.8 - 27 September 2018

Bugs Fixed

Core

  • Fix JSON array serialization with NULL values Issue #8531

SQL

  • Fix multiple edge creation in BATCH scripts Issue #8444
  • Fix usage of LUCENE indexes with subqueries Issue #8521
  • Fix usage of indexes with subqueries Issue #8528
  • Fix ALTER PROPERTY with "name" to work also without quotes Issue #8541
  • Fix SQL aggregate projections together with back-tick quoted aliases Issue #8544
  • Fix nested SQL INSERT statements Issue #8555
  • Fix query caching problem with nested queries Issue #8563

3.0.7 - 6 September 2018

Bugs Fixed

SQL

3.0.6 - 14 August 2018

Bugs Fixed

Console

SQL

  • Fix usage of indexes on maps by key/value

3.0.5 - 2 August 2018

Bugs Fixed

Console

SQL

3.0.4 - 12 July 2018

Bugs Fixed

SQL

  • Fix usage of $parent and $current in new SQL executor Issue #8383
  • Fix case sensitive cluster names in queries

3.0.3 - 2 July 2018

Bugs Fixed

Core

SQL

  • Fix count() when no records match criteria Issue #8280
  • Fix lazy execution batch scripts in IF statements Issue #8305

Studio

OrientDB Gremlin

Enhancements

SQL

  • FOREACH block in SQL scripts (experimental) details here
  • WHILE block in SQL scripts (experimental) details here
  • negative (NOT) patterns in MATCH statements (experimental) details here

3.0.2 - 5 June 2018

Bugs Fixed

Core

Server

SQL

Object

3.0.1 - 18 May 2018

Enhancements

SQL

Bugs Fixed

Core

SQL

Object database

Distributed

3.0.0 - 9 April 2018

Bugs Fixed

See https://github.com/orientechnologies/orientdb/issues?q=is%3Aissue+milestone%3A3.0.0+is%3Aclosed

Enhancements

  • Lucene upgraded to v 7.3
  • Geospatial module merged to base Lucene module and with the main distribution. The license is now compatible with Apache 2.0

3.0.0-RC2 - 27 February 2018

Bugs Fixed

See https://github.com/orientechnologies/orientdb/issues?q=is%3Aissue+milestone%3A3.0.0-RC2+is%3Acloseda

Enhancements

SQL

  • execution plans are now cached for better performance

3.0.0-RC1 - 18 December 2017

Bugs Fixed

See https://github.com/orientechnologies/orientdb/issues?q=is%3Aissue+milestone%3A3.0.0-RC1+is%3Acloseda

3.0.0-M2

28 July 2017

Functionality Added or Changed

SQL

Lucene

  • New search functions with runtime configuration of query analyzer and query parser behaviour - Issue #7155

  • New More like this - Issue #7408

  • Text highlight with configurable tags - Issue #5191

  • Boost on mutlifield searches cofigurable - Issue #5191

  • Laziness of indexes: when idle the indexes are closed - Issue #7555

  • EE Cross class search function - Issue #5069

JDBC

  • Migrated to new 3.0 API, improvement in field mapping - Issue #7347

DISTRIBUTED

  • Distributed module is now enabled in v M2 (it was still disabled and under review in M1)

Bugs Fixed

3.0.0-M1

For information about what is new and what has changed in OrientDB Release 3.0-M1, please check the Release 3.0 page in the OrientDB documentation.

Clone this wiki locally