consistently use limit() - position() for length calculations I htink position() has always been zero but using limit() as size in one place and limit() - position() in other is very confusing.