Features and Improvements
- Visor CMD: Added support for scan of near cache. [#IGNITE-2093]
- .NET: Added SSL configuration for node-to-node links [#IGNITE-3111]
- REST: Added support for Java built in types (boolean, int, long, ..., UUID) for put/get operations. [#IGNITE-3345]
- Added continuous queries with transformers [#IGNITE-425]
- DML update via LINQ [#IGNITE-5298]
- Web Console: Configuration reworked to new modern design with improved usability. [#IGNITE-5466]
- Default and recommended JVM options are updated [#IGNITE-6521]
- Implemented distributed version of SVM(support vector machine algorithm. [#IGNITE-6585]
- JDBC thin driver: SSL support [#IGNITE-6625]
- Propagated query metrics to .NET: ICache.GetQueryMetrics(), ICache.ResetQueryMetrics(). [#IGNITE-6681]
- ODBC: Added SSL support [#IGNITE-6810]
- Web Console: Upgraded build to use Webpack 4. [#IGNITE-6816]
- SQL: implemented COPY command for fast data load [#IGNITE-6917]
- Changed Log4J and Log4J2 adapters to update active logger configuration when configuration source file is modified. [#IGNITE-6946]
- JDBC thin driver: multiple addresses in connection string [#IGNITE-7029]
- Web Console: Implemented initial E2E tests. [#IGNITE-7064]
- Added optimizations for Spark Dataframe support [#IGNITE-7077]
- Added DEB package and improved RPM package [#IGNITE-7108]
- Thin JDBC: Added FQDN to multiple IPs support for connection establishment [#IGNITE-7192]
- Implemented Zookeeper discovery SPI [#IGNITE-7222]
- Client node should not create folder for binary_meta as it doesn't persist it to disk [#IGNITE-7252]
- JDBC thin driver: streaming mode [#IGNITE-7253]
- Introduced log markers support to IgniteLogger and standard DEV_ONLY marker [#IGNITE-7284]
- Implemented Linear SVM for binary classification. [#IGNITE-7316]
- .NET thin client: SSL support. [#IGNITE-7329]
- Jva thin client: initial implementation [#IGNITE-7421]
- Simple username/password authentication [#IGNITE-7436]
- Implemented distributed partition based datasets for ML algorithms. [#IGNITE-7437]
- Implemented LSQR-based linear regression. [#IGNITE-7438]
- Added support for authentication parameters to control.sh utility. [#IGNITE-7485]
- SQL COPY command: CHARSET option for FORMAT CSV [#IGNITE-7535]
- .NET: Dynamic service proxies [#IGNITE-7561]
- BinaryMetadata exchange is triggered only if there are actual changes in BinaryMetadata [#IGNITE-7699]
- Add option IGNITE_SQL_FORCE_LAZY_RESULT_SET to force all SQL queries on node 'lazy'. [#IGNITE-7712]
- REST: Enhanced GET_OR_CREATE_CACHE command with optional templateName, backups, cacheGroup, dataRegion and writeSynchronizationMode options.[#IGNITE-7725]
- Added handling of critical failures in system workers (IEP-14) [#IGNITE-7772]
- REST: Implemented possibility to get values from cache inserted via API or SQL. [#IGNITE-7803]
- ODBC: Support multiple addresses in connection string [#IGNITE-7811]
- Improved Apache Ignite and Web Console docker image build [#IGNITE-7821]
- ODBC: Implemented username/password authentication [#IGNITE-7852]
- JDBC thin driver: changed default socket buffer size to 64Kb. [#IGNITE-7860]
- Control utility: Added confirm on dangerous operations. [#IGNITE-7864]
- ODBC: Added support for SQL_ATTR_LOGIN_TIMEOUT [#IGNITE-7888]
- DML: improved deadlock handling [#IGNITE-7984]
- REST: Added support for new authentication API. [#IGNITE-8002]
- SQL: Authorization for CREATE TABLE and DROP TABLE commands. [#IGNITE-8135]
- JDBC thin driver: semicolon now can be used as delimiter for properties in URL string [#IGNITE-8148]
- The new method was added IgniteMXBean.getCurrentCoordinatorFormatted() to show string representation of current coordinator. [#IGNITE-8430]
Fixed
- Opportunistically reopen caches after client node rejoins topology. [#IGNITE-2766]
- Fixed iIncorrect mapping of smallint cassandra type. [#IGNITE-5779]
- Fixed bug with ScanQuery transformer which applies to the first result page only [#IGNITE-5804]
- Fixed null value being passed to entry processor when such entry actually exists [#IGNITE-6083]
- Web Console: Added support for persistence in demo mode. [#IGNITE-6094]
- Partition eviction now does not block exchange [#IGNITE-6113]
- Detailed information about fields serialization/deserialization errors added to BinaryMarshaller [#IGNITE-6860]
- Fixed problem when cluster could not survive after IgniteOOM [#IGNITE-7019]
- IgniteReflectionFactory properly handles primitive data types. [#IGNITE-7193]
- Fixed fillFactor memory metric value. [#IGNITE-7489]
- Fixed contention while executing parallel atomic single get operations. [#IGNITE-7508]
- Fixed affinity to always choose primary node from one of the owners when persistence is enabled [#IGNITE-7514]
- Properly throw exception from IsolatedUpdater of DataStreamer [#IGNITE-7519]
- Fixed cache metadata corruption during concurrent checkpoint and cache destroy [#IGNITE-7540]
- Fixed SQL query hang if grid contain nodes not in baseline. [#IGNITE-7628]
- Fixed performance regression in FullPageIdTable when page replacement starts [#IGNITE-7638]
- C++: Fixed bug with LocalSize cache method [#IGNITE-7682]
- Fixed bug with checkpoint buffer overflow with enabled throttling [#IGNITE-7751]
- Fixed LOG_ONLY and BACKGROUND modes to be power-crash resistant [#IGNITE-7754]
- Share persisted marshaller mappings when connecting [#IGNITE-7794]
- After adding this commit IGNITE-8210 the problem is not reproduced. A corresponding unit test 'testOwningPartitionsOnRebalance' was added to the code. [#IGNITE-7847]
- Web Console: Fixed enum values decoding for SQL queries. [#IGNITE-7880]
- .NET: LINQ: fixed GroupBy and Where issue [#IGNITE-7889]
- Fixed the issue when ComputeTaskFuture.get() threw a trimmed exception chain: now full exception chain is propagated to the caller; the exception thrown from IgniteCompute methods may now differ from the previous behavior. [#IGNITE-7904]
- .NET: Fixed hang caused by mishandled exception during custom cache store deserialization [#IGNITE-7928]
- Fixed incorrect finishing of implicit transactions on unstable topology [#IGNITE-8000]
- Optimized checkpoint lock acquisition for demander thread [#IGNITE-8019]
- Destroy caches with enabled persistence now will not survive grid restart. [#IGNITE-8021]
- Preventing infinite iterations of corrupted B+Tree. New IGNITE_BPLUS_TREE_LOCK_RETRIES property was added default value is Integer.MAX_VALUE.[#IGNITE-8049]
- Fixed issue with local partitions size changing inside checkpoint write lock [#IGNITE-8053]
- Fixed potential deadlock during preloading. [#IGNITE-8087]
- Fix service deployment from nodes outside of baseline topology. [#IGNITE-8134]
- Fixed hanging of node stopping in case when node is invalidated and persistence is enabled [#IGNITE-8166]
- Fix service redeployment on cluster reactivation. [#IGNITE-8205]
- Fixed crash recovery problem when index tree could reference to removed data pages [#IGNITE-8320]
- ODBC: Fixed bug that prevented to establish SSL connection to remote host in some cases [#IGNITE-8394]
- Fixed control utility hanging when connected to a joining node with PME [#IGNITE-8423]
- Client nodes are excluded from split-brain analisys. Split-brain resolving algorithms are revisited and improved [#IGNITE-8422]
- Added proper handling of broken compacted WAL segment [#IGNITE-8429]
- Fixed incorrect calculation of client affinity assignment with baseline [#IGNITE-8476]