This commit is contained in:
cachalots
2026-02-27 15:32:27 +08:00
parent 9877794d1c
commit 5d06d18aa8
2 changed files with 12 additions and 4 deletions

View File

@@ -203,16 +203,22 @@ func ParseTransactionWithHandler(ctx context.Context, versioned VersionedTransac
cuPrice := decimal.Zero
swqosAgent := ""
swqosTips := decimal.Zero
cuLimit := decimal.Zero
for _, instruction := range versioned.Instructions {
program, err := versioned.GetAccount(int(instruction.ProgramIDIndex))
if err != nil {
continue
}
if program.Equals(ComputeBudgetProgram) &&
len(instruction.Data) == 9 &&
instruction.Data[0] == 0x03 {
cuPriceUint64 := binary.LittleEndian.Uint64(instruction.Data[1:9])
cuPrice = formatCUPrice(cuPriceUint64)
len(instruction.Data) == 9 {
if instruction.Data[0] == 0x03 {
cuPriceUint64 := binary.LittleEndian.Uint64(instruction.Data[1:9])
cuPrice = formatCUPrice(cuPriceUint64)
} else if instruction.Data[0] == 0x02 {
cuLimitUint32 := binary.LittleEndian.Uint32(instruction.Data[1:4])
cuLimit = formatCUPrice(uint64(cuLimitUint32))
}
}
if program.Equals(solana.SystemProgramID) &&
len(instruction.Data) == 12 &&
@@ -260,6 +266,7 @@ func ParseTransactionWithHandler(ctx context.Context, versioned VersionedTransac
one.Label = handler.Label
one.Block = versioned.Block
one.CUPrice = cuPrice
one.CULimit = cuLimit
one.SWQoSAgent = swqosAgent
one.SWQoSTips = swqosTips
select {