mirror of
https://github.com/neondatabase/neon.git
synced 2026-01-15 17:32:56 +00:00
not closing the semaphore requires an additional atomic boolean of state which is used to describe if the permit received is unique or not. this does not however change the problem of progress for the losing/descheduled initializer future. take_and_deinit does become async in this version, because all pending initializers are waited out before actually taking anything. in practice, there should be no-one to await for. commit also adds DEBUG level span, debug and trace level logging.