You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by na...@apache.org on 2013/03/01 07:14:50 UTC
svn commit: r1451476 -
/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java
Author: namit
Date: Fri Mar 1 06:14:50 2013
New Revision: 1451476
URL: http://svn.apache.org/r1451476
Log:
HIVE-4077 alterPartition and alterPartitions methods in ObjectStore swallow exceptions
(Kevin Wilfong via namit)
Modified:
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java
Modified: hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java
URL: http://svn.apache.org/viewvc/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java?rev=1451476&r1=1451475&r2=1451476&view=diff
==============================================================================
--- hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java (original)
+++ hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/ObjectStore.java Fri Mar 1 06:14:50 2013
@@ -2043,16 +2043,23 @@ public class ObjectStore implements RawS
public void alterPartition(String dbname, String name, List<String> part_vals, Partition newPart)
throws InvalidObjectException, MetaException {
boolean success = false;
+ Exception e = null;
try {
openTransaction();
alterPartitionNoTxn(dbname, name, part_vals, newPart);
// commit the changes
success = commitTransaction();
+ } catch (Exception exception) {
+ e = exception;
} finally {
if (!success) {
rollbackTransaction();
- throw new MetaException(
+ MetaException metaException = new MetaException(
"The transaction for alter partition did not commit successfully.");
+ if (e != null) {
+ metaException.initCause(e);
+ }
+ throw metaException;
}
}
}
@@ -2060,6 +2067,7 @@ public class ObjectStore implements RawS
public void alterPartitions(String dbname, String name, List<List<String>> part_vals,
List<Partition> newParts) throws InvalidObjectException, MetaException {
boolean success = false;
+ Exception e = null;
try {
openTransaction();
Iterator<List<String>> part_val_itr = part_vals.iterator();
@@ -2069,11 +2077,17 @@ public class ObjectStore implements RawS
}
// commit the changes
success = commitTransaction();
+ } catch (Exception exception) {
+ e = exception;
} finally {
if (!success) {
rollbackTransaction();
- throw new MetaException(
+ MetaException metaException = new MetaException(
"The transaction for alter partition did not commit successfully.");
+ if (e != null) {
+ metaException.initCause(e);
+ }
+ throw metaException;
}
}
}