[ 
https://issues.apache.org/jira/browse/USERGRID-85?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13955297#comment-13955297
 ] 

Todd Nine commented on USERGRID-85:
-----------------------------------

Currently the in memory impl is sufficient.  We need to create an impl for 
distributed processing.  Any distirbuted q system can be used.  Apache Qpid, 
ActiveMQ, Amazon's SQS, or even a Cassandra queue would work.

> Create and implement a distributed async consistency gaurentee
> --------------------------------------------------------------
>
>                 Key: USERGRID-85
>                 URL: https://issues.apache.org/jira/browse/USERGRID-85
>             Project: Usergrid
>          Issue Type: Story
>          Components: Stack
>            Reporter: Todd Nine
>            Assignee: Todd Nine
>            Priority: Blocker
>
> When an entity or a graph edge is committed, it requires post processing.  In 
> the case of entities, this is indexing and processing of deletes from the 
> mark operation.  In the case of edges, deletes from marks are required.  We 
> need a general mechanism for creating a timeout checkpoint.  This will then 
> return a timeout object.  This object can then be invoked asychronously.  
> Upon completion, it should remove the timeout object.  Only during a failure 
> (JVM shutdown, node death etc) should the timeout event fire.  The timeout 
> event will then restart the post processing.  This must ensure the following.
> # No event will ever be lost.  Events will always fire eventually at a time 
> >= to it's timeout
> # Events should encapsulate all data required to perform async processing.  
> Since this could run on a different node than the caller, no state should be 
> shared on queue/start/failover
> # Events receivers should be idempotent.   They should checkpoint their work. 
>  If at an time a receiver fails it may be resumed by another node.  The new 
> node should be able to resume work without the need to perform all processing 
> again



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to