What's new in OrientDB Community Edition 3.2.29

Mar 5, 2024
  • Core:
  • Fix issue on delegated records on raw access, issue #10171
  • Minor fix in transaction not document record handling
  • Make sure to check the security policy record exists before creating instance
  • Distributed:
  • Correct id swap revert in distributed transaction during retry
  • Make sure to execute full sync in case of delta sync failure

New in OrientDB Community Edition 3.2.28 (Feb 21, 2024)

  • Core:
  • Check if the index exists before checking it's properties
  • Make sure to initialize maps on update of value in query engine
  • Add name to the OrientDB internal timer
  • Removed optimization in query engine that cause failing to update linked records, issue #10077
  • Corrected query with content of nested JSON documents to use embedded class
  • Add count on the create link result set
  • Make sure to call on drop on database drop
  • Double Write Log is fsynced on writes. Looks like usage of SYNC flag is not enough
  • Double Write Log is not truncated on file flush but only if it reaches file limit
  • Double Write Log is truncated every time there are tail segments in queue
  • We do not need to make fsync during Write Ahead Log truncation it will be forced by Double Write Log itself
  • sync flag is removed for Double Write Log channel because we perform sync on data write
  • Dirty counter is updated on write sync
  • Distributed:
  • Fixed database sync with enterprise agent
  • Etl:
  • Fix concurrent issues in not x86 architectures
  • Client:
  • removed duplicate cancel from client code

New in OrientDB Community Edition 3.2.26 (Jan 9, 2024)

  • Core:
  • Corrected order by with database locale
  • Used the correct property name in alter property statement propagation
  • Make sure that old query engine use public schema API for create property
  • Re-enabled tests for bonsai tree with fixes
  • Simplification of index implementation in storage and lucene
  • Introduced executor for tracking submitter in case of exception
  • Simplification and optimization in query engine results
  • Corrected insert content query to respect default values
  • Distributed:
  • Report DDL query errors in distributed correctly
  • Make sure the distributed index drop works in the same way of embedded
  • Minor change in configuration reading on context initialization

New in OrientDB Community Edition 3.2.24 (Oct 25, 2023)

  • Optimized OResult to load records lazily
  • Optimized OResult to avoid early load of link in properties
  • Minor optimizations in the query engine runtime
  • Fix insert into index step to use the right value
  • Minor dependencies updates
  • Fix regression in rid comparison in case of embedded query
  • Fix regression in direct insert into index query
  • Fix regression in update index step
  • Avoid storage to go in read only mode if index key type validation fails

New in OrientDB Community Edition 3.2.23 (Sep 21, 2023)

  • Changes:
  • Core:
  • Optimization to avoid load record from indexes that do not match the target class
  • Correct delete query in new query engine to consider also binary record
  • Avoid to create temporary records in query engine equal operator
  • Correct the delete edge with single from or to
  • Correct optimization of count queries, issue #10021
  • Moved logic for truncate cluster to the database layer
  • Avoid to scan all the database files for identify a database, issue #10024
  • Add check to avoid to try lock not existing ridbags
  • Remote:
  • Avoid to cast to the underlying specific type while reading a ridbag from the network, issue #9499
  • Minor fix for lookup of remote session from thread local
  • Lucene:
  • Make sure that lucene functions do no fail when no class is defined
  • Distributed:
  • Correct distributed metadata query

New in OrientDB Community Edition 3.2.22 (Aug 17, 2023)

  • Core:
  • Optimizations of escaping in serialization of json strings
  • Avoid to store in result metadata not network serializable values
  • Re-enable transaction methods in scripts
  • Optimization index rebuild with transactions
  • Minor optimization in free space map logic
  • Fix space reuse, only use spaces in pages that have enough of it

New in OrientDB Community Edition 3.2.21 (Jul 24, 2023)

  • Core:
  • Make sure to reload correctly view index informations on context restart
  • Changed logic for tracking the cluster and index views in the queries
  • Optimized view refresh using batch transactions
  • use everytime the most specific index when multiple are found
  • Update build dependencies to most recente versions

New in OrientDB Community Edition 3.2.20 (Jun 15, 2023)

  • Core:
  • Refactor in query engines for execution simplification
  • Corrected failure to wait for migration when storage is reused, issue #9974
  • Made last refresh time of views persistent
  • Minor fix in views to skip refresh of deleted views
  • Distributed:
  • Reduced logging logic that is not used anymore
  • Inverted order of finish check for chunks to avoid leaving data in the buffer, issue #9985
  • Client:
  • Make sure that client executor pool size never have size 0

New in OrientDB Community Edition 3.2.19 (May 11, 2023)

  • Core:
  • Correct the class for scanning vertex on graph repair, issue #9970
  • Reduced some dependencies from external libraries
  • Removed not needed implementations in native logic
  • Removed the need to load a native library to check some system settings
  • Moved sources in main modules to avoid split packages, issue #8001
  • Minor fix for new internal experimental configuration store
  • Revert upgrade of minor dependency that cause issues on older OS
  • Minor fixes from static analysis
  • Make sure to unblock other storage open operations only when migration is complete, issue #9974
  • Distributed:
  • Deduplication and simplification of distributed logic
  • Removed operation waiting flow not needed any more
  • Avoid startup failure in case of rebalancing failure
  • Avoid that failure on load of database block the server starting
  • Add command to fetch distributed configuration from SQL

New in OrientDB Community Edition 3.2.17 (Mar 8, 2023)

  • Changes:
  • Core:
  • Update dependencies
  • Make sure to make view query wait for drop and create operations
  • Changed security checks for the import logic to avoid spurious failures
  • Optimizations in disk cache implementation
  • Pre-check cluster existence to avoid storage to go in read only mode in case of duplicate cluster
  • Add check to avoid failure when engines are unloaded, issue #9629
  • Removed not used configurations
  • Moved clean-up of old structures out of the view refresh window
  • Replaced global executor with context executor
  • Use correct index in immutable view metadata
  • Add configuration for define the max number of threads for the context executor
  • Server:
  • Make sure to print the right protocol for studio address when ssl is enabled
  • Client:
  • Minor fix on view metadata serialization and demineralization over network
  • Distributed:
  • Removed not used single cluster management in distributed sync
  • Spatial:
  • Fix spacial function filtering when used trough the new query engine

New in OrientDB Community Edition 3.2.16 (Feb 8, 2023)

  • Core:
  • Removed the need to buffer changes before adding the to the tx
  • Make sure to stop scheduling of view refresh before closing the OrientDB instance
  • Improved refreshing and cleaning of views
  • Minor fix to handle misstyped records in delta serialization
  • Minor correction on metadata snapshot logic on release of index manager lock
  • Make sure to use transaction aware stream also with legacy index implementations, issue #9914
  • Reduced the number of times the storage goes in read only mode, and allow to delete not empty datastructures
  • Make sure that on index load the schema snapshot are available, issue #9915
  • Changes in index manager and view implementation to avoid cross locking during updates
  • Avoid to re-index new cluster when swapping the cluster in views.
  • Make sure to initialize the timeout checker before the system db
  • Remote:
  • Made remote index changes go through the transaction instead of the query
  • Distributed:
  • Make sure to have the correct transaction in the context for distributed phases execution
  • Managed correctly the check of all value of a unique index during first phase checks

New in OrientDB Community Edition 3.2.15 (Jan 18, 2023)

  • Core:
  • Give more clear error when view metadata are not correct on view creation
  • Improved validation of embedded types to avoid use of vertices and edges in embedded
  • Handle additional case for shape type conversion in query engine
  • Removed not needed synchronization in views structures
  • Reduced logging of the security module
  • Minor fix for no-tx changes on lucene indexes
  • Removed duplicate logic in index implementation
  • Reduced the thread local lookups and database isClosed checks
  • Removed some locale translate done only on specific use cases
  • Avoid to update the index manager when there are no changes
  • Replaced storage error state lock with atomic reference
  • Removed server and client dependency from lucene module
  • Distributed:
  • Minor fix on view creation and refresh in case of distributed environment

