Opened 8 years ago

Closed 6 years ago

#3 closed defect (fixed)

Referential Integrity

Reported by: ieslick Owned by: ieslick
Priority: blocker Milestone: Release 1.0 beta 1 - Schemas, advanced indexing, postmodern
Component: metaprotocol Version:
Keywords: Cc:

Description

Currently, if a persistent object is dropped, it's references in various indices or other structures are unchanged. If a reference is extracted, we need to exhibit the default behavior (mark the oid as deleted and return null from serializer?)

This may be easy or very hard depending on the kind of guarantee we need to ensure.

Change History (5)

comment:1 Changed 8 years ago by ieslick

  • Version 0.7.0 deleted

comment:2 Changed 8 years ago by ieslick

  • Priority changed from major to blocker

comment:3 Changed 8 years ago by ieslick

If we use the oid table to determine class as well as validity, then we can have a one or more parameter-selectable system policy that dictates what to do if we try to deserialize a deleted object:

  • return nil
  • return a special object
  • return a fresh version of the object
  • call a handler (what would it be defined on, a class?)
  • assert a user continuable and restartable error

comment:4 Changed 8 years ago by ieslick

  • Milestone changed from Release 0.9.1 - Low Hanging Fruit to Release 0.9.2 - Schemas and Advanced Indexing

comment:5 Changed 6 years ago by ieslick

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.