@@ -394,7 +394,12 @@ where
394
394
395
395
async fn process_parse_msg ( & mut self , msg : FeParseMessage ) -> PsqlResult < ( ) > {
396
396
let sql = cstr_to_str ( & msg. sql_bytes ) . unwrap ( ) ;
397
- tracing:: trace!( "(extended query)parse query: {}" , sql) ;
397
+ let statement_name = cstr_to_str ( & msg. statement_name ) . unwrap ( ) . to_string ( ) ;
398
+ tracing:: trace!(
399
+ "(extended query)parse query: {}, statement name: {}" ,
400
+ sql,
401
+ statement_name
402
+ ) ;
398
403
399
404
let is_query_sql = {
400
405
let stmts = Parser :: parse_sql ( sql)
@@ -407,8 +412,12 @@ where
407
412
) ) ;
408
413
}
409
414
410
- StatementType :: infer_from_statement ( & stmts[ 0 ] )
411
- . map_or ( false , |stmt_type| stmt_type. is_query ( ) )
415
+ if stmts. is_empty ( ) {
416
+ false
417
+ } else {
418
+ StatementType :: infer_from_statement ( & stmts[ 0 ] )
419
+ . map_or ( false , |stmt_type| stmt_type. is_query ( ) )
420
+ }
412
421
} ;
413
422
414
423
let prepared_statement = PreparedStatement :: parse_statement ( sql. to_string ( ) , msg. type_ids ) ?;
@@ -426,12 +435,7 @@ where
426
435
vec ! [ ]
427
436
} ;
428
437
429
- let statement = PgStatement :: new (
430
- cstr_to_str ( & msg. statement_name ) . unwrap ( ) . to_string ( ) ,
431
- prepared_statement,
432
- fields,
433
- is_query_sql,
434
- ) ;
438
+ let statement = PgStatement :: new ( statement_name, prepared_statement, fields, is_query_sql) ;
435
439
436
440
let name = statement. name ( ) ;
437
441
if name. is_empty ( ) {
@@ -445,11 +449,12 @@ where
445
449
446
450
fn process_bind_msg ( & mut self , msg : FeBindMessage ) -> PsqlResult < ( ) > {
447
451
let statement_name = cstr_to_str ( & msg. statement_name ) . unwrap ( ) . to_string ( ) ;
452
+ let portal_name = cstr_to_str ( & msg. portal_name ) . unwrap ( ) . to_string ( ) ;
448
453
// 1. Get statement.
449
454
trace ! (
450
455
target: "pgwire_query_log" ,
451
- "(extended query)bind: get statement name: {}" ,
452
- & statement_name
456
+ "(extended query)bind: statement name: {}, portal name: {}" ,
457
+ & statement_name, & portal_name
453
458
) ;
454
459
let statement = if statement_name. is_empty ( ) {
455
460
self . unnamed_statement
@@ -473,7 +478,6 @@ where
473
478
. try_collect ( ) ?;
474
479
475
480
// 2. Instance the statement to get the portal.
476
- let portal_name = cstr_to_str ( & msg. portal_name ) . unwrap ( ) . to_string ( ) ;
477
481
let portal = statement. instance (
478
482
portal_name. clone ( ) ,
479
483
& msg. params ,
@@ -505,7 +509,7 @@ where
505
509
. ok_or_else ( PsqlError :: no_portal) ?
506
510
} ;
507
511
508
- tracing:: trace!( target: "pgwire_query_log" , "(extended query)execute query: {}" , portal. query_string( ) ) ;
512
+ tracing:: trace!( target: "pgwire_query_log" , "(extended query)execute query: {}, portal name: {} " , portal. query_string( ) , portal_name ) ;
509
513
510
514
// 2. Execute instance statement using portal.
511
515
let session = self . session . clone ( ) . unwrap ( ) ;
0 commit comments