[ 
https://issues.apache.org/jira/browse/ATLAS-906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jeffrey Hagelberg updated ATLAS-906:
------------------------------------
    Description: Currently, the delete algorithm works by immediately 
performing the deletes and property updates that are required.  While this 
works, it is not very robust.  If there are errors found during the processing, 
we need to rely on Titan properly rolling back the transaction.  Given that 
titan does not guarantee that the transactions are strictly ACID compliant, 
this may not always be a safe thing to do.  This task changes the algorithm to 
accumulate the changes to be applied in a DeleteContext and only apply them 
once all of the processing has been done.  This will make the delete operation 
more robust.  In addition, it increases the chance that Titan (or whatever 
underlying graph database gets used (see ATLAS-610)) can batch the updates and 
perform them more efficiently (and within a single atomic transaction).  (was: 
Currently, the delete algorithm works by immediately performing the deletes and 
property updates that are required.  While this works, it is not very robust.  
If there are errors found during the processing, we need to rely on Titan 
properly rolling back the transaction.  Given that titan does not guarantee 
that the transactions are strictly ACID compliant, this may not always be a 
safe thing to do.  This task changes the algorithm to accumulate the changes to 
be applied in a DeleteContext and only apply them once all of the processing 
has been done.  This will make the delete operation more robust.  In addition, 
it increases the chance that Titan (or whatever underlying graph database gets 
used (see ATLAS-610) can batch the updates and perform them more efficiently 
(and within a single atomic transaction).)

> Improve delete robustness/performance
> -------------------------------------
>
>                 Key: ATLAS-906
>                 URL: https://issues.apache.org/jira/browse/ATLAS-906
>             Project: Atlas
>          Issue Type: Task
>            Reporter: Jeffrey Hagelberg
>            Assignee: Jeffrey Hagelberg
>
> Currently, the delete algorithm works by immediately performing the deletes 
> and property updates that are required.  While this works, it is not very 
> robust.  If there are errors found during the processing, we need to rely on 
> Titan properly rolling back the transaction.  Given that titan does not 
> guarantee that the transactions are strictly ACID compliant, this may not 
> always be a safe thing to do.  This task changes the algorithm to accumulate 
> the changes to be applied in a DeleteContext and only apply them once all of 
> the processing has been done.  This will make the delete operation more 
> robust.  In addition, it increases the chance that Titan (or whatever 
> underlying graph database gets used (see ATLAS-610)) can batch the updates 
> and perform them more efficiently (and within a single atomic transaction).



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

Reply via email to