openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jeremy Bauer (JIRA)" <j...@apache.org>
Subject [jira] Commented: (OPENJPA-1074) OrderColumn does not maintain index upon inter-list element removal
Date Wed, 03 Mar 2010 17:56:27 GMT

    [ https://issues.apache.org/jira/browse/OPENJPA-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12840762#action_12840762
] 

Jeremy Bauer commented on OPENJPA-1074:
---------------------------------------

I fixed the non-spec compliant behavior described in this JIRA (ie. phase 1 - Per the latest
JPA 2.0 spec, a contiguous index value must be maintained.) but the second phase of the JIRA
has not been addressed:

"The current reordering mechanism does a full delete and reinsert of the container/collection
table values if a reorder is required for inserts. For deletes, it just removes entries and
leaves an empty index value. The first phase of the fix will be to maintain contiguous ordering
using the same mechanism as inserts (delete/re-insert). The second phase will be to update
the ChangeTracker to record the indexes of the updated list items and to use that information
to provide a more intelligent update strategy in the handlers."

A more spec related side effect of OpenJPA's current order column update strategy is that
the OrderColumn insertable and updatable attributes may not result in the behavior one may
expect since the db operations used to maintain the list do not exactly map to the db operations
indicated by these attributes.

I spent a few days looking into implementing phase 2, but it turned into a non trivial exercise.


> OrderColumn does not maintain index upon inter-list element removal
> -------------------------------------------------------------------
>
>                 Key: OPENJPA-1074
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-1074
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: jdbc
>    Affects Versions: 2.0.0-M2
>            Reporter: Jeremy Bauer
>            Assignee: Jeremy Bauer
>            Priority: Critical
>             Fix For: 2.0.0
>
>
> The current order column reordering mechanism does not maintain a contiguous index value
when an item is deleted from anywhere except the end of a collection.  Per the latest JPA
2.0 spec, a contiguous index value must be maintained.
> The current reordering mechanism does a full delete and reinsert of the container/collection
table values if a reorder is required for inserts.  For deletes, it just removes entries and
leaves an empty index value.  The first phase of the fix will be to maintain contiguous ordering
using the same mechanism as inserts (delete/re-insert).  The second phase will be to update
the ChangeTracker to record the indexes of the updated list items and to use that information
to provide a more intelligent update strategy in the handlers.

-- 
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