Features and Improvements
- Introduced API for datasets [#IGNITE-7205]
- Ability to disabled WAL for cache in runtime through IgniteCluster API or ALTER TABLE command [#IGNITE-7003]
- SQL: implemented COPY command for fast data load [#IGNITE-6917]
- Added JMX metrics for memory regions [#IGNITE-6902]
- Implemented K nearest neighbor algoritm [#IGNITE-6880]
- Added basic import/export functionality for ml models [#IGNITE-6640]
- SQL: added ALTER TABLE DROP COLUMN support [#IGNITE-5949]
- Introduced API for ML model and trainers [#IGNITE-5847]
- Implemented Fuzzy c-means algorithm [#IGNITE-5246]
- Added decision tree algorithm [#IGNITE-5218]
- Implemented gradient descent for OLS Linear Regression [#IGNITE-5217]
- Spark Data Frames support [#IGNITE-3084]
- REST: Enhanced GET_OR_CREATE_CACHE command with optional "templateName", "backups", "cacheGroup", "dataRegion" and "writeSynchronizationMode" options [#IGNITE-7725]
- Client node should not create folder for binary_meta as it doesn't persist it to disk [#IGNITE-7252]
- Custom thread pools monitoring added [#IGNITE-7217]
- Fixed cache metrics being updated in timeout-worker thread [#IGNITE-6923]
- Added detailed memory consumption on start and OOM reporting [#IGNITE-6814]
- Introduced the common mechanism for group training of models [#IGNITE-6783]
- Added Java 9 support [#IGNITE-6728]
- SQL: Added DEFAULT support to CREATE TABLE command [#IGNITE-5623]
- ML: perfomance optimizations for distributed operations [#IGNITE-5114]
- REST: Added support for Java built in types (boolean, int, long, ..., UUID) for put/get operations [#IGNITE-3345]
Fixed
- Fixed MBeans names escaping to handle special symbols [#IGNITE-7334]
- Fixed issue with incorrect partition state recovery leading to "Page is corrupted" message on node restart [#IGNITE-7278]
- Fixed future hang on non-serializable cache response [#IGNITE-7239]
- ODBC: Fixed table names returned by SQLTables for DDL-created tables [#IGNITE-7189]
- SQL: added optional on-heap row cache [#IGNITE-7173]
- Support Ignite MR work in Kerberized environment without IGFS [#IGNITE-6992]
- Fix array serialization on big-endian architectures [#IGNITE-6952]
- Binary serializer fixed for cases when writeReplace/readResolve methods should be found inheritable [#IGNITE-6944]
- Added handler to stop node when IO error is encountered [#IGNITE-6832]
- ScanQuery transformer applies to all result pages [#IGNITE-5804]
- Fixed calculation of memory policy size [#IGNITE-5755]
- Jobs related cluster metrics are fixed (job waiting time and average waiting jobs) [#IGNITE-5731]
- Use PeerDeployAware for stream transformer [#IGNITE-3935]
- SQL: ALTER TABLE DROP column may break certain SQL queries [#IGNITE-7843]
- .NET: Update WALMode configuration [#IGNITE-7767]
- SQL COPY: fix file name handling [#IGNITE-7709]
- Unable to run example classes for JDK9 in IDEA [#IGNITE-7613]
- GridClusterStateProcessor#compatibilityMode flag never gets reset to false [#IGNITE-7506]
- Node not in baseline topology should not initialize local partition [#IGNITE-7505]
- Partition update counters may be inconsistent after rebalancing [#IGNITE-7500]
- Web console: incorrect code generation [#IGNITE-7461]
- Fix wrong batch logic in distributed MLP training [#IGNITE-7456]
- Wrong package in IgniteExamplesMLTestSuite after it was moved per IGNITE-7203 [#IGNITE-7454]
- PageSnapshot uses direct invocation of DirectBuffer.clean() [#IGNITE-7453]
- Always use RandomAccessFileIO for FileWriteAheadLogManager [#IGNITE-7450]
- WAL: Written bytes amount can be updated by wrong value and fail with assertion error [#IGNITE-7412]
- OptimizedMarshallerIndexNameTest doesn't kill the grid after the test [#IGNITE-7400]
- Fix wrong cache configuration for MLP training data [#IGNITE-7397]
- IgniteUtils.offheapSize may throw NullPointerException [#IGNITE-7396]
- Removed entry is not re-created in IgniteTxManager.lockMultiple [#IGNITE-7377]
- Perform right cleanup for MLPGroupUpdateTrainer [#IGNITE-7375]
- File channel associated with WAL can be closed by interruption [#IGNITE-7365]
- Distributed MLP cleanup/refactoring [#IGNITE-7350]
- Caches info is updated on cluster change finish message in discovery thread [#IGNITE-7308]
- Javadoc warning for RProp in MLP [#IGNITE-7297]
- Log of thin client is not disabled in special case [#IGNITE-7295]
- JDBC thin driver may list table name twice [#IGNITE-7277]
- Web console: fix reconnection after change profile [#IGNITE-7257]
- "Schema not found" error when setting streaming mode for JDBC driver [#IGNITE-7248]
- Missing README.txt for ignite-dev-utils module [#IGNITE-7244]
- Broken javadoc for KNN [#IGNITE-7242]
- Empty class descriptions for KNNModelFormat [#IGNITE-7213]
- Web console: Fix show time of "Connected clusters: N" label [#IGNITE-7210]
- Custom discovery messages from plugins are handled incorrectly [#IGNITE-7177]
- Missed javadoc for IgniteToDoubleFunction [#IGNITE-7169]
- CPP: Can not insert zero decimal value with the ODBC driver [#IGNITE-7143]
- IgniteCluster.startNodes() returns successful ClusterStartNodeResult even though the remote process fails [#IGNITE-7135]
- performance measurement for distributed k-means clustering [#IGNITE-7118]
- Javadoc package descriptions missed for ML [#IGNITE-7110]
- Missed dependencies in examples pom files [#IGNITE-7096]
- Javadoc warnings in ml module [#IGNITE-7094]
- Text query for a particular field not working [#IGNITE-7055]
- Cache get fails on node not in BaselineTopology [#IGNITE-7048]
- Wrong value of RebalancingStartTime cache metric [#IGNITE-6985]
- TotalAllocatedPages metric does not match PhysicalMemoryPages when persistence is disabled [#IGNITE-6963]
- Baseline should throw appropriate exception in case of --baseline version OLD_VERSION [#IGNITE-6954]
- Cleanup OLS code [#IGNITE-6949]
- Near optimistic prepare future should abandon remap after failed map attempt [#IGNITE-6947]
- Cassandra cache store does not clean prepared statements cache when remove old cassandra session [#IGNITE-6853]
- Failed k-means tests with multiple nodes [#IGNITE-6849]
- Ignite SPI: Test local port range failed on TC agents [#IGNITE-6831]
- Tests are red for another MAX_BLOCK_SIZE value (4 or 8 instead 32) [#IGNITE-6805]
- SQL exception messages are not descriptive [#IGNITE-6772]
- SparseDistributedMatrixExample failed with NPE [#IGNITE-6762]
- Ignite Cache 5 flaky test CacheRebalancingSelfTest.testDisableRebalancing() [#IGNITE-6713]
- DataRegionMetrics#totalAllocatedPages is not valid after node restart [#IGNITE-6711]
- TCP port in bin/control.sh differs from default [#IGNITE-6590]
- DataStructure can not be obtained on client if it is created on server node [#IGNITE-6437]
- If getAll() fails with NPE, onHeap entry is not removed, for local cache [#IGNITE-6307]
- Check Java 7 builds for compatibility with Ignite and update documentation [#IGNITE-6248]
- IgniteContext starts server nodes on executors [#IGNITE-5981]
- Web console: incorrect default value for Cache-Queries & Indexing-SQL index max inline size = -1 [#IGNITE-5916]
- Adapt TracerTest for TC builds [#IGNITE-5725]
- Ignite does not recognize the right number of CPU cores when running under Docker [#IGNITE-2092]