binlog streamer: improved handling of premature EOF

If mysqlbinlog ends without seeing a COMMIT, it inserts a fake ROLLBACK
at the end of the stream.
The binlog streamer sees a ROLLBACK and discards all statements up to
that point, and resumes streaming from the next position, which it
should not do.
It should instead retry the entire transaction.
But, we need to differentiate between real rollbacks and the fake ones.
So, this CL looks for the end of log file marker instead, which comes
before the ROLLBACK.

Also fixed a flakyness in queryservice test.