private List<OperatorDescriptorDual> initializeDataProperties(Partitioner<?> customPartitioner) { Ordering groupOrder1 = null; Ordering groupOrder2 = null; CoGroupOperatorBase<?, ?, ?, ?> cgc = getOperator(); groupOrder1 = cgc.getGroupOrderForInputOne(); groupOrder2 = cgc.getGroupOrderForInputTwo(); if (groupOrder1 != null && groupOrder1.getNumberOfFields() == 0) { groupOrder1 = null; } if (groupOrder2 != null && groupOrder2.getNumberOfFields() == 0) { groupOrder2 = null; } CoGroupDescriptor descr = new CoGroupDescriptor(this.keys1, this.keys2, groupOrder1, groupOrder2); if (customPartitioner != null) { descr.setCustomPartitioner(customPartitioner); } return Collections.<OperatorDescriptorDual>singletonList(descr); } }
return checkEquivalentFieldPositionsInKeyFields( produced1.getPartitioningFields(), produced2.getPartitioningFields()); checkSameOrdering(produced1, produced2, produced1.getPartitioningFields().size()) && produced1.getDataDistribution().equals(produced2.getDataDistribution());
@Override public boolean areCoFulfilled(RequestedLocalProperties requested1, RequestedLocalProperties requested2, LocalProperties produced1, LocalProperties produced2) { int numRelevantFields = this.keys1.size(); return checkSameOrdering(produced1, produced2, numRelevantFields); }
final FieldList keysRight = new FieldList(3, 1); CoGroupDescriptor descr = new CoGroupDescriptor(keysLeft, keysRight); propsRight.setHashPartitioned(keysRight); assertTrue(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); propsRight.setCustomPartitioned(keysRight, part); assertTrue(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); propsRight.setCustomPartitioned(keysRight, part); assertTrue(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); GlobalProperties propsRight = new GlobalProperties(); propsRight.setRangePartitioned(ordering2, dist2); assertTrue(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); GlobalProperties propsRight = new GlobalProperties(); propsRight.setRangePartitioned(ordering2, dist2); assertTrue(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight));
@Override public boolean areCoFulfilled(RequestedLocalProperties requested1, RequestedLocalProperties requested2, LocalProperties produced1, LocalProperties produced2) { int numRelevantFields = this.keys1.size(); return checkSameOrdering(produced1, produced2, numRelevantFields); }
CoGroupDescriptor descr = new CoGroupDescriptor(keysLeft, keysRight); propsRight.setCustomPartitioned(keysRight, part); assertFalse(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); propsRight.setCustomPartitioned(keysRight, part2); assertFalse(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); GlobalProperties propsRight = new GlobalProperties(); propsRight.setRangePartitioned(ordering2, dist2); assertFalse(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); GlobalProperties propsRight = new GlobalProperties(); propsRight.setRangePartitioned(ordering2, dist2); assertFalse(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight)); GlobalProperties propsRight = new GlobalProperties(); propsRight.setRangePartitioned(ordering2, dist4); assertFalse(descr.areCompatible(reqLeft, reqRight, propsLeft, propsRight));
private List<OperatorDescriptorDual> initializeDataProperties(Partitioner<?> customPartitioner) { Ordering groupOrder1 = null; Ordering groupOrder2 = null; CoGroupOperatorBase<?, ?, ?, ?> cgc = getOperator(); groupOrder1 = cgc.getGroupOrderForInputOne(); groupOrder2 = cgc.getGroupOrderForInputTwo(); if (groupOrder1 != null && groupOrder1.getNumberOfFields() == 0) { groupOrder1 = null; } if (groupOrder2 != null && groupOrder2.getNumberOfFields() == 0) { groupOrder2 = null; } CoGroupDescriptor descr = new CoGroupDescriptor(this.keys1, this.keys2, groupOrder1, groupOrder2); if (customPartitioner != null) { descr.setCustomPartitioner(customPartitioner); } return Collections.<OperatorDescriptorDual>singletonList(descr); } }
return checkEquivalentFieldPositionsInKeyFields( produced1.getPartitioningFields(), produced2.getPartitioningFields()); checkSameOrdering(produced1, produced2, produced1.getPartitioningFields().size()) && produced1.getDataDistribution().equals(produced2.getDataDistribution());
@Override public boolean areCoFulfilled(RequestedLocalProperties requested1, RequestedLocalProperties requested2, LocalProperties produced1, LocalProperties produced2) { int numRelevantFields = this.keys1.size(); return checkSameOrdering(produced1, produced2, numRelevantFields); }
private List<OperatorDescriptorDual> initializeDataProperties(Partitioner<?> customPartitioner) { Ordering groupOrder1 = null; Ordering groupOrder2 = null; CoGroupOperatorBase<?, ?, ?, ?> cgc = getOperator(); groupOrder1 = cgc.getGroupOrderForInputOne(); groupOrder2 = cgc.getGroupOrderForInputTwo(); if (groupOrder1 != null && groupOrder1.getNumberOfFields() == 0) { groupOrder1 = null; } if (groupOrder2 != null && groupOrder2.getNumberOfFields() == 0) { groupOrder2 = null; } CoGroupDescriptor descr = new CoGroupDescriptor(this.keys1, this.keys2, groupOrder1, groupOrder2); if (customPartitioner != null) { descr.setCustomPartitioner(customPartitioner); } return Collections.<OperatorDescriptorDual>singletonList(descr); } }
return checkEquivalentFieldPositionsInKeyFields( produced1.getPartitioningFields(), produced2.getPartitioningFields()); checkSameOrdering(produced1, produced2, produced1.getPartitioningFields().size()) && produced1.getDataDistribution().equals(produced2.getDataDistribution());
@Override public boolean areCoFulfilled(RequestedLocalProperties requested1, RequestedLocalProperties requested2, LocalProperties produced1, LocalProperties produced2) { int numRelevantFields = this.keys1.size(); return checkSameOrdering(produced1, produced2, numRelevantFields); }
private List<OperatorDescriptorDual> initializeDataProperties(Partitioner<?> customPartitioner) { Ordering groupOrder1 = null; Ordering groupOrder2 = null; CoGroupOperatorBase<?, ?, ?, ?> cgc = getOperator(); groupOrder1 = cgc.getGroupOrderForInputOne(); groupOrder2 = cgc.getGroupOrderForInputTwo(); if (groupOrder1 != null && groupOrder1.getNumberOfFields() == 0) { groupOrder1 = null; } if (groupOrder2 != null && groupOrder2.getNumberOfFields() == 0) { groupOrder2 = null; } CoGroupDescriptor descr = new CoGroupDescriptor(this.keys1, this.keys2, groupOrder1, groupOrder2); if (customPartitioner != null) { descr.setCustomPartitioner(customPartitioner); } return Collections.<OperatorDescriptorDual>singletonList(descr); } }
return checkEquivalentFieldPositionsInKeyFields( produced1.getPartitioningFields(), produced2.getPartitioningFields()); checkSameOrdering(produced1, produced2, produced1.getPartitioningFields().size()) && produced1.getDataDistribution().equals(produced2.getDataDistribution());
@Override public boolean areCoFulfilled(RequestedLocalProperties requested1, RequestedLocalProperties requested2, LocalProperties produced1, LocalProperties produced2) { int numRelevantFields = this.keys1.size(); return checkSameOrdering(produced1, produced2, numRelevantFields); }
private List<OperatorDescriptorDual> initializeDataProperties(Partitioner<?> customPartitioner) { Ordering groupOrder1 = null; Ordering groupOrder2 = null; CoGroupOperatorBase<?, ?, ?, ?> cgc = getOperator(); groupOrder1 = cgc.getGroupOrderForInputOne(); groupOrder2 = cgc.getGroupOrderForInputTwo(); if (groupOrder1 != null && groupOrder1.getNumberOfFields() == 0) { groupOrder1 = null; } if (groupOrder2 != null && groupOrder2.getNumberOfFields() == 0) { groupOrder2 = null; } CoGroupDescriptor descr = new CoGroupDescriptor(this.keys1, this.keys2, groupOrder1, groupOrder2); if (customPartitioner != null) { descr.setCustomPartitioner(customPartitioner); } return Collections.<OperatorDescriptorDual>singletonList(descr); } }
return checkEquivalentFieldPositionsInKeyFields( produced1.getPartitioningFields(), produced2.getPartitioningFields()); checkSameOrdering(produced1, produced2, produced1.getPartitioningFields().size()) && produced1.getDataDistribution().equals(produced2.getDataDistribution());