MB-8861: Release bucket lock before queueing a dirty item

When we queue a dirty item we notify any tap connections that
are streaming items from the vbucket the item was added to. If we
don't release the lock then we can cause a deadlock on the
notifySync and queueLock variables in the tap replicator.

Change-Id: Ia8fc31f5c0ac33cf6a79ef4dd4337f8a6459d6ef
Reviewed-on: http://review.couchbase.org/28319
Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>
MB-8657 Fix the number of workers to be matched for mix loads

This change fixes the issue for a case where the number of
actual worker threads is not matched with the number of readers
and writers given by the user.

Change-Id: I1c6b1284bd4677af715603d01d1829b6611a87f0
Reviewed-on: http://review.couchbase.org/28325
Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>