-
Type: Bug
-
Status: Resolved
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 10.10, 2021.0
-
Fix Version/s: 10.10-HF57, 2021.13
-
Component/s: Binary Metadata
-
Release Notes Summary:Running the binary metadata mappings asynchronously is fixed.
-
Tags:
-
Backlog priority:750
-
Upgrade notes:
Any asynchronous binary metadata mapping never gets executed.
How to reproduce:
- start a 10.10 instance with nuxeo-dam install and the following XML extension defining an asynchronous binary metadata rule (and disabling the existing sync one):
<require>org.nuxeo.ecm.platform.picture.binary.metadata.contrib</require> <extension point="metadataRules" target="org.nuxeo.binary.metadata" > <rule id="iptc" order="0" enabled="false" /> </extension> <extension point="metadataRules" target="org.nuxeo.binary.metadata"v> <rule id="picture" order="0" enabled="true" async="true"> <metadataMappings> <metadataMapping-id>IPTC</metadataMapping-id> <metadataMapping-id>EXIF</metadataMapping-id> <metadataMapping-id>XMP</metadataMapping-id> </metadataMappings> <filters> <filter-id>hasPictureFacet</filter-id> </filters> </rule> <extension point="filters" target="org.nuxeo.ecm.platform.actions.ActionService" > <filter id="hasPictureFacet"> <rule grant="true"> <facet>Picture</facet> </rule> </filter> </extension>
- create a Picture document with an image file
- change the value of its dc:description property to test (this should trigger the mapping defined on this property)
- download the image file attached to the Picture document
Expected result: metadata IPTC:Caption-Abstract in downloaded image file is set to test
Actual result: metadata IPTC:Caption-Abstract in downloaded image file is not set to test
You can check the image file's metadata with command exiftool -G -json <filename>.
If a breakpoint is set at https://github.com/nuxeo/nuxeo/blob/654f687f79e5a85bb29a83913f3e3d8e539176b3/addons/nuxeo-binary-metadata/src/main/java/org/nuxeo/binary/metadata/internals/listeners/BinaryMetadataWorkListener.java#L59, it is never reached.
Setting a breakpoint at https://github.com/nuxeo/nuxeo/blob/654f687f79e5a85bb29a83913f3e3d8e539176b3/addons/nuxeo-binary-metadata/src/main/java/org/nuxeo/binary/metadata/internals/listeners/BinaryMetadataWorkListener.java#L57 shows that variable execute is null.