Project

General

Profile

Task #1526

Bug #1525: System metadata replication errors

Handle "update" replication requests that do not necessarily update the docid (access control changes)

Added by Ben Leinfelder over 13 years ago. Updated over 13 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Ben Leinfelder
Category:
-
Target version:
Start date:
2011-05-04
Due date:
% Done:

100%

Estimated time:
2.00 h
Milestone:
Product Version:
*
Story Points:
Sprint:

Description

we won't always be inserting these fields and need a method to handle updates [for replication]

History

#1 Updated by Ben Leinfelder over 13 years ago

  • Subject changed from include updateSystemMetadataFields() method for IdentifierManager to Handle "update" replication requests that do not necessarily update the docid (access control changes)
  • Assignee set to Ben Leinfelder

#2 Updated by Ben Leinfelder over 13 years ago

Metacat triggers a 'force replication' action when we setAccess on the auto-generated sysmeta file - this does not increment the id. When the target Metacat attempts to handle this replication request, an attempt is made to insert the sysmeta doc again with the same id and then throws a PK constraint error.
We should either handle the access control change (to sync it with the originating server) or just ignore this forced replication 'update'.

#3 Updated by Ben Leinfelder over 13 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100
  • Estimated time set to 2.00

I added an updateMapping() method to the IdentifierManager class that is now used when we encounter a forced replication update request. This prevents the systemMetadata unique key constraint from being violated when the doc is replicated (again) after the setAccess call.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)