[−][src]Crate deadpool_postgres
Deadpool for PostgreSQL 
Deadpool is a dead simple async pool for connections and objects of any type.
This crate implements a deadpool
manager for tokio-postgres
and also provides a statement cache by wrapping tokio_postgres::Client
and tokio_postgres::Transaction.
Features
| Feature | Description | Extra dependencies | Default |
|---|---|---|---|
config | Enable support for config crate | config, serde/derive | yes |
Example
use deadpool_postgres::{Config, Manager, Pool}; use tokio_postgres::{NoTls}; #[tokio::main] async fn main() { let mut cfg = Config::from_env("PG").unwrap(); let pool = cfg.create_pool(NoTls).unwrap(); for i in 1..10 { let mut client = pool.get().await.unwrap(); let stmt = client.prepare("SELECT 1 + $1").await.unwrap(); let rows = client.query(&stmt, &[&i]).await.unwrap(); let value: i32 = rows[0].get(0); assert_eq!(value, i + 1); } }
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Re-exports
pub use crate::config::Config; |
Modules
| config | This module describes configuration used for |
Structs
| ClientWrapper | A wrapper for |
| Manager | The manager for creating and recyling postgresql connections |
| StatementCache | This structure holds the cached statements and provides access to functions for retrieving the current size and clearing the cache. |
| Transaction | A wrapper for |
Type Definitions
| Client | A type alias for using |
| Pool | A type alias for using |
| PoolError | A type alias for using |