Srikanth Sundarrajan created FALCON-965:
-------------------------------------------

             Summary: Open up life cycle stage implementation within Falcon for 
extension
                 Key: FALCON-965
                 URL: https://issues.apache.org/jira/browse/FALCON-965
             Project: Falcon
          Issue Type: Bug
    Affects Versions: 0.7
            Reporter: Srikanth Sundarrajan


As it stands Falcon supports replication, generation and eviction lifecycle 
stages and plans to support more. This however assumes a certain way of 
implementing a life cycle function and changes to these implementation aren't 
easy, as they are not open for easy extension. This proposed feature is open 
this up in Falcon.

Here is a proposal on how things can possibly be:

* List of life cycles that Falcon supports would be well known and not 
extensible
* Dependency between life cycles are coded up in the falcon server and not 
necessarily extensible. (In short adding a new life cycle still requires 
changes in Falcon)
* Each Lifecycle in falcon advertises an implementation interface and minimum 
configuration interface (for ex. Eviction should expose a way to retrieve the 
configured time limit for which data will be available for other life cycle 
stages to validate. There is no point in having a process consume last 24 
instances of a feed, when the retention will retain only 4 instances)
* Similar to FALCON-634, life cycle implementation can be dropped in as long as 
the implementation interface and configuraion interfaces are adhered to.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to