Option 4: Cache.closeAndWait(long timeout, TimeUnit unit) - Closes and waits until it is really closed. Option 5: Cache.close(Runnable closedCalleback) - Runs callback after cache is really close. Option 6: cache.close(); while (!cache.isClosed());
> On Apr 14, 2020, at 2:11 PM, Mark Hanson <mhan...@pivotal.io> wrote: > > Hi All, > > I know that we have discussed this once before, but I think it bears > repeating. We have test code that assumes cache.close is synchronous. It is > not. Not even close. I would like discuss some possible changes. > > Option 1. Call it what it is. Deprecate Cache.close and create a new method > called asyncClose to replace it. Simple and descriptive. > Option 2. Fix cache close so it is synchronous. Some might say that we are > going to break behavior, but I doubt any user relies on the fact that it is > asynchronous. That would be dangerous in and of itself. Obviously, we don’t > want to change behavior, but there have been a number of distributed tests > that have failed for this. If internal to the code devs don’t get it right, > where does that leave users. > Option 3. Status quo. > > What do you think? Are there other options I am missing? > > Thanks, > Mark >