@Override public ValidWriteIdList getValidWriteIds(String fullTableName) throws TException { GetValidWriteIdsRequest rqst = new GetValidWriteIdsRequest(Collections.singletonList(fullTableName)); GetValidWriteIdsResponse validWriteIds = client.get_valid_write_ids(rqst); return TxnCommonUtils.createValidReaderWriteIdList(validWriteIds.getTblValidWriteIds().get(0)); }
/** * Transform a {@link org.apache.hadoop.hive.metastore.api.GetValidWriteIdsResponse} to a * {@link org.apache.hadoop.hive.common.ValidTxnWriteIdList}. This assumes that the caller intends to * read the files, and thus treats both open and aborted transactions as invalid. * @param currentTxnId current txn ID for which we get the valid write ids list * @param validIds valid write ids list from the metastore * @return a valid write IDs list for the whole transaction. */ public static ValidTxnWriteIdList createValidTxnWriteIdList(Long currentTxnId, List<TableValidWriteIds> validIds) { ValidTxnWriteIdList validTxnWriteIdList = new ValidTxnWriteIdList(currentTxnId); for (TableValidWriteIds tableWriteIds : validIds) { validTxnWriteIdList.addTableValidWriteIdList(createValidReaderWriteIdList(tableWriteIds)); } return validTxnWriteIdList; }
@Override public ValidWriteIdList getValidWriteIds(String fullTableName, Long writeId) throws TException { GetValidWriteIdsRequest rqst = new GetValidWriteIdsRequest(Collections.singletonList(fullTableName)); rqst.setWriteId(writeId); GetValidWriteIdsResponse validWriteIds = client.get_valid_write_ids(rqst); return TxnCommonUtils.createValidReaderWriteIdList(validWriteIds.getTblValidWriteIds().get(0)); }
private ValidReaderWriteIdList getWriteIds( TableName fullTableName) throws NoSuchTxnException, MetaException { // TODO: acid utils don't support catalogs GetValidWriteIdsRequest req = new GetValidWriteIdsRequest( Lists.newArrayList(fullTableName.getDbTable())); return TxnCommonUtils.createValidReaderWriteIdList( txnHandler.getValidWriteIds(req).getTblValidWriteIds().get(0)); }
@Override public ValidWriteIdList getValidWriteIds(String fullTableName) throws TException { GetValidWriteIdsRequest rqst = new GetValidWriteIdsRequest(Collections.singletonList(fullTableName)); GetValidWriteIdsResponse validWriteIds = client.get_valid_write_ids(rqst); return TxnCommonUtils.createValidReaderWriteIdList(validWriteIds.getTblValidWriteIds().get(0)); }
@Override public ValidWriteIdList getValidWriteIds(String fullTableName, Long writeId) throws TException { GetValidWriteIdsRequest rqst = new GetValidWriteIdsRequest(Collections.singletonList(fullTableName)); rqst.setWriteId(writeId); GetValidWriteIdsResponse validWriteIds = client.get_valid_write_ids(rqst); return TxnCommonUtils.createValidReaderWriteIdList(validWriteIds.getTblValidWriteIds().get(0)); }
private ValidWriteIdList getTransactionContext(Configuration conf) throws Exception { ValidTxnList validTxnList = msClient.getValidTxns(); conf.set(ValidTxnList.VALID_TXNS_KEY, validTxnList.writeToString()); List<TableValidWriteIds> v = msClient.getValidWriteIds(Collections .singletonList(TableName.getDbTable(dbName, tblName)), validTxnList.writeToString()); return TxnCommonUtils.createValidReaderWriteIdList(v.get(0)); } private void checkNothingWritten(Path partitionPath) throws Exception {
private ValidWriteIdList getTransactionContext(Configuration conf) throws Exception { ValidTxnList validTxnList = msClient.getValidTxns(); conf.set(ValidTxnList.VALID_TXNS_KEY, validTxnList.writeToString()); List<TableValidWriteIds> v = msClient.getValidWriteIds(Collections .singletonList(TableName.getDbTable(dbName, tblName)), validTxnList.writeToString()); return TxnCommonUtils.createValidReaderWriteIdList(v.get(0)); } private void checkNothingWritten(Path partitionPath) throws Exception {
StreamingAssert(IMetaStoreClient metaStoreClient, HiveConf conf, Table table, List<String> partition) throws Exception { this.metaStoreClient = metaStoreClient; this.table = table; this.partition = partition; validTxnList = metaStoreClient.getValidTxns(); conf.set(ValidTxnList.VALID_TXNS_KEY, validTxnList.writeToString()); List<TableValidWriteIds> v = metaStoreClient.getValidWriteIds(Collections .singletonList(TableName.getDbTable(table.getDbName(), table.getTableName())), validTxnList.writeToString()); writeIds = TxnCommonUtils.createValidReaderWriteIdList(v.get(0)); partitionLocation = getPartitionLocation(); dir = AcidUtils.getAcidState(partitionLocation, conf, writeIds); assertEquals(0, dir.getObsolete().size()); assertEquals(0, dir.getOriginalFiles().size()); currentDeltas = dir.getCurrentDirectories(); min = Long.MAX_VALUE; max = Long.MIN_VALUE; System.out.println("Files found: "); for (AcidUtils.ParsedDelta parsedDelta : currentDeltas) { System.out.println(parsedDelta.getPath().toString()); max = Math.max(parsedDelta.getMaxWriteId(), max); min = Math.min(parsedDelta.getMinWriteId(), min); } }
TxnCommonUtils.createValidReaderWriteIdList(rsp.getTblValidWriteIds().get(0));