Fellow developers!

The time has come to start the work on an event framework for Neo4j. In
order to do a good work at this we would get input on what requirements you
have on an event framework. We would like to get a list of use cases for
which you would use an event framework, along with the features you think
the use case would need from the event framework (i.e. which events you
would like to receive notification about, and when). We would also like you
to motivate why these features are required by the use case. Events can
easily degrade performance if the framework is ill designed, so we would
like to keep things very lean.

We have made some early analysis and arrived at the following conclusions:

* There can be two kinds of event handlers: Proactive event handlers and
Reactive event handlers.
Proactive event handlers have the ability to preempt operations and Reactive
event handlers simply react to an event and cannot cause the event to not
succeed.

* There are three kinds of events in Neo4j kernel:
  - Lifecycle events, such as shutdown.
  - Transactional events, such as start commit, commit successful, rollback,
etc.
  - Data modification events, such as node created, property changed,
relationship removed, etc.

It might be possible that other components, such as the indexing component,
would want to add more events to the event framework.

These are of course just some initial input to get your thoughts going, feel
free to think outside of the constraints above. Our ultimate goal is to
create an event framework that is as useful as possible while maintaining

-- 
Tobias Ivarsson <tobias.ivars...@neotechnology.com>
Hacker, Neo Technology
www.neotechnology.com
Cellphone: +46 706 534857
_______________________________________________
Neo mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to