I'm trying to use the matchmaking service to create a match between two clients. My algorithm is currently this: List the available matches. If one is available, join it. If no matches are available to join, create a match instead. Generally, this logic works as I'd hope. While testing, I noticed that frequently my client would create a match, and then I'd stop the editor to tweak something, and then when I hit play again, my client would join the match that it had created on the previous run! Of course, that match is garbage at this point, since the host has left. I noticed the DestroyMatch call in the NetworkMatch component, so I tried having the host call that when quitting the app or backing out of the matchmaking process. However, I STILL have the same problem where my client will join matches that it had just abandoned, despite calling DestroyMatch and getting a success callback. So, why is it possible to do this? It seems like a big problem in production if any created match where the host has backed out essentially leaves a "zombie match" in the system for some unfortunate client to join. Am I not managing the lifecycle of a matchmaker match properly? Is there any way, before joining a game, for me to detect that this will be a problem and NOT join it appropriately?