sui_bridge_indexer/
postgres_manager.rs

1// Copyright (c) Mysten Labs, Inc.
2// SPDX-License-Identifier: Apache-2.0
3
4use diesel_async::AsyncPgConnection;
5use diesel_async::pooled_connection::AsyncDieselConnectionManager;
6use diesel_async::pooled_connection::bb8::Pool;
7
8pub(crate) type PgPool = Pool<AsyncPgConnection>;
9
10pub async fn get_connection_pool(database_url: String) -> PgPool {
11    let manager = AsyncDieselConnectionManager::<AsyncPgConnection>::new(database_url);
12
13    Pool::builder()
14        .test_on_check_out(true)
15        .build(manager)
16        .await
17        .expect("Could not build Postgres DB connection pool")
18}