Skip to content

Conversation

@peterbroadhurst
Copy link
Contributor

Proposed changes

Add eyecatcher logs such as the following, that can be used as anchors for diagnosing transaction paths.
Particularly for blockchain_invoke transactions, it is important to see when the transaction came in, and correlate that with the connector for the plugin. This means correlating the idempotencyKey (app identifier), transactionId (overall FireFly transaction ID) and operationId (unique ID used with the blockchain connector).

[2025-12-11T17:26:24.742Z]  INFO FF_NEW_TRANSACTION_OPERATION: namespace=default plugin=ethereum type=blockchain_invoke operationId=02cc00a1-ad7f-4b53-b6cd-cbe22614bd4d transactionId=82061ac0-2364-4f03-8d1b-dbe9a0e4b865 idempotencyKey='' batch= dbtx=BnBpmsR1 httpreq=szeEliLI pid=1 req=DAkLlQnQ
[2025-12-11T17:26:24.750Z]  INFO FF_OPERATION_UPDATE: namespace=default plugin=ethereum type=blockchain_invoke status=Pending operationId=02cc00a1-ad7f-4b53-b6cd-cbe22614bd4d transactionId=82061ac0-2364-4f03-8d1b-dbe9a0e4b865 idempotencyKey='' dbtx=jsMMbdLq ns=default pid=1
[2025-12-11T17:26:24.881Z]  INFO FF_OPERATION_UPDATE: namespace=default plugin=ethereum type=blockchain_invoke status=Succeeded operationId=02cc00a1-ad7f-4b53-b6cd-cbe22614bd4d transactionId=82061ac0-2364-4f03-8d1b-dbe9a0e4b865 idempotencyKey='' dbtx=rITEYeqS ns=default pid=1
  • Bug fix
  • New feature added
  • Documentation Update

  • I have read the contributing guidelines.
  • [ x I have performed a self-review of my own code or work.
  • I have commented my code, particularly in hard-to-understand areas.
  • My changes generates no new warnings.
  • I have added tests that prove my fix is effective or that my feature works.
  • My changes have sufficient code coverage (unit, integration, e2e tests).

Signed-off-by: Peter Broadhurst <peter.broadhurst@kaleido.io>
Signed-off-by: Peter Broadhurst <peter.broadhurst@kaleido.io>
@peterbroadhurst peterbroadhurst requested a review from a team as a code owner December 11, 2025 17:26
@codecov
Copy link

codecov bot commented Dec 11, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.96%. Comparing base (de1f917) to head (b5e0379).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1711   +/-   ##
=======================================
  Coverage   99.96%   99.96%           
=======================================
  Files         342      342           
  Lines       25015    25022    +7     
=======================================
+ Hits        25007    25014    +7     
  Misses          4        4           
  Partials        4        4           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

EnriqueL8
EnriqueL8 previously approved these changes Dec 11, 2025
Copy link
Contributor

@EnriqueL8 EnriqueL8 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @peterbroadhurst - this is useful!

if op.Transaction.Equals(candidate.ID) {
tx = candidate
txnIDStr = candidate.ID.String()
idempotencyKeyStr = string(candidate.IdempotencyKey)
Copy link
Contributor

@EnriqueL8 EnriqueL8 Dec 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW incase anyone else looks at this, IdempotencyKey is not a pointer just a string type so safe to cast to string

@EnriqueL8
Copy link
Contributor

E2E has failed because the test WS disconnect from FireFly second instance and didn't receive the token_pool_confirmed event

2025-12-11T17:48:56.5583214Z Websocket 127.0.0.1:5001 closing, error: websocket: close 1006 (abnormal closure): unexpected EOF

Created issue for it #1712

Signed-off-by: Enrique Lacal <enrique.lacal@kaleido.io>
@EnriqueL8
Copy link
Contributor

E2E was failing due to the following which is explained by candidate being nil so pushed a commit with fix

firefly_e2e_firefly_core_1  | [2025-12-11T18:03:49.935Z]  WARN SQL! transaction rollback dbtx=yt6AHZ1u ns=default pid=1
firefly_e2e_firefly_core_1  | panic: runtime error: invalid memory address or nil pointer dereference
firefly_e2e_firefly_core_1  | [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xc6a10a]
firefly_e2e_firefly_core_1  | 
firefly_e2e_firefly_core_1  | goroutine 626 [running]:
firefly_e2e_firefly_core_1  | github.com/hyperledger/firefly/internal/operations.(*operationUpdater).doUpdate(0xc0001fe3c0, {0x13c7fd8, 0xc000e9c1e0}, 0xc00047a480, {0xc000122ea8, 0x1, 0x0?}, {0xc000122ec8, 0x1, 0x1})
firefly_e2e_firefly_core_1  | 	/firefly/internal/operations/operation_updater.go:318 +0x6ca
firefly_e2e_firefly_core_1  | github.com/hyperledger/firefly/internal/operations.(*operationUpdater).doBatchUpdate(0xc0001fe3c0, {0x13c7fd8, 0xc000e9c1e0}, {0xc000122e80, 0x1, 0x0?})

@EnriqueL8 EnriqueL8 merged commit df3fe81 into main Dec 12, 2025
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants