Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

Release Notes for Fremantle Beta 1

Overview

Fremantle is the code name for the next major release of Enterprise Ehcache, Quartz Scheduler and the Terracotta Enterprise Suite:

  • Enterprise Ehcache 2.4.0
  • Quartz Scheduler 2.0.0
  • Terracotta Enterprise Suite 3.5.0

Summary of Changes

Enterprise Ehcache

  • Addition of Ehcache Search (see below)
  • Improvements to Enterprise Ehcache Disk Store (for use in conjunction with BigMemory)
  • New local and local_jta Ehcache transaction modes
  • NonStopCache is now in core
  • Explicit locking is now in core
  • Ehcache rejoin on disconnect from Terracotta Server Array
  • Size method performance improvement

Quartz Scheduler

  • New fluent configuration API (see below)
  • Quartz Where - permitting control of where jobs execute in a clustered environment through node groups and node type constraints

About Ehcache Search

The Ehcache Search API allows you to execute arbitrarily complex queries against Ehcache. The standalone Ehcache Search implementation is limited to the memoryStore (ie it has no support for diskStore or BigMemory - aka offHeapStore). Ehcache Search support for distributed caches is an Enterprise-only feature, and is designed to work across all Terracotta server storage tiers (memory, BigMemory, and disk).

The easiest way to get started with the API is to try the sample application posted on github. This includes a ready to run bundle for *nix (just download, unpack, and execute with 'sh run.sh'). This bundle also includes a maven pom to rebuild (using the latest SNAPSHOT rather than that in the bundle): https://github.com/sharrissf/Ehcache-Search-Sample/downloads

Ehcache Search docs are here: http://ehcache.org/documentation/search.html

New configuration options

Ehcache rejoin on disconnect from Terracotta Server Array can be enabled as follows in ehcache.xml:

<terracottaConfig rejoin="true" url="localhost:9510" />

For non-stop, the config is changed such that you can declare it as part of cache config as

<cache name="sampleTerracottaCache"
    maxElementsInMemory="1000"
    eternal="false"
    timeToIdleSeconds="3600"
    timeToLiveSeconds="1800"
    overflowToDisk="false">
    <terracotta>
        <nonStop enabled=true
             timeoutMillis=3000
             timeoutBehavior=noop
        />
    </terracotta>
</cache>

For the new transaction modes, use

transactionMode="local"

or

transactionMode="local_jta"

in lieu of where you would use

transactionMode="local_jta"

About Quartz Scheduler 2.0

Please see the What's new in Quartz 2.0 document here ....Add link to James' 2.0 Doc

Note: Quartz Where is only supported when using the TerracottaJobStore, and is an enterprise-only feature.

Expected Updates and Scheduled Bug Fixes

CDV Project Jira fixes
EHC Project scheduled fixes for Ehcache 2.4.0

Beta Notes

General

  • APIs (Ehcache Search, Quartz Scheduler 2.0 etc) are subject to change
  • The implementation is not performance tuned

Specific items which are planned for the final release, but are not included in Beta 1

  • Monitoring of new features via JMX
  • Ehcache Search is supported with Terracotta clustered caches, however in Beta 1 there are a series of known limitations with the implementation:
    • Active/Passive server failover will not be supported
    • Attribute.ne() does not yet function
    • Attribute.like() is case sensitive for clustered search (contrary to javadoc in Ehcache core)
    • There is no timeout for search operations
    • For numeric search attributes with null values the sort order will differ between standalone and clustered
    • Paged/chunked results: a large search results will be transferred in whole to node making the query. This may cause OOME
  • Ehcache Search (standalone and clustered): excecuteAndRemove, cache metadata search (TBD)
  • Ehcache NonStopCache is now in the Terracotta core kit, but in Beta 1 is off by default (the intent is that it will be the default mode of operation)
  • Quartz Locality (ehcacheConstraint)
    • more constraints. Also, configuration based locality is only supported on Trigger groups only right now (not on Job groups), wildcards, Matchers
  • Developer Console updates to support Quartz 2.0
  • Ehcache Write Behind updates
  • Ehcache Terracotta clustering - new default mode
  • Server-side (L2) BigMemory enhancement (eg better defaults, removal of chunk/segment size restrictions, auto-tuning of chunk and segment sizes, better protection from OOMEs, ...)
  • Updated Extjs toolkit in Ehcache Monitor
  • Usability improvements to Ehcache Monitor

Please email any questions you have regarding the beta to pm <at> terracotta.org

  • No labels