Murtadha Hubail has uploaded a new change for review. https://asterix-gerrit.ics.uci.edu/2882
Change subject: [NO ISSUE][OTH] MetadataNode Cleanup ...................................................................... [NO ISSUE][OTH] MetadataNode Cleanup - user model changes: no - storage format changes: no - interface changes: yes Details: - Remove unneeded ACIDException runtime exception handling. - Remove unneeded comments. - Sonar fixes. Change-Id: Ib2d8e101203ab3a441f6f13e5113addf311177b6 --- M asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataNode.java M asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/api/IMetadataNode.java 2 files changed, 38 insertions(+), 134 deletions(-) git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/82/2882/1 diff --git a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataNode.java b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataNode.java index 164c867..e8598a3 100644 --- a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataNode.java +++ b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/MetadataNode.java @@ -31,7 +31,6 @@ import org.apache.asterix.common.config.DatasetConfig.DatasetType; import org.apache.asterix.common.config.DatasetConfig.IndexType; import org.apache.asterix.common.dataflow.LSMIndexUtil; -import org.apache.asterix.common.exceptions.ACIDException; import org.apache.asterix.common.functions.FunctionSignature; import org.apache.asterix.common.metadata.MetadataIndexImmutableProperties; import org.apache.asterix.common.transactions.IRecoveryManager.ResourceType; @@ -129,8 +128,8 @@ private static final long serialVersionUID = 1L; private static final Logger LOGGER = LogManager.getLogger(); // shared between core and extension - private IDatasetLifecycleManager datasetLifecycleManager; - private ITransactionSubsystem transactionSubsystem; + private transient IDatasetLifecycleManager datasetLifecycleManager; + private transient ITransactionSubsystem transactionSubsystem; private int metadataStoragePartition; private transient CachingTxnIdFactory txnIdFactory; // core only @@ -167,14 +166,14 @@ } @Override - public void beginTransaction(TxnId transactionId) throws ACIDException, RemoteException { + public void beginTransaction(TxnId transactionId) throws RemoteException { TransactionOptions options = new TransactionOptions(AtomicityLevel.ATOMIC); transactionSubsystem.getTransactionManager().beginTransaction(transactionId, options); } @SuppressWarnings("squid:S1181") @Override - public void commitTransaction(TxnId txnId) throws RemoteException, ACIDException { + public void commitTransaction(TxnId txnId) throws RemoteException { try { transactionSubsystem.getTransactionManager().commitTransaction(txnId); } catch (Throwable th) { @@ -186,7 +185,7 @@ @SuppressWarnings("squid:S1181") @Override - public void abortTransaction(TxnId txnId) throws RemoteException, ACIDException { + public void abortTransaction(TxnId txnId) throws RemoteException { try { transactionSubsystem.getTransactionManager().abortTransaction(txnId); } catch (Throwable th) { @@ -211,7 +210,7 @@ try { ITupleReference tuple = tupleTranslator.getTupleFromMetadataEntity(entity); insertTupleIntoIndex(txnId, index, tuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -230,7 +229,7 @@ try { ITupleReference tuple = tupleTranslator.getTupleFromMetadataEntity(entity); upsertTupleIntoIndex(txnId, index, tuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -249,7 +248,7 @@ try { ITupleReference tuple = tupleTranslator.getTupleFromMetadataEntity(entity); deleteTupleFromIndex(txnId, index, tuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -263,7 +262,6 @@ * @param index * @return * @throws AlgebricksException - * @throws RemoteException */ private <T> List<T> getEntities(TxnId txnId, ITupleReference searchKey, IMetadataEntityTupleTranslator<T> tupleTranslator, IMetadataIndex index) @@ -336,8 +334,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -364,13 +360,11 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @Override - public void addIndex(TxnId txnId, Index index) throws AlgebricksException, RemoteException { + public void addIndex(TxnId txnId, Index index) throws AlgebricksException { try { IndexTupleTranslator tupleWriter = tupleTranslatorProvider.getIndexTupleTranslator(txnId, this, true); ITupleReference tuple = tupleWriter.getTupleFromMetadataEntity(index); @@ -381,8 +375,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -398,8 +390,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -417,8 +407,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -436,8 +424,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -458,23 +444,21 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } private void insertTupleIntoIndex(TxnId txnId, IMetadataIndex metadataIndex, ITupleReference tuple) - throws ACIDException, HyracksDataException { + throws HyracksDataException { modifyMetadataIndex(Operation.INSERT, txnId, metadataIndex, tuple); } private void upsertTupleIntoIndex(TxnId txnId, IMetadataIndex metadataIndex, ITupleReference tuple) - throws ACIDException, HyracksDataException { + throws HyracksDataException { modifyMetadataIndex(Operation.UPSERT, txnId, metadataIndex, tuple); } private void modifyMetadataIndex(Operation op, TxnId txnId, IMetadataIndex metadataIndex, ITupleReference tuple) - throws ACIDException, HyracksDataException { + throws HyracksDataException { String resourceName = metadataIndex.getFile().getRelativePath(); ILSMIndex lsmIndex = (ILSMIndex) datasetLifecycleManager.get(resourceName); datasetLifecycleManager.open(resourceName); @@ -532,7 +516,6 @@ @Override public void dropDataverse(TxnId txnId, String dataverseName) throws AlgebricksException, RemoteException { try { - confirmDataverseCanBeDeleted(txnId, dataverseName); // As a side effect, acquires an S lock on the 'Function' dataset @@ -586,7 +569,7 @@ } List<FeedPolicyEntity> feedPolicies = getDataversePolicies(txnId, dataverseName); - if (feedPolicies != null && feedPolicies.size() > 0) { + if (feedPolicies != null && !feedPolicies.isEmpty()) { // Drop all feed ingestion policies in this dataverse. for (FeedPolicyEntity feedPolicy : feedPolicies) { dropFeedPolicy(txnId, dataverseName, feedPolicy.getPolicyName()); @@ -599,9 +582,6 @@ // on behalf of txnId. ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.DATAVERSE_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.DATAVERSE_DATASET, tuple); - - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -610,8 +590,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -654,7 +632,7 @@ // As a side effect, acquires an S lock on the 'ExternalFile' dataset // on behalf of txnId. List<ExternalFile> datasetFiles = getExternalFiles(txnId, dataset); - if (datasetFiles != null && datasetFiles.size() > 0) { + if (datasetFiles != null && !datasetFiles.isEmpty()) { // Drop all external files in this dataset. for (ExternalFile file : datasetFiles) { dropExternalFile(txnId, dataverseName, file.getDatasetName(), file.getFileNumber()); @@ -671,7 +649,7 @@ } finally { deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.DATASET_DATASET, datasetTuple); } - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -685,8 +663,6 @@ // lock on the 'index' dataset. ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.INDEX_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.INDEX_DATASET, tuple); - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -695,8 +671,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -722,8 +696,6 @@ // lock on the 'nodegroup' dataset. ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.NODEGROUP_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.NODEGROUP_DATASET, tuple); - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. return true; } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) @@ -733,8 +705,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -759,9 +729,6 @@ dropDatatype(txnId, dataverseName, dt.getDatatypeName()); } } - - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -769,8 +736,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -782,8 +747,6 @@ // lock on the 'datatype' dataset. ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.DATATYPE_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.DATATYPE_DATASET, tuple); - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -791,13 +754,11 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } private void deleteTupleFromIndex(TxnId txnId, IMetadataIndex metadataIndex, ITupleReference tuple) - throws ACIDException, HyracksDataException { + throws HyracksDataException { modifyMetadataIndex(Operation.DELETE, txnId, metadataIndex, tuple); } @@ -910,11 +871,10 @@ public List<Dataset> getAllDatasets(TxnId txnId) throws AlgebricksException, RemoteException { try { - ITupleReference searchKey = null; DatasetTupleTranslator tupleReaderWriter = tupleTranslatorProvider.getDatasetTupleTranslator(false); IValueExtractor<Dataset> valueExtractor = new MetadataEntityValueExtractor<>(tupleReaderWriter); List<Dataset> results = new ArrayList<>(); - searchIndex(txnId, MetadataPrimaryIndexes.DATASET_DATASET, searchKey, valueExtractor, results); + searchIndex(txnId, MetadataPrimaryIndexes.DATASET_DATASET, null, valueExtractor, results); return results; } catch (HyracksDataException e) { throw new AlgebricksException(e); @@ -923,11 +883,10 @@ public List<Function> getAllFunctions(TxnId txnId) throws AlgebricksException, RemoteException { try { - ITupleReference searchKey = null; FunctionTupleTranslator tupleReaderWriter = tupleTranslatorProvider.getFunctionTupleTranslator(false); IValueExtractor<Function> valueExtractor = new MetadataEntityValueExtractor<>(tupleReaderWriter); List<Function> results = new ArrayList<>(); - searchIndex(txnId, MetadataPrimaryIndexes.FUNCTION_DATASET, searchKey, valueExtractor, results); + searchIndex(txnId, MetadataPrimaryIndexes.FUNCTION_DATASET, null, valueExtractor, results); return results; } catch (HyracksDataException e) { throw new AlgebricksException(e); @@ -936,12 +895,11 @@ public List<Datatype> getAllDatatypes(TxnId txnId) throws AlgebricksException, RemoteException { try { - ITupleReference searchKey = null; DatatypeTupleTranslator tupleReaderWriter = tupleTranslatorProvider.getDataTypeTupleTranslator(txnId, this, false); IValueExtractor<Datatype> valueExtractor = new MetadataEntityValueExtractor<>(tupleReaderWriter); List<Datatype> results = new ArrayList<>(); - searchIndex(txnId, MetadataPrimaryIndexes.DATATYPE_DATASET, searchKey, valueExtractor, results); + searchIndex(txnId, MetadataPrimaryIndexes.DATATYPE_DATASET, null, valueExtractor, results); return results; } catch (HyracksDataException e) { throw new AlgebricksException(e); @@ -1055,7 +1013,6 @@ || dataType.getDatatype().getTypeName().equals(datatypeName)) { continue; } - AbstractComplexType recType = (AbstractComplexType) dataType.getDatatype(); if (recType.containsType(typeToBeDropped)) { throw new AlgebricksException("Cannot drop type " + dataverseName + "." + datatypeName @@ -1089,7 +1046,7 @@ return nestedTypes; } - public List<String> getDatasetNamesPartitionedOnThisNodeGroup(TxnId txnId, String nodegroup) + private List<String> getDatasetNamesPartitionedOnThisNodeGroup(TxnId txnId, String nodegroup) throws AlgebricksException, RemoteException { // this needs to scan the datasets and return the datasets that use this // nodegroup @@ -1180,7 +1137,7 @@ throws AlgebricksException, RemoteException { try { ITupleReference searchKey = createTuple(functionSignature.getNamespace(), functionSignature.getName(), - "" + functionSignature.getArity()); + Integer.toString(functionSignature.getArity())); FunctionTupleTranslator tupleReaderWriter = tupleTranslatorProvider.getFunctionTupleTranslator(false); List<Function> results = new ArrayList<>(); IValueExtractor<Function> valueExtractor = new MetadataEntityValueExtractor<>(tupleReaderWriter); @@ -1216,13 +1173,10 @@ private void dropFunction(TxnId txnId, FunctionSignature functionSignature, boolean force) throws AlgebricksException, RemoteException { - if (!force) { confirmFunctionCanBeDeleted(txnId, functionSignature); } - Function function = getFunction(txnId, functionSignature); - if (function == null) { throw new AlgebricksException( "Cannot drop function '" + functionSignature.toString() + "' because it doesn't exist."); @@ -1230,15 +1184,12 @@ try { // Delete entry from the 'function' dataset. ITupleReference searchKey = createTuple(functionSignature.getNamespace(), functionSignature.getName(), - "" + functionSignature.getArity()); + Integer.toString(functionSignature.getArity())); // Searches the index for the tuple to be deleted. Acquires an S // lock on the 'function' dataset. ITupleReference functionTuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.FUNCTION_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.FUNCTION_DATASET, functionTuple); - - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -1247,8 +1198,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1258,20 +1207,18 @@ List<ITupleReference> results = new ArrayList<>(); searchIndex(txnId, metadataIndex, searchKey, valueExtractor, results); if (results.isEmpty()) { - // TODO: Temporarily a TreeIndexException to make it get caught by - // caller in the appropriate catch block. throw HyracksDataException.create(ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY); } // There should be exactly one result returned from the search. return results.get(0); } - // Debugging Method - public String printMetadata() { + // Debugging Method + private String printMetadata() { StringBuilder sb = new StringBuilder(); try { - RangePredicate rangePred = null; + RangePredicate rangePred; IMetadataIndex index = MetadataPrimaryIndexes.DATAVERSE_DATASET; String resourceName = index.getFile().toString(); IIndex indexInstance = datasetLifecycleManager.get(resourceName); @@ -1292,12 +1239,10 @@ rangeCursor.close(); } datasetLifecycleManager.close(resourceName); - index = MetadataPrimaryIndexes.DATASET_DATASET; indexInstance = datasetLifecycleManager.get(resourceName); datasetLifecycleManager.open(resourceName); indexAccessor = indexInstance.createAccessor(NoOpIndexAccessParameters.INSTANCE); rangeCursor = indexAccessor.createSearchCursor(false); - rangePred = null; rangePred = new RangePredicate(null, null, true, true, null, null); indexAccessor.search(rangeCursor, rangePred); try { @@ -1314,12 +1259,10 @@ rangeCursor.close(); } datasetLifecycleManager.close(resourceName); - index = MetadataPrimaryIndexes.INDEX_DATASET; indexInstance = datasetLifecycleManager.get(resourceName); datasetLifecycleManager.open(resourceName); indexAccessor = indexInstance.createAccessor(NoOpIndexAccessParameters.INSTANCE); rangeCursor = indexAccessor.createSearchCursor(false); - rangePred = null; rangePred = new RangePredicate(null, null, true, true, null, null); indexAccessor.search(rangeCursor, rangePred); try { @@ -1339,14 +1282,13 @@ } datasetLifecycleManager.close(resourceName); } catch (Exception e) { - // Debugging method - e.printStackTrace(); + LOGGER.error(e); } return sb.toString(); } - private <ResultType> void searchIndex(TxnId txnId, IMetadataIndex index, ITupleReference searchKey, - IValueExtractor<ResultType> valueExtractor, List<ResultType> results) + private <T> void searchIndex(TxnId txnId, IMetadataIndex index, ITupleReference searchKey, + IValueExtractor<T> valueExtractor, List<T> results) throws AlgebricksException, HyracksDataException, RemoteException { IBinaryComparatorFactory[] comparatorFactories = index.getKeyBinaryComparatorFactory(); if (index.getFile() == null) { @@ -1374,8 +1316,8 @@ datasetLifecycleManager.close(resourceName); } - private <ResultType> void search(IIndexAccessor indexAccessor, RangePredicate rangePred, List<ResultType> results, - IValueExtractor<ResultType> valueExtractor, TxnId txnId) + private <T> void search(IIndexAccessor indexAccessor, RangePredicate rangePred, List<T> results, + IValueExtractor<T> valueExtractor, TxnId txnId) throws HyracksDataException, RemoteException, AlgebricksException { IIndexCursor rangeCursor = indexAccessor.createSearchCursor(false); try { @@ -1383,7 +1325,7 @@ try { while (rangeCursor.hasNext()) { rangeCursor.next(); - ResultType result = valueExtractor.getValue(txnId, rangeCursor.getTuple()); + T result = valueExtractor.getValue(txnId, rangeCursor.getTuple()); if (result != null) { results.add(result); } @@ -1447,8 +1389,6 @@ return mostRecentDatasetId; } - // TODO: Can use Hyrack's TupleUtils for this, once we switch to a newer - // Hyracks version. public static ITupleReference createTuple(String... fields) { ISerializerDeserializer<AString> stringSerde = SerializerDeserializerProvider.INSTANCE.getSerializerDeserializer(BuiltinType.ASTRING); @@ -1499,8 +1439,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1519,9 +1457,6 @@ ITupleReference datasetTuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.DATASOURCE_ADAPTER_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.DATASOURCE_ADAPTER_DATASET, datasetTuple); - - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -1529,10 +1464,7 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } - } @Override @@ -1570,8 +1502,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1625,8 +1555,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1645,9 +1573,6 @@ ITupleReference datasetTuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.LIBRARY_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.LIBRARY_DATASET, datasetTuple); - - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -1655,10 +1580,7 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } - } @Override @@ -1680,7 +1602,7 @@ } @Override - public int getMostRecentDatasetId() throws AlgebricksException, RemoteException { + public int getMostRecentDatasetId() throws RemoteException { return DatasetIdFactory.getMostRecentDatasetId(); } @@ -1698,8 +1620,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1727,7 +1647,7 @@ FeedConnectionTupleTranslator tupleReaderWriter = new FeedConnectionTupleTranslator(true); ITupleReference feedConnTuple = tupleReaderWriter.getTupleFromMetadataEntity(feedConnection); insertTupleIntoIndex(txnId, MetadataPrimaryIndexes.FEED_CONNECTION_DATASET, feedConnTuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -1773,7 +1693,7 @@ ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.FEED_CONNECTION_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.FEED_CONNECTION_DATASET, tuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } @@ -1792,8 +1712,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1836,8 +1754,6 @@ // lock on the 'nodegroup' dataset. ITupleReference tuple = getTupleToBeDeleted(txnId, MetadataPrimaryIndexes.FEED_DATASET, searchKey); deleteTupleFromIndex(txnId, MetadataPrimaryIndexes.FEED_DATASET, tuple); - // TODO: Change this to be a BTree specific exception, e.g., - // BTreeKeyDoesNotExistException. } catch (HyracksDataException e) { if (e.getComponent().equals(ErrorCode.HYRACKS) && e.getErrorCode() == ErrorCode.UPDATE_OR_DELETE_NON_EXISTENT_KEY) { @@ -1845,8 +1761,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1864,8 +1778,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1900,8 +1812,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -1939,8 +1849,6 @@ } else { throw new AlgebricksException(e); } - } catch (ACIDException e) { - throw new AlgebricksException(e); } } @@ -2021,7 +1929,7 @@ DatasetTupleTranslator tupleReaderWriter = tupleTranslatorProvider.getDatasetTupleTranslator(true); datasetTuple = tupleReaderWriter.getTupleFromMetadataEntity(dataset); insertTupleIntoIndex(txnId, MetadataPrimaryIndexes.DATASET_DATASET, datasetTuple); - } catch (HyracksDataException | ACIDException e) { + } catch (HyracksDataException e) { throw new AlgebricksException(e); } } diff --git a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/api/IMetadataNode.java b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/api/IMetadataNode.java index d5d5733..f837bec 100644 --- a/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/api/IMetadataNode.java +++ b/asterixdb/asterix-metadata/src/main/java/org/apache/asterix/metadata/api/IMetadataNode.java @@ -24,7 +24,6 @@ import java.rmi.RemoteException; import java.util.List; -import org.apache.asterix.common.exceptions.ACIDException; import org.apache.asterix.common.functions.FunctionSignature; import org.apache.asterix.common.transactions.TxnId; import org.apache.asterix.external.indexing.ExternalFile; @@ -57,26 +56,23 @@ /** * Begins a local transaction against the metadata. * - * @throws ACIDException * @throws RemoteException */ - void beginTransaction(TxnId txnId) throws ACIDException, RemoteException; + void beginTransaction(TxnId txnId) throws RemoteException; /** * Commits a local transaction against the metadata. * - * @throws ACIDException * @throws RemoteException */ - void commitTransaction(TxnId txnId) throws ACIDException, RemoteException; + void commitTransaction(TxnId txnId) throws RemoteException; /** * Aborts a local transaction against the metadata. * - * @throws ACIDException * @throws RemoteException */ - void abortTransaction(TxnId txnId) throws ACIDException, RemoteException; + void abortTransaction(TxnId txnId) throws RemoteException; /** * Inserts a new dataverse into the metadata, acquiring local locks on behalf of -- To view, visit https://asterix-gerrit.ics.uci.edu/2882 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ib2d8e101203ab3a441f6f13e5113addf311177b6 Gerrit-PatchSet: 1 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Murtadha Hubail <mhub...@apache.org>