Return-Path: Delivered-To: apmail-openjpa-dev-archive@www.apache.org Received: (qmail 33126 invoked from network); 7 Jul 2008 20:07:22 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 7 Jul 2008 20:07:22 -0000 Received: (qmail 67682 invoked by uid 500); 7 Jul 2008 20:07:23 -0000 Delivered-To: apmail-openjpa-dev-archive@openjpa.apache.org Received: (qmail 67648 invoked by uid 500); 7 Jul 2008 20:07:23 -0000 Mailing-List: contact dev-help@openjpa.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@openjpa.apache.org Delivered-To: mailing list dev@openjpa.apache.org Received: (qmail 67637 invoked by uid 99); 7 Jul 2008 20:07:23 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Jul 2008 13:07:23 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 07 Jul 2008 20:06:39 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 8B016234C155 for ; Mon, 7 Jul 2008 13:06:31 -0700 (PDT) Message-ID: <1437269186.1215461191554.JavaMail.jira@brutus> Date: Mon, 7 Jul 2008 13:06:31 -0700 (PDT) From: "Michael Dick (JIRA)" To: dev@openjpa.apache.org Subject: [jira] Assigned: (OPENJPA-653) Concurrency issue with query cache enabled In-Reply-To: <389890294.1215440131855.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/OPENJPA-653?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Dick reassigned OPENJPA-653: ------------------------------------ Assignee: Jeremy Bauer (was: Michael Dick) > Concurrency issue with query cache enabled > ------------------------------------------ > > Key: OPENJPA-653 > URL: https://issues.apache.org/jira/browse/OPENJPA-653 > Project: OpenJPA > Issue Type: Bug > Components: datacache > Affects Versions: 1.2.0 > Reporter: Jeremy Bauer > Assignee: Jeremy Bauer > Fix For: 1.2.0 > > Attachments: OPENJPA-653.patch > > > A Java EE application with query result caching enabled and with many concurrent users is failing with a ConcurrentModificationException in org.apache.openjpa.datacache.QueryCacheStoreQuery. Specifically, the failure is in the inner class.method CachingResultObjectProvider.checkFinished(Object, boolean) and occurs while iterating the _data TreeMap within the QueryResult constructor. > Examination of this method showed that the tree map is synchronized in the beginning of the method and then later when the map is cleared in abortCaching(). It is not synchronized when a new QueryResult is constructed. This allows a thread to iterate over the map (during the constructor) while another thread is modifying it. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.