public StashRowIterable(){
  _initialIterator=createStashRowIterator();
  try {
    _initialIterator.hasNext();
    _openIterators.add(_initialIterator);
  }
 catch (  Exception e) {
    try {
      Closeables.close(_initialIterator,true);
    }
 catch (    IOException e2) {
    }
    throw Throwables.propagate(e);
  }
}

public StashRowIterable ( ) { _initialIterator = createStashRowIterator ( ) ; try { _initialIterator . hasNext ( ) ; _openIterators . add ( _initialIterator ) ; } catch ( Exception e ) { try { Closeables . close ( _initialIterator , true ) ; } catch ( IOException e2 ) { } throw Throwables . propagate ( e ) ; } }
in order to fail fast create the initial iterator on instantiation . this way exceptions such as tablenotstashedexception will be thrown immediately and not deferred until the first iteration .
