Return-Path: Delivered-To: apmail-openjpa-dev-archive@www.apache.org Received: (qmail 30975 invoked from network); 5 Apr 2010 16:12:48 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 5 Apr 2010 16:12:48 -0000 Received: (qmail 11817 invoked by uid 500); 5 Apr 2010 16:12:48 -0000 Delivered-To: apmail-openjpa-dev-archive@openjpa.apache.org Received: (qmail 11795 invoked by uid 500); 5 Apr 2010 16:12:48 -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 11787 invoked by uid 99); 5 Apr 2010 16:12:48 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Apr 2010 16:12:48 +0000 X-ASF-Spam-Status: No, hits=-1218.0 required=10.0 tests=ALL_TRUSTED,AWL 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, 05 Apr 2010 16:12:47 +0000 Received: from brutus.apache.org (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 4CF2C234C48D for ; Mon, 5 Apr 2010 16:12:27 +0000 (UTC) Message-ID: <111788633.690201270483947314.JavaMail.jira@brutus.apache.org> Date: Mon, 5 Apr 2010 16:12:27 +0000 (UTC) From: "Rick Curtis (JIRA)" To: dev@openjpa.apache.org Subject: [jira] Commented: (OPENJPA-1545) Add new Detach processing In-Reply-To: <1980363623.44881267485965742.JavaMail.jira@brutus.apache.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/OPENJPA-1545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12853418#action_12853418 ] Rick Curtis commented on OPENJPA-1545: -------------------------------------- > Can I merge() the object graph back when this detach lite was used with some entities without a version field? Yes. > If yes, why did the test persistent entities that worked before this change without version field required addition of a version field? I'm guessing that adding the @Version field is a good(/bad) habit that I've got myself into. I did some testing and I can remove the @Version field, but I would need to change one assertion in the new testcase. When there is no version field and no detached state field, the Entity doesn't know whether is is detached or not(PersistenceCapable.pcIsDetached()). The OpenJPA runtime is able to determine whether or not the Entity exists by hitting to the db looking for the Entities id. see BrokerImpl.isDetached(Object o); > Add new Detach processing > ------------------------- > > Key: OPENJPA-1545 > URL: https://issues.apache.org/jira/browse/OPENJPA-1545 > Project: OpenJPA > Issue Type: Improvement > Components: performance > Affects Versions: 2.0.0-beta2 > Reporter: Rick Curtis > Assignee: Rick Curtis > Fix For: 2.0.0 > > Attachments: OPENJPA-1545.patch > > > There have been a number of mailing list posts where the net of the post is that someone doesn't want OpenJPA to detach their Entities because after the commit happens, then are all going to be gc'd. All of the detach processing ends up being a waste. I also observed this same behavior when running some performance tests. > With this JIRA I'm going to add a new openjpa.DetachState configuration option which will enable a new, super fast, minimalistic detach approach. This change is targeted at detach processing that happens due to an AutoDetach. Explicit detaches(ie: em.detach(..) ) will work as they always have before. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.