You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Konrad Windszus (Jira)" <ji...@apache.org> on 2021/10/05 14:26:01 UTC

[jira] [Closed] (JCRVLT-547) Distinguish between recoverable and unrecoverable exceptions in intermediate saves

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

Konrad Windszus closed JCRVLT-547.
----------------------------------

> Distinguish between recoverable and unrecoverable exceptions in intermediate saves
> ----------------------------------------------------------------------------------
>
>                 Key: JCRVLT-547
>                 URL: https://issues.apache.org/jira/browse/JCRVLT-547
>             Project: Jackrabbit FileVault
>          Issue Type: Improvement
>            Reporter: Konrad Windszus
>            Assignee: Konrad Windszus
>            Priority: Major
>             Fix For: 3.5.4
>
>
> Both {{RepositoryCopier}} and {{Importer}} leverage intermediate save() operations. Those might transiently fail in case they are triggered e.g. before mandatory child nodes have been added. To no defer non-transient exceptions and to not fail too early the intermediate saves should distinguish between those two exception types. Transient exceptions are subclasses of
>  # [https://docs.adobe.com/content/docs/en/spec/jsr170/javadocs/jcr-2.0/javax/jcr/InvalidItemStateException.html]
>  # [https://docs.adobe.com/content/docs/en/spec/jsr170/javadocs/jcr-2.0/javax/jcr/nodetype/ConstraintViolationException.html]
> In case of transient exceptions the {{AutoSave}} helper class should just trigger a retry, while for non-transient exceptions it makes sense to bail out immediately with an exception.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)