Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
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.
Attachments
Issue Links
- breaks
-
JCRVLT-646 Potential javax.jcr.nodetype.ConstraintViolationException while deserializing extended file aggregates
- Closed
- is related to
-
JCRVLT-648 Don't treat javax.jcr.InvalidItemStateException as transient during package import
- Closed
- relates to
-
JCRVLT-534 Allow for skipping items that error.
- Open
- links to