1. A process comprising: determining whether or not a set of commands sent by a client for execution on a first database session is acceptable to replay based at least in part on whether or not the set of commands satisfies one or more stored criteria; determining that the first database session is not available; in response to determining that the first database session is not available, if the set of commands is acceptable for replay, sending the set of commands for execution on a second database session to rebuild a state on the second database session, wherein the state was exposed to the client on the first database session; wherein the step of sending causes at least part of the set of commands to be executed on the second database session; wherein the process is performed by one or more computing devices.