[
https://issues.apache.org/jira/browse/OAK-775?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13640390#comment-13640390
]
Alex Parvulescu commented on OAK-775:
-------------------------------------
I hate to bring the bad news to the party but it seems that the latest
observation changes re-introduced a problem we've seen earlier (not sure about
the issue number): observation events on hidden nodes.
I was playing with the index definitions and saw a lot of these passing by [0]:
{code}
Unable to generate or send events java.lang.IllegalArgumentException:
'/oak:index/luc/:data' is not a valid path. Prefix must not be empty
{code}
Apologies if it's not related.
[0]
{code}
*ERROR* [pool-5-thread-1]
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor Unable to
generate or send events java.lang.IllegalArgumentException:
'/oak:index/luc/:data' is not a valid path. Prefix must not be empty
at
org.apache.jackrabbit.oak.namepath.NamePathMapperImpl$1.error(NamePathMapperImpl.java:104)
at
org.apache.jackrabbit.oak.namepath.JcrPathParser.parse(JcrPathParser.java:154)
at
org.apache.jackrabbit.oak.namepath.NamePathMapperImpl.getJcrPath(NamePathMapperImpl.java:119)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor$EventGeneratingNodeStateDiff.generateNodeEvents(ChangeProcessor.java:254)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor$EventGeneratingNodeStateDiff.access$700(ChangeProcessor.java:133)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor$EventGeneratingNodeStateDiff$4.apply(ChangeProcessor.java:303)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor$EventGeneratingNodeStateDiff$4.apply(ChangeProcessor.java:300)
at com.google.common.collect.Iterators$9.transform(Iterators.java:893)
at
com.google.common.collect.TransformedIterator.next(TransformedIterator.java:48)
at com.google.common.collect.Iterators$6.hasNext(Iterators.java:631)
at com.google.common.collect.Iterators$6.hasNext(Iterators.java:630)
at com.google.common.collect.Iterators$6.hasNext(Iterators.java:630)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor$EventGeneratingNodeStateDiff.sendEvents(ChangeProcessor.java:154)
at
org.apache.jackrabbit.oak.plugins.observation.ChangeProcessor.run(ChangeProcessor.java:119)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at
java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
{code}
> Implement backward compatible observation
> -----------------------------------------
>
> Key: OAK-775
> URL: https://issues.apache.org/jira/browse/OAK-775
> Project: Jackrabbit Oak
> Issue Type: Sub-task
> Components: core, jcr
> Reporter: Michael Dürig
> Assignee: Michael Dürig
> Attachments: OAK-775-isExternal.patch, OAK-775.patch
>
>
> As [discussed | http://markmail.org/message/6bqycmx6vbq7m25c] we might want
> look into implementing an alternative approach to observation, which trades
> some scalability for improved backward compatibility.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira