[ https://issues.apache.org/jira/browse/OAK-2721?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chetan Mehrotra resolved OAK-2721. ---------------------------------- Resolution: Fixed Done * trunk - http://svn.apache.org/r1671773 With this the rule can be used like below {code} import import org.apache.jackrabbit.oak.commons.junit.LogDumper; public class PropertyIndexTest { @Rule public final LogDumper dumper = new LogDumper(); {code} Upon any test failure the output would be like below {noformat} =============== Logs for [org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexTest#traversalWarning]=================== java.lang.AssertionError at org.junit.Assert.fail(Assert.java:92) at org.junit.Assert.assertTrue(Assert.java:43) at org.junit.Assert.assertTrue(Assert.java:54) at org.apache.jackrabbit.oak.plugins.index.property.PropertyIndexTest.traversalWarning(PropertyIndexTest.java:545) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:47) at org.junit.rules.RunRules.evaluate(RunRules.java:18) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) at org.junit.runners.ParentRunner.run(ParentRunner.java:300) at org.junit.runner.JUnitCore.run(JUnitCore.java:157) at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:78) at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212) at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140) 07.04.2015 12:47:27.972 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/nodetype, /oak:index/foo, /oak:index/uuid] 07.04.2015 12:47:28.158 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #10000 /n2992/c0/c1 07.04.2015 12:47:28.279 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #20000 /n353/c0/c1/c2/c3/c4/c5 07.04.2015 12:47:28.383 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #30000 /n4769/c0/c1/c2/c3/c4/c5/c6/c7/c8/c9 07.04.2015 12:47:28.678 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #40000 /n2502/c0/c1 07.04.2015 12:47:28.777 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #50000 /n2865/c0/c1/c2/c3/c4/c5 07.04.2015 12:47:28.863 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #60000 /n2234/c0/c1/c2/c3/c4/c5/c6/c7/c8/c9 07.04.2015 12:47:28.906 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #70000 /n7800/c0/c1 07.04.2015 12:47:28.951 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #80000 /n5096/c0/c1/c2/c3/c4/c5 07.04.2015 12:47:28.987 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #90000 /n5328/c0/c1/c2/c3/c4/c5/c6/c7/c8/c9 07.04.2015 12:47:29.038 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #100000 /n9434/c0/c1/c2/c3/c4/c5/c6/c7 07.04.2015 12:47:29.106 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #110000 /n2036 07.04.2015 12:47:29.173 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #120000 /n6142/c0/c1/c2/c3 07.04.2015 12:47:29.174 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate /oak:index/foo => Indexed 10000 nodes... 07.04.2015 12:47:30.570 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Indexing report - /oak:index/nodetype*(1178) - /oak:index/foo*(10000) - /oak:index/uuid*(0) 07.04.2015 12:47:31.107 *WARN* [main] org.apache.jackrabbit.oak.plugins.index.property.strategy.ContentMirrorStoreStrategy Traversed 10000 nodes using index foo with filter Filter(query=SELECT * FROM [nt:base], path=*) 07.04.2015 12:47:31.126 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing will be performed for following indexes: [/oak:index/nodetype, /oak:index/foo, /oak:index/uuid] 07.04.2015 12:47:31.161 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Reindexing Traversed #10000 /n58/c0/c1 07.04.2015 12:47:31.294 *INFO* [main] org.apache.jackrabbit.oak.plugins.index.IndexUpdate Indexing report - /oak:index/nodetype*(1178) - /oak:index/foo*(100) - /oak:index/uuid*(0) ======================================================== {noformat} > LogDumper rule to dump logs as part of system out in case of test failure > ------------------------------------------------------------------------- > > Key: OAK-2721 > URL: https://issues.apache.org/jira/browse/OAK-2721 > Project: Jackrabbit Oak > Issue Type: New Feature > Components: it > Reporter: Chetan Mehrotra > Assignee: Chetan Mehrotra > Fix For: 1.2 > > > I would like to add a JUnit rule which would dump the logs generated during > the execution of a given test in case of a failure. That should help in > troubleshooting the test failures on CI > The impl is modelled on similar impl but for remote logs done in SLING-4280. -- This message was sent by Atlassian JIRA (v6.3.4#6332)