| ----- |
| Release Notes for Apache Helix 0.6.2-incubating |
| ----- |
| |
| ~~ Licensed to the Apache Software Foundation (ASF) under one |
| ~~ or more contributor license agreements. See the NOTICE file |
| ~~ distributed with this work for additional information |
| ~~ regarding copyright ownership. The ASF licenses this file |
| ~~ to you under the Apache License, Version 2.0 (the |
| ~~ "License"); you may not use this file except in compliance |
| ~~ with the License. You may obtain a copy of the License at |
| ~~ |
| ~~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~~ |
| ~~ Unless required by applicable law or agreed to in writing, |
| ~~ software distributed under the License is distributed on an |
| ~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ~~ KIND, either express or implied. See the License for the |
| ~~ specific language governing permissions and limitations |
| ~~ under the License. |
| |
| ~~ NOTE: For help with the syntax of this file, see: |
| ~~ http://maven.apache.org/guides/mini/guide-apt-format.html |
| |
| Release Notes for Apache Helix 0.6.2-incubating |
| |
| The Apache Helix team would like to announce the release of Apache Helix 0.6.2-incubating |
| |
| This is the third release under the Apache umbrella. |
| |
| Helix is a generic cluster management framework used for the automatic management of partitioned, replicated and distributed resources hosted on a cluster of nodes. Helix provides the following features: |
| |
| * Automatic assignment of resource/partition to nodes |
| |
| * Node failure detection and recovery |
| |
| * Dynamic addition of Resources |
| |
| * Dynamic addition of nodes to the cluster |
| |
| * Pluggable distributed state machine to manage the state of a resource via state transitions |
| |
| * Automatic load balancing and throttling of transitions |
| |
| [] |
| |
| * Changes |
| |
| ** Sub-task |
| |
| * [HELIX-28] - ZkHelixManager.handleNewSession() can happen when a liveinstance already exists |
| |
| * [HELIX-85] - Remove mock service module |
| |
| * [HELIX-106] - Remove all string constants in the code |
| |
| * [HELIX-107] - Add support to set custom objects into ZNRecord |
| |
| * [HELIX-124] - race condition in ZkHelixManager.handleNewSession() |
| |
| * [HELIX-165] - Add dependency for Guava libraries |
| |
| * [HELIX-169] - Take care of consecutive handleNewSession() and session expiry during handleNewSession() |
| |
| * [HELIX-170] - HelixManager#isLeader() should compare both instanceName and sessionId |
| |
| * [HELIX-195] - Race condition between FINALIZE callbacks and Zk Callbacks |
| |
| * [HELIX-207] - Add javadocs to classes and public methods in the top-level package |
| |
| * [HELIX-208] - Add javadocs to classes and public methods in the model package |
| |
| * [HELIX-277] - FULL_AUTO rebalancer should not prefer nodes that are just coming up |
| |
| ** Bug |
| |
| * [HELIX-7] - Tune test parameters to fix random test failures |
| |
| * [HELIX-87] - Bad repository links in website |
| |
| * [HELIX-117] - backward incompatibility problem in accessing zkPath vis HelixWebAdmin |
| |
| * [HELIX-118] - PropertyStore -> HelixPropertyStore backwards incompatible location |
| |
| * [HELIX-119] - HelixManager serializer no longer needs ByteArraySerializer for /PROPERTYSTORE |
| |
| * [HELIX-129] - ZKDumper should use byte[] instead of String to read/write file/zk |
| |
| * [HELIX-131] - Connection timeout not set while connecting to zookeeper via zkHelixAdmin |
| |
| * [HELIX-133] - Cluster-admin command parsing does not work with removeConfig |
| |
| * [HELIX-140] - In ClusterSetup.java, the removeConfig is wrong wired to getConfig |
| |
| * [HELIX-141] - Autorebalance does not work reliably and fails when replica>1 |
| |
| * [HELIX-144] - Need to validate StateModelDefinition when adding new StateModelDefinition to Cluster |
| |
| * [HELIX-147] - Fix typo in Idealstate property max_partitions_per_instance |
| |
| * [HELIX-148] - Current preferred placement for auto rebalace is suboptimal for n > p |
| |
| * [HELIX-150] - Auto rebalance might not evenly distribute states across nodes |
| |
| * [HELIX-151] - Auto rebalance doesn't assign some replicas when other nodes could make room |
| |
| * [HELIX-153] - Auto rebalance tester uses the returned map fields, but production uses only list fields |
| |
| * [HELIX-155] - PropertyKey.instances() is wrongly wired to CONFIG type instead of INSTANCES type |
| |
| * [HELIX-197] - state model leak |
| |
| * [HELIX-199] - ZNRecord should not publish rawPayload unless it exists |
| |
| * [HELIX-216] - Allow HelixAdmin addResource to accept the old rebalancing types |
| |
| * [HELIX-221] - Can't find default error->dropped transition method using name convention |
| |
| * [HELIX-257] - Upgrade Restlet to 2.1.4 - due security flaw |
| |
| * [HELIX-258] - Upgrade Apache Camel due to CVE-2013-4330 |
| |
| * [HELIX-264] - fix zkclient#close() bug |
| |
| * [HELIX-279] - Apply gc handling fixes to main ZKHelixManager class |
| |
| * [HELIX-280] - Full auto rebalancer should check for resource tag first |
| |
| * [HELIX-288] - helix-core uses an old version of guava |
| |
| * [HELIX-299] - Some files in 0.6.2 are missing license headers |
| |
| ** Improvement |
| |
| * [HELIX-20] - AUTO-REBALANCE helix controller should re-assign disabled partitions on a node to other available nodes |
| |
| * [HELIX-70] - Make Helix OSGi ready |
| |
| * [HELIX-149] - Allow clients to pass in preferred placement strategies |
| |
| * [HELIX-198] - Unify helix code style |
| |
| * [HELIX-218] - Add a reviewboard submission script |
| |
| * [HELIX-284] - Support participant auto join in YAML cluster setup |
| |
| ** New Feature |
| |
| * [HELIX-215] - Allow setting up the cluster with a YAML file |
| |
| ** Task |
| |
| * [HELIX-95] - Tracker for 0.6.2 release |
| |
| * [HELIX-154] - Auto rebalance algorithm should not depend on state |
| |
| * [HELIX-166] - Rename modes to auto, semi-auto, and custom |
| |
| * [HELIX-173] - Move rebalancing strategies to separate classes that implement the Rebalancer interface |
| |
| * [HELIX-188] - Add admin command line / REST API documentations |
| |
| * [HELIX-194] - ZNRecord has too many constructors |
| |
| * [HELIX-205] - Have user-defined rebalancers use RebalanceMode.USER_DEFINED |
| |
| * [HELIX-210] - Add support to set data with expect version in BaseDataAccessor |
| |
| * [HELIX-217] - Remove mock service module |
| |
| * [HELIX-273] - Rebalancer interface should remain unchanged in 0.6.2 |
| |
| * [HELIX-274] - Verify FULL_AUTO tagged node behavior |
| |
| * [HELIX-285] - add integration test util's |
| |
| [] |
| |
| Cheers, |
| -- |
| The Apache Helix Team |