net.sf.farrago.fennel.rel
Class FennelWindowRel.Window

java.lang.Object
  extended by net.sf.farrago.fennel.rel.FennelWindowRel.Window
Enclosing class:
FennelWindowRel

public static class FennelWindowRel.Window
extends Object

A Window is a range of input rows, defined by an upper and lower bound. It also contains a list of FennelWindowRel.Partition objects.

A window is either logical or physical. A physical window is measured in terms of row count. A logical window is measured in terms of rows within a certain distance from the current sort key.

For example:


Field Summary
private  String digest
           
(package private)  SqlNode lowerBound
           
 Integer[] orderKeys
           
private  List<FennelWindowRel.Partition> partitionList
          The partitions which make up this window.
(package private)  boolean physical
           
(package private)  SqlNode upperBound
           
 
Constructor Summary
FennelWindowRel.Window(boolean physical, SqlNode lowerBound, SqlNode upperBound, Integer[] ordinals)
           
 
Method Summary
 void computeDigest()
           
private  void computeDigest(StringBuilder buf)
           
 boolean equals(Object obj)
           
 List<FennelWindowRel.Partition> getPartitionList()
           
 FennelWindowRel.Partition lookupOrCreatePartition(Integer[] partitionKeys)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

partitionList

private final List<FennelWindowRel.Partition> partitionList
The partitions which make up this window.


physical

final boolean physical

lowerBound

final SqlNode lowerBound

upperBound

final SqlNode upperBound

orderKeys

public final Integer[] orderKeys

digest

private String digest
Constructor Detail

FennelWindowRel.Window

FennelWindowRel.Window(boolean physical,
                       SqlNode lowerBound,
                       SqlNode upperBound,
                       Integer[] ordinals)
Method Detail

toString

public String toString()
Overrides:
toString in class Object

computeDigest

public void computeDigest()

computeDigest

private void computeDigest(StringBuilder buf)

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

lookupOrCreatePartition

public FennelWindowRel.Partition lookupOrCreatePartition(Integer[] partitionKeys)

getPartitionList

public List<FennelWindowRel.Partition> getPartitionList()