Class RemoveEmptyDelete

  • All Implemented Interfaces:
    Rule<TableFinishNode>

    public class RemoveEmptyDelete
    extends Object
    implements Rule<TableFinishNode>
    If the predicate for a delete is optimized to false, the target table scan of the delete will be replaced with an empty values node. This type of plan cannot be executed and is meaningless anyway, so we replace the entire thing with a values node.

    Transforms

      - TableFinish
        - Exchange
          - Delete
            - empty Values
     
    into
      - Values (0)