Bug 43311 - ArrayIndexOutOfBoundsException: 23
Summary: ArrayIndexOutOfBoundsException: 23
Status: CLOSED WORKSFORME
Alias: None
Product: Regexp
Classification: Unclassified
Component: Other (show other bugs)
Version: unspecified
Hardware: PC Windows Server 2003
: P2 major (vote)
Target Milestone: ---
Assignee: Jakarta Notifications Mailing List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-09-05 05:25 UTC by ivar
Modified: 2007-12-17 18:32 UTC (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description ivar 2007-09-05 05:25:45 UTC
The problems recurs in Regexp 1.5 version. It was eearlier closed in 1.3 in 
Sep 2003 when the parens could not exceed 16. Now I think it cannot exceed 23.

Attached is the test case

Regex Search String ->

\bError: Couldn't find Item_Group (.*)  at site (.*) under sc (.*)\b|\bError: 
Cannot process Wip record, end date (.*) is earlier than start date (.*)
\b|\bError: can not find supply chain (.*), link of item_group (.*) and 
parent\b|\bError: Flow policy of Buffer (.*) at Site (.*) is empty, which is 
not allowed, \\b|\bError: Couldn't find site for bom (.*)'s site (.*) under 
supply chain (.*)\b|\bError: Calendar (.*) isn't Time Calendar,  invalid type 
for (.*) calendar\b|\bError: Could not find supply chain (.*) substitution not 
created\b|\bError: plan end (.*) is invalid, so production limit calendar 
won't be created\b|\bError: Couldn't find the cto item (.*), record  won't be 
processed, location name (.*)\b|\bError: Couldn't find location (.*) at any 
link site\b|\bError: operation (.*)  which doesn't exist at 
Operation_Extension tracking list\b|\bError: Couldn't find the item (.*) under 
site (.*) under supply chain (.*)\b|\bError: Item quantity (.*) must be >= 0
\b|\bError: Operation (.*) has effective end date (.*) earlier than effective 
start date (.*)\b|\bError: Calendar (.*) specified not of the right 
type\b|\bError: Couldn't create the Item_Group (.*) at site (.*) under 
supply_chain (.*)\b|\bError: Cannot create calendar entry for Material Buffer 
(.*) end date (.*) earlier than start date (.*)\b|\bError: Cannot create 
Inventory band (.*), end date (.*) is earlier than start date (.*)\b|\bError: 
Couldn't find location (.*) under site (.*) under supply chain (.*)\b

String in which to search
Error: Couldn't find the item ABC under site Org under supply chain OXA Supply 
Chain,              buffer JHAESDCX won't be created
Comment 1 ivar 2007-09-05 05:26:52 UTC
Forgot the trace

java.lang.ArrayIndexOutOfBoundsException: 23
	at org.apache.regexp.RE.getParenEnd(RE.java:724)
	at org.apache.regexp.RE.matchNodes(RE.java:942)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:910)
	at org.apache.regexp.RE.matchNodes(RE.java:933)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:910)
	at org.apache.regexp.RE.matchNodes(RE.java:933)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchNodes(RE.java:910)
	at org.apache.regexp.RE.matchNodes(RE.java:1376)
	at org.apache.regexp.RE.matchAt(RE.java:1448)
	at org.apache.regexp.RE.match(RE.java:1498)
	at org.apache.regexp.RE.match(RE.java:1468)
	at org.apache.regexp.RE.match(RE.java:1561)
	at com.i2.bclutil.LAWFormatterClass.formatLogFile
(LAWFormatterClass.java:120)
	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:324)
	at com.i2.xcore.xrules.misc.NativeMethod.executeMethod
(NativeMethod.java:156)
	at com.i2.xcore.xrules.misc.NativeMethod.execute(NativeMethod.java:66)
	at com.i2.xcore.xrules.misc.StaticMethod.executeMethod
(StaticMethod.java:66)
	at com.i2.xcore.xrules.misc.NativeFunctionStatement.execute
(NativeFunctionStatement.java:31)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.ActionContainerImpl.execute
(ActionContainerImpl.java:51)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.RuleStatement.execute(RuleStatement.java:44)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.ActionContainerImpl.execute
(ActionContainerImpl.java:51)
	at com.i2.xcore.xrules.RuleModuleImpl.execute(RuleModuleImpl.java:134)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.RuleModuleImpl.execute(RuleModuleImpl.java:131)
	at com.i2.xcore.xrules.docext.RequestRuleModule.execute
(RequestRuleModule.java:72)
	at com.i2.xcore.tool.Persist.executeRequest(Persist.java:187)
	at com.i2.xcore.xrules.misc.CommandStatement.execute
