Project

General

Profile

Bug #7283

Replication exception during setReplicationStatus()

Added by Andrei Buium over 8 years ago. Updated over 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Ben Leinfelder
Category:
Metacat
Target version:
-
Start date:
2015-07-29
Due date:
% Done:

100%

Milestone:
None
Product Version:
*
Story Points:
Sprint:

Description

Replication seems to be failing due to the following exception:

/var/log/dataone/replicate/cn-replication.log

[ERROR] 2015-07-28 16:26:19,699 (ReplicationService:setReplicationStatus:219) Error in calling setReplicationStatus() for identifier autogen.2015051410063088508, target node urn:node:mnDemo6 and status of REQUESTED: Couldn't resolve the multipart request: null
org.dataone.service.exceptions.ServiceFailure: Couldn't resolve the multipart request: null
at org.dataone.service.util.ExceptionHandler.deserializeXml(ExceptionHandler.java:633)
at org.dataone.service.util.ExceptionHandler.deserializeXmlAndThrowException(ExceptionHandler.java:517)
at org.dataone.service.util.ExceptionHandler.deserializeAndThrowException(ExceptionHandler.java:363)
at org.dataone.service.util.ExceptionHandler.deserializeAndThrowException(ExceptionHandler.java:313)
at org.dataone.service.util.ExceptionHandler.filterErrors(ExceptionHandler.java:107)
at org.dataone.service.util.ExceptionHandler.filterErrors(ExceptionHandler.java:82)
at org.dataone.client.rest.HttpMultipartRestClient.doPutRequest(HttpMultipartRestClient.java:426)
at org.dataone.client.v2.impl.MultipartCNode.setReplicationStatus(MultipartCNode.java:1658)

The problem comes from CNResourceHandler.setReplicationStatus(pid) on the second of these lines:

Map files = collectMultipartFiles();

failure = ExceptionHandler.deserializeXml(new FileInputStream(files.get("failure")),
"Replication failed for an unknown reason.");

Turning on DEBUG logging shows the first line runs successfully:

metacat 20150728-22:28:31: [DEBUG]: done iterating the request... [edu.ucsb.nceas.metacat.restservice.D1ResourceHandler]

This could be the culprit: collectMultipartFiles() doesn't seem to add an entry to the return map with a "failure" key,
which probably yields a NPE in the FileInputStream constructor.

History

#1 Updated by Ben Leinfelder over 8 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 30

Committed change to metacat - can rebuild and deploy in dev environment to verify.

#2 Updated by Ben Leinfelder over 8 years ago

  • Status changed from In Progress to Testing
  • % Done changed from 30 to 50

Okay, the 3 CN devs have this change applied - test as you wish!

#3 Updated by Ben Leinfelder over 8 years ago

  • Status changed from Testing to Closed
  • % Done changed from 50 to 100

Looks like those particular errors have been resolved by this change.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)