Task #6422 (closed)
chgrp: validate changes
Reported by: | jamoore | Owned by: | jamoore |
---|---|---|---|
Priority: | critical | Milestone: | OMERO-Beta4.3.2 |
Component: | General | Version: | n.a. |
Keywords: | n.a. | Cc: | |
Resources: | n.a. | Referenced By: | n.a. |
References: | n.a. | Remaining Time: | 0.0d |
Sprint: | 2011-08-18 (3) |
Description
With #6361 calls to change group now modify an entire graph, but do not check the validity of those changes. This will require refactoring logic from ACLVoter, OmeroInterceptor and friends.
Change History (3)
comment:1 Changed 13 years ago by jmoore
- Remaining Time changed from 1.5 to 0
- Resolution set to fixed
- Status changed from new to closed
comment:2 Changed 13 years ago by jmoore <josh@…>
(In [1045ec4befc4cdd4744b75dcb753046151df4ca1/ome.git] on branch develop) Initial validation which rollsback whole tx (See #6422)
comment:3 Changed 13 years ago by jmoore <josh@…>
(In [f8cabae63e466cd019eaea1c056ab405dbfaf8bb/ome.git] on branch develop) Set response on any exception (Fix #6422)
Done in branch.
During the processing of ChgrpStep, all incoming links are checked under the assumption that processing takes place in the order of foreign key constraints, i.e. if A points to B, A will be processed first, so B will not have any incoming links.
After all ChgrpSteps are processed, the same number of ChgrpValidation steps are processed which each check the same objects (in the same order) but check outgoing links instead, i.e. did anything not get moved. As we add specific actions to take place (copy/null/delete/etc), it may be necesssary to perform both types of checks in ChgrpValidation.