Hi everyone,
I have case where I need to store a lot of values (around 7000) under a certain node in an OAK repository (AEM 6.0). The previous implementation had each value (user ID) stored as a node without a hierarchy, which made page activations quite slow.
I changed it now so the values are stored in a mutli-valued string property, which makes the page activation much faster, but on the publish instance I get following warning in the error.log:
26.08.2015 17:43:01.466 *WARN* [127.0.0.1 [1440603781461] POST /bin/receive HTTP/1.1] org.apache.jackrabbit.oak.jcr.session.NodeImpl Large multi valued property detected (6527 values).
It seems to work fine, but should I be concerned?
I found the spot which is causing the warning: http://grepcode.com/file/repo1.maven.org/maven2/org.apache.jackrabbit/oak-jcr/1.0.7/org/apache/jackr...
Apparently the constant "MV_PROPERTY_WARN_THRESHOLD" is set to 1000. Is this an artifact from the previous JCR repository, where more than 1000 nodes per level are not recommended?
Solved! Go to Solution.
Views
Replies
Total Likes
we encountered the same issue, we changed our implementation to use binary type instead of handling it as multivalued property. In order set to the binary property and retrieve the binary property, I followed this lead https://techrevel.blog/2020/09/19/editing-jcrdata-binary-in-aem/ . Hope this info helps those who are facing the same issue. Thanks!
Hi,
if you have a node with that much properties, it rather sounds like a bad design decision. I have never seen properties with more than 50 properties, and reaching this amount should lead to the question, if this node should be splitted into multiple ones.
No, it doesn't harm, but you should investigate into that a bit.
kind regards,
Jörg
Views
Replies
Total Likes
An OAK implementation handles this amount of nodes and much more. That 1000 seems to be a value that was set - i would not be too concerned about the message,
Views
Replies
Total Likes
we encountered the same issue, we changed our implementation to use binary type instead of handling it as multivalued property. In order set to the binary property and retrieve the binary property, I followed this lead https://techrevel.blog/2020/09/19/editing-jcrdata-binary-in-aem/ . Hope this info helps those who are facing the same issue. Thanks!