Ticket #421 (closed defect: fixed)
Document modification can pick up old version
| Reported by: | richard | Owned by: | olly |
|---|---|---|---|
| Priority: | normal | Milestone: | 1.0.18 |
| Component: | Library API | Version: | SVN trunk |
| Severity: | normal | Keywords: | |
| Cc: | Blocked By: | ||
| Operating System: | All | Blocking: |
Description
If two copies of a document are read from a database, then one is modified and used to replace the original document, then the other is used to replace the document again (which should put it back to the original value), the document is not reverted as expected, and remains in the state after the modification.
This applies to all backends, but I'm marking it as applying to flint for now, since I have to pick one...
I'm not sure if this _can_ be fixed - I think we'd have to force copies of documents to load their data fully when the original is modified, which in turn would require keeping links to all open document objects in the database. Alternatively, perhaps we could raise an execption (InvalidOperation??) when the document tries to load data from a database which has been modified.

