Issue Details (XML | Word | Printable)

Key: NUCRDBMS-683
Type: New Feature New Feature
Status: Open Open
Priority: Minor Minor
Assignee: Unassigned
Reporter: Erik Bengtson
Votes: 1
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
DataNucleus Store RDBMS

Logical delete of objects

Created: 07/Mar/06 06:59 PM   Updated: 23/Jul/13 11:39 AM
Component/s: ORM, Schema
Affects Version/s: None
Fix Version/s: None


 Description  « Hide
allow to logically delete objects by configuring in metadata that deleted instances of class/interface X is deleted logically.

e.g.
<class X>
<delete-logical>
<column name="YY1" value="UUU"/>
<column name="YY2" value="UUU"/>
</delete-logical>
</class>

values allowed: null, primitives, String, Date (parsed using DateFormat.parse(String s)), and maybe others

Andy Jefferson made changes - 06/Sep/06 09:57 AM
Field Original Value New Value
Fix Version/s 1.2.0 [ 10021 ]
Andy Jefferson added a comment - 30/Oct/07 01:11 PM
Would probably be more like
<class name="MyClass">
    ...
    <extension vendor-name="jpox" key="logical-delete" value="true"/>
    <extension vendor-name="jpox" key="logical-delete-column" value="DELETED"/>
</class>

which would then create a DB table with a column (BIT) called "DELETED".

Other changes :-
1. calls to deletePersistent() would just set the DELETED column to 1.
2. retrieval of objects (FetchRequest, JDOQL, SQL, etc) would also need to check that DELETED = 0

Chris Beams added a comment - 31/Oct/07 03:13 AM
FWIW, here's Xcalia's documentation on their implementation of logical deletion. Might be worth taking a look:

http://xdn.xcalia.com/xdn/docs/files/XcaliaCore/5.2.0/documents/html/prog_behavior_-_logical_deletion_behavior.htm

Andy Jefferson made changes - 22/Nov/07 01:11 PM
Project Core [ 10000 ] RDBMS [ 10111 ]
Key CORE-2739 RDBMS-7
Component/s JDO [ 10000 ]
Component/s Datastore Support : RDBMS [ 10001 ]
Component/s Queries [ 10030 ]
Affects Version/s 1.1.0-rc-1 [ 10022 ]
Andy Jefferson made changes - 25/Nov/07 09:44 AM
Component/s ORM [ 10112 ]
Andy Jefferson made changes - 15/Feb/11 06:06 PM
Project JPOX RDBMS (ARCHIVED) [ 10111 ] DataNucleus Store RDBMS [ 10144 ]
Key RDBMS-7 NUCRDBMS-499
Component/s ORM [ 10141 ]
Component/s ORM [ 10112 ]
Andy Jefferson made changes - 03/Jul/11 10:29 AM
Project DataNucleus Store RDBMS [ 10144 ] DataNucleus Core [ 10143 ]
Key NUCRDBMS-499 NUCCORE-734
Component/s Persistence [ 10200 ]
Component/s ORM [ 10141 ]
Andy Jefferson made changes - 23/Jul/13 11:39 AM
Project DataNucleus Core [ 10143 ] DataNucleus Store RDBMS [ 10144 ]
Key NUCCORE-734 NUCRDBMS-683
Component/s ORM [ 10141 ]
Component/s Schema [ 10146 ]
Component/s Persistence [ 10200 ]