fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond); } else if (Optimizer.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) { fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond); } else { throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy); ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>(); list.add(new CrossBlockOuterFirstDescriptor(true, false)); list.add(new CrossStreamOuterSecondDescriptor(true, false)); this.dataProperties = list; list.add(new CrossBlockOuterSecondDescriptor()); list.add(new CrossStreamOuterFirstDescriptor()); list.add(new CrossStreamOuterSecondDescriptor()); this.dataProperties = list;
fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond); } else if (Optimizer.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) { fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond); } else { throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy); ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>(); list.add(new CrossBlockOuterFirstDescriptor(true, false)); list.add(new CrossStreamOuterSecondDescriptor(true, false)); this.dataProperties = list; list.add(new CrossBlockOuterSecondDescriptor()); list.add(new CrossStreamOuterFirstDescriptor()); list.add(new CrossStreamOuterSecondDescriptor()); this.dataProperties = list;
fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond); } else if (Optimizer.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) { fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond); } else { throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy); ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>(); list.add(new CrossBlockOuterFirstDescriptor(true, false)); list.add(new CrossStreamOuterSecondDescriptor(true, false)); this.dataProperties = list; list.add(new CrossBlockOuterSecondDescriptor()); list.add(new CrossStreamOuterFirstDescriptor()); list.add(new CrossStreamOuterSecondDescriptor()); this.dataProperties = list;
fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond); } else if (Optimizer.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) { fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond); } else { throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy); ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>(); list.add(new CrossBlockOuterFirstDescriptor(true, false)); list.add(new CrossStreamOuterSecondDescriptor(true, false)); this.dataProperties = list; list.add(new CrossBlockOuterSecondDescriptor()); list.add(new CrossStreamOuterFirstDescriptor()); list.add(new CrossStreamOuterSecondDescriptor()); this.dataProperties = list;
fixedDriverStrat = new CrossStreamOuterFirstDescriptor(allowBCfirst, allowBCsecond); } else if (Optimizer.HINT_LOCAL_STRATEGY_NESTEDLOOP_STREAMED_OUTER_SECOND.equals(localStrategy)) { fixedDriverStrat = new CrossStreamOuterSecondDescriptor(allowBCfirst, allowBCsecond); } else { throw new CompilerException("Invalid local strategy hint for cross contract: " + localStrategy); ArrayList<OperatorDescriptorDual> list = new ArrayList<OperatorDescriptorDual>(); list.add(new CrossBlockOuterFirstDescriptor(true, false)); list.add(new CrossStreamOuterSecondDescriptor(true, false)); this.dataProperties = list; list.add(new CrossBlockOuterSecondDescriptor()); list.add(new CrossStreamOuterFirstDescriptor()); list.add(new CrossStreamOuterSecondDescriptor()); this.dataProperties = list;