diff --git a/Sources/ClickHouseVapor/Application+ClickHouseNIO.swift b/Sources/ClickHouseVapor/Application+ClickHouseNIO.swift index f7f4f72..b6805d7 100644 --- a/Sources/ClickHouseVapor/Application+ClickHouseNIO.swift +++ b/Sources/ClickHouseVapor/Application+ClickHouseNIO.swift @@ -87,12 +87,13 @@ extension Application { } internal var pool: EventLoopGroupConnectionPool { + let lock = self.application.locks.lock(for: PoolKey.self) + lock.lock() + defer { lock.unlock() } + if let existing = self.application.storage[PoolKey.self] { return existing } else { - let lock = self.application.locks.lock(for: PoolKey.self) - lock.lock() - defer { lock.unlock() } guard let configuration = self.configuration else { fatalError("ClickHouse not configured. Use app.clickHouse.configuration = ...") }