@@ -182,6 +182,7 @@ impl RelayerSessionTask {
182
182
recv_result = self . receiver. recv( ) => {
183
183
match recv_result {
184
184
Ok ( transaction) => {
185
+ tracing:: info!( "MRDEBUG relayer session task received: {:?}" , transaction) ;
185
186
if let Err ( e) = relayer_ws_session. send_transaction( & transaction) . await {
186
187
tracing:: error!( "Error publishing transaction to Lazer relayer: {e:?}" ) ;
187
188
bail!( "Failed to publish transaction to Lazer relayer: {e:?}" ) ;
@@ -315,6 +316,7 @@ pub fn lazer_exporter(config: Config, state: Arc<state::State>) -> Vec<JoinHandl
315
316
316
317
#[ allow( clippy:: module_inception) ]
317
318
mod lazer_exporter {
319
+ use solana_pubkey:: Pubkey ;
318
320
use {
319
321
crate :: agent:: {
320
322
services:: lazer_exporter:: {
@@ -404,6 +406,8 @@ mod lazer_exporter {
404
406
) ) ;
405
407
406
408
let mut publish_interval = tokio:: time:: interval ( config. publish_interval_duration ) ;
409
+ // consume immediate tick
410
+ publish_interval. tick ( ) . await ;
407
411
408
412
loop {
409
413
tokio:: select! {
@@ -418,6 +422,7 @@ mod lazer_exporter {
418
422
419
423
// TODO: This read locks and clones local::Store::prices, which may not meet performance needs.
420
424
for ( identifier, price_info) in state. get_all_price_infos( ) . await {
425
+ tracing:: info!( "MRDEBUG identifier: {:?} price_info: {price_info:?}" , Pubkey :: from( identifier. to_bytes( ) ) ) ;
421
426
if let Some ( symbol) = lazer_symbols. get( & identifier) {
422
427
let source_timestamp_micros = price_info. timestamp. and_utc( ) . timestamp_micros( ) ;
423
428
let source_timestamp = MessageField :: some( Timestamp {
@@ -468,7 +473,7 @@ mod lazer_exporter {
468
473
special_fields: Default :: default ( ) ,
469
474
} ;
470
475
match relayer_sender. send( signed_lazer_transaction. clone( ) ) {
471
- Ok ( _) => ( ) ,
476
+ Ok ( _) => tracing :: info! ( "MRDEBUG Sending SLT: {:?}" , signed_lazer_transaction ) ,
472
477
Err ( e) => {
473
478
tracing:: error!( "Error sending transaction to relayer receivers: {e}" ) ;
474
479
}
@@ -496,6 +501,8 @@ mod lazer_exporter {
496
501
sender : mpsc:: Sender < HashMap < pyth_sdk:: Identifier , SymbolResponse > > ,
497
502
) {
498
503
let mut symbol_fetch_interval = tokio:: time:: interval ( fetch_interval_duration) ;
504
+ // consume immediate tick
505
+ symbol_fetch_interval. tick ( ) . await ;
499
506
500
507
loop {
501
508
tokio:: select! {
@@ -538,6 +545,14 @@ mod lazer_exporter {
538
545
. into_iter ( )
539
546
. filter_map ( |symbol| {
540
547
let hermes_id = symbol. hermes_id . clone ( ) ?;
548
+ // XXX hack BTC and ETH to be for pythtest-crosschain
549
+ let hermes_id = if hermes_id == "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43" . to_string ( ) {
550
+ "f9c0172ba10dfa4d19088d94f5bf61d3b54d5bd7483a322a982e1373ee8ea31b" . to_string ( )
551
+ } else if hermes_id == "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace" {
552
+ "ca80ba6dc32e08d06f1aa886011eed1d77c77be9eb761cc10d72b7d0a2fd57a6" . to_string ( )
553
+ } else {
554
+ hermes_id
555
+ } ;
541
556
match pyth_sdk:: Identifier :: from_hex ( hermes_id. clone ( ) ) {
542
557
Ok ( id) => Some ( ( id, symbol) ) ,
543
558
Err ( e) => {
0 commit comments