diff --git a/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ProtXMLUploader.java b/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ProtXMLUploader.java index 08a6c839369afab7ccf889e8568ed20ec47a9eed..2139de359ac89d8c147c658fdbe4141bcfc8d94d 100644 --- a/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ProtXMLUploader.java +++ b/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ProtXMLUploader.java @@ -113,14 +113,24 @@ public class ProtXMLUploader implements IDataSetUploader public void commit() { - currentResultDataSetUploader.commit(); - currentResultDataSetUploader = null; + try + { + currentResultDataSetUploader.commit(); + } finally + { + currentResultDataSetUploader = null; + } } public void rollback() { - currentResultDataSetUploader.rollback(); - currentResultDataSetUploader = null; + try + { + currentResultDataSetUploader.rollback(); + } finally + { + currentResultDataSetUploader = null; + } } protected ResultDataSetUploader createUploader() diff --git a/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ResultDataSetUploader.java b/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ResultDataSetUploader.java index 09c66999f61221650444491e84d01fa9d0120c83..440b23de9aafc7a13bdcbe5396d7fea6e54a714e 100644 --- a/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ResultDataSetUploader.java +++ b/rtd_phosphonetx/source/java/ch/systemsx/cisd/openbis/etlserver/phosphonetx/ResultDataSetUploader.java @@ -117,8 +117,11 @@ class ResultDataSetUploader extends AbstractHandler { try { - connection.rollback(); - connection.close(); + if (connection.isClosed() == false) + { + connection.rollback(); + connection.close(); + } } catch (SQLException ex) { throw CheckedExceptionTunnel.wrapIfNecessary(ex);