diff --git a/sqlx-core/Cargo.toml b/sqlx-core/Cargo.toml
index 38a4d049..edf8d880 100644
--- a/sqlx-core/Cargo.toml
+++ b/sqlx-core/Cargo.toml
@@ -29,6 +29,8 @@ sqlite = [ "libsqlite3-sys" ]
tls = [ "async-native-tls" ]
runtime-async-std = [ "async-native-tls/runtime-async-std", "async-std" ]
runtime-tokio = [ "async-native-tls/runtime-tokio", "tokio" ]
+# intended for internal benchmarking, do not use
+bench = []
[dependencies]
async-native-tls = { version = "0.3.2", default-features = false, optional = true }
diff --git a/sqlx-core/src/lib.rs b/sqlx-core/src/lib.rs
index 93598a9d..024a1f91 100644
--- a/sqlx-core/src/lib.rs
+++ b/sqlx-core/src/lib.rs
@@ -7,8 +7,12 @@
#![cfg_attr(not(feature = "sqlite"), forbid(unsafe_code))]
#![recursion_limit = "512"]
#![cfg_attr(docsrs, feature(doc_cfg))]
+#![cfg_attr(all(test, feature = "bench"), feature(test))]
// #![warn(missing_docs)]
+#[cfg(all(test, feature = "bench"))]
+extern crate test;
+
// HACK: Allow a feature name the same name as a dependency
#[cfg(feature = "bigdecimal")]
extern crate bigdecimal_ as bigdecimal;
@@ -65,7 +69,3 @@ pub mod postgres;
pub mod sqlite;
pub use error::{Error, Result};
-
-// Named Lifetimes:
-// 'c: connection
-// 'q: query string (and arguments)
diff --git a/sqlx-core/src/postgres/connection.rs b/sqlx-core/src/postgres/connection.rs
index 09e414b3..3c530087 100644
--- a/sqlx-core/src/postgres/connection.rs
+++ b/sqlx-core/src/postgres/connection.rs
@@ -98,7 +98,7 @@ pub struct PgConnection {
// Work buffer for the value ranges of the current row
// This is used as the backing memory for each Row's value indexes
- pub(super) current_row_values: Vec