You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Konrad Windszus (Jira)" <ji...@apache.org> on 2022/07/26 15:40:00 UTC

[jira] [Updated] (OAK-9863) Composite Node ITs fail due to failing NodeTypeDefinitionNodeStoreChecker

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

Konrad Windszus updated OAK-9863:
---------------------------------
    Description: 
Both composite node ITs
# https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/BackwardCompatibleMountCompositeIT.java and
# https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/MultiMountCompositeIT.java

fail due to returning {{null}} for the primaryType in https://github.com/apache/jackrabbit-oak/blob/03b95f8005302b7a739bc8ac7ad5808a3cd7e7f5/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/checks/NodeTypeDefinitionNodeStoreChecker.java#L77

That leads to the following errors
{code}
ERROR: bundle org.apache.jackrabbit.oak-store-composite:1.45.0.SNAPSHOT (52)[org.apache.jackrabbit.oak.composite.CompositeNodeStoreService(53)] : The activate method has thrown an exception
org.apache.jackrabbit.oak.api.IllegalRepositoryStateException: 18 errors were found: 
For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
{code}

That is due to the fact that the IT relies on empty segment node stores which don't even have a primary type set for the root node.

Reproducability is a bit hard due to the race condition mentioned in 

  was:
Both composite node ITs
# https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/BackwardCompatibleMountCompositeIT.java and
# https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/MultiMountCompositeIT.java

fail due to returning {{null}} for the primaryType in https://github.com/apache/jackrabbit-oak/blob/03b95f8005302b7a739bc8ac7ad5808a3cd7e7f5/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/checks/NodeTypeDefinitionNodeStoreChecker.java#L77

That leads to the following errors
{code}
ERROR: bundle org.apache.jackrabbit.oak-store-composite:1.45.0.SNAPSHOT (52)[org.apache.jackrabbit.oak.composite.CompositeNodeStoreService(53)] : The activate method has thrown an exception
org.apache.jackrabbit.oak.api.IllegalRepositoryStateException: 18 errors were found: 
For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
{code}

That is due to the fact that the IT relies on empty segment node stores which don't even have a primary type set for the root node.


> Composite Node ITs fail due to failing NodeTypeDefinitionNodeStoreChecker
> -------------------------------------------------------------------------
>
>                 Key: OAK-9863
>                 URL: https://issues.apache.org/jira/browse/OAK-9863
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: composite
>            Reporter: Konrad Windszus
>            Priority: Major
>
> Both composite node ITs
> # https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/BackwardCompatibleMountCompositeIT.java and
> # https://github.com/apache/jackrabbit-oak/blob/trunk/oak-store-composite/src/test/java/org/apache/jackrabbit/oak/composite/it/MultiMountCompositeIT.java
> fail due to returning {{null}} for the primaryType in https://github.com/apache/jackrabbit-oak/blob/03b95f8005302b7a739bc8ac7ad5808a3cd7e7f5/oak-store-composite/src/main/java/org/apache/jackrabbit/oak/composite/checks/NodeTypeDefinitionNodeStoreChecker.java#L77
> That leads to the following errors
> {code}
> ERROR: bundle org.apache.jackrabbit.oak-store-composite:1.45.0.SNAPSHOT (52)[org.apache.jackrabbit.oak.composite.CompositeNodeStoreService(53)] : The activate method has thrown an exception
> org.apache.jackrabbit.oak.api.IllegalRepositoryStateException: 18 errors were found: 
> For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
> For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
> For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
> For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
> For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node libs'
> For NodeStore mount libs, path /libs, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /libs, encountered the following problem: 'No default primary type available  for child node libsMount'
> For NodeStore mount libs, path /libs/libsMount, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /, encountered the following problem: 'No default primary type available  for child node apps'
> For NodeStore mount libs, path /apps, encountered the following problem: 'The primary type null does not exist'
> For NodeStore mount libs, path /apps, encountered the following problem: 'No default primary type available  for child node libsMount'
> For NodeStore mount libs, path /apps/libsMount, encountered the following problem: 'The primary type null does not exist'
> {code}
> That is due to the fact that the IT relies on empty segment node stores which don't even have a primary type set for the root node.
> Reproducability is a bit hard due to the race condition mentioned in 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)