Fix and expand StreamTest::BackfillOnly
Fix and expand StreamTest::BackfillOnly

In StreamTest::BackfillOnly we currenlty do in order:
1) lock until ActiveStream::lastReadSeqno reaches a certain <value>
2) then, check that ActiveStream::backfillItems::disk == <value>

The order of checks above is wrong as in ActiveStream::backfillReceived
we increment first 'lastReadSeqno' and then 'backfillItems.disk', so we
may fail at step 2) depending on threads execution order.

Given that the purpose of the test is to check that backfill works
properly, then I remove all the checks on stats from the test logic and
I replace them with checks on the status of the ActiveStream::readyQ
when backfill has completed.

Change-Id: Idc1b6e0a55f61824e6251f8afae0f76c6899f14a
Reviewed-on: http://review.couchbase.org/96617
Reviewed-by: Dave Rigby <a09264da4832c7ff1d3bf1608a19f4b870f93750@couchbase.com>
Reviewed-by: Tim Bradgate <f1a26ee65f021cb7d82b83dfb09abf144d3eb64f@couchbase.com>
Tested-by: Build Bot <80754af91bfb6d1073585b046fe0a474ce868509@couchbase.com>

daverigby/kv_engine,daverigby/kv_engine,daverigby/kv_engine,daverigby/kv_engine