Apache Falcon Change log

Branch: 0.6.1 (Proposed Release Version: 0.6.1)
  FALCON-1134 Create branch 0.6.1 and update version to 0.6.1
  (Shaik Idris Ali) 

  INCOMPATIBLE CHANGES

  NEW FEATURES
   FALCON-1182 Remove reference to com.google.code.findbugs:annotations(Shaik Idris Ali)

   FALCON-1091 Monitoring plugin that registers catalog partition - code
   (Suhas Vasu / PallaviRao / Shwetha GS via Suhas Vasu)

   FALCON-790 Falcon UI to enable entity/process/feed edits and 
   management. (Armando Reyna/Kenneth Ho via Srikanth Sundarrajan)

   FALCON-949 Force update feature (pavan kumar kolamuri via Suhas Vasu)

   FALCON-822 Add reverse look up API (Ajay Yadava via Suhas Vasu)

  IMPROVEMENTS
   FALCON-1158 Rename the parameter "pattern" in LIST API to "nameseq"
   (Ying Zheng via Suhas Vasu)

   FALCON-1142 ClusterEntityParserTest.testClusterWithOnlyStaging
   fails when run alone(Pallavi Rao via Suhas Vasu)

   FALCON-1128 Adding getter methods to FeedLookupResult
   (Karishma Gulati via Samarth)

   FALCON-1086 Support execution-order of a feed to be overridden
   for replication coord (Shaik Idris Ali via Suhas Vasu)

   FALCON-915 Failed to load data. Error: 400 Param user.name
   can't be empty - Web UI/0.6 (Balu Vellanki via Suhas Vasu)

   FALCON-933 misleading error msg on cluster submit failure
   (Sowmya Ramesh via Suhas Vasu)

   FALCON-910 Better error messages when creating cluster's directories
   (karan kumar via Suhas Vasu)

   FALCON-1042 Misleading mesage received while performing touch operation
   on scheduled entity (Suhas Vasu)

   FALCON-1074 EntityUtil getInstanceSequence is buggy (Ajay Yadava via Suhas vasu)

   FALCON-1024 Updating tags and pipeline elements of the feed/process definition
   resubmits a new Oozie bundle (Pallavi Rao via Suhas Vasu)

   FALCON-555 API response from instance "params" having multiple "entry" key
   (Pallavi Rao via Suhas Vasu)

   FALCON-1003 Update checkstyle to remove DoubleCheckedLocking
   (Pallavi Rao via Suhas Vasu)

   FALCON-1012 Add support for MapR-FS (Roman Slysh via Suhas Vasu)

   FALCON-774 Discontinue support for JDK 1.6 and move to 1.7. (Peeyush 
   Bishnoi via Srikanth Sundarrajan)

   FALCON-263 Adding documentation for params api (Ajay Yadav via Srikanth 
   Sundarrajan) 

   FALCON-237 falcon feed replication should honour availability flag (Peeyush
   Bishnoi via Srikanth Sundarrajan)

   FALCON-417 Upgrade Hive and HCatalog to latest stable version. (Peeyush Bishnoi
   via Srikanth Sundarrajan)

   FALCON-896 Upgrade oozie to 4.1.0 and make it the default for falcon. (Peeyush
   Bishnoi via Srikanth Sundarrajan)

   FALCON-749 Improve error printed in falcon CLI. (Suresh Srinivas via Shwetha GS)

   FALCON-977 Drop incubator/incubating from falcon codebase. (Shwetha GS
   via Srikanth Sundarrajan)

   FALCON-952 If hadoop home is set, use $HADOOP_HOME to set falcon classpath
   (Balu Vellanki via Suhas Vasu)

   FALCON-935 Feed and process late rerun failed in falcon trunk
   (Shaik Idris Ali via Suhas Vasu)

   FALCON-914 Add option to search for Entities. (Ajay Yadav via Srikanth
   Sundarrajan) 

   FALCON-256 Create new API for Process dependency graph DAG which captures 
   process connected via feeds. (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-823 Add path matching ability to the radix tree (Ajay Yadav
   via Srikanth Sundarrajan) 

   FALCON-329 Falcon client methods should return objects. (Samar via Shwetha GS)

   FALCON-593 Preserve data type for properties in a vertex. (Ajay
   Yadav via Srikanth Sundarrajan)

   FALCON-785 Document upgrade path from 0.5 to 0.6. (Balu Vellanki 
   via Srikanth Sundarrajan)

   FALCON-877 Pagination API should have a cap on number of results 
   returned (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-734 Document when to use Distributed Mode vs. Embedded Mode
   (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-805 Create store to store feed properties like name against 
   it's path (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-807 Fix order of actual and expected expression in assert 
   statements in webapp module (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-784 Update release notes in CHANGES.txt in branch and trunk 
   (Venkatesh Seetharam)

   FALCON-782 Update trunk version to 0.7-incubating-SNAPSHOT (Venkatesh 
   Seetharam)

  OPTIMIZATIONS
   FALCON-1071 Feed Listing API default behaviour for start and end
   not handled properly. (Suhas Vasu)

   FALCON-1063 Falcon CLI list entities operation throws NullPointerException
   (Pallavi Rao via Suhas Vasu)

   FALCON-987 params command inconsistent behavior
   (pavan kumar kolamuri via Suhas Vasu)

   FALCON-944 Parallel update APIs create 2 coords (Suhas Vasu)

   FALCON-943 process update copying user lib is very slow. (Shwetha G S)

   FALCON-419 Update deprecated HCatalog API to use Hive Metastore API.
   (Shwetha GS)

   FALCON-423 Updating falcon server endpoint in distributed setup doesn't 
   work. (Srikanth Sundarrajan)

   FALCON-913 Change the default values of log clean up services
   (Suhas vasu)

  BUG FIXES
   FALCON-1162 Cluster submit succeeds when staging HDFS dir does not
   have 777 (ALL) permission (Venkat Ramachandran via Suhas Vasu)

   FALCON-1161 Test case feedFeedBasePathExists fails intermittently
   (Suhas Vasu)

   FALCON-1154 Replication is broken (Sowmya Ramesh via Suhas Vasu)

   FALCON-1159 Falcon build is broken (Suhas Vasu)

   FALCON-1146 feed retention policy deleted everything all the way
   up to the root (Peeyush Bishnoi via Suhas Vasu)

   FALCON-1129 In a secure cluster, feed replication fails because of
   Authentication issues (Venkat Ranganathan via Suhas Vasu)

   FALCON-1141 Reverse Lookup for feed in prism fails with BadRequest
   (Ajay Yadava via Suhas Vasu)

   FALCON-1143 Correcting order of entities on reload
   (Ajay Yadava via Suhas Vasu)

   FALCON-1144 Dynamic partitions not getting registered in Hcat
   (Suhas Vasu)

   FALCON-1132 Falcon trunk is broken due to failure in IT test
   (Ajay Yadava via Suhas Vasu)

   FALCON-1097 UT failure for ExpressionHelperTest
   (Ajay Yadava via Shaik Idris)

   FALCON-1125 Feed Lookup API doesnt work via prism
   (Ajay Yadava via Suhas Vasu)

   FALCON-1119 Instance logs option is not returning the log location
   (Suhas Vasu)

   FALCON-1100 UI : Failed to load data. 404 not found
   (Sowmya Ramesh via Suhas Vasu)

   FALCON-1123 Stacktrace printed by Falcon CLI is not useful to user
   (Pallavi Rao via Suhas Vasu)

   FALCON-1117 Falcon Client throws NPE on no emtpy result in
   reverse lookup (Ajay Yadava via Suhas Vasu)

   FALCON-1099 FeedReplicator: throws NPE (Sowmya Ramesh via Suhas Vasu)

   FALCON-1064 Build hangs at the following test: JMSMessageProducerTest
   (Sowmya Ramesh via Suhas Vasu)

   FALCON-1070 numResults and offset doesnot work for instance operations
   (Suhas Vasu)

   FALCON-1025 lastWeek and CurrentWeek functions are getting
   evaluated incorrect (pavan kumar kolamuri via Suhas Vasu)

   FALCON-1020 validate command produces different results when run
   via prism and server (pavan kumar kolamuri via Suhas Vasu)

   FALCON-950 Rerun does not work on succeeded instances (Suhas Vasu)

   FALCON-1048 Incorrect documentation for feed instacnce listing api. (Suhas
   Vasu via Srikanth Sundarrajan)

   FALCON-1057 recipes.twiki should be renamed Recipes.twiki for consistency 
   and to fix a dead link (Aaron Dossett via Srikanth Sundarrajan)
   
   FALCON-1052 pipeline feature is not able to group by through CLI
   (Pallavi Rao via Suhas Vasu)

   FALCON-1047 Feed Instance Listing doesn't return any output or error
   (Pallavi Rao via Suhas Vasu)

   FALCON-1050 Falcon rerun is broken for timed out instances
   (Suhas Vasu)

   FALCON-1045 Falcon rerun is broken in trunk (Suhas Vasu)

   FALCON-973 Add LogMover Service for yarn
   (pavan kumar kolamuri via Suhas Vasu)

   FALCON-993 Falcon Oozie adaptor test case failed with umask issue
   (Peeyush Bishnoi via Srikanth Sundarrajan)

   FALCON-1000 ITs fail with NoSuchFieldError: INSTANCE. (Shwetha GS)

   FALCON-109 submission of clusters for non registered colos 
   (Pallavi Rao via Suhas Vasu)

   FALCON-995 Sharelib directory does not exist in webapp
   (Peeyush Bishnoi via Suhas Vasu)

   FALCON-984 Falcon build is broken. (Peeyush Bishnoi via Srikanth
   Sundarrajan)

   FALCON-945 Fix broken lineage feature in Web-UI. (Adam Kawa via Srikanth
   Sundarrajan)

   FALCON-921 Validate command is exposed only through prism. (Ajay Yadav 
   via Shwetha GS)

   FALCON-916 Falcon idempotency is being voilated during delete. (Balu
   Vellanki via Srikanth Sundarrajan)

   FALCON-917 Fix corner cases while getting job id during instance status
   (Suhas Vasu) 


Release Version: 0.6-incubating

   FALCON-785 Document upgrade path from 0.5 to 0.6 (Venkatesh Seetharam)

  INCOMPATIBLE CHANGES
   FALCON-753 Change the ownership for staging dir to user submitting the feed
   (Venkatesh Seetharam)

  NEW FEATURES
   FALCON-722 Add SLA for processes (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-721 Add SLA for Feeds (Ajay Yadav via Suhas Vasu)

   FALCON-687 Add hooks for extensions in Audit (Venkatesh Seetharam)

   FALCON-636 Add a sample recipe for disaster recovery of hdfs dirs/files
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-635 Add recipe option in falcon client (Sowmya Ramesh via
   Venkatesh Seetharam)

   FALCON-615 Add pipleline element to lineage graph
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-614 Add pipeline element to process entity
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-588 Baselining designer code. (samar via Shwetha GS)

   FALCON-400 Add Authorization for Entities (Venkatesh Seetharam)
      FALCON-279 Add ACL for Cluster Entity
      FALCON-462 Add ACL for process entity
      FALCON-463 Validate Feed ACL only if authorization is enabled
      FALCON-464 Enforce Authorization for REST API
      FALCON-468 Add User Documentation for authorization feature
      FALCON-557 Add super-user who is authorized for all

   FALCON-466 REST APIs must add the entity owner as an implicit filter (Balu Vellanki
   via Venkatesh Seetharam)

   FALCON-263 API to get workflow parameters. (pavan kumar kolamuri via Shwetha GS)

  IMPROVEMENTS
   FALCON-320 Whitespace has not been taken into consideration in runtime.properties

   FALCON-766 Falcon workflow rerun by default should rerun only Failed nodes
   and remove continue option (Shaik Idris Ali via Venkatesh Seetharam)

   FALCON-744 Document existing falcon data archival to cloud store
   (Venkatesh Seetharam)

   FALCON-869 Clean up required in the instance API calls. (Suhas Vasu)

   FALCON-878 Move falcon html files to HTML5. (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-145 Feed eviction be implemented in appropriate Storage 
   implementation. (Ajay Yadav via Srikanth Sundarrajan)

   FALCON-813 Expose job id for running jobs in Falcon (Suhas Vasu)

   FALCON-834 Propagate request id in the response to help trace and debug
   failures in merlin (Venkatesh Seetharam)

   FALCON-828 Add hadoop version info as part of falcon admin version API
   (Venkatesh Seetharam)

   FALCON-762 Support feed listing for file system storage (Srikanth Sundarrajan)

   FALCON-20 Remove dependency on custom InMobi DistCp (Sowmya Ramesh via
   Venkatesh Seetharam)

   FALCON-758 Discontinue support for Oozie-3.x (Peeyush Bishnoi via
   Venkatesh Seetharam)

   FALCON-757 Discontinue support for Hadoop-1.x (Sowmya Ramesh via
   Venkatesh Seetharam)

   FALCON-748 Falcon throws '413 Full Head' error message when kerberos is
   enabled with AD (Balu Vellanki via Venkatesh Seetharam)

   FALCON-767 Upgrade Hadoop from 2.4 to 2.5 (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-651 Typos in Falcon Documentation (Ajay Yadav via Venkatesh Seetharam)

   FALCON-576 Update Installation notes for Mac OS (Ajay Yadav via
   Venkatesh Seetharam)

   FALCON-666 Add Alerts for unrecoverable failures (Venkatesh Seetharam)

   FALCON-665 Handle message consumption failures in JMSMessageConsumer
   (Venkatesh Seetharam)

   FALCON-662 Fetch relationships for a given type API (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-661 Add list types to Lineage API (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-654 Exclude junit dependency in pom (Ruslan Ostafiychuk)

   FALCON-640 Add ability to specify sort order for orderBy param in RestAPI
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-594 Process lineage information for Retention policies
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-325 Process lineage information for Replication policies
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-474 Add Bulk APIs to drive the dashboard needs (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-166 Instance status start and end dates are rigid and inconvenient
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-612 Create CHANGES.txt for falcon-regression(Arpit Gupta via SamarthG)

   FALCON-470 Add support for pagination, filter by, etc. to Entity and
   Instance List API (Balu Vellanki via Venkatesh Seetharam)

   FALCON-327 - Simplify message passing framework (Venkatesh Seetharam)
    FALCON-484 - Refactor workflow related code into context, listener and Notification
    FALCON-485 - Simplify JMS Message Sender/Consumer and use Workflow Context
    FALCON-486 - Introduce Workflow Context in Post Processing
    FALCON-487 -Introduce Workflow Context in Rerun framework
    FALCON-488 - Introduce Workflow Context in Lineage Service
    FALCON-492 - Refactor workflow listener implementation init config driven

   FALCON-554 Extend time functions available in Falcon to support current & 
   last week (Contributed by Srikanth Sundarrajan)

   FALCON-369 Refactor workflow builder. (Shwetha GS)

   FALCON-280 Validate the ACL in Feed entity with the user submitting the entity
   (Jean-Baptiste Onofré via Venkatesh Seetharam)

   FALCON-445 Propagate hive credentials defined in cluster entity to
   hive-site.xml (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-133 Upgrade to slf4j 1.7.5 and use SLF4J logger. (Jean-Baptiste Onofré
   via Shwetha GS)

   FALCON-353 enable dry run feature of oozie for schedule 
   and update (Shwetha GS via Suhas Vasu)

  OPTIMIZATIONS

  BUG FIXES
   FALCON-829 Better error message for cluster submission failure
   (Karan Kumar via Venkatesh Seetharam)

   FALCON-824 Remove usage of Hadoop incompatible API
   (Shwetha G S via Venkatesh Seetharam)

   FALCON-894 Cluster submission with hive registry fails in secure setup
   (Venkatesh Seetharam)

   FALCON-892 HCatReplication fails in secure setup (Venkatesh Seetharam)

   FALCON-889 Windows azure replication fails with "wasb" as the scheme to an
   HDFS file system (Chris Nauroth via Venkatesh Seetharam)

   FALCON-885 RequestID is coming as null for all instance API calls
   (Venkatesh Seetharam)

   FALCON-880 Oozie Java actions for hive tables fail in secure mode
   (Venkatesh Seetharam)

   FALCON-717 Shutdown not clean for JMSMessageConsumer
   (Shaik Idris Ali via Venkatesh Seetharam

   FALCON-875 Enitiy Summary endpoint filterBy does not filter entities
   without pipelines (Balu Vellanki via Venkatesh Seetharam)

   FALCON-874 Rest API - Instance and Entity orderBy param values should be
   case insensitive (Balu Vellanki via Venkatesh Seetharam)

   FALCON-820 Fix minor nits with HadoopClientFactory
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-815 Rename mapBandwidthKB to mapBandwidth in DistCp
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-595 Improvements to DefaultAuthorizationProvider code
   (Raghav Kumar Gautam via Venkatesh Seetharam)

   FALCON-868 Rerun command incorrect in falcon CLI documentation
   (Karishma Gulati via Venkatesh Seetharam)

   FALCON-864 Falcon superuser is unable to delete scheduled feed
   (Venkatesh Seetharam)

   FALCON-862 Falcon entity Rest API - filter by tags also returns entities
   that do not have tags (Balu Vellanki via Venkatesh Seetharam)

   FALCON-795 Maven Enforcer plugin is throwing error while building Falcon
   (Peeyush Bishnoi via Venkatesh Seetharam)

   FALCON-859 EntitySummary RestAPI : Change pathParam "cluster" to queryParam
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-858 entity/instance Rest API - make keys for filterBy param case
   insensitive (Balu Vellanki via Venkatesh Seetharam)

   FALCON-857 Authorization failure results in internal server error
   (Venkatesh Seetharam)

   FALCON-850 Cluster summary UI page results in 400 Bad Request
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-851 Super user authorization is broken (Venkatesh Seetharam)

   FALCON-840 Possible NPE in filteredInstanceSet method of
   AbstractInstanceManager (Balu Vellanki via Venkatesh Seetharam)

   FALCON-839 Authorization succeeds with invalid acl owner based on group
   membership (Venkatesh Seetharam)

   FALCON-831 Operation on non existing entity throws internal server error
   (Venkatesh Seetharam)

   FALCON-710 start/end is optional for lifecycle operations (Balu Vellanki
   via Venkatesh Seetharam)

   FALCON-819 Submission of cluster with registry interface fails on secure
   setup (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-804 Remove Oozie 3.* patch files from Falcon (Peeyush Bishnoi via
   Venkatesh Seetharam)

   FALCON-803 Instances displayed on Dashboard entity page should be sorted
   by startTime (Balu Vellanki via Venkatesh Seetharam)

   FALCON-799 Falcon Dashboard unusable when server is started with umask 077
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-678 Falcon's default port has changed to 15443 (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-482 Concurrent requests made using Proxy Oozie client fail
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-764 Falcon retry of failed process/feed instances broken during restart
   (Shaik Idris via Suhas Vasu)

   FALCON-800 Falcon lineage is not working (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-792 Integration test EntityManagerPaginationJerseyIT fails
   occasionally (Balu Vellanki via Venkatesh Seetharam)

   FALCON-787 FalconCLI - Submit recipe failed (Sowmya Ramesh via
   Venkatesh Seetharam)

   FALCON-786 FalconAuditFilter - Arguments in wrong order (Venkatesh Seetharam)

   FALCON-789 Post processing is broken for Feeds (Sowmya Ramesh via
   Venkatesh Seetharam)

   FALCON-788 Lineage: Minor bug fixes (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-777 UT intermittent failures in Messaging tests depending on Thread.sleep
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-773 Log clean up handlers only work in distributed mode
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-760 Messaging is broken for FALCON.ENTITY.TOPIC in case of Eviction
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-768 Change dashboard USER_ID to falcon-dashboard (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-759 Adding cluster entity fails when Yarn TimelineClient is enabled
   (Balu Vellanki via Venkatesh Seetharam)

   FALCON-740 Entity kill job calls OozieClient.kill on bundle coord job ids
   before calling kill on bundle job id (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-732 Lineage capture fails for an instance thats not generated by
   falcon (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-731 Lineage capture for evicted instance is broken
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-724 Build fails as Integration test fails (Balu Vellanki via
   Venkatesh Seetharam)

   FALCON-728 Unit test failures on jenkins (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-727 JQuery license is incorrectly mentioned in the header file. (Srikanth Sundarrajan)

   FALCON-702 JailedFileSystem does not work for relative paths
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-677 Feed data and stats path defaults to /tmp/. (Suhas Vasu via Shwetha GS)

   FALCON-590 Update to ACLs added to process is not handled
   (Venkatesh Seetharam)

   FALCON-694 StringIndexOutOfBoundsException while updating graph DB for
   replicated instance (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-695 Lineage: "stored-in" edge is added between feed entity and
   target cluster (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-669 Missing optional workflow execution listeners configuration
   results in NPE (Raghav Kumar Gautam via Venkatesh Seetharam)

   FALCON-644 Falcon message producer masks errors in Post processing
   (Venkatesh Seetharam)

   FALCON-338 - late data recording is enabled by default for all feeds
   irrespective of late arrival config (Ajay Yadav via Suhas Vasu)

   FALCON-652 EntityUtils tests are failing (Ajay Yadav via Venkatesh Seetharam)

   FALCON-650 Instance list APIs occassionally fail when orderBy set to
   starttime or endtime (Balu Vellanki via Venkatesh Seetharam)

   FALCON-649 Remove unnecessary validation for Instance start time in
   FalconCLI (Balu Vellanki via Venkatesh Seetharam)

   FALCON-579 Lineage breaks if feed.xml doesn't have the date pattern in
   feed path location (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-642 OozieProcessWorkflowBuilderTest test failures. (Shwetha GS)

   FALCON-630 late data rerun for process broken in trunk. (Shwetha GS)

   FALCON-611 Post process arg status is in 'FAILED' state always
   (Shwetha GS via Suhas Vasu)

   FALCON-622 Fix ProcessUpdate and update at specific time test
   (Samarthg)

   FALCON-616 cluster submission should fail when shared libs copy fail
   (Shwetha GS via Suhas Vasu)   

   FALCON-598 ProcessHelper throws NPE if the process has no inputs OR no
   outputs defined (Balu Vellanki via Venkatesh Seetharam)

   FALCON-583 Post processing is broken in current trunk
   (Venkatesh Seetharam via Suhas Vasu)

   FALCON-582 Latest changes to LICENSE files results in build failure
   (Srikanth Sundarrajan via Venkatesh Seetharam)

   FALCON-577 Extend time functions added in Falcon 0.6 to support current & last week
   are giving UnsupportedOperationException. (Srikanth Sundarrajan via Shwetha GS)

   FALCON-578 Table import & table export failing during hcat table replication
   (Suhas Vasu)
   
   FALCON-571 user libs not getting loaded during process execution 
   (Shwetha GS via Suhas Vasu)

   FALCON-514 Falcon CLI giving error when using -file option with -rerun in 
   instance management. (pavan kumar kolamuri via Shwetha GS)

   FALCON-566 update throwing null job id exception. (Shwetha GS)

   FALCON-561 Falcon jenkins failure in EntityManagerJerseyIT.
   (Shwetha GS via Suhas Vasu)

   FALCON-556 Feed Replication _SUCCESS is not getting created on target directory.
   (pavan kumar kolamuri via Suhas Vasu)

   FALCON-497 Able to submit feed even though owner of storage specified (location type=data) 
   is different from the ACL owner. (Shwetha GS)

   FALCON-357 HCatalog Feed replication: Hive export job fails when table partition 
   contains multiple dated columns. (Satish Mittal via Shwetha GS)

   FALCON-495 multi source single target feed replication failing in regression.
   (Satish Mittal via Shwetha GS)

   FALCON-494 update feature broken. (Shwetha GS via Suhas Vasu)

   FALCON-496 Feed Replication with Empty Directories giving error. 
   (pavan kumar kolamuri via Shwetha GS)

   FALCON-483 Fix the failing test ConfigurationStoreTest.testConcurrentRemoves 
   on jenkins. (Sowmya Ramesh via Shwetha GS)

   FALCON-430 Process update with user (Shwetha GS via Venkatesh Seetharam)

   FALCON-460 Concurrent deletion of same entity results in NPE (Sowmya Ramesh
   via Venkatesh Seetharam)

   FALCON-459 Lineage resource API fails with NPE for bad query params
   (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-456 Custom DistCp conflict with core DistCp in container classpath
   fails falcon workflows (Venkatesh Seetharam)

   FALCON-446 Hive Replications fail because of permissions issue
   (Venkatesh Seetharam)

   FALCON-444 Logs dir for replication workflow is incorrect and jobs fail
   with permission issues (Venkatesh Seetharam)

   FALCON-443 Process with Hive workflow engine and filesystem input feeds,
   table output feed fails (Sowmya Ramesh via Venkatesh Seetharam)

   FALCON-382 Error While building Latest trunk code with Hadoop 2.2.0. (Suhas Vasu)

   FALCON-240 Instance status from CLI on a feed doesn't give the retention details. 
   (pavan kumar kolamuri via Shwetha GS)

   FALCON-441 Lineage capture fails for feeds with multiple instances
   (Venkatesh Seetharam)

Release Version: 0.5-incubating
  INCOMPATIBLE CHANGES
    FALCON-11 Add support for security in Falcon (Venkatesh Seetharam)

    FALCON-288 Persist lineage information into a persistent store
    (Venkatesh Seetharam)

  NEW FEATURES
    FALCON-281 Design Action Interface. (Srikanth Sundarrajan)

    FALCON-259 Design Transformation Interface. (Srikanth Sundarrajan)

    FALCON-26 Pipeline Monitor addition. (Suhas Vasu via Shwetha GS)

    FALCON-254 Bootstrap designer module. (Srikanth Sundarrajan via Shwetha GS)

    FALCON-238 Support updates at specific time. (Shwetha GS)

    FALCON-285 Support Lineage information capture (Venkatesh Seetharam)

    FALCON-289 Provide REST APIs for discovering lineage metadata over the store.
    (Venkatesh Seetharam)

    FALCON-229 Enable SSL for Falcon REST API (Srikanth Sundarrajan via
    Venkatesh Seetharam)
   
  IMPROVEMENTS
    FALCON-453 possible LICENSE/NOTICE issues (Chris Douglas via Venkatesh Seetharam)

    FALCON-450 Add jdk 1.6 requirement in release notes (Venkatesh Seetharam)

    FALCON-449 Twiki documentation files may need ALv2 headers (Venkatesh Seetharam)

    FALCON-448 File names in the release should have apache as the prefix
    (Venkatesh Seetharam)

    FALCON-439 Update the copyright in Notice and License files (Venkatesh Seetharam)

    FALCON-324 Document lineage feature (Sowmya Ramesh via Venkatesh Seetharam)

    FALCON-312 Falcon LogCleanupServiceTest seems to clean up root "/"
    (Venkatesh Seetharam)

    FALCON-379 Document limitations of Hive support in Falcon (Venkatesh Seetharam)

    FALCON-421 Upgrade Hadoop to 2.4.0 (Sowmya Ramesh via Venkatesh Seetharam)

    FALCON-386 Upgrade to oozie 4.0.1. (Sowmya Ramesh via Venkatesh Seetharam)

    FALCON-392 HCat Example Recipes. (Shwetha GS via Venkatesh Seetharam)

    FALCON-391 Add ability to set mapBandwidth. (Michael Miklavcic via Shwetha GS)

    FALCON-380 The dependency option doesn't mention input or output for a feed.
    (Suhas Vasu via Shwetha GS)

    FALCON-365 Remove the checked in oozie xsds. (Shwetha GS)

    FALCON-356 Merge OozieProcessMapper and OozieProcessWorkflowBuilder. (Shwetha GS)

    FALCON-355 Remove SLAMonitoringService. (Shwetha GS)

    FALCON-333 jsp-api dependency is defined twice. (Jean-Baptiste
    Onofrévia Shaik Idris)

    FALCON-311 Several dead links in Falcon documentation.
    (Suresh Srinivas via Venkatesh Seetharam)

    FALCON-304 Simplify assembly for script in standalone and distributed
    mode. (Suresh Srinivas via Venkatesh Seetharam)

    FALCON-264 Update with effectiveTime in CLI. (Shwetha GS via Srikanth
    Sundarrajan)

    FALCON-60 Feed retention doesn't delete empty parent dirs. (Shaik Idris)

    FALCON-247 Add scripts to check the status of falcon and prism. (Jean-Baptiste 
    Onofré via Shwetha GS)

    FALCON-245 POM should use Apache POM as parent. (Jean-Baptiste Onofré via 
    Shwetha GS)

    FALCON-252 Upgrade to json-simple 1.1.1. (Jean-Baptiste Onofré via 
    Shwetha GS)

    FALCON-233 Update hadoop 2 version to 2.2.0. (Venkatesh Seetharam
    via Shwetha GS)

    FALCON-64 Add example entity xmls in falcon package. (Shwetha GS)
    
    FALCON-66 Make oozie version change configurable. (Shwetha GS
    via Srikanth Sundarrajan)
    
    FALCON-38 Falcon's parent workflow actions (pre-processing & prost-processing) 
    should have multiple retries. (Shaik Idris)

    FALCON-242 Post processing is not called in Retention workflows (Shaik Idris)

    FALCON-286 Capture information in process entity about the user workflow
    (Venkatesh Seetharam)

    FALCON-287 Record lineage information in post processing (Venkatesh Seetharam)

    FALCON-257 File system storage wont work with relative paths
    (Venkatesh Seetharam)

    FALCON-334 Add indexing to the graph property keys. (Venkatesh Seetharam)

    FALCON-342 Add ability to set maxMaps on replication (Michael Miklavcic
    via Venkatesh Seetharam)

    FALCON-366 Add a REST API to get properties for a given vertex (Venkatesh Seetharam)

    FALCON-370 Remove Graph dump option in CLI (Venkatesh Seetharam)

    FALCON-367 Bump dagre and jquery version for the web UI (Haohui Mai
    via Venkatesh Seetharam)

    FALCON-290 Visualize lineage information on the dashboard (Haohui Mai
    via Venkatesh Seetharam)

    FALCON-371 Show vertex information in the web UI (Haohui Mai via Venkatesh Seetharam)

    FALCON-373 Display lineage link only for jobs that are succeeded in the web UI
    (Haohui Mai via Venkatesh Seetharam)

    FALCON-393 Display error messages when the web UI fails to get the data from the server
    (Haohui Mai via Venkatesh Seetharam)

    FALCON-395 Falcon service does not start when _HOST is used in the spnego principal
    (Venkatesh Seetharam)

    FALCON-397 DistCp uses JobSubmissionFiles API which is incompatible between hadoop versions
    (Venkatesh Seetharam)

  OPTIMIZATIONS
    FALCON-123 Improve build speeds in falcon. (Srikanth Sundarrajan via Shwetha GS)

  BUG FIXES
    FALCON-447 Remove the jar file form the source distribution (Venkatesh Seetharam)

    FALCON-440 Exclude IDEA IntelliJ and other unnecessary files from source
    distribution (Venkatesh Seetharam)

    FALCON-437 Feed Replication workflows are failing (Venkatesh Seetharam)

    FALCON-429 Falcon CLI entity list command throws NPE stack trace in case
    of no entities (Satish Mittal via Venkatesh Seetharam)

    FALCON-427 Update default falcon endpoint URL in runtime.properties for
    prism setup to work out of box (Satish Mittal via Venkatesh Seetharam)

    FALCON-425 src/bin/package.sh is broken for hadoop 2.* versions
    (Sowmya Ramesh via Venkatesh Seetharam)

    FALCON-426 Prism unable to connect to falcon server if falcon endpoint URL ends with
    '/' character. (Satish Mittal via Shwetha GS)

    FALCON-401 replicate hcat table to two targets can fail with export dir
    exists on source (Sowmya Ramesh via Venkatesh Seetharam)

    FALCON-364 Process specification contains a mistake in the parallel section
    (Jean-Baptiste Onofré via Venkatesh Seetharam)

    FALCON-398 Null pointer Exception on submitting HCat Feed (Sowmya Ramesh
    via Venkatesh Seetharam)

    FALCON-390 falcon HCatProcess tests are failing in secure clusters
    (Venkatesh Seetharam)

    FALCON-284 Hcatalog based feed retention doesn't work when partition filter spans across
    multiple partition keys. (Satish Mittal via Shwetha GS)

    FALCON-409 Not able to create a package. (Raju Bairishetti via Shwetha GS)

    FALCON-396 minor logging typo in FalconTopicSubscriber. (Raghav Kumar Gautam via Shwetha GS)

    FALCON-352 old properties not removed on refresh of runtime properties. (Shaik Idris)

    FALCON-332 Oozie execution order is wrongly mapped in Falcon for LAST_ONLY. 
    (Shaik Idris)

    FALCON-374 Update with effective time in CLI. (Shwetha GS)

    FALCON-98 starting embedded hadoop fails sometimes. (Shwetha GS)

    FALCON-28 unable to submit/delete feed or process which had been attempted submit 
    with wrong cluster. (Shwetha GS)

    FALCON-269 Mistake in the embedded ActiveMQ port property. (Jean-Baptiste Onofré
    via Shwetha GS)

    FALCON-344 FeedEvictorTest. (Shaik Idris Ali via Shwetha GS)

    FALCON-302 Issues with distributed package properties. (Shwetha GS)

    FALCON-331 Summary API returning NPE if only start is passed. (Shwetha GS)

    FALCON-323 Summary API deserialization fails if array has only one element.
    (Shwetha GS via Shaik Idris)

    FALCON-319 Summary instance API returning wrong exception. (Shwetha GS via 
    Shaik Idris)

    FALCON-321 Feed evictor deleting more stuff than it should. (Shaik Idris)

    FALCON-330 Build fails for the module 'Apache Falcon CLI client ' on ubuntu.
    (Deepak Marathe via Shwetha GS)

    FALCON-297 Validations on update with effective time. (Shwetha GS)

    FALCON-278 Changes in feed availability info doesn't update process. (Shwetha GS)

    FALCON-239 Build failed on build-tools due to a missing SNAPSHOT. (Srikanth 
    Sundarrajan)

    FALCON-221 Logmover is not copying all action level logs. (Srikanth Sundarrajan)

    FALCON-270 Checkstyle can not be run on a module. (Jean-Baptiste Onofré via 
    Shwetha GS)

    FALCON-260 When a process is scheduled, the user workflow is failing with 
    OozieClientException. (Shwetha GS)

    FALCON-268 Checkstyle/Findbugs issues on FalconCLI. (Jean-Baptiste Onofré via 
    Shwetha GS)

    FALCON-258 Falcon status throws an error when external jobids are missing 
    (Suhas Vasu via Shaik Idris)

    FALCON-262 Example files should use aligned dependency versions. (Jean-Baptiste Onofré
    via Shwetha GS)

    FALCON-249 Fix mistakes in docs/InstallationSteps.html. (Jean-Baptiste Onofré
    via Shwetha GS)

    FALCON-241 The job logs are not copied during Post-Processing step in Replication workflows.
    (Suhas Vasu via Shwetha GS)

    FALCON-106 Falcon compilation fails for hadoop-2 profile. (Shwetha GS
    via Srikanth Sundarrajan)

    FALCON-206 Process update for wf changes. (Shwetha GS)

    FALCON-236 Falcon process output events which is optional should have at least one event 
    if defined. (Shaik Idris Ali via Shwetha GS)

    FALCON-228 Build failed on build-tools module. (Jean-Baptiste Onofré
    via Shwetha GS)

    FALCON-232 mvn clean verify fails with oozie war not found. (Shwetha GS)

    FALCON-124 unable to schedule deleted feed. (Shwetha GS via Shaik Idris)

    FALCON-226 Tests for subscribing/listening to multiple active-mq topics.  (Shaik Idris 
    via Shwetha GS)

    FALCON-336 Fix check style error - builds fail (Venkatesh Seetharam)

    FALCON-354 Bug when MetadataMappingService is not configured as one of the
    application services. (Venkatesh Seetharam)

    FALCON-360 Lineage recording fails with NPE for processes with >1 inputs.
    (Venkatesh Seetharam)

    FALCON-378 Feed status fails with NPE post update when the new coordinator
    is in PREP state (Venkatesh Seetharam)

    FALCON-377 Unit test fails consistently - EntityManagerJerseyIT.testProcessInputUpdate.
    (Shwetha GS via Venkatesh Seetharam)

    FALCON-418 FALCON-395 introduces a regression with hadoop-1
    (Jean-Baptiste Onofré via Venkatesh Seetharam)

Release Version: 0.4-incubating

   NEW FEATURES

    FALCON-54: Falcon support for hadoop 2.0

    FALCON-85: Hive (HCatalog) integration

    FALCON-164: Provide Falcon Prism Web UI

    FALCON-107: Adding extensions

   IMPROVEMENTS

    FALCON-73: Remove JUnit dependency as its used only for asserts while TestNG for tests

    FALCON-80: Option in falcon-start to not start embedded activemq

    FALCON-83: Option to build distributed packages

    FALCON-131: Remove set -e from falcon scripts

    FALCON-151: Document the REST APIs for Falcon

    FALCON-165: simplify packaging to create one package instead of client, falcon and prism packages

    FALCON-192: Release falcon 0.4 umbrella

    FALCON-62: Falcon compilation with hadoop 2.0 libs

    FALCON-63: Ability to ingest hadoop libs to falcon release package

    FALCON-67: Remove ant dependency in oozie workflows

    FALCON-76: Use cluster readonly endpoint for replication source

    FALCON-78: Falcon error when prism on one hadoop version and server on another

    FALCON-86: Hive table integration with cluster entity

    FALCON-87: Hive table integration with feed entity

    FALCON-88: Add embedded hive and webhcat for integration tests

    FALCON-90: Propagate hive table through Process mapper

    FALCON-91: Handle feed updates in purview of tables

    FALCON-93: Replication to handle hive table replication

    FALCON-94: Retention to handle hive table eviction

    FALCON-95: Enable embedding hive scripts directly in a process

    FALCON-96: Hive client to talk to the metastore

    FALCON-102: Add integration tests for feed entity parser with table defined

    FALCON-103: Upgrade oozie to 4.0.x

    FALCON-104: FALCON-86 introduces a backward incompatible change

    FALCON-113: Update documentation for Hive integration

    FALCON-129: Disable Late data handling for hive tables

    FALCON-143: Enable Late data handling for hive tables

    FALCON-146: Javadoc generation should respect skipCheck property

    FALCON-153: Feed Storage type isn&#39;t passed in replication for successful post processing

    FALCON-154: Remove webhcat startup in HadoopStartupListener as its not used

    FALCON-161: Feed evictor evicts instances not eligible when pattern has dash

    FALCON-163: Merge FALCON-85 branch into main line

    FALCON-171: Provide status in /api/entities/list

    FALCON-175: Visualize dependency information

    FALCON-178: Implement client-side pagination

    FALCON-190: /api/entities/list should allow the client to query different fields

    FALCON-193: Update the documentation to reflect the current work of dashboard

    FALCON-43: Add Falcon to Sonar for Analysis

    FALCON-134: Remove jsch dependency

    FALCON-135: Remove jzlib dependency

    FALCON-136: Upgrade to commons-codec 1.8

    FALCON-137: Remove commons-logging dependency

    FALCON-138: Remove perf4j dependency

    FALCON-198 Update LICENSE.txt to contain license information for all third-party libraries

    FALCON-363 Jetty is started with war when the war is already expanded
    (Venkatesh Seetharam)

    FALCON-358 REST API does not conform to Rexster (Venkatesh Seetharam)

    FALCON-359 Instance id's captured are of different formats in process and feed
    (Venkatesh Seetharam)

  BUG FIXES

    FALCON-223: hive-exec bundles protobuf-2.4.1 which is incompatible with hadoop-2 requiring protobuf-2.5

    FALCON-213: Validating Storage Exists (table) should be called only from the server (not from prism)

    FALCON-24: Allow re-run of timedout instances

    FALCON-42: Simplify Build and Installation Guide

    FALCON-50: Falcon replication having issue to s3

    FALCON-61: The identifier regex for oozie bundle,coordinator, workflow pattern is incorrect.

    FALCON-69: exception from ConfigurationChangeListener should fail the API

    FALCON-71: mvn jetty:run doesn&#39;t work

    FALCON-72: Feeds with invalid oozie URI in cluster cannot be deleted

    FALCON-74: Falcon CLI needs to be more robust in handling trailing spaces

    FALCON-79: Fix typos in Falcon architecture document

    FALCON-100: Build error with mvn 3.0.4

    FALCON-101: mvn release:prepare fails because of build order

    FALCON-127: Fix test issues after FALCON-107

    FALCON-128: Feed replication post processing log mover error

    FALCON-130: Use Geronimo Specs JMS instead of javax.jms

    FALCON-132: assembly plugin for embedded does not generate client artifacts

    FALCON-142: Cleanup testng dependency

    FALCON-152: REST API for entity &amp; Admin resources only returns XML

    FALCON-159: Version API endpoint does not emit valid JSON

    FALCON-162: Update falcon scripts to let the user set the log and pid locations.

    FALCON-168: Different validity of clusters in feed not handled

    FALCON-169: multiple &quot;/&quot; in target for replication for multi target feed

    FALCON-174: bind activemq to all interfaces rather than just localhost

    FALCON-179: Table replication must drop partition before import as late reruns fails

    FALCON-180: Disable table replication for multiple sources

    FALCON-182: Disable specifying partitions in inputs with table storage for process

    FALCON-185: Timestamp handled as int

    FALCON-186: Enable scheduler support for embedded activemq

    FALCON-187: Update Falcon start script to also redirect stdout to the log file

    FALCON-188: hadoop-2 profile is not carried through to oozie package

    FALCON-194 Import external libraries into the repository

    FALCON-204 Process mapper generates params assuming table input and output
    as names literally (Venkatesh Seetharam)

    FALCON-201 Package oozie-el-extensions jar files as part of tarball
    (Ashish Singh via Venkatesh Seetharam)

    FALCON-203 Do not generate transitive closure for the dependency graph
    (Haohui Mai via Venkatesh Seetharam)

    FALCON-212 OozieClient does not propagate user in request to
    Oozie server (Venkatesh Seetharam)

    FALCON-208 Improve the icons for instance lists. (Haohui Mai)

    FALCON-158 Fix failing jenkins nightly build. (Venkatesh Seetharam)

    FALCON-215 Falcon-start fails. (Arpit Gupta via Venkatesh Seetharam)



Release Version: 0.3-incubating

    FALCON-70 Confirm if v0.3 branch is ready for release as per guideline.
    (Venkatesh Seetharam via Srikanth Sundarrajan)

    FALCON-65 Avoid bundling compilation path dependent configs in artifact
    and allow for config scan to seamlessly fallback to classpath if not found
    in default conf location. (Srikanth Sundarrajan via Venkatesh Seetharam)

    FALCON-58 Gaps in release source / binary tarball. (Srikanth Sundarrajan)

    FALCON-57 Build fails if the source is not in scm. (Srikanth Sundarrajan)

    FALCON-53 Add -incubating to the version. (Jarek Jarcec Cecho via Srikanth
    Sundarrajan)

    FALCON-56 Update Falcon packing to include all source files. (Srikanth
    Sundarrajan)

    FALCON-55 Update suspends old oozie coords. (Shwetha GS via Srikanth 
    Sundarrajan)

    FALCON-52 Main module configured used with jetty:run has issues with app 
    start. (Srikanth Sundarrajan)

    FALCON-30 Enable embedding pig scripts directly in a process. (Venkatesh
    Seetharam via Srikanth Sundarrajan)

    FALCON-47 Falcon Replication should support configurable delays in feed, 
    parallel, timeout and bulk transfer with variable frequency (Shaik Idris
    Ali via Srikanth Sundarrajan)

    FALCON-49 Dependency on oozie-client pulls in hadoop-auth-0.23.1 which 
    is not necessary (Venkatesh Seetharam via Srikanth Sundarrajan)

    FALCON-32 Store test output in file rather then printing all the output
    into the console (Srikanth Sundarrajan via Venkatesh Seetharam)

    FALCON-1 Create packaging and scripts to install and try Apache Falcon
    (Srikanth Sundarrajan via Venkatesh Seetharam)

    FALCON-29 Add ability to tag/classify data sets and processes to enable
    discovery (Venkatesh Seetharam via Srikanth Sundarrajan)

    FALCON-31 File Installation-steps.txt contains old path to repository (Jarek 
    Jarcec Cecho via Srikanth Sundarrajan)

    FALCON-33 Add patch files to RAT ignore list (Jarek Jarcec Cecho via Srikanth
    Sundarrajan)

    FALCON-22 Rename ivory to falcon in project (Venkatesh Seetharam via Srikanth
    Sundarrajan)

    FALCON-19 Bump up the release version to 0.3-SNAPSHOT (Srikanth Sundarrajan 
    via Venkatesh Seetharam)

    FALCON-13 super pom must reflect license, project website, ML and SCM changes 
    post incubation (Venkatesh Seetharam via Srikanth Sundarrajan) 

    FALCON-10 Add findbugs plugin and fix findbugs warnings for project (Venkatesh
    Seetharam via Srikanth Sundarrajan) 


