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 "Julian Reschke (Jira)" <ji...@apache.org> on 2024/09/01 07:31:00 UTC

[jira] [Commented] (OAK-11036) document-store: tune CacheWarmingTest

    [ https://issues.apache.org/jira/browse/OAK-11036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17878409#comment-17878409 ] 

Julian Reschke commented on OAK-11036:
--------------------------------------

Re 1) I believe they should, but for now I have changed MongoConnectionFactory to support "oak.skipMongo" as well (see OAK-11062)

> document-store: tune CacheWarmingTest
> -------------------------------------
>
>                 Key: OAK-11036
>                 URL: https://issues.apache.org/jira/browse/OAK-11036
>             Project: Jackrabbit Oak
>          Issue Type: Test
>          Components: documentmk, test
>            Reporter: Julian Reschke
>            Assignee: Julian Reschke
>            Priority: Minor
>
> Several issues:
> 1) It seems these tests only run for MongoDS but seem to be apply (in theory) to all DocumentStore implementations. Shouldn't they use the standard "fixtures" mechanism?
> 2) On test systems that use dockerized Mongo (such as the Apache CI servers, I occasionally see 5 tests failing, such as with:
> {noformat}
> Fehlermeldung
> Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:34691, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused}}]
> Stacktrace
> com.mongodb.MongoTimeoutException: Timed out after 30000 ms while waiting to connect. Client view of cluster state is {type=UNKNOWN, servers=[{address=localhost:34691, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused}}]
> 	at com.mongodb.internal.connection.BaseCluster.getDescription(BaseCluster.java:182)
> 	at com.mongodb.internal.connection.SingleServerCluster.getDescription(SingleServerCluster.java:41)
> 	at com.mongodb.client.internal.MongoClientDelegate.getConnectedClusterDescription(MongoClientDelegate.java:155)
> 	at com.mongodb.client.internal.MongoClientDelegate.createClientSession(MongoClientDelegate.java:105)
> 	at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.getClientSession(MongoClientDelegate.java:287)
> 	at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:191)
> 	at com.mongodb.client.internal.MongoIterableImpl.execute(MongoIterableImpl.java:143)
> 	at com.mongodb.client.internal.MongoIterableImpl.iterator(MongoIterableImpl.java:92)
> 	at com.mongodb.client.internal.MappingIterable.iterator(MappingIterable.java:39)
> 	at org.apache.jackrabbit.oak.plugins.document.MongoUtils.dropCollections(MongoUtils.java:165)
> 	at org.apache.jackrabbit.oak.plugins.document.prefetch.CacheWarmingTest.newMongoDocumentStore(CacheWarmingTest.java:109)
> 	at org.apache.jackrabbit.oak.plugins.document.prefetch.CacheWarmingTest.prefetch(CacheWarmingTest.java:139)
> 	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
> 	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
> 	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
> 	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> 	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
> 	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> 	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
> 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
> 	at org.apache.jackrabbit.oak.plugins.document.mongo.MongoDockerRule$1.evaluate(MongoDockerRule.java:105)
> 	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
> 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> 	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
> 	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
> 	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
> 	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
> 	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
> 	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
> 	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
> 	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
> 	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> 	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
> 	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
> 	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
> 	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
> 	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
> 	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
> 	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)
> Standard Ausgabe (STDOUT)
> === doSimple( cleanCaches = true, prefetch = true )
> === doSimple( cleanCaches = false, prefetch = false )
> === doSimple( cleanCaches = true, prefetch = false )
> === doSimple( cleanCaches = false, prefetch = true )
> {noformat}
> Note also the output to stdout which may cause surefire problems. (Maybe they contribute to the timeouts?)
> 3) Suspicious: https://github.com/apache/jackrabbit-oak/blob/1a675de5c51b3cabd4f2ca261b269b56b84acc46/oak-store-document/src/test/java/org/apache/jackrabbit/oak/plugins/document/prefetch/CacheWarmingTest.java#L113 (line commented out)



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