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)