New in OrientDB Community Edition 3.2.14 (Dec 23, 2022)

  • Core:
  • Optimization on graph delete operations (issue #9821)
  • Fix on remote deserialization of specific exception
  • Fix on index logic for multi-page split
  • Fix limit of index key size, now it fail with a user message when the key is over the maximum size (10Kb)
  • Optimization in index write
  • Optimization of security checks in writes
  • Fix wrongly oversize WAL records
  • Fix views locking logic to update the view atomically
  • Fix failing schedule of view if previous view fail to refresh
  • Add support of indexing of embedded types in views
  • Fixed script poll release issue

New in OrientDB Community Edition 3.2.13 (Dec 2, 2022)

  • Core:
  • Make sure to use high level transactions in all index change cases
  • Made index rebuild batch changes in transaction
  • Fix view unlocking in case of refresh error
  • Optimized update of vertices that use ridbag trees
  • Fix regression on OResult hash code, issue #9900
  • Ignore index corrupted errors on drop
  • Batched view refreshing in transaction
  • Optimized of usage of read/write lock in storage
  • Fix check of index type also on chained indexes
  • Reduced usage of modifiable schema to reduce contention on read/write lock
  • Fix waiting for last task in ViewManager close
  • Fix running of ddl while incremental backup is running do not block anymore other write operations.
  • Fix invalid cluster id do not make storage readonly
  • Distributed:
  • Fix in handling of node missing on refresh

New in OrientDB Community Edition 3.2.12 (Nov 10, 2022)

  • Changes:
  • Core:
  • Add timeout check in next query page fetching
  • Updated dependencies
  • Optimized Security Policies checks
  • Optimized query engine property fetching and filtering
  • Removed not used anymore dependencies
  • Fix in truncate clusters logic
  • Improved string caching logic
  • Made the direct memory pointer soft reference to retain it and reduce the allocation overhead
  • Add a correct error message when opening a not existing database in a in memory context
  • Fix regression in sql function execution after refactor, issue #9888
  • Optimization in storage record reading
  • Fix OClass.setCustom() in ditributed setup
  • Console:
  • Fix regression database creation, issue #9889
  • Enterprise:
  • Limited the maximum number of metrics kept in memory
  • Made query statements metrics ognostic of values

New in OrientDB Community Edition 3.2.11 (Oct 19, 2022)

  • Changes Core:
  • Use correct configuration to run javascript functions on truffle script engine of graal
  • Minimize duplicate logic in index searching for query engine
  • Add caching of graal Context with relative database functions
  • Reduced allocations in query engine
  • Add possibility to unload cached information for specific script executor
  • Optimized the cluster computation in query engine
  • Disabled the sharding check logic for distributed
  • Removed dependencies not used anymore
  • Correct query interrupt based on command timeout configuration
  • Minor updates of dependencies

New in OrientDB Community Edition 3.2.10 (Sep 15, 2022)

  • Core:
  • Make put of index everytime transactional
  • Converted all left put operations to use transaction directly
  • Fix logging of log messages with exceptions
  • Refactor for simplify index creation logic
  • Optimization in index write logic
  • Optimization in ridbag write logic
  • Optimization in page write logic
  • Optimization in script pool
  • Disabled write operations without atomic operation
  • Fixes in Json parsing
  • Re-enabled computation of record sizes for cluster issue #9870
  • Replaced custom lock implementation with jdk implementation
  • Avoid to read null values from json for ridbags
  • Client:
  • Automatically start a transaction in the client side if a script started it server side
  • Lucene:
  • Correct lucene remove after transactional index operations refactor
  • Make sure rebuild of lucene works after refactor
  • Distributed:
  • Fix copyStream to not terminate on 0 byte read
  • Mark HA STATUS idempotent so it can be used from SQL API.
  • Include individual DB status across cluster in HA STATUS result
  • Add exception details to some logging that lost stack traces.

New in OrientDB Community Edition 3.2.9 (Aug 11, 2022)

  • Changes:
  • Core:
  • Make sure to drop the database also when drop listeners fail
  • Improve thread pool executors to scale up and down properly
  • Make sure to release lock on close of failed storage
  • Removed background thread to mark storage broken not needed anymore
  • Add missing file extension from list of database files extensions to allow proper cleanup on delete
  • Remove no needed refresh of immutable metadata during index metadata load
  • Avoid that wrong validation value make a database read only
  • Corrected regression on btree v3 value replace
  • Refactor to simplify index v3 logic
  • Prevent Live Query thread hot looping on idle queue.
  • Distributed:
  • Improved distributed hosts change notification after client optimization
  • Remote:
  • Release session lock in any case of error
  • ETL:
  • Make sure to close context on process shutdown

New in OrientDB Community Edition 3.2.8 (Jun 27, 2022)

  • Core:
  • avoid to make the storage read only in case of error in record serialization
  • correct iterable value set during update operations issue #9781
  • avoid to put storage in read only in case of errors during read operations
  • fixed multivalue composite index queries to not return duplicates
  • correct indexes rebalancing causing error on delete operations
  • Console:
  • local creation of a database in plocal with console old command will create a admin user
  • Distributed:
  • unblock distributed request handling in case of install error, issue #9815
  • Cap string length in binary channels
  • Lucene:
  • Support parameterised metadata in Lucene queries
  • make sure that lucene parsing exception do not set the storage in read only mode, issue #9498
  • Fix the locking in the Lucene indexer

New in OrientDB Community Edition 3.2.7 (Jun 9, 2022)

  • Changes:
  • Core:
  • fixed delete of lucene indexes
  • make sure to do a clean metadata re-init after incremental backup database restore
  • handle thread interruption while data read and write with correct exception
  • Speed up of record updates.
  • remove edges with in or out null during bonsai repair,issue #9806
  • minor correction in composite index creation query
  • Distributed:
  • cloned distributed lock keys that may contain a record id for avoid mutation
  • properly handle database instance used by lucene indexes while distributed sync
  • Install ShutdownLogManager in distributed mode

New in OrientDB Community Edition 3.2.6 (May 3, 2022)

  • Changes:
  • Core:
  • LSN of latest applied record returned during restore
  • Binary compatibility issue was fixed
  • Update jackson dependency to the latest release
  • Disabled memory pre-allocation by default
  • Ported fix for shortest path, issue #9774
  • Minor update of dependency version
  • Storage state lock was replaced by standard JDK lock
  • Distributed:
  • Minor fix for distributed on deploy database backup in case of source folder and dest folder in different volumes
  • Fixes on network layer between nodes

New in OrientDB Community Edition 3.2.5 (Feb 23, 2022)

  • Changes:
  • Core:
  • Restore flag is triggered once physical restore is started.
  • Tracking of consistency of atomic operation on restore was added.
  • If Unsafe is present it is used for memory allocation/de-allocation.
  • Fix toJson() with spaces in map key names.
  • Prevention of recursive flow of exception is case of internal error.
  • DWL files do not trigger errors during the database backup.
  • Fix ORDER BY with LET
  • Distributed:
  • Minor fix in distributed stat collecting logic
  • Check to avoid distributed backup path to be in the same location of databases
  • Minor refactor to avoid to do version promises for not changed records

New in OrientDB Community Edition 3.2.4 (Dec 29, 2021)

  • Changes:
  • Core:
  • Fix of bug when removal of entry from the BTree causing damage of the tree structure.
  • add some methods in internal database API for avoid to use storage interface
  • reduce use of direct storage API where is not needed
  • Remove Log4J testing dependencies
  • Fix npe on traversal of graph
  • Client:
  • refactor: remove of last few usages of storage for client use cases
  • separated the logic for remote ridbag management from the embeded one
  • cleanup of not needed methods in remote index manager
  • completely split the index remote and embedded logic
  • minor refactor in remote storage to remove dependency to core components
  • Distributed:
  • removed additional code in distributed module not used anymore
  • add reset of previous sync backup on ddl execution
  • minor fix ddls
  • enabled two phase ddl with retry
  • add tests for new ddl messages serialization and execution
  • first definition of coordination of ddls
  • first definition of new ddl messages for distributed ddls
  • made distributed unit tests more reliable
  • re-enabled distributed in github actions
  • add method for only log distributed sequential
  • removed old delta sync implementation not used anymore
  • minor fix in distributed transaction data test
  • minor fix in transaction data test
  • minor fix in the distributed sequence manager
  • Fix NPE on network reconnect

New in OrientDB Community Edition 3.2.3 (Nov 17, 2021)

  • Changes:
  • Core:
  • start implementing support for Java 17
  • made sure that the client network deserializer is used in most of the places
  • merged Basic Transaction interface in Transation interface
  • minor refactor to remove all storage usages from abstract database
  • Fix of IT tests, to make them work under Java 17
  • Import - Fix RID conversion in list of embedded objects
  • Fix illegal memory access in Unsafe byte array comparator
  • All threads given a name and default exception handler
  • add method in local cache to clear referred record instances
  • add property for generate and hold database instance id
  • Fix DB backup UUID checks
  • removed redundant cache clear from rollback operations
  • minor refactor to avoid cache clear on rollback
  • Reduce log level on JSON serializer
  • updated icu dependency to keep only one dependency jar in the final package
  • removed cleanup of locks on shutdown from HZ lock manager, try finally should already cover all cases
  • minor fix to avoid a storage to go to read only if the backup fail
  • update fix to avoid deadlock, to avoid the start to block
  • minor fix in the loop resolution of temporary ids
  • minor fix in storage validation logic
  • minor fix on server startup logic
  • SQL:
  • Fix corner cases of LET expression evaluation with $current
  • Add new interfacte for live query batchOptimise live query execution in remote (Send results in batches)
  • Distributed:
  • refactor of distributed drop to move distributed drop logic outside the listener and in the distributed context
  • fix drop in case of distriubed environment with distributed disabled
  • fixed reconnect of distributed to reduce session and delay on error
  • add quorum in error message for not enough nodes online
  • removed quorum all for index changes
  • 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
  • minor fix on sync backup reset
  • ETL:
  • Fix ETL execution with LINK transformers

New in OrientDB Community Edition 3.2.2 (Sep 21, 2021)

  • Changes:
  • Core:
  • Fix management of predicate security on DELETE
  • Minor performance fix in listing on databases during subscribe on push notifications
  • Minor fix in server users password reading
  • Automatic renew token in distributed channel when close to expire
  • Import: removed unused v3 approach and started using parser for brokenrids
  • Fix Studio login
  • Distributed:
  • Removed distributed logging not needed anymore

New in OrientDB Community Edition 3.2.1 (Sep 9, 2021)

  • Changes
  • Core:
  • Fix Nashorn js execution
  • Force Nashorn usage when GraalVM is disabled by config
  • Many fixes to database import/export
  • Refactor transaction index changes
  • Reload schema after incremental restore
  • Optimise predicate security checks on property validation
  • Allow concurrent access to active queries stats
  • Optimise OTxIndexChangesList and enable it for index tx management
  • Allow binary connections without session token (disabled by default)
  • Add security check on cached sequences
  • Optimise record save
  • Replaced micro tx with transaction in embedded noTx operations
  • Removed micro transaction implementation not needed anymore
  • Optimise views management
  • Fix index space consumption
  • Fix security checks on Class in remote
  • Check that prevents restore of database in another version after crash was introduced
  • Allow choice of storage cluster version via global config
  • Fix StackOverflow error when adding the owner document to OTracked
  • Fix OClassRemote.hashCode()
  • Maximum allowed size of WAL segment has been increased.
  • Fix issues #9658 #9562
  • SQL:
  • Fix ORDER BY with big LIMIT
  • Implement DROP CLASS with parameter
  • Enhance live queries to allow projections
  • Implement exclude projections in SELECT
  • Fix management of embedded objects on Live Query DELETE
  • Fix UPDATE UPSERT with cluster as target
  • Implement support for index chains in SQL with CONTAINSANY
  • HTTP:
  • Add Secure header to session cookie

New in OrientDB Community Edition 3.2.0 (Jun 9, 2021)

  • Security:
  • With the OrientDB 3.2 multimodel API some important changes were implemented on Database creation. The most important one is that basic database users (admin, reader, writer) are no longer created by default. This is the consequence of some considerations about Security: having default passwords (eg. admin/admin) is a bad practice and exposes OrientDB installations to possible attacks.
  • Of course it's possible to explicitly trigger user creation and to provide a custom password, instead of using a default admin user. The roles admin, writer, reader are still created by default. If the creation of default users is enabled and you try to create a user called admin, the creation of that user will fail. The creation of default users can be disabled setting CREATE_DEFAULT_USERS to false. The creation of multiple admin users like admin, reader, and writer can be done by comma-separating. From Studio, there is a new option that allows you to define the default admin password on the Database Create dialog. The old defaults can be restored (for backward compatibility) by setting -Dsecurity.createDefaultUsers=true at startup.
  • Server-Level Commands:
  • In OrientDB v 3.2 we added some infrastructure to run commands at server level. See SQL Changes and Server-Level Commands)
  • Distributed enhancements and stabilization:
  • In v 3.1.x, OrientDB clustering had a limitation related to indexing: UNIQUE indexes needed full agreement between the nodes (N ack out of N nodes) to perform a transaction. In v 3.2 we removed this limitation, now transactions that involve UNIQUE indexes have the same quorum as any other transaction (typically N/2 + 1). Hazelcast was updated to latest version.
  • Console enhancements:
  • In previous versions there are some slight differences in the console when using a remote server or an embedded envorinment. In v 3.2 the CLI interface was refactored to unify the management of embedded and remote environments
  • GraalVM support:
  • After Nashorn was deprecated and then removed from the JVM (see JSR 335), OrientDB needs an alternative for scripting. In v 3.2 we introduce support for GraalVM as a replacement for scripting capabilities