(CommandStatement.java:102)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.ActionContainerImpl.execute
(ActionContainerImpl.java:51)
	at com.i2.xcore.xrules.lang.IfTestStatement.execute
(IfTestStatement.java:47)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.ActionContainerImpl.execute
(ActionContainerImpl.java:51)
	at com.i2.xcore.xrules.ActionGroup.execute(ActionGroup.java:36)
	at com.i2.xcore.xrules.RuleContext.execute(RuleContext.java:201)
	at com.i2.xcore.xrules.ActionContainerImpl.execute
(ActionContainerImpl.java:51)
	at com.i2.xcore.workflow.TaskNode.executeActions(TaskNode.java:92)
	at com.i2.xcore.workflow.TaskNode.execute(TaskNode.java:109)
	at com.i2.xcore.workflow.AbstractEventNode.executePostActions
(AbstractEventNode.java:297)
	at com.i2.xcore.workflow.AbstractEventNode.onEvent
(AbstractEventNode.java:345)
	at com.i2.xcore.workflow.UINode.onEvent(UINode.java:235)
	at com.i2.xcore.workflow.WorkflowInstance.onEvent
(WorkflowInstance.java:200)
	at com.i2.xcore.xcommand.UIContinueWorkflowCommand.executeAction
(UIContinueWorkflowCommand.java:189)
	at com.i2.xcore.xcommand.UIContinueWorkflowCommand.execute
(UIContinueWorkflowCommand.java:148)
	at com.i2.xcore.tool.Persist.executeRequest(Persist.java:187)
	at com.i2.xcore.xserver.LocalRequestHandler.endNewRequest
(LocalRequestHandler.java:312)
	at com.i2.xcore.xserver.LocalRequestHandler.request
(LocalRequestHandler.java:208)
	at com.i2.xcore.xserver.LocalRequestHandler.request
(LocalRequestHandler.java:170)
	at com.i2.xcore.net.SoapRequestHandler.request
(SoapRequestHandler.java:40)
	at com.i2.xcore.net.server.scheduling.Request.execute(Request.java:83)
	at com.i2.xcore.net.util.RunnableTask.execute(RunnableTask.java:47)
	at 
com.i2.xcore.net.server.scheduling.RequestProcessor$WorkerRunnableTask.execute
(RequestProcessor.java:42)
	at com.i2.xcore.net.util.RunnableTask.run(RunnableTask.java:37)
	at java.lang.Thread.run(Thread.java:534)

(In reply to comment #0)
> The problems recurs in Regexp 1.5 version. It was eearlier closed in 1.3 in 
> Sep 2003 when the parens could not exceed 16. Now I think it cannot exceed 
23.
> Attached is the test case
> Regex Search String ->
> \bError: Couldn't find Item_Group (.*)  at site (.*) under sc (.*)
\b|\bError: 
> Cannot process Wip record, end date (.*) is earlier than start date (.*)
> \b|\bError: can not find supply chain (.*), link of item_group (.*) and 
> parent\b|\bError: Flow policy of Buffer (.*) at Site (.*) is empty, which is 
> not allowed, \\b|\bError: Couldn't find site for bom (.*)'s site (.*) under 
> supply chain (.*)\b|\bError: Calendar (.*) isn't Time Calendar,  invalid 
type 
> for (.*) calendar\b|\bError: Could not find supply chain (.*) substitution 
not 
> created\b|\bError: plan end (.*) is invalid, so production limit calendar 
> won't be created\b|\bError: Couldn't find the cto item (.*), record  won't 
be 
> processed, location name (.*)\b|\bError: Couldn't find location (.*) at any 
> link site\b|\bError: operation (.*)  which doesn't exist at 
> Operation_Extension tracking list\b|\bError: Couldn't find the item (.*) 
under 
> site (.*) under supply chain (.*)\b|\bError: Item quantity (.*) must be >= 0
> \b|\bError: Operation (.*) has effective end date (.*) earlier than 
effective 
> start date (.*)\b|\bError: Calendar (.*) specified not of the right 
> type\b|\bError: Couldn't create the Item_Group (.*) at site (.*) under 
> supply_chain (.*)\b|\bError: Cannot create calendar entry for Material 
Buffer 
> (.*) end date (.*) earlier than start date (.*)\b|\bError: Cannot create 
> Inventory band (.*), end date (.*) is earlier than start date (.*)
\b|\bError: 
> Couldn't find location (.*) under site (.*) under supply chain (.*)\b
> String in which to search
> Error: Couldn't find the item ABC under site Org under supply chain OXA 
Supply 
> Chain,              buffer JHAESDCX won't be created

Comment 2 Vadim Gritsenko 2007-12-17 18:32:29 UTC
Unable to reproduce, neither by REDemo nor by applet at
http://jakarta.apache.org/regexp/applet.html