click-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bob Schellink (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CLK-713) Race condition in Menu.getHeadElements
Date Fri, 16 Jul 2010 08:22:51 GMT

    [ https://issues.apache.org/jira/browse/CLK-713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889057#action_12889057
] 

Bob Schellink commented on CLK-713:
-----------------------------------

We should probably synchronize the MenuFactory.getRootMenu but ensure it is efficient. I haven't
look to deeply at JDK5 concurrency support but something like the FutureTask might be useful
here.

Unless someone beats me to it I'll have a look at this over the weekend.

> Race condition in Menu.getHeadElements
> --------------------------------------
>
>                 Key: CLK-713
>                 URL: https://issues.apache.org/jira/browse/CLK-713
>             Project: Click
>          Issue Type: Bug
>          Components: extras
>            Reporter: Finn Bock
>            Priority: Critical
>
> Multi threads can access a cached Menu while it is being initialized. The Exception can
be:
> java.lang.ArrayIndexOutOfBoundsException: 2
>         at java.util.ArrayList.add(ArrayList.java:352)
>         at org.apache.click.extras.control.Menu.getHeadElements(Menu.java:1077)
>         at org.apache.click.util.PageImports.processControl(PageImports.java:37
> Initializing the menu in MenuFactory by calling menu.getHeadElements() seems to make
the race condition go away.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message