Story #3336
Restrict MN.update() when obsoletedBy has already been set on obsolete pid
Start date:
2012-10-12
Due date:
2013-09-07
% Done:
100%
Story Points:
Sprint:
Description
Because SystemMetadata.obsoletedBy and SystemMetadata.obsolete are bi directional, we really only support a single revision chain (not a tree). But we should ensure that this chain cannot branched with an orphan chain resulting.
If the old revision has a pid in the obsoletedBy field, then an update to that pid should fail. Otherwise we will have orphaned the chain that started at that previous obsoletedBy pid.
first update:
B obsoletes A
A obsoletedBy B
after second update:
C obsoletes A
A obsoletedBy C
now B (and any newer versions from B) is orphaned.
Subtasks
History
#1 Updated by Dave Vieglais over 11 years ago
- Due date set to 2013-09-07
- Target version set to 2013.35-Block.5.1
- Start date set to 2013-08-25
#2 Updated by Ben Leinfelder about 11 years ago
- Status changed from New to Closed