Releases: jppf-grid/JPPF
JPPF 6.3 alpha preview release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
JPPF 6.3-alpha new features highlights
Tasks can access the results of their dependencencies
The previous JPPF 6.2 version introduced the ability to form dependency graphs with the tasks of a job.
As a logical complement to this feature, the same tasks can now access the results of their direct dependencies while executing.
Ability to reconnect a node without stopping it
Nodes can now be force to reconnect without stopping and restarting them.
This management operation is available in the management API as well as the desktop and web administration consoles.
New sample: grid failover
This new sample uses the ability to force a node to reconnect, along with several other features, to handle a JPPF grid with no single point of failure.
Miscellaneous features and enhancements
- printing of client connection events to stdout can now be disabled. See the jppf.client.sysout.enabled configuration property
- A new NotEqual execution policy was added for greater convenience
All implemented issues
Features
- JPPF-619 Ability to force a node to reconnect without restarting
- JPPF-620 Ability to disable stdout output in the client
- JPPF-622 New sample: grid failover
- JPPF-624 Task dependency - depend on result of dependent task
Enhancements
- JPPF-617 Add one or more unit test for executing a job from an executing task
- JPPF-621 Client local executor as a JPPFClientConnection
- JPPF-626 Implement a NotEqual execution policy
Tasks
Links
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.2 generally available
JPPF 6.2 new features highlights
Tasks dependencies
- tasks within the same job can now depend on each other
- JPPF guarantees that all dependencies of a task are executed before it can start
- traversal of the tasks graph can be performed on either server or client side
- built-in detection and handling of dependency cycles
JPPF in Docker containers and Kubernetes
- the JPPF drivers, nodes and web administration console are now available as Docker images, publicly available on Docker Hub
- JPPF grids can be deployed on Kubernetes clusters using the JPPF Helm chart
- JPPF grids can also be deployed on Docker swarm clusters as Docker service stacks
Performance improvement
A new client-side cache of class definitions was implemented, to improve the overall dynamic class loading performance.
Job dependencies and job graphs
- JPPF jobs can now be organized into dependency graphs, where a job can start only when its dependencies have completed
- new convenient and intuitive APIs to define the dependency graphs
- automatic detection and handling of circular dependencies (i.e. cycles)
- by default, cancellation of a job is automatically cascaded to dependent jobs. This can be overriden for each job
- built-in management MBean to monitor the state of the job dependency graph
DSL for job selectors
The job selector API was extended to include complex boolean expressions and comparison tests, in a way similar to execution policies
- boolean opearators AND, OR, XOR, Negate
- comparison operators on Comparable values: more than, less than, at least, at most
- range comparison operators on Comparable values: between with inclusion or exclusion of upper and lower bounds
- "contains", "one of" and "regex" selectors
- job name selector
- already existing selectors: all jobs, job uuids, scripted and custom
Use of java.time.* classes for JPPF schedules
java.time.* classes can now be used to build JPPFSchedule instances to specify jobs start or expiration schedules
Inspection of the client-side jobs queue
New methods were added to the client API to inspect the jobs queue
Major refactoring of the management and monitoring MBeans
- the node forwarding MBean now provides compile-time typing of the results
- all built-in MBeans are annotated with metadata available at runtime
- the same metadata is used to generate static forwarding proxies (and their unit tests) for the built-in node MBeans
- the MBeans metadata is also used to generate the built-in MBeans reference documentation
- the management and monitoring documentation was refactored for greater clarity and readability
Administration and monitoring console improvements
- numerous performance hotspots were identified and fixed, both in the monitoring API and in the UI rendering code
- for license compatibility reasons, the JFreeChart charting library was replaced with XCharts, resulting in further performance improvements
Performance improvements in the driver and JMX remote connector
Several performance sinks were identified and fixed, in high stress scenarios where a very large number of job lifecyclle notifications were generated, causing high spikes in CPU and memory usage.
All implemented issues
Features
- JPPF-583 Tasks dependencies within a job
- JPPF-589 Docker images for JPPF components
- JPPF-582 Job dependencies and job graphs
- JPPF-600 DSL for complex job selectors
- JPPF-607 Reorganize the documentation on management and monitoring
- JPPF-608 Typed results map for JPPFNodeForwardingMBean methods
Enhancements
- JPPF-586 Cache of class/resource definitions in the client
- JPPF-587 Ability to create JPPFSchedule instances using java.time.* APIs
- JPPF-601 Add a client API to list the queued jobs in a JPPF client
- JPPF-604 Various performance improvements
- JPPF-610 Add an API to instrospect the properties defined in the monitoring data providers
- JPPF-611 Document the values limits and validity in the constructors of JPPFSchedule
Tasks
- JPPF-584 Refactor the distributed class loader into the asynchronous Nio communication model
- JPPF-591 Come up with a lightweight test suite for day-to-day development purposes
- JPPF-595 Remove Android and .Net sections of the documentation
- JPPF-592 Security scans
- JPPF-598 Fix vulnerabilities found in security scans
- JPPF-609 Explore the possibility to replace JFreeChart with XChart in the admin console
Bug fixes
- JPPF-605 Investigate the performance of the monitoring APIs and administration console
- JPPF-612 JMX remote connector: poor handling of large number of notifications
Links
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.2 beta preview release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
JPPF 6.2 beta new features highlights
Major refactoring of the management and monitoring MBeans
- the node forwarding MBean now provides compile-time typing of the results
- all built-in MBeans are annotated with metadata available at runtime
- the same metadata is used to generate static forwarding proxies (and their unit tests) for the built-in node MBeans
- the MBeans metadata is also used to generate the built-in MBeans reference documentation
- the management and monitoring documentation was refactored for greater clarity and readability
Administration and monitoring console improvements
- numerous performance hotspots were identified and fixed, both in the monitoring API and in the UI rendering code
- for license compatibility reasons, the JFreeChart charting library was replaced with XCharts, resulting in further performance improvements
Performance improvements in the driver and JMX remote connector
Several performance sinks were identified and fixed, in high stress scenarios where a very large number of job lifecyclle notifications were generated, causing high spikes in CPU and memory usage.
All implemented issues
Features
- JPPF-607 Reorganize the documentation on management and monitoring
- JPPF-608 Typed results map for JPPFNodeForwardingMBean methods
Enhancements
- JPPF-610 Add an API to instrospect the properties defined in the monitoring data providers
- JPPF-611 Document the values limits and validity in the constructors of JPPFSchedule
Tasks
Bug fixes
- JPPF-605 Investigate the performance of the monitoring APIs and administration console
- JPPF-612 JMX remote connector: poor handling of large number of notifications
Links
Previous JPPF 6.2 release announcements: JPPF 6.2 alpha, JPPF 6.2 alpha 2
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.1.4 maintenance release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
What's new in JPPF 6.1.4
This maintenance release brings important performance improvements and bug fixes
Enhancements
Bug Fixes
- JPPF-605 Investigate the performance of the monitoring APIs and administration console
- JPPF-612 JMX remote connector: poor handling of large number of notifications
- JPPF-613 NPE due to race condition in the server leads to losing node connections
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.2 alpha 2 preview release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
JPPF 6.2 alpha 2 new features highlights
Job dependencies and job graphs
- JPPF jobs can now be organized into dependency graphs, where a job can start only when its dependencies have completed
- new convenient and intuitive APIs to define the dependency graphs
- automatic detection and handling of circular dependencies (i.e. cycles)
- by default, cancellation of a job is automatically cascaded to dependent jobs. This can be overriden for each job
- built-in management MBean to monitor the state of the job dependency graph
DSL for job selectors
The job selector API was extended to include complex boolean expressions and comparison tests, in a way similar to execution policies
- boolean opearators AND, OR, XOR, Negate
- comparison operators on Comparable values: more than, less than, at least, at most
- range comparison operators on Comparable values: between with inclusion or exclusion of upper and lower bounds
- "contains", "one of" and "regex" selectors
- job name selector
- already existing selectors: all jobs, job uuids, scripted and custom
Use of java.time.* classes for JPPF schedules
java.time.* classes can now be used to build JPPFSchedule instances to specify jobs start or expiration schedules
Inspection of the client-side jobs queue
New methods were added to the client API to inspect the jobs queue
All implemented issues
Features
Enhancements
- JPPF-587 Ability to create JPPFSchedule instances using java.time.* APIs
- JPPF-601 Add a client API to list the queued jobs in a JPPF client
- JPPF-604 Various performance improvements
Tasks
Links
Previous JPPF 6.2 release announcements: JPPF 6.2 alpha
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.1.3 maintenance release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
What's new in JPPF 6.1.3
This maintenance release brings an emergency bug fix.
Bug Fixes
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.0.4 maintenance release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
What's new in JPPF 6.0.4
This maintenance release brings important bug fixes and enhancements.
Bug Fixes
Enhancements
- JPPF-601 Add a client API to list the queued jobs in a JPPF client
- JPPF-604 Various performance improvements
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.1.2 maintenance release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
What's new in JPPF 6.1.2
This maintenance release brings important bug fixes.
Enhancements
- JPPF-601 Add a client API to list the queued jobs in a JPPF client
- JPPF-604 Various performance improvements
Bug Fixes
- JPPF-596 Outdated dependency - net.jpountz.lz4 should be replaced with org.lz4.lz4-java
- JPPF-597 JPPF serialization fails with java.time.* classes
- JPPF-602 AbstractExecutionManager uses the wrong configuration to initialize
- JPPF-603 Slave nodes leak
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.2 alpha preview release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
JPPF 6.2 alpha new features highlights
Tasks dependencies
- tasks within the same job can now depend on each other
- JPPF guarantees that all dependencies of a task are executed before it can start
- traversal of the tasks graph can be performed on either server or client side
- built-in detection and handling of dependency cycles
JPPF in Docker containers and Kubernetes
- the JPPF drivers, nodes and web administration console are now available as Docker images, publicly available on Docker Hub
- JPPF grids can be deployed on Kubernetes clusters using the JPPF Helm chart
- JPPF grids can also be deployed on Docker swarm clusters as Docker service stacks
Performance improvement
A new client-side cache of class definitions was implemented, to improve the overall dynamic class loading performance.
All implemented issues
Features
Enhancements
Tasks
- JPPF-584 Refactor the distributed class loader into the asynchronous Nio communication model
- JPPF-591 Come up with a lightweight test suite for day-to-day development purposes
- JPPF-595 Remove Android and .Net sections of the documentation
Links
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker
JPPF 6.1.1 maintenance release
JPPF makes it easy to parallelize computationally intensive tasks and execute them on a Grid
What's new in JPPF 6.1.1
This maintenance release brings important bug fixes.
Bug Fixes
- JPPF-585 The 6.1 tutorial still uses JPPFClient.submitJob() and blocking job attribute
- JPPF-588 Concurrent operations with DefaultFilePersistence job persistence result in exceptions
- JPPF-590 Failures in v6.1 in multi-server topology tests
- JPPF-593 Various typos in the documentation
- JPPF-594 Deadlock in the driver
JPPF Links: Web Site - Downloads - Documentation - User forums - Issue tracker