Revision 7295
Added by ben leinfelder over 12 years ago
src/edu/ucsb/nceas/metacat/dataone/hazelcast/HazelcastService.java | ||
---|---|---|
538 | 538 |
* the server can continue to service other requests during the synch |
539 | 539 |
* @throws Exception |
540 | 540 |
*/ |
541 |
private void resynchToRemote() throws Exception {
|
|
541 |
private void resynchToRemote() { |
|
542 | 542 |
// loop through all the [shared] entries and save any missing ones locally |
543 | 543 |
List<String> localPids = IdentifierManager.getInstance().getAllSystemMetadataGUIDs(); |
544 | 544 |
logMetacat.warn("local pid count: " + localPids.size() + ", shared pid count: " + identifiers.size()); |
... | ... | |
559 | 559 |
// if we don't own it, we can look it up locally in hopes that we have our own copy |
560 | 560 |
if (true) { |
561 | 561 |
// get directly from backing store |
562 |
sm = IdentifierManager.getInstance().getSystemMetadata(pid.getValue()); |
|
563 |
|
|
562 |
try { |
|
563 |
sm = IdentifierManager.getInstance().getSystemMetadata(pid.getValue()); |
|
564 |
} catch (McdbDocNotFoundException e) { |
|
565 |
// log and move on, there's nothing more we can do |
|
566 |
logMetacat.error("Could not find local SystemMetadata for pid: " + pid.getValue(), e); |
|
567 |
continue; |
|
568 |
} |
|
564 | 569 |
} |
565 | 570 |
} |
566 | 571 |
// check again, but hopefully we can add it to the map now (again) so that it is propgated to all listening members |
Also available in: Unified diff
log error when looking up non-existent local SM rather than completely bombing out of the resynch thread.