New in OrientDB Community Edition 3.0.30 (Mar 20, 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

New in OrientDB Community Edition 3.0.18 (Mar 22, 2019)

  • 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)

New in OrientDB Community Edition 3.0.17 (Mar 7, 2019)

  • 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

New in OrientDB Community Edition 3.0.16 (Feb 27, 2019)

  • 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

New in OrientDB Community Edition 3.0.15 (Feb 12, 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

New in OrientDB Community Edition 3.0.14 (Feb 12, 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

New in OrientDB Community Edition 3.0.13 (Jan 2, 2019)

  • Bugs Fixed
  • Studio
  • Fix CSV Export Issue #8335
  • 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 #

New in OrientDB Community Edition 3.0.12 (Dec 11, 2018)

  • Core:
  • Fix LINKSET usage in transaction Issue #8634
  • 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
  • Console:
  • Add --disable-history to OrientDB console Issue #7890

New in OrientDB Community Edition 3.0.11 (Nov 22, 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

New in OrientDB Community Edition 3.0.10 (Oct 26, 2018)

  • 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

New in OrientDB Community Edition 3.0.9 (Oct 16, 2018)

  • Bugs Fixed:
  • Core:
  • Fix live queries with ridbags Issue #8594
  • 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
  • Enhancements:
  • HTTP:
  • Add actual execution time to SQL query requests Issue #8579

New in OrientDB Community Edition 3.0.8 (Oct 16, 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

New in OrientDB Community Edition 3.0.7 (Sep 7, 2018)

  • Bugs Fixed:
  • SQL:
  • Fix usage of class aliases for edge traversal Issue #8505
  • Fix usage of $parent in subqueries Issue #8412

New in OrientDB Community Edition 3.0.6 (Aug 16, 2018)

  • Bugs Fixed:
  • Console:
  • Fix hanging OETL process Issue #8447
  • SQL:
  • Fix usage of indexes on maps by key/value

New in OrientDB Community Edition 3.0.5 (Aug 2, 2018)

  • Bugs Fixed:
  • Console:
  • Fix parsing of MATCH statement in console Issue #8414
  • Fix parsing of SELECT/MATCH in console Issue #8430
  • SQL:
  • Fix type conversion with IN operator Issue #8428
  • Fix graph traversal projections in SQL Issue #8415
  • Fix INSERT with RETURN Issue #8411
  • Fix UPDATE EDGE with subqueries Issue #8406
  • Fix subqueries with TRAVERSE and projections Issue #8395

New in OrientDB Community Edition 3.0.4 (Jul 13, 2018)

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

New in OrientDB Community Edition 3.0.3 (Jul 2, 2018)

  • BUGS FIXED:
  • Core:
  • Fix remote nested TX usage with old SQL executor Issue #8311
  • Fix hierarchical role classes Issue #8338
  • SQL:
  • Fix count() when no records match criteria Issue #8280
  • Fix lazy execution batch scripts in IF statements Issue #8305
  • Studio:
  • Fix Teleporter Importer UI Failure Issue #512
  • OrientDB Gremlin:
  • Fixed JSON encoding issue Issue #8327
  • 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)

New in OrientDB Community Edition 3.0.2 (Jun 6, 2018)

  • Core:
  • fix move vertex Issue #8303
  • Server:
  • Fix startup issue on embedded server Issue #8285
  • SQL:
  • Fix CREATE INDEX with implicit class.property Issue #8268
  • Fix parsing of embedded lists Issue #8277
  • Fix LET block with functions Issue #8283
  • Use new SQL executor in js funcitons Issue #8286
  • Fix SEARCH_FIELDS() function execution in square brackets Issue #8294
  • Fix any() function execution in new SQL executor Issue #8302
  • Fix toJson() function in new SQL executor Issue #8304
  • Object:
  • Fix propagation of save() Issue #8272

New in OrientDB Community Edition 2.2.32 (Feb 6, 2018)

  • Core:
  • Automatic conversion of tree ridbags to embedded when switching to distributed mode
  • fix DROP INDEX with invalid index name - Issue #8007
  • SQL:
  • Fix ArrayIndexOutOfBoundsException on shortestPath() - Issue #8013
  • Console:
  • Fix case sensitivity on CREATE DATABASE - Issue #7923

New in OrientDB Community Edition 2.2.31 (Dec 12, 2017)

  • Core:
  • Prevent Recoverable exceptions to be logged as ERROR - Issue #7905
  • Prevent StackOverflow while starting in OSGi environment - Issue #7882
  • Functionalities added:
  • Core:
  • Treat JVM Error as server crash - Issue #7908
  • Add servlet context listener to init/shutdown ODB gracefully - Issue #7906
  • Manage cgroup (container) limits when calculating memory limits - Issue #7812

New in OrientDB Community Edition 2.2.30 (Nov 15, 2017)

  • BUGS FIXED:
  • Core:
  • Fixed CancellationException on wal close. - Issue #7808
  • In previous versions of OrientDB to get the total amount of physical memory on PC we used reflection to call a method of a class which is placed inside "sun" package. In the new version, we merely requesting attribute value of JMX bean from JMX server avoiding any limitations of JDK 9 module system - Issue #7773
  • Fixed OSGi compatibility issue - Issue #7772
  • Lucene:
  • Fixed issue with lucene in memory due to autoclose. Issue #7844
  • SQL:
  • Fixed NPE on Dijkstra function - Issue #7869
  • Fixed parsing issue with ALTER PROPERTIES with two blank spaced in between - Issue #7809
  • Support LET x = RID - Issue #7633
  • Distributed:
  • Inhibit usage of SBTree Ridbags in case of distributed execution - Issue #7825
  • Console:
  • Fixed management of WINCH signal on Win systems - Issue #7863
  • FUNCTIONALITIES ADDED:
  • SQL:
  • Added logging of running queries in case of OOM - Issue #7861
  • Added support for keys() and values() functions on embedded documents - Issue #7795

New in OrientDB Community Edition 2.2.29 (Oct 5, 2017)

  • Core:
  • Fixed issue on edge creation: in case of high load graphdb cache may contain records with diff content but the same version. This could lead to lost of edge pointers in vertices. - Issue #7786
  • Console:
  • Fix problem with upper and lowercase js/JS jss/JSS and multi-line scripts - Issue #7782
  • Studio:
  • Fixed issue in header menu - Issue #485

New in OrientDB Community Edition 2.2.28 (Sep 26, 2017)

  • BUGS FIXED:
  • Core:
  • Fix overwrite of disk cache use when set by user API - Issue #7760
  • Fix WAL compatibility issue - Issue #7756
  • Add a check to block execution of database if data corruption on disk is detected - Issue #7540
  • Remote:
  • Add outdate detection and reload of storage configuration in the case of new clusters

New in OrientDB Community Edition 2.2.27 (Sep 14, 2017)

  • Bugs Fixed:
  • Core:
  • Fixed problems with Direct Buffer allocation Issue #7665, Issue #7586 and Issue #7641
  • Fixed a corruption problem can happen during power off of a server Issue #7562
  • ETL:
  • Fixed "skipDuplicates" doesn't work in debug mode Issue #7682
  • SQL:
  • Fixed NullPointerException on MATCH statement when the filter involves @class attribute
  • Fixed LIKE operator to work on links with LET and subquery
  • Fixed usage of composite index with IS NULL condition
  • Studio:
  • Fixed Issue with server soles in cluster management Issue #492
  • Enterprise:
  • Improved RAM consumed by the Enterprise Profiler Issue #7623

New in OrientDB Community Edition 2.2.26 (Aug 16, 2017)

  • FUNCTIONALITY ADDED OR CHANGED:
  • Distributed:
  • Upgraded Hazelcast version to 3.8.4.
  • Warning: As a result of this change it is not possible to perform a hot (rolling) upgrade from versions <= 2.2.25 to versions > 2.2.25. Rolling upgrades are supported again for upgrades between v1 and v2, where v1 and v2 are equals or higher than 2.2.26
  • Studio:
  • Implemented removal of permission in Role UI - Issue #420
  • Add a delete button to remove an entry on security panel - Issue #420
  • BUGS FIXED:
  • Core:
  • Preserve superclass order - Issue #7460
  • Fix deadlock on edge unique index - Issue #7589
  • OrientDB able to automatically correct direct memory consumption even if flag XX:MaxDirectMemorySize is not set. But because OrientDB allocates direct memory by the big amount of chunks in previous versions amount of memory to be allocated in the last chunk can exceed direct memory limits. This issue was fixed. Issue #7627
  • Fix multiple usages of the same sequence in the same TX Issue #7547
  • Fix possible updated information in cache state file after shutdown/startup Issue #7601
  • SQL:
  • Fix DELETE statement parsing with RETURN COUNT Issue #7598
  • Lucene:
  • Lucene Spatial indices were closed incorrectly - Issue #7585 & Internal Issue #9132
  • Studio:
  • The databases that are populated in the connection window are now sorted alphabetically
  • Distributed:
  • Under certain conditions, when a node was starting up, a database was mistakenly deleted. Now fixed - Internal Issue #906

New in OrientDB Community Edition 2.2.25 (Aug 3, 2017)

  • Functionality Added or Changed:
  • Studio:
  • A new 'Neo4j to OrientDB Importer' plugin that connects to Neo4j via the Neo4j remote bolt protocol has now been integrated into both OrientDB Community and Enterprise Editions. This is in addition to the already existing command-line 'Neo4j to OrientDB Importer" tool, that made use of embedded connections via the Java API (and that is still available as an external package) - Issue #432
  • Distributed:
  • Improved java client reconnection when Data Centers are used: two new values for the -Dnetwork.retry.strategy option have now been added: same-dc and auto- Issue #7509 - Documentation
  • ETL:
  • Added support for algorithm parameter in index creation - Issue #7581
  • Bugs Fixed:
  • Core:
  • Fixed Bug on JSON import in multithreading environment - Internal Issue #9020
  • Fixed bug with database backup/restoration and cache state file, cache state file is now ignored - Issue #7601 & Internal Issue #9024
  • Improved performance of rid bag compare - Internal Issue #8803
  • SQL:
  • Fixed query parsing issue when "in" clause occurs after "or" condition with parentheses - Issue #6834
  • Fixed exception in select from collection of DATETIME or DATE, using prepared statement - Issue #7574
  • Fixed comparison of Short values with IN and CONTAINS in SQL - Issue #7578
  • Fixed StackOverflow exception when a list of enums is passed as an SQL param - Issue #7418
  • Fixed usage of include function in Match statement - Issue #271
  • Fixed security checks in SQL to allow reading of own OUser record - Issue #7549
  • Server:
  • Implemented GZip Compression for static resources - Issue #476
  • Distributed:
  • When executing the HA SYNC CLUSTER command, part of the cluster was not migrated. Now fixed - Internal Issue #8982
  • Warning: HA SYNC CLUSTER <cluster-name> will now trigger an automatic rebuild of the indices defined on the Class the cluster <cluster-name> belongs to. Depending on the number of defined indices and amount of data included in the Class this operation can take some time. Furthermore it is important to wait that the sync cluster operation has finished before performing any database operations that involve that cluster.
  • Fixed issue related to local DC quorum management - Issue #7539 & Internal Issue #8981
  • Enlarged default timeout for database chunk deployment - Internal Issue #8923
  • Fixed issue that was causing record version to be different on different nodes - Internal Issue #9003
  • Fixed issue with distributed sequences
  • Lucene Spatial:
  • Fixed lifecycle on the legacy spatial index - Issue #7585
  • Console:
  • Fixed retrieval of custom conflict strategy from remote - Internal Issue #8931

New in OrientDB Community Edition 3.0.0 M2 (Jul 30, 2017)

  • APIs:
  • Graph-document concepts unification in core API: New interface called OElement (to replace ODocument class). As of OrientDB 3.0 any character is allowed as a valid character in property names
  • New database administration API
  • New database access and pooling API
  • The object API now is on a separate module
  • Queries:
  • New execution plan based query engine
  • Support for query on remote transactions: This solves the ancient problem when by using a remote connection in the middle of a transaction, queries were executed outside the transaction scope. Now the changes are flushed to the server before to execute the server side query.
  • Support streaming of query result set: Queries are streamed to the client through the remote protocol. This means much less RAM used and less latency because the result is sent immediately during the query execution.
  • TinkerPop:
  • TinkerPop 3.x: Finally the support for TinkerPop 3 is arrived and it’s released as plugin. In this way there is no conflict with the old TinkerPop 2.6 API.
  • TinkerPop 2.x: We know how important is the backward compatibility for our users in production. For this reason we still provide the TinkerPop 2.6 API through a plugin.
  • Caching:
  • Improvements of storage caching for reduced latency
  • New DB New Demo Dcustomers_restaurantsB
  • New Demo DB ‘Social Travel Agency': - We bid goodbye to our long lasting “GratefulDeadConcerts” Demo Database which as now been replaced with the new ‘Social Travel Agency’ demo. This demo database provides better examples to help understand OrientDB’s Multi-Model perspective and concepts.
  • Compatibility:
  • OrientDB v3.0 is 90% compatible with code running on OrientDB v2.2.x thanks to the support of the TinkerPop 2.6 API (now as separate module). Main compatibility issues involve the new SQL engine, which is more strict than before, but also significantly smarter and faster.
  • For a complete list of features, enhancements and supporting documents, take a look at our Official OrientDB 3.0 documentation.*

New in OrientDB Community Edition 2.2.24 (Jul 21, 2017)

  • Core:
  • Server Log was filled with warnings 'SEVER OCachePointer.finalize: readers != 0 [OCachePointer]'. Now fixed - Issue #7388
  • Under certain conditions, an OIndexException was thrown on graph.getVertices - Issue #7484
  • Database import now continues even if some single record import fails - Issue #7550
  • In case backup of the disk cache state is broken, a warning is now show (previously the server could not be started). This has been implemented as broken backup of the disk cache state does not affect the functionality of database, only its initial performance - Issue #7558
  • d64 switch has been added on server startup scripts (server and dsever). As a result, on systems where both a 32bit and a 64bit JVM is installed, the 64bit JVM will be used by OrientDB - Issue #7553
  • In early versions of OrientDB deleted files did not preserve their ids correctly, as result after upgrade to latest version and creation of the cluster with the same name all cluster files are assigned the same id, so one file overwrites another file in file system and created cluster contains incomplete information about its state. Now fixed - Issue #7546
  • SQL:
  • Fixed parsing of MOVE VERTEX statement inside batch scrips - Internal Issue #8854
  • Fixed timeout on queries with expand() - Internal issue #8715
  • Fixed wrong tracking flag on select insert - Issue #7538
  • Fixed binary comparison of date/datetime Issue #7557
  • Lucene:
  • Fixed issue with OR condition and list fields - Issue #7554 & Internal Issue #8929
  • 'Laziness' on Lucene indexes (fulltext and spatial): starting with 2.2.24 only after the first access (read or write) the index is opened. If the index is in idle mode for a while (the time is configurable, 20s by default) it is closed. This results in less threads, less file handlers and less used memory. Useful in case the database has an high number of fulltext or spatial indexes rarely used - Issues #7555 and #7545
  • Object:
  • Fixed bug on convert of nested collections of objects to document structure - Issue #7548
  • Server:
  • Improved shutdown process with early signal to all the execution threads
  • Remote:
  • Fixed bug with sequences generation in case of transaction in remote, [Issue #7547] (https://github.com/orientechnologies/orientdb/issues/7547)
  • HA:
  • Fixed issue with backup of old database on server startup - Internal Issue #8934
  • Locks were kept for too much time as the background thread that checks the timeout was not working correctly. Now fixed - Issue #5012
  • Node-id is now used as suffix of the temporary files used for the distributed backup. This avoids that the files are overlapped in case the nodes are running all on the same machine - partial fix for internal Issue #8923
  • Recreating a database after dropping it was failing in embedded distributed mode. Now fixed - Issue #7571
  • Other:
  • Neo4j to OrientDB Importer
  • Added more tests in the automated test suite
  • Migration / compatibility tests with Neo4j 3.2.2

New in OrientDB Community Edition 2.2.22 (Jun 20, 2017)

  • CORE:
  • Fixed bug on toLowerCase/toUpperCase that didn’t take care of Localeinfoicon
  • SERVER:
  • Fixed bug on server startup when automatic backup plugin is disabledinfoicon
  • SQL:
  • Use of indexes for range queries when >= and <= operators are used has been optimisedinfoicon
  • DOCKER:
  • Official OrientDB Docker images are now immediately available with the release of OrientDB 2.2.22.

New in OrientDB Community Edition 2.2.20 (May 12, 2017)

  • CORE:
  • Fixed retain of storage instance in the profile after close/delete
  • STUDIO:
  • Fixed Bug in CSV download
  • LUCENE:
  • Fixed bug on date range queries

New in OrientDB Community Edition 2.2.19 (Apr 26, 2017)

  • SQL:
  • Supported wildcards in exclude() and include() functionsinfoicon
  • New -force and -full options in HA SYNC DATABASE commandinfoicon
  • HA:
  • Improved distributed logs. Information on who is the coordinator server are now printed
  • Added timeout in every lock request
  • Core:
  • Improved statistic of byte buffer exposed through JMX

New in OrientDB Community Edition 2.2.18 (Apr 6, 2017)

  • FUNCTIONALITY ADDED OR CHANGED:
  • Studio:
  • Implemented notification hide on route change - Issue #437
  • Implemented History navigation with Alt + Up/Down - Issue #5425
  • Implemented a better rendering with multiple edges - Issue #428
  • Implemented same color generation in Schema and GraphEditor - Issue #453
  • Implemented refresh of metadata on Vertex/Edge creation (GraphEditor) - Issue #454
  • Implemented Vertex/Edge label template - Issue #374
  • Core:
  • Add access of active Intent on database
  • HA:
  • Dump of statistics on SIGTRAP (kill -5 <pid>)
  • Console:
  • New LOAD SCRIPT command - Issue #7273
  • BUGS FIXED:
  • Core:
  • Fixed minor issue in ORecordNotFoundException id retention - Issue #7172
  • Fix same content detection for document binary fields - Issue #7146
  • Fixed live query with record level security - Issue #7213
  • Fixed internal clusters detection for security and jdbc - Issue #7182
  • Fixed ReadOnly and Mandatory handling with default values for document deserialized from JSON - Issue #7211
  • Fixed asBoolean method - Issue #7284
  • Exception in data restore procedure was fixed
  • Under some circumstances an index was being marked healthy even if the rebuild process didn't complete - Issue #7274 and Internal Issue #8446
  • A unclean shutdown was forcing index rebuilds. Now fixed - Internal Issue #8495
  • Graph:
  • Fix connection strategy management with pool factory- Issue #7110
  • Delete of edges that involves supernodes has been optimized and as a result it is now more fast - Internal Issue #8517
  • Server:
  • Fixed response on HTTP API db.create - Issue #7244
  • Object:
  • Fixed issue on type detection in case of domain with one to one relationship of a class that implement Serializable - Issue #7172
  • HA:
  • Rebooted node does not fetch changes from cluster that occurred while the node was down - Internal Issue #8208
  • Fixed bug on distributed lock release
  • Lucene:
  • Fixed NPE in index cursor - Issue #7156
  • Studio:
  • Fixed visualization problem with Match - Issue #452
  • Fixed color of edges in schema panel - Issue #457
  • Fixed visibility issue in Backup Management with Firefox/IE - Issue #7195
  • Fixed bug in Schema Manager with multiple inheritance - Issue #460
  • ETL:
  • Fixed wrong mapping of column's names when aliases are used - Issue #7307

New in OrientDB Community Edition 2.2.17 (Apr 6, 2017)

  • FUNCTIONALITY ADDED OR CHANGED:
  • Scripts:
  • New 'delay' option in stresstester script
  • Increase the default heap size on console.sh/.bat to 1GB and let configure via variable ORIENTDB_OPTS_MEMORY Issue #7169
  • BUGS FIXED:
  • Core:
  • Fixed regression on document constructors - Issue #7150
  • Fixed minor issue on class description management in remote - Issue #7065
  • Fixed http double response generation bug - Issue #6474
  • In very rare cases, during a record update, if the difference between the free space available in the page that will be used to contain the record and the size of the record itself is less than three (freeSpace - recordSize < 3) a record could be truncated. Now fixed - Issue #7151
  • Fixed lost of index's metadata when reopened after a complete rebuild - Issue #7125
  • SQL:
  • Fixed a bug in the MATCH statement when 'optional' attribute was being used on empty vertex classes - Internal Issue #8289
  • Graph:
  • Fixed validation not triggered correctly in case of transactional graph - Issue #7144
  • Fixed undo in case of validation exception - [Issue #7145] (https://github.com/orientechnologies/orientdb/issues/7145)
  • Fixed gremlin command execution inside a function - [Issue #7096] (https://github.com/orientechnologies/orientdb/issues/7096)
  • Object:
  • Fixed wrong record dirty mark on field read
  • JDBC:
  • Improve interaction with managemnt tools about database metadata - Issue #7126
  • HA:
  • Fixed ConcurrentModificationException when requesting the database size - Issue #7149
  • Neo4j to OrientDB Importer:
  • Under Windows, the startup script was filing due to a code comment in a wrong position
  • Studio:
  • Fixed schema panel search - Issue #451

New in OrientDB Community Edition 2.2.16 (Feb 6, 2017)

  • FUNCTIONALITY ADDED OR CHANGED:
  • Studio:
  • A new OrientDB logo that includes the text "Community" or "Enterprise" is now shown according to the OrientDB Edition in use - Issue #407
  • Scripts
  • "logs" command has been added in orientdb.sh - Community Contribution #7130
  • HA:
  • More verbose logs when the download of a database is skipped because autoDeploy=false
  • Removed, by default, the ping to Hazelcast servers
  • BUGS FIXED:
  • Core:
  • Fixed Issue on binary compare of dates - Internal Issue #8227
  • Changed create callback parameter of async save for receive the valid new rid instead of invalid presave rid - Issue #7105
  • Fixed bug on dirty management during delete using record api
  • Graph:
  • Fixed regression introduced in 2.2.15 during vertex delete that caused stale pointers - Issue #7118
  • Fixed graph query of properties with kebab-case issue - Issue #7128
  • SQL:
  • SQL UUID function was returnng a Java Object instead of a String - Issue #7116
  • Fixed a NPE on gremlin() function execution with invalid input - Issue #5714
  • Fixed a NPE on iteration of a mix of regular and lightweight edges - Issue #7018
  • SQL A* function on was returning wrong results if the same query was being executed multiple times - Issue #7103
  • ETL:
  • Fixed NPE when database type is graph and "dbAutoDropIfExists": true is configured - Issue #7109 and Issue #7119
  • Lucene:
  • Add to indexes new metadata fields _CLASS and _CLUSTER to enable partitioned queries - Issue #6594
  • Studio:
  • Fulltext Lucene Index was being created as SBTREE - Issue #442
  • 'SEVER' was added as log type in the Studio Servers Management's Logs tab - Internal Issue #8176
  • Edge properties were ignored when creating a new edge by clicking on a vertex from the Graph Editor - Issue #438
  • High Availability:
  • Under certain conditions, synchronization of a node was failing - Issues #6999 and #7073
  • An "ODistributedStartupException: Error on registering local node on cluster" was happening when starting a cluster node from a system where Java 7 (instead of 8) was installed. Compatibility with Java 7 has now been restored - Issue #7059
  • Fixed stall in case the current database is newer than the one in the cluster
  • Scripts:
  • On console.sh split memory option and ssl options - Issue #7084

New in OrientDB Community Edition 2.2.15 (Feb 6, 2017)

  • FUNCTIONALITY ADDED OR CHANGED:
  • Studio:
  • Internal: Release process has been improved: a pom.xml file has now been added and Studio snapshots are now being published - Issue #426
  • Internal: A migration to WebPack and Babel has been done and Angular 2 has been added as dependency - Issue #419
  • The Schema panel has been improved: now there are two main categories of classes: "User" Classes and "System" Classes. In the "User" Classes there is an additional separation between "Vertex", "Edge" and "Generic" Classes - Issue #21
  • New forms to create Vertex, Edge and Generic Classes, along with their buttons, have been added in the Schema panel. It is now possible to specify number of clusters during class creation - Issue #431
  • ETL:
  • Logging in case of errors is improved with input data, executed command and exception message - Issue #6872
  • Neo4j to OrientDB Importer:
  • A new command line option -i, default to false, has been added. When -i is true the Neo4j to OrientDB Importer will create a unique index on the property Neo4jRelID, for all migrated edge classes. This will allow users to query relationships by original Neo4j relationship ids - Issue #9
  • The value of the parameter MaxDirectMemorySize has been rised from 4g to 512g in the startup scripts to avoid possible OOM errors during the import - Issue #14
  • Internal: The index MultipleLabelNeo4jConversion.Neo4jLabelList is rebuilt before starting schema migration. Affects only migrations from databases that include Neo4j nodes with multiple labels - Issue #12
  • BUGS FIXED:
  • Storage:
  • A NullPointerException was happening when calling ODatabaseDocumentTx.open() after all indexes were rebuilt - Issue #6542
  • A NullPointerException was happening when calling index.getVersion() - Issue #6651
  • Package sun.nio.ch in artifact orientdb-core was mistakenly marked as non-optional. Marked as optional now - Issue #7042
  • Inside a transaction, the parameter fromInclusive was ignored by the iterateEntriesMajor function - Issue #7052
  • A NullPointerException was happening in OSBTree.findBucket - Issue #7053
  • A NullPointerException was happening in OEngineLocalPaginated.changeCacheSize - Issue #7088
  • SQL:
  • MATCH statement with conditions on $matched was returning incorrect results - Issue #6931
  • SET was not working correctly with double numbers in scientific notation - Issue #7013
  • Studio:
  • When editing a function, the "Save" command was not enabled when changing the 'idempotent' checkbox - Issue #423
  • When creating a Role, the "Inherited Role" was not filled, even if saved correctly - Issue #421
  • The "In Edges" and "Out Edges" frames were mistakenly enabled during new Vertex creation before the Vertex was created - Issue #429
  • A refresh issue has been fixed when editing a Vertex: created edges were not shown even if correctly created - Issue #325
  • Backticks are now used in all Studio-generated queries - Issue #366
  • "Source" and "Target" vertex frames are now shown when editing an Edge, instead of the "In Edges" and "Out Edges" frames - Issue #435
  • When moving from the "Graph Editor" tab to another tab, and then returning to the Graph Editor, the previous query was lost. Now it appears again, like the graph. When logging into another database, the graph of the previous database was loaded. Now it is not loaded anymore - Issue #6923
  • Edges were not visualized in the Graph Editor if queried directly through a query like SELECT * FROM E - Issue #7039
  • Supportability:
  • Fixed an issue that caused "java.lang.Class" to be written in the log instead of "OMemoryAndLocalPaginatedEnginesInitializer" - Issue #6962
  • Other:
  • An export and import operation where lucene indexes were involved was resulting in empty indexes - Issue #6977
  • The script gremlin.sh was missing logic to figure out symlinks - Issue #7057

New in OrientDB Community Edition 2.2.14 (Jan 2, 2017)

  • Noteworthy Enhancements:
  • Symmetric Key Authentication: As of OrientDB 2.2.14 Symmetric Key Authentication has been provided as an Enterprise only feature.
  • Along with OrientDB 2.2.14 we have also released an new version of the Neo4j to OrientDB Importer. For those working in the Biometrics industry, this latest version includes enhancements that allow for more efficient Reactome database migrations. The Reactome database is an open source curated pathway database that provides pathway and network analysis tools for life science researchers. Other enhancements include:
  • Enhancements for Neo4j migrations in case original nodes have multiple Labels
  • Improvements in migration speeds.

New in OrientDB Community Edition 2.2.13 (Nov 15, 2016)

  • An exception in distribte mode【Local node 'node07' is not the owner for cluster 'test_25' (it is 'node08')】
  • Replica holds clusters owners
  • problems with creating EMBEDDEDLIST with next types: date, datetime, decimal
  • Cannot change cluster selection strategy for class
  • HA: avoid removing servers dynamically when they are registered
  • cannot open database anymore after 2.2.13 snapshots
  • Stacktrace when trying to run a distributed database with SSL
  • Can't rename a property with a period
  • Drop database with Lucene index complains
  • row updated on OConcurrentModificationException
  • Operator INSTANCEOF doesn't work in MATCH where clause after traverse
  • Unable to create abstract Vertex Type on OrientDB 2.2.12 on partitioned graph
  • query via Lucene returns incorrect results
  • using sequence gives "Error in transactional processing"
  • Error parsing query: insert into cluster:my_cluster_name (properties,...) FROM SELECT ...
  • indexing optional propertys
  • Graph Editor update problem
  • With ALTER CLASS, certain property values are case-sensitive
  • ODistributedConfigurationChangedException : Local node 'node-01' is not the owner for cluster 'myCluster' (it is 'node-03')
  • " Restore is not possible because write ahead log is empty." for replica server
  • Hook callbacks are called random number of times
  • Export/import from 2.2.4 to 2.2.10 failed
  • Errors when using IMPORT DATABASE with the remote protocol
  • Bug with Truncate messages
  • RecordId cannot support negative cluster id. Found: -659

New in OrientDB Community Edition 2.2.5 (Jul 20, 2016)

  • Fixed issues:
  • [Distributed] Not properly saving record?
  • Performance Tuning
  • Console "desc" or "info class" does not show property type
  • Encryption at rest accepts any key
  • Unable to store data to the database using orient db etl
  • Stuck on "Creating delta backup of database" [Distributed]
  • NPE in OEmbeddedRidBag if OIntentMassiveInsert is declared
  • Remove global transaction lock
  • @size variable is null in select
  • Using the uuid() function returns a Base64 encoding of the values
  • MicroTx support for Legacy Spatial Index
  • Automatic conversion between embedded rid bag and bonsai rid bag is broken in the tx mode
  • Migrate non-tx index updates to atomic operations manager

New in OrientDB Community Edition 2.2.4 (Jul 11, 2016)

  • Database setting for record conflict strategy is not taken at database load time
  • Spatial Functions Index explain
  • On CI envinronement Lucene tests failed because of wrong path but tests are passed
  • Concurrent INSERTs and DELETEs cause deadlock
  • error creating abstract class in studio (wrong order in syntax)
  • Distributed: Introduce DC quorum
  • Removed tracking from result sets.
  • Altering the name of a property if it already has a value returns both property names and values
  • Querying a previously abstract class returns an empty result set
  • Distributed: auto remove a node from the configuration after configurable seconds
  • About new lucene spatial plugin.
  • Migrate JDBC driver to Partitioned Pool
  • Caught I/O errors from localhost, trying to reconnect (error: java.io.InvalidClassException: com.orientechnologies.orient.core.exception.OCoreException: local class incompatible)
  • New record allocated but expected another rid
  • storage.diskCache.bufferSize does not take effect?
  • java.net.SocketException: Too many open files
  • Orient DB 2.1.17 thread frozen on FileDispatcherImpl.pread0
  • LiveQuery do not work after an exceptional shutdown of NodeJS
  • Index Engine error at startup for OrientDB 2.2.0
  • Type ANY does not support converting value
  • ODocument should use DB independent way for serialization
  • Record locking is broken in 2.2 version
  • Read graph action throws com.orientechnologies.orient.core.exception.OStorageException: Error on executing command.
  • [ Bynary Protocol ] When a wrong authentication token is provided the response lacks a field and break the protocol
  • OrientGraphMultithreadRemoteTest periodically fails
  • Error defining MIN value on a DATETIME property

New in OrientDB Community Edition 2.1.15 (Apr 5, 2016)

  • ClassCastException in OEmbeddedRidBag#next()
  • Threading deadlock with Edge unique indexes
  • serious error for version 2.1.12 (urgent)
  • Server deadlock with multiple concurrent binary clients
  • Cannot open local storage with mode=rw
  • critical error : no delection executed
  • Case insensitive collation has no effect when using "like" clause
  • OrientDB 2.1.5: composite key index not valid after delete
  • Invalid value of TX counter

New in OrientDB Community Edition 2.1.14 (Mar 31, 2016)

  • Unable to set timezone "Europe/Rome"
  • skip not working when filtering edges by field
  • rebuild index gets stuck after upgrade to 2.1.13
  • Manual index entries not persisted through a server restart
  • Composite index issue
  • Invalid JSON result on HTTP API request
  • com.orientechnologies.common.concur.lock.OLockException. File 'internal.cpm' is locked by another process, maybe the database is in use by another process. Use the remote mode with a OrientDB server to allow multiple access to the same database
  • Create sbtree bonsai cache for sbtreebonsai components not on logical instances
  • delete binary records via sql problem
  • Transaction propagation is not working
  • Opening Document Database in Windows with UNC path is not working
  • transaction commit no longer work for version 2.1.8
  • SErVER Can not change cache size in runtime because storage engine plocal was not registered
  • NPE while commiting unique index
  • ClassCastException when save a ODocument:OSBTreeException: Error during removing key OCompositeKey
  • GratefulDeadConcerts DB broken? or OrientDB bug?
  • OrientGraph.begin() does not increment TX nesting counter (2.1.x)
  • Why is that vertex persisted even though I am committing through different Tx?
  • Issue with OUser.name index
  • transaction roll back more times
  • Transaction rollbacked back issue.
  • ODB server doesn't totally respect the "storage.diskCache.pageSize" directive

New in OrientDB Community Edition 2.1.13 (Mar 15, 2016)

  • include() stopped working with inline filtering
  • OETL randomly stucks
  • console batch mode doesn't work as documented
  • JDBC Implementation
  • Support ability to rebuild indexes in production
  • Tomcat redeploy using OrientGraphFactory - still happening
  • Support for Decimal Type
  • Server throws OOM and crashes on heavy load
  • ORecordDuplicatedException upon new record after cluster has been truncated but index still has it
  • Parameter Replacement with Create Edge
  • the server truncates files before drop database
  • Can't create user in 2.1.5
  • OrientTokenHandler prevents daemon from stopping
  • ODatabaseDocumentTxPooled.getUser() sometimes is returning null under heavy load
  • _NOT_PARSED_ in embedded property

New in OrientDB Community Edition 2.1.12 (Mar 2, 2016)

  • Changed superclass causes objects to be unqueryable with index
  • OrientDB 2.1: OCommandSQLParsingException
  • Modificationlock
  • ODatabaseDocumentTx isClosed returns false after server shutdown
  • NullPointerException on new ORecordIteratorClass if no connection
  • Tons of warning "Maximum amount of pinned pages is reached , given page..."
  • incorrect calculation of disk free space causing failure
  • Filtering on edge property returns NO results
  • orientdb with two db connection pools creates clusters in wrong database on open
  • Index creation hang performance
  • MBean for read cache cannot be registered / unregistered
  • OPartitionedDatabasePoolFactory returns a closed pool
  • COLLATE ci on embedded collection
  • Inside [] support full SQL functions and operators [moved]

New in OrientDB Community Edition 2.1.11 (Feb 15, 2016)

  • Lucene Manual Index with multiple keys bug
  • Added fixes for auth timing attacks for OrientDB 2.1.x contributor friendly security
  • serCustom method not run outside database bug workaround-available
  • Delete Multiple Records bug
  • Find References on link within an embedded object bug
  • Explain command fails with wildcard in fetchplan bug resolved
  • Java remote client runs out of memory
  • Using built-in constant-time comparison function to avoid timing attacks
  • contributor friendly security
  • Security vulnerability + preferred disclosure channel security
  • ArrayIndexOutOfBoundsException on dropVertexType/dropClass bug resolved
  • Escaped values do not work properly in the let block bug
  • Error in deleteOrfans bug

New in OrientDB Community Edition 2.1.10 (Feb 5, 2016)

  • exception in number promotion or no existence of number type suffix for constants
  • Studio and creating databases with a space in the name
  • Issue importing database into 2.1.9
  • UNWIND returning empty resultset
  • question for new batch functionality (if block) - exception
  • Avoid System.exit on distributed plugin startup fatal error
  • DELETE EDGE not removing all identical lightweightEdges
  • can't clear intent in console with OrientDB 2.1.9
  • How to fix illegal state in vertex field
  • ETL test NPE
  • Can't migrate database from DB 2.1.5 to 2.1.9
  • Failed to create Class property results in property created.
  • Composite index is very slow | Performance degradation
  • Tests are failing
  • Audit logs incomprehensible
  • OrientDB JDBC driver with Apache Drill
  • Import database fail in distributed
  • Problem autodeploy new database on node join
  • OrientJS - Lexical error in batch
  • orientdb 2.0.16 exception with java 1.7
  • Java NullPointerException in Profiler (Studio)
  • java.lang.NullPointerException for studio profiler
  • SELECT syntax with = does not work for embeddedlist
  • Problem to start the Workbench
  • query count of vertices is wrong using DICTIONARY Index

New in OrientDB Community Edition 2.1.9 (Jan 7, 2016)

  • Fixed bugs:
  • Workaround for issue #5424. Fixed invalid encoding when using URIs as…
  • LIMIT and SKIP not working with named parameters
  • GraphSail is broken because of invalid edge lable encoding
  • OSQLNonBlockingQuery misbehaves on bad SQL input

New in OrientDB Community Edition 2.1.7 (Dec 9, 2015)

  • Fixed bugs:
  • OOfflineClusterException Message: Cannot read a record from the offline cluster
  • Error in Pipeline execution: com.orientechnologies.orient.core.exception.OSerializationException: Impossible serialize value of type class net.sourceforge.jtds.jdbc.ClobImpl with the ODocument binary serializer
  • Cannot rejoin cluster on 2.1.6
  • NPE during tests
  • Improve OrientGraphNoTx usage
  • Error parsing query in a transaction
  • Distributed: on startup if there are any backup errors, just drop the old database
  • Properties of the same type and name (even inhereted) are in conflict when trying to move a class (even inside the same hierarchy)
  • dserver.sh has wrong first line
  • Second level chained path functions ingore multiple class/labels parameters
  • ETL merge transformer doesn't allow to update a vertex anymore
  • ETL Merge transformer in not working
  • Functions not available after an import into in memory database
  • NPE calling method against detached POJO after DB is closed
  • [MERGE]Stop working in odb214
  • Distributed: node name problem
  • Can not create class in distributed mode
  • Distributed: asynchronous inserts ignore unique indexes

New in OrientDB Community Edition 2.1.6 (Nov 25, 2015)

  • Core:
  • How do you set a null value in orientdb-server-config.xml
  • Opening new database connection can be real slow
  • 'from' property name gives exception
  • Traverse strategy breadth_first won't work with LIMIT keyword
  • security issue: (blueprints) commons-collections
  • Records repeated with `order by @rid desc`
  • Error deploying distributed databases when using symlinks
  • ConcurrentModificationException in distributed setup with linked sets
  • Studio doesn't work in Community Edition
  • Results can be wrong with lucene METADATA {ignoreNullValues:false}
  • set config via resource instead of File
  • Handle quorum better when synchonizing
  • Parse bug for select from ... where matches with parameter
  • Named Parameters in Traverse statements are not replaced
  • OCommandSQLParsingException - Batch usage of $0 in traverse
  • strictSQL parser: "instanceof" doesn't work anymore
  • NPE within Transaction
  • Please make jdbc-all JAR available on Maven
  • Make JDBC driver auto-register
  • Default loglevels when downloading new distribution set to fine
  • 2.1.2 - NullPointerException at com.tinkerpop.blueprints.impls.orient.OrientEdge.remove
  • After class deletion:com.orientechnologies.orient.core.index.OIndexException: Error on rebuilding the index for clusters
  • Using a Set in distributed mode causes a "Cannot Route Command" exception
  • Update two vertex in batch mode leads to wrong result
  • Reusing query in distributed environment can potentially lead to an endless loop

New in OrientDB Community Edition 2.1.5 (Nov 11, 2015)

  • Fix for #5238. Count was broken when counting new vertices in same tr…
  • Fix for count issue within transaction wasn't merged into develop and/or 2.1.x
  • graph.getVertices api fallback query
  • $depth gives wrong result when there is more than 1 path between two nodes
  • Database broken please help! - Binary protocol, serialization issue
  • Binary Protocol: recordPos not returned on INSERT
  • "matches" does not work on standards
  • Improve loading of set of rids
  • java.util.ConcurrentModificationException on distributed server on insert
  • nullValue property of CSV extractor only working with "NULL"
  • OrderBy and Limit - wrong order?
  • sql group by drop duplicate keys
  • Escaping backslash in embedded object causes it to be doubled
  • java.lang.NoSuchMethodError: com.sun.jna.Platform.isAIX()Z
  • Expand intersect is not working
  • [Documentation] Some images broken
  • delete edge with subquery does not work nor gives exception
  • Cannot find a command executor for the command request error on Windows
  • Can't insert data in distributed setup: Cannot find best cluster for class 'BDH_fe_nl_EXHIB' on server 'test1-dev'. ClusterStrategy=local
  • Not able to generate schema's with reserved keywords, while these classes can be created from the console
  • on delete edge getting incompatible type error and wrong record to be removed
  • SQL comment throws OCommandExecutorNotFoundException in OrientDB Studio
  • [2.0.5][2.0.11][Durability] Unique Index does not find match for a select query
  • Creating index on Datetime field trims the time part (v1.7.10)
  • Embedded type in schema : OValidationException

New in OrientDB Community Edition 2.1.0 (Aug 6, 2015)

  • Enhanced Security:
  • Auditing functionalities facilitate adoption of OrientDB in highly regulated environments. OrientDB Enterprise Auditing allows customers to track Change, Read, Update and Delete (CRUD) operations on every object. Polymorphic auditing allows objects to inherit auditing directives, further simplifying policy definitions.
  • 24×7 Support Services Available Globally:
  • OrientDB is formally switching to a 24×7 support offering to cover around-the-clock requests.
  • Rock Solid Stability:
  • Thousands of users have tested 2.1 in highly concurrent environments with extremely large datasets. Extensive feedback, focused effort and six release candidates have made this version the best ever. Together the OrientDB team and external contributors closed an impressive total of 389 issues with this release.

New in OrientDB Community Edition 2.1 RC 5 (Jul 20, 2015)

  • Bug fixing:
  • SQL Parser error
  • Server: support hot-change of server configuration through HTTP command
  • ShortestPath optimization
  • shortestPath() doesn't check timeout
  • Error during transaction commit on a replica node in a distributed mode
  • Unable to parse scientific notation in JSON file using ODocument.fromJSON method
  • ClassNotFoundException when running in distributed mode in OSGi environment
  • Shutdown Issue 2.0.11?
  • Exception in distributed configuration: com.orientechnologies.common.exception.OException: Cannot find best cluster for class
  • Exception: EOFException (OrientDB 2.1-rc4)
  • Exception: java.lang.NumberFormatException (OrientDB 2.1-rc4)
  • Transaction was rolled back more times than it was started
  • Deadlock when running a query in Orient Studio in a distributed mode
  • Incorrect depth value in traverse query in a distributed mode
  • Deadlock (distributed environment) 2.1 rc4
  • ParseException: Encountered
  • OCommandSQLParsingException: Error on parsing command at position #0: Encountered " "from ""
  • Distributed: support for new SQL commands for manual synching database/clusters
  • Sharding: improve consistency on results fom Map/Reduce query
  • Improve algorithm of node selection in distributed architecture
  • Avoiding recycling version of deleted records
  • NullPointerException after commit
  • Incomplete delete edge notification in async distributed mode
  • Use of SecureRandom can affect performance
  • 2.1-rc4 memory leaking with edges iteration.

New in OrientDB Community Edition 2.1 RC 4 (Jun 18, 2015)

  • Bug fixing: 45 issues from 2.1-rc3:
  • Deadlock bug
  • Creating edge between non-vertex classes bug
  • SQL: optimize database command enhancement
  • Remove creation of `ORIDs` class enhancement
  • error in delete command from a index query(error also in log result ) bug
  • Multi-Threading: avoiding misleading behavior for ODatabaseDocumentTx enhancement
  • Property lost when updating vertex in an auto-merge mode bug
  • import with migrateLinks=true fails on links within embedded structures bug NullPointerException when querying vertex bug
  • Distributed: commands against sharded classes should return composite results bug
  • Distributed: distributed transactions against sharded classes bug
  • NullPointerException when querying out vertices bug in progress
  • Querying vertex hangs bug
  • Sql select fail on from a class with 'edge' name it fail also with name escaping bug in progress
  • Support minimum clusters per class, not only as database setting enhancement
  • Classes lose custom fields after import / export operations bug
  • Asynchronous replication mode (1 node) - properties and edges lost for some vertices bug
  • Cannot obtain an OUser instance when the username contains a single quote character (')
  • Graph: case insensitivity on edge class names (label) is only partial bug
  • "Removing disconnected network channel '127.0.0.1:2424/XXX'"/"Database 'remote:localhost/xxx' is closed" when executing queries bug
  • Index stores temporary RIDs for vertices created in transaction (remote storage) bug
  • deadlock on mixed create / get operations bug in progress
  • ODocument.fieldType for vertex property returns null until the vertex is reloaded bug
  • BROWSE CLASS throws a NullPointerException on fresh install bug
  • Heap Memory Consumption high during continues ETL updates bug
  • Massive insertion of edges put OrientDB in pause for long time bug performance
  • Graph performance problems with OrientDB 1.7.x / 2.0.x when searching for edges performance
  • Huge fetchingFromTargetElapsed
  • fetchplan :-1 does not work bug
  • Error on creating ETL processor
  • Using reserved words in let statement variables
  • OrientDB isn't doing short-circuit evaluation
  • Traverse in some case with additinal condition return more value than without.
  • SQL Parser - Parentheses
  • delete vertex with limit throws errors
  • expand function ignores other projections
  • UNIQUE HAS INDEX getting corrupted
  • Error parsing dates of schemaless embedded documents bug
  • Reactive Query enhancement
  • New EXPAND operator to extract Master/Details info - enhancement

New in OrientDB Community Edition 2.1 RC 3 (May 23, 2015)

  • Bug fixing - 38 issues from 2.1-rc2:
  • Distributed: tx coordinator should auto-retry in case of record locked
  • Distributed: inconsistency during concurrent tx that fail and fix the tx
  • Vertex version increased by 2 when creating edge in async replication mode
  • DB class files corruption
  • Console: creation of available methods is done everytime
  • Console: move vertex is ignored
  • Security problem running distributed when a user is deleted and recreated with the same name
  • DeadLock when using distribute mode
  • Hooks re-entrance issue
  • NPE in OAtomicOperationsManager prevents creation of database on AIX
  • Indexes removed when after 2.1-rc2 upgrade
  • request.getHeaders()
  • Schema Evolution
  • Can't ORDER BY embedded map elements
  • MOVE VERTEX doesn't work with many vertices
  • Create distributed lifecycle listener to catch events of node join/left
  • Management of record locks #3631 and #3641
  • Index is screw up
  • [Transactions] Are they really supported by the binary protocol?
  • Graph API: getVertexByKey not working
  • The field 'Client.matters' has been declared as LINKSET but contains a null record (probably a deleted record?)
  • sql -critical!!! NumberFormatException during insert long values
  • JSON API's error messages are not JSON
  • NumberFormatException when select contains an expression with a LONG value
  • [ Binary Protocol - OrientDB All versions ] Token Session Expired / Bad Token

New in OrientDB Community Edition 2.1 RC 2 (May 6, 2015)

  • Bug fixing - 32 issues from 2.1 RC 1:
  • Cannot create class with multiple inheritance
  • In case of perenthesis in the order by clause the parser fail
  • Support Multiple inheritance in console
  • Syntax of Insert and Update of embedded document types are inconsistent
  • Optimize Traverse
  • Query execution on single node returns different results than in distributed mode
  • SQL. Traverse with BREADTH_FIRST raise error with new SQL parser
  • Console: support for Multiple inheritance
  • property's attribute 'read only' problem
  • Demo function in docs is not consistent to behaviour
  • Alter class name of Edge type can drive to issues on graph navigation
  • Migration ANT tests -> MAVEN
  • Truncating class ignores super/sub-classes (leaves references in superclass indices, leaves subclass records in place)
  • Orient storage doesn't support Windows UNC paths
  • default property doesn't work with roles orientdb-community-2.1-SNAPSHOT
  • SELECT .. ORDER BY syntax fails with nested fields
  • Test Env: move all ANT tests to MAVEN
  • NPE when creating Lucene Index
  • OutOfMemory Exception when creating Databases
  • Deadlock issue on mass update
  • Management of record locks
  • [2.1] record.rid returning an object instead of proper RID
  • removecluster
  • SQL batch-command does not return correct values for DELETE
  • SQL parser issue than inserting decimal values

New in OrientDB Community Edition 2.1 RC 1 (Apr 17, 2015)

  • Schema:
  • Support for Multiple inheritance where classes can extend from multiple super classes
  • Support for default values (functions are allowed)
  • Core:
  • Improved WAL management (Journal) to enforce Consistency with transactions
  • Fetch-plan supports wildcard for names
  • SQL:
  • New SQL parser by default on with new databases and off with those created with old versions
  • Prepared Statements and substitution of parameters and target
  • New Live Query to write Reactive applications
  • New optimization about using of indexes in sub-classes if present
  • New concat() function
  • Distributed:
  • Support for slave (read-only) nodes
  • Included Hazelcast-all.jar including also Cloud support
  • ETL:
  • Skip duplicated vertices
  • Bug fixing:
  • 104 issues in total

New in OrientDB Community Edition 2.0.7 (Apr 17, 2015)

  • Bug fixing - 10 issues from 2.0.6:
  • Compatibility problems between OrientDB 1.7.8 and 2.0.6 bug client In Progress
  • It's possible to create a class with '.' in the name
  • Fix for #3862
  • Transactional issue in the binary driver (detected in `oriento`)
  • Fix for #3846. Count was broken when counting new vertices in same transaction
  • Count is broken when adding a vertex when count is used in the same transaction
  • UNIQUE DATETIME index on edge not enforced
  • Error deserializing record
  • Unable to export database while using switch with multiple values
  • Cluster already belongs to class on re-named class

New in OrientDB Community Edition 2.0.6 (Apr 17, 2015)

  • java.sql.DatabaseMetaData.getTables(): wrong order of columns in ResultSet
  • Fixing when using a token issued for a user in subclass of OUser
  • contributor friendly
  • Count is broken when deleting a vertex when count is used in the same transaction
  • NPE while retrieving field from document
  • Whenever you try to raname class of edges, it's objects looses their chain of inheritance. wontfix
  • Commit transaction does nothing and produces no error messages
  • UPSERT should manage OConcurrentModificationException
  • Export Records result count
  • MOVE VERTEX no longer updates edges
  • Fixed size of ArrayBlockingQueue for asynchronous replication does not allow full replication of data.
  • Cannot route READ_RECORD operation for #-1:-2 to the node
  • Adjusting hazelcast timeouts and lack of errors in async mode
  • OConcurrentModificationException while creating relations between verticies wontfix
  • Unable to see asynchronous replication working
  • java.lang.ArrayIndexOutOfBoundsException: 0 on remote select after restore from backup
  • Wrong number of results is returned when LIMIT is used with intersecting indexes sql
  • Distribute shutdown issue 'WARNING Distributed server is not yet ONLINE '
  • OrientDB 2.0.1 fails to start on Linux using OpenJDK 6 (IcedTea)
  • OException: Cannot find best cluster for class

New in OrientDB Community Edition 2.0.5 (Apr 17, 2015)

  • Problem with edge creation using binary protocol in distributed mode bug distributed
  • Problem with edge creation using console in distributed mode. distributed
  • Bug in 2.0.4? Schema violations are not detected in transactions bug
  • NullPointerException in OObjectProxyMethodHandler.getDocFieldValue bug objectdb
  • "commit retry 100" seems to always cause repeated execution bug
  • OrientElementIterator throws NPE (orient 2.0) bug
  • NullPointerException during orient shutdown (2.0.4) bug
  • Transactions fail in distributed mode (com.orientechnologies.orient.core.exception.ODatabaseException: Error on retrieving record #-1:-3 (cluster: null)) bug distributed
  • Database closed bug
  • Wiki Download page / update latest snapshot versions + dependency inconsistencies in Sonatype documentation
  • GraphAPI and detached properties

New in OrientDB Community Edition 2.0.4 (Apr 17, 2015)

  • fix partial delete multi value index unexpected behavior
  • sql batch return invalid results bug sql
  • Fix for #3644
  • Graph transaction auto-started even when explicitly told not to, when using OrientGraphFactory. bug
  • OrientEdgeIterator - Found a record (#0:0) that is not an edge bug client core medium priority
  • Some wrong query in console produce around 40 million lines of Exception bug low priority remote
  • Issues with Dynamic-Hooks RC-1 bug

New in OrientDB Community Edition 2.0.3 (Apr 17, 2015)

  • Fixed:
  • Work around for NullPointerException in OpenJDK if no args
  • Query throws NoSuchElementException
  • Wrong syntax in documentation
  • SQL: let clause are execute twice
  • Update dserver.sh to allow ./some/path/to/dserver.sh
  • small javadoc change
  • Property renaming works incorrectly
  • OrientDB 2.0 - Orient server shutdown hangs in an embedded app running on tomcat 7
  • After closing db, exception Class User already exists in current database
  • ODocument#fieldType returns null

New in OrientDB Community Edition 2.0.2 (Apr 17, 2015)

  • traverse out("E") doesn't work
  • Patch 1
  • unable to access results of custom functions when called from sql bug
  • 3edge creation increases version number by 2 in distributed+embedded mode enhancement
  • 2"java.lang.OutOfMemoryError: GC overhead limit exceeded" on massive Insert bug
  • Replication and Transaction problem bug client distributed ETA: 4hour
  • Update OGlobalConfiguration.java contributor friendly documentation
  • Warning log during backup bug low priority
  • OrientDB 2.0: A record isn't created on 3-node cluster bug
  • Getting cyclic error in console - Error on reading console input: null bug
  • #3474 opened 14 days ago by degustator
  • Orient 2.0 final - wal file size growing more than the storage.wal.maxSize bug client

New in OrientDB Community Edition 2.0.1 (Apr 17, 2015)

  • Bug fixing: 10 issues from 2.0.
  • OrientDB 2.0 - create index with COLLATE
  • transaction roll back more times
  • Server still got lock after load testing
  • Lightweight Edge LinkBag Index Does Not Enforce Unique Constraint (OrientDB 2.0 Final)
  • ODocument.toJSON broken when ODocument contains null linked records
  • Distributed: error on creating cluster
  • DB building suspended with message 'Max cache limit is reached (3000 vs. 3001), sync flush is performed'
  • NPE in collate case insensitive index creation
  • [Distributed embedded] ArrayOutOfBound on browsing a class
  • Embedded property : case insensitive collate not working

New in OrientDB Community Edition 2.0 (Jan 21, 2015)

  • Core: logged database name on server and embedded messages
  • SQL: added UNSAFE to CREATE PROPERTY command to avoid slow checks auto conversion from map when working on EMBEDDED types
  • Bug fixing: 54 total issues from 2.0-RC2.

New in OrientDB Community Edition 2.0 RC 2 (Jan 13, 2015)

  • This version contains no enhancements, but rather 86 issues resolved from 2.0-rc1.

New in OrientDB Community Edition 1.7 (Jun 27, 2014)

  • Core:
  • new “minimumclusters” to auto-create X clusters per class
  • new cluster strategy to pick the cluster. Available round-robin, default and balanced
  • added record locking via API
  • removed rw/locks on schema and index manager
  • cached most used users and roles in RAM (configurable)
  • Server:
  • New support for SSL connections on binary and HTTP protocols
  • Console:
  • New “script” command to execute multiple SQL statements + transaction control
  • New “next” command to move the cursor on the next record in the result set
  • New “pref” command to move the cursor on the previous record in the result set
  • New “move ” command to move from current record by executing a predicate
  • New “eval ” command to evaluate a predicate against current record
  • Ability to ignore errors by setting “set ignore = true”
  • Distributed:
  • New support for sharding
  • Simplified (JSON) configuration
  • Graph:
  • New functions to return the traversed items: traversedVertex(), traversedEdge() and
  • traversedElement()
  • addEdge() can takes ORID to use implicitly last record version
  • SQL:
  • New PARALLEL keyword to run the query on multiple threads
  • New “INSERT INTO … SELECT” to copy records
  • New “INSERT INTO … RETURN ” to return expressions on INSERT
  • New “UPDATE … RETURN ” to return expressions on UPDATE
  • distance() accepts measure unit (default = km)
  • HTTP:
  • added support for context variables in SCRIPT command
  • Indexes:
  • Added Full-Text Lucene indexes (as plugin)
  • Added GEO Spatial Lucene indexes (as plugin)
  • Added WAL (Journal) support for Hash-Index so can be used in Transactions
  • Added NULL support for composite and non-composite indexes
  • Full-Text can be configured through METADATA keyword
  • Full-Text now indexes also sub-words
  • Improved SQL optimizer by avoiding calling evaluate() when not needed
  • LINKSET types can be indexed now
  • RID can be used on composite indexes
  • Studio:
  • Bookmarks for queries
  • Ability to interrupt running commands
  • Bug fixing: 135 issues in total