@Override public <T extends IExtensionMetadataEntity> void addEntity(MetadataTransactionContext mdTxnCtx, T entity) throws AlgebricksException { try { metadataNode.addEntity(mdTxnCtx.getTxnId(), entity); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } }
@Override public void addExternalFile(MetadataTransactionContext ctx, ExternalFile externalFile) throws AlgebricksException { try { metadataNode.addExternalFile(ctx.getTxnId(), externalFile); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } }
@Override public void addDatatype(MetadataTransactionContext ctx, Datatype datatype) throws AlgebricksException { try { metadataNode.addDatatype(ctx.getTxnId(), datatype); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } try { ctx.addDatatype( metadataNode.getDatatype(ctx.getTxnId(), datatype.getDataverseName(), datatype.getDatatypeName())); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } }
@Override public void addDataset(MetadataTransactionContext ctx, Dataset dataset) throws AlgebricksException { // add dataset into metadataNode try { metadataNode.addDataset(ctx.getTxnId(), dataset); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } // reflect the dataset into the cache ctx.addDataset(dataset); }
@Override public void addFeed(MetadataTransactionContext ctx, Feed feed) throws AlgebricksException { try { metadataNode.addFeed(ctx.getTxnId(), feed); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } ctx.addFeed(feed); }
@Override public void addDataverse(MetadataTransactionContext ctx, Dataverse dataverse) throws AlgebricksException { try { metadataNode.addDataverse(ctx.getTxnId(), dataverse); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } ctx.addDataverse(dataverse); }
@Override public void addCompactionPolicy(MetadataTransactionContext mdTxnCtx, CompactionPolicy compactionPolicy) throws AlgebricksException { try { metadataNode.addCompactionPolicy(mdTxnCtx.getTxnId(), compactionPolicy); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } mdTxnCtx.addCompactionPolicy(compactionPolicy); }
@Override public void addFeedConnection(MetadataTransactionContext ctx, FeedConnection feedConnection) throws AlgebricksException { try { metadataNode.addFeedConnection(ctx.getTxnId(), feedConnection); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } ctx.addFeedConnection(feedConnection); }
@SuppressWarnings("squid:S1181") @Override public void abortTransaction(MetadataTransactionContext ctx) { try { metadataNode.abortTransaction(ctx.getTxnId()); } catch (Throwable th) { // Metadata node should abort all transactions on re-joining the new CC LOGGER.fatal("Failure aborting a metadata transaction", th); ExitUtil.halt(ExitUtil.EC_FAILED_TO_ABORT_METADATA_TXN); } }
@Override public void addAdapter(MetadataTransactionContext mdTxnCtx, DatasourceAdapter adapter) throws AlgebricksException { try { metadataNode.addAdapter(mdTxnCtx.getTxnId(), adapter); } catch (RemoteException e) { throw new MetadataException(ErrorCode.REMOTE_EXCEPTION_WHEN_CALLING_METADATA_NODE, e); } mdTxnCtx.addAdapter(adapter); }