@@ -214,6 +214,11 @@ func (s *transactionServer) Swap(streamer transactionpb.Transaction_SwapServer)
214214 // Section: Transaction construction
215215 //
216216
217+ computeUnitLimit , _ := compute_budget .DecompileSetComputeUnitLimitIxnData (jupiterSwapIxns .ComputeBudgetInstructions [0 ].Data )
218+
219+ computeUnitPrice , _ := compute_budget .DecompileSetComputeUnitPriceIxnData (jupiterSwapIxns .ComputeBudgetInstructions [1 ].Data )
220+ computeUnitPrice = uint64 (s .conf .swapPriorityFeeMultiple .Get (ctx ) * float64 (computeUnitPrice ))
221+
217222 swapNonce , err := common .NewRandomAccount ()
218223 if err != nil {
219224 log .WithError (err ).Warn ("failure generating swap nonce" )
@@ -272,11 +277,14 @@ func (s *transactionServer) Swap(streamer transactionpb.Transaction_SwapServer)
272277 },
273278 ).ToLegacyInstruction ()
274279
275- var ixns []solana.Instruction
276- ixns = append (ixns , jupiterSwapIxns .ComputeBudgetInstructions ... )
277- ixns = append (ixns , preSwapIxn , jupiterSwapIxns .SwapInstruction , postSwapIxn )
278-
279- txn := solana .NewTransaction (s .swapSubsidizer .PublicKey ().ToBytes (), ixns ... )
280+ txn := solana .NewTransaction (
281+ s .swapSubsidizer .PublicKey ().ToBytes (),
282+ compute_budget .SetComputeUnitLimit (computeUnitLimit ),
283+ compute_budget .SetComputeUnitPrice (computeUnitPrice ),
284+ preSwapIxn ,
285+ jupiterSwapIxns .SwapInstruction ,
286+ postSwapIxn ,
287+ )
280288
281289 blockhash , err := s .data .GetBlockchainLatestBlockhash (ctx )
282290 if err != nil {
@@ -289,11 +297,6 @@ func (s *transactionServer) Swap(streamer transactionpb.Transaction_SwapServer)
289297 // Section: Server parameters
290298 //
291299
292- computeUnitLimit , _ := compute_budget .DecompileSetComputeUnitLimitIxnData (jupiterSwapIxns .ComputeBudgetInstructions [0 ].Data )
293-
294- computeUnitPrice , _ := compute_budget .DecompileSetComputeUnitPriceIxnData (jupiterSwapIxns .ComputeBudgetInstructions [1 ].Data )
295- computeUnitPrice = uint64 (s .conf .swapPriorityFeeMultiple .Get (ctx ) * float64 (computeUnitPrice ))
296-
297300 var protoSwapIxnAccounts []* commonpb.InstructionAccount
298301 for _ , ixnAccount := range jupiterSwapIxns .SwapInstruction .Accounts {
299302 protoSwapIxnAccounts = append (protoSwapIxnAccounts , & commonpb.InstructionAccount {
0 commit comments