configuration.clustering().hash().numOwners(numOwners);
if (!testRetVals) {
configuration.unsafe().unreliableReturnValues(true);
// we also need to use repeatable read for tests to work when we dont have reliable return values, since the
// tests repeatedly queries changes
configuration.locking().isolationLevel(IsolationLevel.REPEATABLE_READ);
}
if (tx) {
configuration.invocationBatching().enable();
}
if (sync) configuration.clustering().sync().replTimeout(60, TimeUnit.SECONDS);