[MAGNOLIA-4414] Cleanup after unsuccessful attempt to lock the content will remove content in case of cross activation requests Created: 16/May/12  Updated: 18/May/12  Resolved: 18/May/12

Status: Closed
Project: Magnolia
Component/s: activation
Affects Version/s: 4.4.7, 4.5.2
Fix Version/s: 4.4.8, 4.5.3

Type: Bug Priority: Blocker
Reporter: Jan Haderka Assignee: Milan Divilek
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File magnolia-4414.patch    
Issue Links:
causality
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled

 Description   

In case of two concurrent requests for activation of same content arriving to public instances in different order block each other and cause rollback, the cleanup will incorrectly remove the content from all public instances.



 Comments   
Comment by Jan Haderka [ 16/May/12 ]

Patch for the issue.

Comment by Jan Haderka [ 17/May/12 ]

based on confusion it caused during tests, I just realized how the error message must feel to users not knowing anything about activation internal working. I've already changed it on 4.4 branch, but pls change it also on the master

@@ -641,7 +642,7 @@ public class ReceiveFilter extends AbstractMgnlFilter {
             content = this.getNode(request);
         }
         if (content.isLocked()) {
-            throw new ExchangeException("Operation not permitted, " + content.getHandle() + " is locked while activating " + request.getHeader(BaseSyndicatorImpl.NODE_UUID));
+            throw new ExchangeException("Content " + content.getHandle() + " was locked while activating " + request.getHeader(BaseSyndicatorImpl.NODE_UUID) + ". This most likely means that content have been at the same time activated by some other user. Please try again and if problem persists contact administrator.");
         }
         return content;
     }
Generated at Mon Feb 12 03:55:33 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.