public void testPutFromNonOwner() throws Exception {
String key = "k4", value = "value4";
for (Cache<Object, String> c : caches) assert c.isEmpty();
Cache<Object, String> nonOwner = getFirstNonOwner(key);
CacheStore nonOwnerStore = TestingUtil.extractComponent(nonOwner, CacheLoaderManager.class).getCacheStore();
assert !nonOwnerStore.containsKey(key);
Object retval = nonOwner.put(key, value);
asyncWait(key, PutKeyValueCommand.class, getSecondNonOwner(key));
Cache[] owners = getOwners(key);
CacheStore store = TestingUtil.extractComponent(owners[0], CacheLoaderManager.class).getCacheStore();