Skip to content

Commit c9d7cbf

Browse files
authored
controllers/krate/search: Remove obsolete AsyncConnectionWrapper (#10034)
1 parent b01b5e1 commit c9d7cbf

File tree

1 file changed

+8
-13
lines changed

1 file changed

+8
-13
lines changed

src/controllers/krate/search.rs

+8-13
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use axum_extra::json;
66
use axum_extra::response::ErasedJson;
77
use diesel::dsl::{exists, sql, InnerJoinQuerySource, LeftJoinQuerySource};
88
use diesel::sql_types::{Array, Bool, Text};
9-
use diesel_async::async_connection_wrapper::AsyncConnectionWrapper;
109
use diesel_async::AsyncPgConnection;
1110
use diesel_full_text_search::*;
1211
use http::request::Parts;
@@ -49,9 +48,7 @@ use crate::util::RequestUtils;
4948
pub async fn search(app: AppState, req: Parts) -> AppResult<ErasedJson> {
5049
use diesel_async::RunQueryDsl;
5150

52-
let conn = app.db_read().await?;
53-
54-
let conn: &mut AsyncConnectionWrapper<_> = &mut conn.into();
51+
let mut conn = app.db_read().await?;
5552

5653
use diesel::sql_types::Float;
5754
use seek::*;
@@ -95,7 +92,7 @@ pub async fn search(app: AppState, req: Parts) -> AppResult<ErasedJson> {
9592

9693
let mut seek: Option<Seek> = None;
9794
let mut query = filter_params
98-
.make_query(&req, conn)
95+
.make_query(&req, &mut conn)
9996
.await?
10097
.inner_join(crate_downloads::table)
10198
.left_join(recent_crate_downloads::table)
@@ -177,7 +174,7 @@ pub async fn search(app: AppState, req: Parts) -> AppResult<ErasedJson> {
177174
// To avoid breaking existing users, seek-based pagination is only used if an explicit page has
178175
// not been provided. This way clients relying on meta.next_page will use the faster seek-based
179176
// paginations, while client hardcoding pages handling will use the slower offset-based code.
180-
let (total, next_page, prev_page, data, conn) = if !explicit_page && seek.is_some() {
177+
let (total, next_page, prev_page, data) = if !explicit_page && seek.is_some() {
181178
let seek = seek.unwrap();
182179
if let Some(condition) = seek
183180
.after(&pagination.page)?
@@ -192,29 +189,27 @@ pub async fn search(app: AppState, req: Parts) -> AppResult<ErasedJson> {
192189
//
193190
// If this becomes a problem in the future the crates count could be denormalized, at least
194191
// for the filterless happy path.
195-
let count_query = filter_params.make_query(&req, conn).await?.count();
192+
let count_query = filter_params.make_query(&req, &mut conn).await?.count();
196193
let query = query.pages_pagination_with_count_query(pagination, count_query);
197194
let span = info_span!("db.query", message = "SELECT ..., COUNT(*) FROM crates");
198-
let data = query.load::<Record>(conn).instrument(span).await?;
195+
let data = query.load::<Record>(&mut conn).instrument(span).await?;
199196
(
200197
data.total(),
201198
data.next_seek_params(|last| seek.to_payload(last))?
202199
.map(|p| req.query_with_params(p)),
203200
None,
204201
data.into_iter().collect::<Vec<_>>(),
205-
conn,
206202
)
207203
} else {
208-
let count_query = filter_params.make_query(&req, conn).await?.count();
204+
let count_query = filter_params.make_query(&req, &mut conn).await?.count();
209205
let query = query.pages_pagination_with_count_query(pagination, count_query);
210206
let span = info_span!("db.query", message = "SELECT ..., COUNT(*) FROM crates");
211-
let data = query.load::<Record>(conn).instrument(span).await?;
207+
let data = query.load::<Record>(&mut conn).instrument(span).await?;
212208
(
213209
data.total(),
214210
data.next_page_params().map(|p| req.query_with_params(p)),
215211
data.prev_page_params().map(|p| req.query_with_params(p)),
216212
data.into_iter().collect::<Vec<_>>(),
217-
conn,
218213
)
219214
};
220215

@@ -223,7 +218,7 @@ pub async fn search(app: AppState, req: Parts) -> AppResult<ErasedJson> {
223218
let span = info_span!("db.query", message = "SELECT ... FROM versions");
224219
let versions: Vec<Version> = Version::belonging_to(&crates)
225220
.filter(versions::yanked.eq(false))
226-
.load(conn)
221+
.load(&mut conn)
227222
.instrument(span)
228223
.await?;
229224
let versions = versions

0 commit comments

Comments
 (0)