public static <T> TransactionResult<T> unknown(Throwable error) { return new TransactionResult<T>(TransactionStatus.UNKNOWN, null /* result value */, Optional.of(error)); }
private static <T> TransactionResult<T> runSimple(ConnectionManager cm, RetriableWriteTransaction<T> tx) { Connection c = null; try { c = cm.getConnection(); c.setAutoCommit(false); T ret = tx.run(c); c.commit(); return TransactionResult.success(ret); } catch (Throwable t) { return TransactionResult.failure(t); } finally { if (c != null) { try { c.close(); } catch (Throwable t) { log.warn("A problem happened trying to close a connection.", t); } } } }
switch (result.getStatus()) { case SUCCESSFUL: currentLimit = result.getResultValue(); return currentLimit; case UNKNOWN: case FAILED: if (result.getStatus() == RetriableTransactions.TransactionStatus.UNKNOWN) { Throwable error = result.getError(); if (error instanceof SQLException) { throw PalantirSqlException.create((SQLException) error); throw new IllegalStateException("Unrecognized transaction status " + result.getStatus());
private static <T> TransactionResult<T> runSimple(ConnectionManager cm, RetriableWriteTransaction<T> tx) { Connection c = null; try { c = cm.getConnection(); c.setAutoCommit(false); T ret = tx.run(c); c.commit(); return TransactionResult.success(ret); } catch (Throwable t) { return TransactionResult.failure(t); } finally { if (c != null) { try { c.close(); } catch (Throwable t) { log.warn("A problem happened trying to close a connection.", t); } } } }
public static <T> TransactionResult<T> failure(Throwable error) { return new TransactionResult<T>(TransactionStatus.FAILED, null /* result value */, Optional.of(error)); }
public static <T> TransactionResult<T> success(T resultValue) { return new TransactionResult<T>(TransactionStatus.SUCCESSFUL, resultValue, Optional.<Throwable>empty()); }
public static <T> TransactionResult<T> unknown(Throwable error) { return new TransactionResult<T>(TransactionStatus.UNKNOWN, null /* result value */, Optional.of(error)); }
switch (result.getStatus()) { case SUCCESSFUL: currentLimit = result.getResultValue(); return currentLimit; case UNKNOWN: case FAILED: if (result.getStatus() == RetriableTransactions.TransactionStatus.UNKNOWN) { Throwable error = result.getError(); if (error instanceof SQLException) { throw PalantirSqlException.create((SQLException) error); throw new IllegalStateException("Unrecognized transaction status " + result.getStatus());
public static <T> TransactionResult<T> failure(Throwable error) { return new TransactionResult<T>(TransactionStatus.FAILED, null /* result value */, Optional.of(error)); }
public static <T> TransactionResult<T> success(T resultValue) { return new TransactionResult<T>(TransactionStatus.SUCCESSFUL, resultValue, Optional.<Throwable>empty()); }