1- use diesel:: { ExpressionMethods , JoinOnDsl , OptionalExtension , QueryDsl , RunQueryDsl } ;
1+ use diesel:: { ExpressionMethods , JoinOnDsl , OptionalExtension , QueryDsl } ;
2+ use diesel_async:: RunQueryDsl ;
23use std:: { collections:: HashMap , sync:: Arc } ;
34
45use graph:: {
@@ -67,18 +68,20 @@ impl CopyState {
6768 . get ( shard)
6869 . ok_or_else ( || anyhow ! ( "can not find pool for shard {}" , shard) ) ?;
6970
70- let mut dconn = dpool. get_sync ( ) . await ?;
71+ let mut dconn = dpool. get ( ) . await ?;
7172
7273 let tables = cts:: table
7374 . filter ( cts:: dst. eq ( dst) )
7475 . order_by ( cts:: entity_type)
75- . load :: < CopyTableState > ( & mut dconn) ?;
76+ . load :: < CopyTableState > ( & mut dconn)
77+ . await ?;
7678
7779 let on_sync = on_sync ( & mut dconn, DeploymentId ( dst) ) . await ?;
7880
7981 Ok ( cs:: table
8082 . filter ( cs:: dst. eq ( dst) )
8183 . get_result :: < CopyState > ( & mut dconn)
84+ . await
8285 . optional ( ) ?
8386 . map ( |state| ( state, tables, on_sync) ) )
8487 }
@@ -209,7 +212,7 @@ pub async fn list(pools: HashMap<Shard, ConnectionPool>) -> Result<(), Error> {
209212 use catalog:: deployment_schemas as ds;
210213
211214 let primary = pools. get ( & * PRIMARY_SHARD ) . expect ( "there is a primary pool" ) ;
212- let mut conn = primary. get_sync ( ) . await ?;
215+ let mut conn = primary. get ( ) . await ?;
213216
214217 let copies = ac:: table
215218 . inner_join ( ds:: table. on ( ds:: id. eq ( ac:: dst) ) )
@@ -221,7 +224,8 @@ pub async fn list(pools: HashMap<Shard, ConnectionPool>) -> Result<(), Error> {
221224 ds:: subgraph,
222225 ds:: shard,
223226 ) )
224- . load :: < ( i32 , i32 , Option < UtcDateTime > , UtcDateTime , String , Shard ) > ( & mut conn) ?;
227+ . load :: < ( i32 , i32 , Option < UtcDateTime > , UtcDateTime , String , Shard ) > ( & mut conn)
228+ . await ?;
225229 if copies. is_empty ( ) {
226230 println ! ( "no active copies" ) ;
227231 } else {
@@ -274,18 +278,20 @@ pub async fn status(
274278 let primary = pools
275279 . get ( & * PRIMARY_SHARD )
276280 . ok_or_else ( || anyhow ! ( "can not find deployment with id {}" , dst) ) ?;
277- let mut pconn = primary. get_sync ( ) . await ?;
281+ let mut pconn = primary. get ( ) . await ?;
278282 let dst = dst. locate_unique ( primary) . await ?. id . 0 ;
279283
280284 let ( shard, deployment) = ds:: table
281285 . filter ( ds:: id. eq ( dst) )
282286 . select ( ( ds:: shard, ds:: subgraph) )
283- . get_result :: < ( Shard , String ) > ( & mut pconn) ?;
287+ . get_result :: < ( Shard , String ) > ( & mut pconn)
288+ . await ?;
284289
285290 let ( active, cancelled_at) = ac:: table
286291 . filter ( ac:: dst. eq ( dst) )
287292 . select ( ( ac:: src, ac:: cancelled_at) )
288293 . get_result :: < ( i32 , Option < UtcDateTime > ) > ( & mut pconn)
294+ . await
289295 . optional ( ) ?
290296 . map ( |( _, cancelled_at) | ( true , cancelled_at) )
291297 . unwrap_or ( ( false , None ) ) ;
0 commit comments