That's normal if your iterator is used on a ui page. In this case the reset method sets the iterator to the firts row and not before the first row (which is normal for other iterators). So when you execute next() you essential skip the first row.
To solve this you can either use an ieterator which is not used on a ui page or rewrite your loop to
Row row = rsiter.first();
while (row != null)
// work with the row
row = rsiter.next();