You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Uwe Schindler (JIRA)" <ji...@apache.org> on 2012/06/05 12:32:23 UTC
[jira] [Created] (LUCENE-4111) More spinning/endless loop problems
with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Uwe Schindler created LUCENE-4111:
-------------------------------------
Summary: More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Key: LUCENE-4111
URL: https://issues.apache.org/jira/browse/LUCENE-4111
Project: Lucene - Java
Issue Type: Bug
Components: modules/analysis
Affects Versions: 4.0
Reporter: Uwe Schindler
Assignee: Dawid Weiss
The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
Stack trace (including seeks):
{noformat}
Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
"TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
java.lang.Thread.State: RUNNABLE
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
at java.util.regex.Pattern$Start.match(Pattern.java:3055)
at java.util.regex.Matcher.search(Matcher.java:1105)
at java.util.regex.Matcher.find(Matcher.java:535)
at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
at java.io.Reader.read(Reader.java:104)
at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
{noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13290981#comment-13290981 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
Don't thank me just yet :) Keep grinding those test on your test-and-failure generator machine, it's really useful and appreciated.
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
> Fix For: 4.0, 5.0
>
> Attachments: LUCENE-4111.patch
>
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Updated] (LUCENE-4111) More spinning/endless loop problems
with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dawid Weiss updated LUCENE-4111:
--------------------------------
Attachment: LUCENE-4111.patch
Suggested patch to cut on the recursion/backtracking depth. It is still possible that some patterns will be slow, but they shouldn't be infinite-slow (there should be observable progress...).
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
> Attachments: LUCENE-4111.patch
>
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289381#comment-13289381 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
Oh, forgot to say -- limiting the size of the input won't help much here because of random patterns that match this:
{noformat}
(.|.)+x
(.|.|.)+x
(.|.|.|.)+x
(.|.|.|.|.)+x
{noformat}
This doubles search time for constant input so even for super-small inputs you can have very long processing time.
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Simon Willnauer (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289410#comment-13289410 ]
Simon Willnauer commented on LUCENE-4111:
-----------------------------------------
this is fucking nuts. I think we should drop the jdk regex support and do our own. I mean this is so broken! ;)
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289774#comment-13289774 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
I take the liberty to commit this one in. If anybody has better suggestions, reiterate on this patch (applied to the trunk/ 4.0). I'll leave the issue open for a while.
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
> Attachments: LUCENE-4111.patch
>
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289375#comment-13289375 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
This seed: CD6C0ED0996D1439 corresponds to this pattern/input type:
{code}
Pattern p = Pattern.compile("(.|.)+x");
String s = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
{code}
Maybe we should resign from alternatives? Or constraint *+ operators and use {0,n} or {1,n} instead?
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289340#comment-13289340 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
I will check what this is even though it's Robert's evil pattern generator! :)
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Uwe Schindler (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13290976#comment-13290976 ]
Uwe Schindler commented on LUCENE-4111:
---------------------------------------
Thanks!
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
> Fix For: 4.0, 5.0
>
> Attachments: LUCENE-4111.patch
>
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Resolved] (LUCENE-4111) More spinning/endless loop problems
with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dawid Weiss resolved LUCENE-4111.
---------------------------------
Resolution: Fixed
Fix Version/s: 5.0
4.0
Closing. I think it'll be good (for a while).
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
> Fix For: 4.0, 5.0
>
> Attachments: LUCENE-4111.patch
>
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Uwe Schindler (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289321#comment-13289321 ]
Uwe Schindler commented on LUCENE-4111:
---------------------------------------
Another seed, that hung on Windows, Java 7: CD6C0ED0996D1439
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org
[jira] [Commented] (LUCENE-4111) More spinning/endless loop
problems with random regex in
org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
Posted by "Dawid Weiss (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/LUCENE-4111?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13289676#comment-13289676 ]
Dawid Weiss commented on LUCENE-4111:
-------------------------------------
It isn't broken, these patterns will send any backtracking regexp implementation into (nearly endless) recursion. Russ Cox has a nice article about this here:
http://swtch.com/~rsc/regexp/regexp1.html
A super-cool task (for a SoC student?) would be to port re2 library to Java:
http://code.google.com/p/re2/
I don't think there is any alternative implementation in Java that is not backtracking-based and at the same time common feature-complete (the one in brics is simplistic).
> More spinning/endless loop problems with random regex in org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings
> ------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-4111
> URL: https://issues.apache.org/jira/browse/LUCENE-4111
> Project: Lucene - Java
> Issue Type: Bug
> Components: modules/analysis
> Affects Versions: 4.0
> Reporter: Uwe Schindler
> Assignee: Dawid Weiss
>
> The Linux Jenkins server (and also the windows one while I was on vacation) were hanging almost infinite:
> Stack trace (including seeks):
> {noformat}
> Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.7-b02 mixed mode):
> "TEST-TestScope-org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings-seed#[A1E6315575F637C6]" prio=6 ti
> d=0x0000000006cda000 nid=0x1e34 runnable [0x0000000006bab000]
> java.lang.Thread.State: RUNNABLE
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$Curly.match0(Pattern.java:3789)
> at java.util.regex.Pattern$Curly.match(Pattern.java:3744)
> at java.util.regex.Pattern$Ques.match(Pattern.java:3691)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.match(Pattern.java:4357)
> at java.util.regex.Pattern$GroupTail.match(Pattern.java:4227)
> at java.util.regex.Pattern$BranchConn.match(Pattern.java:4078)
> at java.util.regex.Pattern$CharProperty.match(Pattern.java:3345)
> at java.util.regex.Pattern$Branch.match(Pattern.java:4114)
> at java.util.regex.Pattern$GroupHead.match(Pattern.java:4168)
> at java.util.regex.Pattern$LazyLoop.matchInit(Pattern.java:4378)
> at java.util.regex.Pattern$Prolog.match(Pattern.java:4251)
> at java.util.regex.Pattern$Start.match(Pattern.java:3055)
> at java.util.regex.Matcher.search(Matcher.java:1105)
> at java.util.regex.Matcher.find(Matcher.java:535)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.processPattern(PatternReplaceCharFilter.java:92)
> at org.apache.lucene.analysis.pattern.PatternReplaceCharFilter.read(PatternReplaceCharFilter.java:72)
> at java.io.Reader.read(Reader.java:104)
> at org.apache.lucene.analysis.MockTokenizer.readCodePoint(MockTokenizer.java:142)
> at org.apache.lucene.analysis.MockTokenizer.incrementToken(MockTokenizer.java:109)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkAnalysisConsistency(BaseTokenStreamTestCase.java:558)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:488)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:430)
> at org.apache.lucene.analysis.BaseTokenStreamTestCase.checkRandomData(BaseTokenStreamTestCase.java:424)
> at org.apache.lucene.analysis.pattern.TestPatternReplaceCharFilter.testRandomStrings(TestPatternReplaceCharFilter.java:322)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1969)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$1100(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:814)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:875)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:889)
> at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50)
> at org.apache.lucene.util.TestRuleFieldCacheSanity$1.evaluate(TestRuleFieldCacheSanity.java:32)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:821)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$700(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3$1.run(RandomizedRunner.java:669)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:695)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:734)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:745)
> at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
> at org.apache.lucene.util.TestRuleReportUncaughtExceptions$1.evaluate(TestRuleReportUncaughtExceptions.java:68)
> at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
> at org.apache.lucene.util.TestRuleIcuHack$1.evaluate(TestRuleIcuHack.java:51)
> at com.carrotsearch.randomizedtesting.rules.SystemPropertiesInvariantRule$1.evaluate(SystemPropertiesInvariantRule.java:55)
> at org.apache.lucene.util.TestRuleNoInstanceHooksOverrides$1.evaluate(TestRuleNoInstanceHooksOverrides.java:53)
> at org.apache.lucene.util.TestRuleNoStaticHooksShadowing$1.evaluate(TestRuleNoStaticHooksShadowing.java:52)
> at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:36)
> at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48)
> at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:56)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:605)
> at com.carrotsearch.randomizedtesting.RandomizedRunner.access$400(RandomizedRunner.java:132)
> at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:551)
> {noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org