IGNITE-8907: [ML] Using vectors in featureExtractor
[ignite.git] / RELEASE_NOTES.txt
1 Apache Ignite Release Notes
2 ===========================
3
4 Apache Ignite In-Memory Data Fabric 2.6
5 ---------------------------------------
6 Ignite:
7 * Fixed incorrect calculation of client affinity assignment with baseline.
8 * Fixed incorrect calculation of switch segment record in WAL.
9 * Fixed JVM crush during in-progress eviction and cache group stop.
10
11 REST:
12 * Fixed serialization of BinaryObjects to JSON.
13
14 Apache Ignite In-Memory Data Fabric 2.5
15 ---------------------------------------
16 Ignite:
17 * Implemented Zookeeper discovery SPI.
18 * Added Java thin client.
19 * Added continuous queries with transformers.
20 * Implemented general approach for critical failures handling.
21 * Added the new method IgniteMXBean.getCurrentCoordinatorFormatted() which displays formatted information about current coordiantor.
22 * Added partition update counters verification on partition map exchange.
23 * Added ability to disable WAL during initial data rebalancing.
24 * Added additional data storage metrics
25 * Added additional transactional metrics.
26 * Added DEB package and improved RPM package.
27 * Added information about fields serialization/deserialization errors in BinaryMarshaller.
28 * Added configurable automatic rollback timeout for pending transactions preventing partition map exchange to complete.
29 * Added preventing infinite iterations of corrupted B+Tree. New IGNITE_BPLUS_TREE_LOCK_RETRIES property was added, default value is Integer.MAX_VALUE.
30 * Implemented handling of broken segment in WAL compaction.
31 * Fixed affinity to always choose primary node from one of the owners when persistence is enabled.
32 * Partition eviction now does not block exchange.
33 * Fixed the issue that prevented rebalancing on a new baseline node join.
34 * Fixed potential deadlock during preloading.
35 * Fixed exception handling in IsolatedUpdater of DataStreamer.
36 * 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.
37 * Fixed null value being passed to entry processor when such entry actually exists.
38 * Fixed problem when cluster could not survive after IgniteOutOfMemoryException.
39 * Fixed NullPointerException on batch atomic cache operations with cache store.
40 * Fixed bug with ScanQuery transformer which applies to the first result page only.
41 * Fixed hanging of node stopping in case when node is invalidated and persistence is enabled.
42 * BinaryMetadata exchange is triggered only if there are actual changes in BinaryMetadata.
43 * Fixed contention while executing parallel atomic single get operations.
44 * Fixed cache metadata corruption during concurrent checkpoint and cache destroy.
45 * Implemented additional synchronization for correct partition counters update on partition map exchange.
46 * Optimized checkpoint lock acquisition for demander thread.
47 * Destroyed caches with enabled persistence now will not survive grid restart.
48 * Nodes with incompatible SQL metadata will not be able to join grid. This fixes known case for index corruption.
49 * Fixed fillFactor memory metric value.
50 * Fixed bug with checkpoint buffer overflow with enabled throttling.
51 * Fixed crash recovery problem when index tree could reference to removed data pages.
52 * Fixed error during cluster initialization with partially acceptable WAL archive.
53 * Fixed issue with local partitions size changing inside checkpoint write lock.
54 * Fixed LOG_ONLY and BACKGROUND modes to be power-crash resistant.
55 * Fixed incorrect finishing of implicit transactions on unstable topology.
56 * Fixed incorrect mapping of smallint Cassandra type.
57 * Introduced log markers support to IgniteLogger and standard DEV_ONLY marker.
58 * Changed Log4J and Log4J2 adapters to update active logger configuration when configuration source file is modified.
59 * Fixed sqlline.sh script to use Java from JAVA_HOME.
60 * Improved Docker image build.
61 * Default and recommended JVM options are updated.
62
63 Ignite .Net:
64 * Added SSL configuration for node-to-node links.
65 * Added dynamic service proxies.
66 * Propagated query metrics to ICache.GetQueryMetrics() and ICache.ResetQueryMetrics().
67 * DML update via LINQ.
68 * Fixed hang caused by mishandled exception during custom cache store deserialization.
69 * Fixed GroupBy and Where issues in LINQ.
70 * .Net thin client SSL support.
71
72 Ignite C++:
73 * Fixed bug with LocalSize cache method.
74
75 SQL:
76 * Implemented COPY command for fast data load.
77 * Added support of authorization for CREATE TABLE and DROP TABLE commands.
78 * Improved deadlock handling in DML.
79 * Added IGNITE_SQL_FORCE_LAZY_RESULT_SET option to force all SQL queries on node using lazy result set.
80 * Fixed SQL query hang if cluster contains nodes not in baseline.
81
82 JDBC:
83 * Added SSL support.
84 * Added authentication.
85 * Added streaming mode to thin driver.
86 * Semicolon now can be used as delimiter for properties in URL string.
87 * Changed default socket buffer size to 64Kb in thin driver.
88 * Added FQDN to thin client in order to support multiple IPs for connection establishment.
89
90 ODBC:
91 * Added SSL support.
92 * Implemented username/password authentication.
93 * Added support of multiple addresses in connection string.
94 * Added support for SQL_ATTR_LOGIN_TIMEOUT.
95
96 Web Console:
97 * Added support for persistence in demo mode.
98 * Configuration screen is reworked to new modern design with improved usability.
99 * Implemented support for comma-separated list of node URIs.
100 * Fixed Docker file generation.
101 * Fixed code generation for large numbers in configuration params.
102 * Fixed demo for non-collocated joins.
103 * Fixed enum values decoding for SQL queries.
104 * Upgraded build to use Webpack 4.
105
106 REST:
107 * Added AUTHENTICATE command.
108 * Added support for new authentication API.
109 * Implemented possibility to get values from cache inserted via API or SQL.
110 * Enhanced GET_OR_CREATE_CACHE command with optional "templateName", "backups", "cacheGroup", "dataRegion" and "writeSynchronizationMode" options.
111 * Added support of Java built-in types (boolean, int, long, ..., UUID) for put/get operations.
112
113 Visor:
114 * Added "cache -slp" and "cache -rlp" commands to show and reset lost partitions for specified cache.
115 * Added scan queries of near cache support.
116
117 Control utility:
118 * Added utilities to control.sh script to display cache info.
119 * Added new tools (control.sh --tx, TransactionsMXBean) to view active transactions and ability to kill them .
120 * Added confirmation on dangerous operations.
121 * Fixed NullPointerException in case of empty base line and not active cluster.
122 * Fixed timeout on changing baseline in control.sh
123
124 ML:
125 * Implemented framework for genetic algorithms over Apache Ignite caches.
126 * Implemented LSQR-based linear regression.
127 * Implemented Linear SVM for binary classification.
128 * Implemented distributed version of SVM (support vector machine) algoritm.
129
130 Apache Ignite In-Memory Data Fabric 2.4
131 ---------------------------------------
132 Ignite:
133 * Introduced Baseline Affinity Topology
134 * Ability to disable WAL for cache in runtime through IgniteCluster API or ALTER TABLE command
135 * Added ability to convert WAL to human-readable form
136 * Ability to enable/disable JDBC, ODBC and thin client endpoints
137 * Project moved to Java 8
138 * Java 7 is no longer supported
139 * Apache Ignite can be run on Java 9
140 * Introduced Apache Ignite packaging with RPM
141 * Spark Data Frames support
142 * Added integration with Spring 3.x
143 * Added handler to stop node when IO error is encountered
144 * EvictionPolicyFactory support added to CacheConfiguration
145 * Added JMX metrics for memory regions
146 * Added detailed memory consumption on start and OOM reporting
147 * Added custom thread pools monitoring
148 * Support Ignite MR in Kerberized environment without IGFS
149 * S3 IP finder: support server side encryption and bucket endpoint configuration
150 * Multiple fixes and performance optimizations
151
152 Ignite.NET:
153 * Thin Client initial release
154 * .NET Core / Linux / macOS support
155 * Mono platform support
156 * Removed C++ JNI layer
157
158 SQL:
159 * Added DEFAULT support to CREATE TABLE command
160 * Added ALTER TABLE DROP COLUMN support
161 * Added INLINE_SIZE option to CREATE INDEX command
162 * Added PARALLEL option to CREATE INDEX command
163 * Added optional on-heap row cache
164 * INSERT command now can be executed without explicit column names (INSERT INTO table VALUES ...)
165 * Allowed multiple caches to share the same schema
166 * Added support for Java 8 Date and Time API
167 * Added "notNull" property to QuerySqlField annotation
168 * Improved COUNT(*) performance
169 * Fixed a problem causing an exception in certain nodes do not have primary partitions for REPLICATED cache
170 * Fixed per-thread H2 connection leak.
171 * Fixed partition exchange hang due to SQL query running inside a transaction.
172
173 JDBC Driver:
174 * Optimized batched operations processing
175
176 ODBC Driver:
177 * Added support of multiple statements execution with one call
178 * Added support of SQL_ATTR_CONNECTION_TIMEOUT
179 * Added support of SQL_ATTR_QUERY_TIMEOUT
180 * Optimized batched operations processing
181 * Proper handling of ungraceful TCP disconnects (keep-alive connection)
182 * Fixed error preventing close of executed DML statement
183 * Fixed table names returned by SQLTables for DDL-created tables
184
185 Machine Learning:
186 * Implemented Fuzzy c-means algorithm
187 * Implemented gradient descent for OLS Linear Regression
188 * Implemented K nearest neighbor algorithm
189 * Introduced API for datasets
190 * Introduced API for ML model and trainers
191 * Introduced common mechanism for group training of models
192 * Added distributed version of multilayer perceptron
193 * Added local version of multilayer perceptron
194 * Added basic import/export functionality for ml models
195 * Added decision tree algorithm
196 * Performance optimizations for distributed operations
197
198 Web Console:
199 * Implemented component for cluster selection and activation
200 * Implemented support for multiple statements on Queries screen
201 * Implemented progress indication for 'execute', 'scan' and 'export' actions on Queries screen
202 * Added support for ClientConnectorConfiguration
203 * Added several SQL examples on Queries screen
204 * Added "Connected clusters" component in header
205 * Added support for custom SMTP server configuration
206 * Added detection of CSV separator based on browser locale
207 * Added "Copy to clipboard" action on Queries screen
208 * Added duration and node ID in results header and 'Show query' modal
209 * Improved support for binary JDBC types on import from RDBMS
210 * Fixed Web Console under IE11
211 * Fixed configuration generation for imported model in case of Oracle NUMBER(5) data type
212 * Fixed output of big numbers in SQL query results
213
214 Visor:
215 * Added "-quiet" flag for batch mode
216 * Added ability to start cache rebalance
217 * Added output of data region metrics to "node" command
218 * Added dialog to put/get/remove values to/from cache for simple key types
219 * Show valid message for caches when cluster is inactive
220 * Fixed 'cache -a' in case of node filter
221 * Fixed reading last command line in batch mode
222 * Updated eviction policy factory in configs
223
224 Apache Ignite In-Memory Data Fabric 2.3
225 ---------------------------------------
226 Ignite:
227 * Ability to enable persistence per data region.
228 * Default page size is changed to 4KB.
229 * Ability to enable and disable rebalancing per-node.
230 * Added methods for batch services deployment.
231 * Introduced cache start/stop order on cluster activation.
232 * EstimatedRebalancingFinishTime and RebalancingStartTime metrics are exposed through MXBean interface.
233 * Ability to (de)activate cluster via http-rest API.
234 * Added Ignite update notifier.
235 * Updated Lucene dependency to version 5.5.2.
236 * Added an option to disable MBeans.
237 * Added sorted and multithreaded checkpoint modes.
238 * Added calculation of fill factor memory metric in persistent mode.
239 * Added estimated time for rebalance start and completion to cache metrics.
240 * Added API to add binary metadata locally.
241 * Added write throttling during an ongoing checkpoint to avoid zero performance drops.
242 * Ability to convert WAL to human-redable form.
243 * Ability to handle CacheObject from DataRecord in standalone WAL iterator.
244 * Support for uninterruptable writes using AsyncFileIOFactory; enabled with -DIGNITE_USE_ASYNC_FILE_IO_FACTORY=true.
245 * Enhanced persistent store path resolving to not rely on automatically generated consistent ID.
246 * Pre-configure local event listeners with IgniteConfiguration.LocalEventListeners.
247 * Massive performance and stability improvements.
248
249 Ignite.NET:
250 * LINQ: Local collections joins support.
251 * LINQ: Regex support.
252
253 Ignite CPP:
254 * Added Compute::Broadcast method.
255 * Added Ignite::SetActive method.
256
257 SQL:
258 * Added sqlline utility to the build.
259 * CREATE TABLE: Added NOT NULL support.
260 * CREATE TABLE: Ability to specify cache, key type and value type names.
261 * CREATE TABLE: Added "WRAP_KEY" and "WRAP_VALUE" options to CREATE TABLE command.
262 * CREATE TABLE: Added DATA_REGION option.
263 * CREATE TABLE: Added WRITE_SYNCHRONIZATION_MODE option.
264 * ALTER TABLE: ADD COLUMN support.
265 * Added lazy query execution mode (SqlFieldsQuery.setLazy).
266 * Added QuerySqlField.inlineSize property.
267 * Added FieldsQueryCursor interface to get fields metadata for SqlFieldsQuery.
268 * Added QueryEntity(Class keyClass, Class valueClass) constructor.
269 * Improved LocalDate, LocalTime and LocalDateTime support for Java 8.
270 * Optimized memory consumption during query execution.
271 * Fixed BigInteger data type handling.
272
273 JDBC Driver:
274 * Batch update support.
275 * SQLSTATE error codes support.
276 * Added "enforceJoinOrder" flag to connection string.
277 * Added "skipReducerOnUpdate" flag.
278 * Thin driver: Allowed execution of multiple SQL statements in one command.
279 * Thin driver: Added metadata support.
280 * Thin driver: Added type conversions in accordance with specification.
281 * Thin driver: Added schema to connection string.
282 * Thin driver: Added Statement.closeOnCompletion() support.
283 * Appended UUID to thick driver's Ignite instance name to avoid collision with user-created instances.
284 * Fixed a bug in PreparedStatement not clearing query parameters after execution.
285
286 ODBC Driver:
287 * SQLSTATE error codes support.
288 * Support for BINARY and VARBINARY types.
289 * DML statement batching.
290 * SQL_ATTR_CONNECTION_DEAD connection attribute.
291 * SQLGetInfo for info types.
292 * Added "skipReducerOnUpdate" flag.
293 * SQLRowCount now returns number of affected rows for non-batch queries.
294 * SQLBindParameter do not unbind parameter if the ParameterValuePtr is NULL anymore.
295 * Fixed error on cursor closing before all the rows from the result fetched.
296
297 Machine Learning:
298 * Implemented K-means clustering algorithm optimized for distributed storages.
299 * Introduced sparse block distributed matrix.
300 * Initial BLAS implementation.
301 * Integration with BLAS via netlib.
302 * Added getRow() and getCol() methods to Matrix API.
303
304 Web Console:
305 * Improved DDL support.
306 * Added PK alias generation on Models screen.
307 * Added generation of QueryEntity.keyFields on model import from RDBMS.
308 * Added sanitize user on save.
309 * Added charts with throughput and latency metrics for cache operations.
310 * Added version to footer.
311 * Added "Lazy ResultSet" flag on Queries screen.
312 * Implemented refresh rate for Monitoring screen.
313 * Implemented cluster nodes log viewer.
314
315 Visor:
316 * Ability to keep connection opened in batch mode.
317 * Ability to activate/deactivate cluster.
318 * Improved cache statistics.
319 * Added missing configuration properties to "config" command.
320 * Fixed script execution after alert throttling interval.
321
322 Apache Ignite In-Memory Data Fabric 2.2
323 ---------------------------------------
324 Ignite:
325 * Checkpointing algorithm optimized
326 * Default max memory size changed from 80% to 20%
327
328 Ignite CPP:
329 * Now possible to start node with persistent store
330 * Ignite.setActive method added to C++ API
331
332 Apache Ignite In-Memory Data Fabric 2.1
333 ---------------------------------------
334 Ignite:
335 * Persistent cache store
336 * Added IgniteFuture.listenAsync() and IgniteFuture.chainAsync() mehtods
337 * Deprecated IgniteConfiguration.marshaller
338 * Updated Lucene dependency to version 5.5.2
339 * Machine learning: implemented K-means clusterization algorithm optimized for distributed storages
340 * SQL: CREATE TABLE and DROP TABLE commands support
341 * SQL: New thin JDBC driver
342 * SQL: Improved performance of certain queries, when affinity node can be calculated in advance
343 * SQL: Fixed return type of AVG() function
344 * SQL: BLOB type support added to thick JDBC driver
345 * SQL: Improved LocalDate, LocalTime and LocalDateTime support for Java 8
346 * SQL: Added FieldsQueryCursor interface to get fields metadata for SqlFieldsQuery
347 * ODBC: Implemented DML statement batching
348 * Massive performance and stability improvements
349
350 Ignite.NET:
351 * Automatic remote assembly loading
352 * NuGet-based standalone node deployment
353 * Added conditional data removeal via LINQ DeleteAll
354 * Added TimestampAttribute to control DateTime serialization mode
355 * Added local collections joins support to LINQ.
356
357 Ignite CPP:
358 * Added Compute::Call and Compute::Broadcast methods
359
360 Web Console:
361 * Implemented support for UNIQUE indexes for key fields on import model from RDBMS
362 * Added option to show full stack trace on Queries screen
363 * Added PK alias generation on Models screen.
364
365 Apache Ignite In-Memory Data Fabric 2.0
366 ---------------------------------------
367 Ignite:
368 * Introduced new page memory architecture
369 * Machine Learning beta: distributed algebra support for dense and sparse data sets
370 * Reworked and simplified API for asynchronous operations
371 * Custom thread pool executors for compute tasks
372 * Removed CLOCK mode in ATOMIC cache
373 * Deprecated schema-import utility in favor of Web Console
374 * Integration with Spring Data
375 * Integration with Hibernate 5
376 * Integration with RocketMQ
377 * Integration with ZeroMQ
378 * SQL: CREATE INDEX and DROP INDEX commands
379 * SQL: Ability to execute queries over specific set of partitions
380 * SQL: Improved REPLICATED cache support
381 * SQL: Updated H2 version to 1.4.195
382 * SQL: Improved performance of MIN/MAX aggregate functions
383 * ODBC: Added Time data type support
384 * Massive performance improvements
385
386 Ignite.NET:
387 * Custom plugin API
388 * Generic cache store
389 * Binary types now can be registered dynamically
390 * LINQ: join, "contains" and DateTime property support
391
392 Ignite CPP:
393 * Implemented Cache::Invoke
394 * Added remote filters support to continuous queries
395
396 Web Console:
397 * Multi-cluster support
398 * Possibility to configure Kubernetes IP finder
399 * EnforceJoinOrder option on Queries screen
400
401 Apache Ignite In-Memory Data Fabric 1.9
402 ---------------------------------------
403 Ignite:
404 * Added Data streamer mode for DML
405 * Added Discovery SPI Implementation for Ignite Kubernetes Pods
406 * SQL: Query can utilize multiple threads
407 * SQL: Improved distributed SQL support
408 * Benchmarking simplified and automated
409 * Fixed licenses generation during build
410 * ignite-spark module upgraded to Spark 2.0
411
412 Ignite.NET:
413 * DML support
414 * TransactionScope API for Ignite transactions support
415
416 Ignite CPP:
417 * DML support
418 * Implemented LoadCache
419 * ContinuousQuery support
420
421 Apache Ignite In-Memory Data Fabric 1.8
422 ---------------------------------------
423 Ignite:
424 * SQL: Added DML operations support (INSERT, UPDATE, DELETE, MERGE)
425 * SQL: Improved DISTINCT keyword handling in aggregates
426 * Hadoop: Added MapR distribution support
427 * Visor: Improved SQL statistics
428 * Added Redis protocol support
429 * Added transactions deadlock detection
430 * Many stability and fault-tolerance fixes
431
432 Ignite.NET:
433 * ASP.NET session state store provider
434 * Entity Framework second level cache
435 * Custom loggers support: NLog, Apache log4Net
436
437 ODBC driver:
438 * Added DML operations support
439 * Added distributed joins support
440 * Added DSN support
441 * Performance improvements
442
443 Apache Ignite In-Memory Data Fabric 1.7
444 ---------------------------------------
445 Ignite:
446 * Added distributed SQL JOIN.
447 * Node can be assigned as primary only after preloading is finished.
448 * Fixed CountDownLatch re-create issue.
449 * ODBC: Added decimal type support.
450 * Visor: Fixed data nodes calculation when node filter is set for cache.
451 * Many stability and fault-tolerance fixes.
452
453 Ignite.NET:
454 * Added ASP.NET Output Cache provider.
455 * Added ability to use .NET configuration in Apache.Ignite.exe.
456 * Added ability to implement custom affinity functions.
457 * Fixed a bug in IBinaryObjectBuilder causing type name to be lost.
458
459 Ignite CPP:
460 * Marshalling performance improvements.
461
462 Apache Ignite In-Memory Data Fabric 1.6
463 ---------------------------------------
464 Ignite .NET:
465 * Added LINQ Provider for cache SQL queries
466 * Added native configuration mechanism (C#, app.config, web.config - instead of Spring XML)
467 * Added NuGet distribution
468 * Added AtomicSequence and AtomicReference data structures
469 * Binaries are now AnyCPU (instead of separate x64/x86)
470 * Java-based services can be called the same way as .NET service are called
471 * Added java-based continuous query filters
472 * Added automatic Java detection: no need for JAVA_HOME
473 * Added ability to use Java-based remote filters in continuous queries.
474
475 Ignite C++:
476 * Added Transactions API for C++ client.
477 * Added Date and Timestamp types implementation for C++ client.
478 * Simplified Autotools build process for C++ client.
479
480 Ignite:
481 * Added ability to get partition 'updateCntr' with continuous query public API.
482 * Added asynchronous execution of ContinuousQuery's remote filter and local listener.
483 * Added backup partitions storing to local store default behavior.
484 * Added cache deadlock detection.
485 * Added Cache Store implementation backed by Cassandra DB.
486 * Added method to get versioned cache entry.
487 * Added ODBC driver for Ignite.
488 * Added support for join timeout while registering local addresses with IP finder in TcpDiscoverySpi.
489 * Added support for JTA transactions via synchronization callback.
490 * Added Web Console for Ignite.
491 * Fixed a bug causing object deserialization when local store is configured for cache.
492 * Fixed a problem with incorrect classloader picked in OSGI environment.
493 * Fixed a race condition when evicted offheap data was not delivered to query engine leading to query timeout.
494 * Fixed an issue in ContinuousQueries that caused missing of notifications.
495 * Fixed background cache partition map exchange not to flood network.
496 * Fixed BinaryContext to honor custom loader set through IgniteConfiguration.
497 * Fixed BinaryObjectOffHeapImpl leak to public code.
498 * Fixed cluster stability with 500+ clients.
499 * Fixed continuous queries to send filter factory instead of filter.
500 * Fixed continuous query deployment in case originating node has left.
501 * Fixed issues with continuous query.
502 * Fixed deadlock in services deployment when Spring is used.
503 * Fixed discovery and node start procedure issues that may cause slowdowns during larger topologies start (>100 nodes).
504 * Fixed eviction policy notification if swap or off heap is enabled and an entry is not loaded during preloading.
505 * Fixed excessive thread stack usage in case of high contention on cache entries.
506 * Fixed execution of Splunk MapReduce jobs on top of Ignite MR.
507 * Fixed GridClosureProcessor internal closures to be deserialized by BinaryMarshaller.
508 * Fixed issue with AWS dependencies.
509 * Fixed java proxies deserialization with optimized marshaller.
510 * Fixed local store behavior at cross cache transactions.
511 * Fixed marshalling of Java collection and maps for BinaryMarshaller.
512 * Fixed memory leak in IgniteH2Indexing.
513 * Fixed NPE during rebalancing.
514 * Fixed NPE in GridMergeIndex.
515 * Fixed OOME when OFFHEAP_TIERED mode is used.
516 * Fixed potential thread starvation during cache rebalancing.
517 * Fixed race condition on load cache on changing topology.
518 * Fixed race in marshalling logic that could arise when several nodes are running on the same host.
519 * Fixed redeployment issues happened with ScanQueries filters.
520 * Fixed service proxy not to make remote call for methods declared in java.lang.Object.
521 * Fixed several ClassNotFoundException in OSGi environment.
522 * Fixed SKIP_STORE flag behavior for transaction entry.
523 * Fixed support for classes with equal simple name for binary marshaller.
524 * Fixed system caches not to use user-defined TransactionConfiguration.
525 * Fixed the issue when CacheStore was updated even if EntryProcessor didn't update an entry.
526 * Fixed thread safety for TcpDiscoveryMulticastIpFinder.
527 * Fixed unintentional deserialization of BinaryObjects in OFFHEAP mode with peer class loading enabled.
528 * Fixed UTF-16 surrogate pairs marshalling.
529 * Fixed value copying in entry processor with OptimizedMarshaller.
530 * Fixed web session clustering with WebLogic.
531 * Hadoop: fixed a bug causing exception during MR planning when input split file doesn't exist.
532 * IGFS: Added configuration flag to disable default path modes under "/ignite" folder.
533 * IGFS: Added pluggable factory interface for Hadoop FileSystem creation.
534 * IGFS: Fixed file properties when running over secondary file system.
535 * IGFS: Fixed issues with Kerberized HDFS.
536 * IGFS: Massive performance and stability fixes.
537 * Improved marshaller behavior during cluster topology change.
538 * Mesos integration: added possibility to load Ignite package from file system.
539 * Optimized cache 'get' operations on affinity node.
540 * Optimized memory usage on server nodes to allow more client connections.
541 * Passed update notifier flag to discovery data to be sure that all cluster nodes have the same notifier status as the first node.
542 * Performance optimization for transactions that do not acquire locks.
543 * ScanQueries over local partitions performance optimisation.
544 * Support of package-private implementations for Ignite Services.
545 * Supported Ignite Compute tasks cancellation for Ignite.NET.
546 * Visor CMD: Added ability to attach custom scripts to alerts.
547 * Web sessions: minor fix to prevent NullPointerException in some special case.
548 * Web sessions: user session classes are no longer needed on server nodes.
549 * A lot of stability and fault-tolerance fixes.
550
551 Apache Ignite In-Memory Data Fabric 1.5
552 ---------------------------------------
553 * Ignite.NET: Initial Release.
554 * Ignite C++: Initial Release.
555 * Massive performance improvements for cache operations and SQL.
556 * Added new binary cache object marshalling implementation.
557 * Added IgniteSemaphore data structure.
558 * Added MQTT Streamer.
559 * Added Twitter Streamer.
560 * Added Ignite Sink (integration with Apache Flume).
561 * Added Apache Camel Streamer.
562 * Added OSGi support.
563 * Fixed optimistic serializable transactions: implemented "deadlock-free" locking algorithm.
564 * Fixed failover for continuous queries.
565 * Fixed compilation and runtime errors under OpenJDK and IBM JDK.
566 * Fixed Integer.size limitation for cache.
567 * Fixed and improved cache types configuration.
568 * Fixed cache rebalancing.
569 * Many stability and fault-tolerance fixes.
570 * Added example to demonstrate the usage of EntryProcessor.
571
572 Complete list of closed issues: https://issues.apache.org/jira/issues/?jql=project%20%3D%20IGNITE%20AND%20fixVersion%20%3D%201.5%20AND%20status%20%3D%20closed
573
574 Apache Ignite In-Memory Data Fabric 1.4
575 ---------------------------------------
576 * Added SSL support to communication and discovery.
577 * Added support for log4j2.
578 * Added versioned entry to cache API.
579 * Added client node based JDBC driver implementation.
580 * Fixed consistency issue for custom events processing within discovery.
581 * Fixed race in cache swap/unswap logic.
582 * Fixed IGNITE_HOME resolution with JBoss.
583 * Fixed configuration file resolution on classpath.
584 * Fixed MBean registration for caches.
585 * Fixed near cache evictions with offheap.
586 * Fixed SQL queries group index logic.
587 * Fixed memory leak in partitioned transactional cache.
588 * Fixed auto-retries for cache operations in recoverable cases.
589 * Fixed affinity routing in compute grid.
590 * Many stability and fault-tolerance fixes.
591
592 Apache Ignite In-Memory Data Fabric 1.3
593 ---------------------------------------
594
595 * Added auto-retries for cache operations in recoverable cases.
596 * Added integration with Apache YARN.
597 * Added auto detection and dropping of slow client nodes.
598 * Fixed several issues with JTA integration.
599 * Fixed several issues with Hibernate L2 cache.
600 * Fixed issue with GAR files in source release.
601 * Stability fixes for TCP discovery SPI.
602 * Stability fixes for onheap and offheap SQL queries.
603 * Bug fixes in In-Memory Accelerator For Apache Hadoop.
604 * Many stability and fault-tolerance fixes.
605
606 Apache Ignite In-Memory Data Fabric 1.2
607 ---------------------------------------
608
609 * Added client mode to TCP discovery SPI.
610 * Added memory based evictions.
611 * Added integration with Apache Spark.
612 * Added integration with Apache Mesos.
613 * Added IgniteCache.getAllOutTx() method.
614 * Added serializable cache store factories for built-in stores.
615 * Bug fixes in In-Memory Accelerator For Apache Hadoop.
616 * Many stability and fault-tolerance fixes.
617
618 Apache Ignite In-Memory Data Fabric 1.1
619 ---------------------------------------
620
621 * Added Google Compute Engine TCP discovery IP finder.
622 * Added generic cloud TCP discovery IP finder (based on jclouds).
623 * Added SortedEvictionPolicy.
624 * Added chaining for IgniteConfiguration and CacheConfiguration setters.
625 * Added AffinityUuid class for easier generation of unique collocated keys.
626 * Added support for cache configuration templates.
627 * Added support for (*) star notation in cache names.
628 * Added "collocated" mode for SQL queries.
629 * Improved expiry policy handling (TTL based evictions) to avoid thrashing.
630 * Fixed job continuations.
631 * Fixed compilation and runtime with OpenJDK 7 & 8
632 * Fixed SQL Union support
633 * Fixed Word-Count streaming example to produce better results.
634 * Removed edtFTPj scanner from URI deployment due to licensing issues.
635 * Made deployment scanners for URI-based deployment pluggable.
636 * Many stability and fault-tolerance fixes.
637
638 Apache Ignite In-Memory Data Fabric 1.0
639 ---------------------------------------
640
641 * Simplified query API.
642 * Added automatic aggregation, grouping, and sorting support to SQL queries.
643 * Added dynamic caches, i.e. ability to start and stop caches during runtime.
644 * Changed IgniteDataLoader to IgniteDataStreamer.
645 * Added automatic transformation support to streaming.
646 * Removed old streaming APIs in favor of new IgniteDataStreamer.
647 * Added many examples using Java8 lambdas and streams.
648 * Added new streaming examples based on new streaming and SQL querying APIs.
649 * Added automatic schema-import demo under examples.
650 * Improved javadoc documentation.
651 * Added ability to automatically exclude LGPL optional dependencies during build.
652
653
654 Apache Ignite In-Memory Data Fabric 1.0 RC3
655 -------------------------------------------
656
657 This is the first release of Apache Ignite project. The source code in large part is based
658 on the 7 year old GridGain In-Memory Data Fabric, open source edition, v. 6.6.2, which was
659 donated to Apache Software Foundation in September 2014.
660
661 The main feature set of Ignite In-Memory Data Fabric includes:
662 * Advanced Clustering
663 * Compute Grid
664 * Data Grid
665 * Service Grid
666 * IGFS - Ignite File System
667 * Distributed Data Structures
668 * Distributed Messaging
669 * Distributed Events
670 * Streaming & CEP