com.facebook.presto.metadata.Metadata.supportsMetadataDelete()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(1.9k)|赞(0)|评价(0)|浏览(96)

本文整理了Java中com.facebook.presto.metadata.Metadata.supportsMetadataDelete()方法的一些代码示例,展示了Metadata.supportsMetadataDelete()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Metadata.supportsMetadataDelete()方法的具体详情如下:
包路径:com.facebook.presto.metadata.Metadata
类名称:Metadata
方法名:supportsMetadataDelete

Metadata.supportsMetadataDelete介绍

暂无

代码示例

代码示例来源:origin: prestodb/presto

@Override
public PlanNode visitTableFinish(TableFinishNode node, RewriteContext<Void> context)
{
  Optional<DeleteNode> delete = findNode(node.getSource(), DeleteNode.class);
  if (!delete.isPresent()) {
    return context.defaultRewrite(node);
  }
  Optional<TableScanNode> tableScan = findNode(delete.get().getSource(), TableScanNode.class);
  if (!tableScan.isPresent()) {
    return context.defaultRewrite(node);
  }
  TableScanNode tableScanNode = tableScan.get();
  if (!metadata.supportsMetadataDelete(session, tableScanNode.getTable(), tableScanNode.getLayout().get())) {
    return context.defaultRewrite(node);
  }
  return new MetadataDeleteNode(idAllocator.getNextId(), delete.get().getTarget(), Iterables.getOnlyElement(node.getOutputSymbols()), tableScanNode.getLayout().get());
}

代码示例来源:origin: uk.co.nichesolutions.presto/presto-main

@Override
public PlanNode visitTableFinish(TableFinishNode node, RewriteContext<Void> context)
{
  Optional<DeleteNode> delete = findNode(node.getSource(), DeleteNode.class);
  if (!delete.isPresent()) {
    return context.defaultRewrite(node);
  }
  Optional<TableScanNode> tableScan = findNode(delete.get().getSource(), TableScanNode.class);
  if (!tableScan.isPresent()) {
    return context.defaultRewrite(node);
  }
  TableScanNode tableScanNode = tableScan.get();
  if (!metadata.supportsMetadataDelete(session, tableScanNode.getTable(), tableScanNode.getLayout().get())) {
    return context.defaultRewrite(node);
  }
  return new MetadataDeleteNode(idAllocator.getNextId(), delete.get().getTarget(), Iterables.getOnlyElement(node.getOutputSymbols()), tableScanNode.getLayout().get());
}

相关文章