Skip to content

Conversation

@konstantinabl
Copy link
Contributor

@konstantinabl konstantinabl commented Nov 19, 2025

Description

This PR introduces the new experimental feature for nonce_ordering, which aims to reduce WRONG_NONCE errors due to requests being shuffled, because of asynchronous operations in the relay

Related issue(s)

Fixes #4591

Testing Guide

Changes from original design (optional)

N/A

Additional work needed (optional)

N/A

Checklist

  • I've assigned an assignee to this PR and related issue(s) (if applicable)
  • I've assigned a label to this PR and related issue(s) (if applicable)
  • I've assigned a milestone to this PR and related issue(s) (if applicable)
  • I've updated documentation (code comments, README, etc. if applicable)
  • I've done sufficient testing (unit, integration, etc.)

@github-actions
Copy link

github-actions bot commented Nov 19, 2025

Test Results

 20 files  ±0  274 suites  +2   22m 43s ⏱️ + 1m 3s
797 tests +6  793 ✅ +7  4 💤 ±0  0 ❌  - 1 
813 runs  +6  809 ✅ +7  4 💤 ±0  0 ❌  - 1 

Results for commit b6c39a2. ± Comparison against base commit 2e9648a.

♻️ This comment has been updated with latest results.

@konstantinabl konstantinabl changed the title Feat/nonce ordering with locks feat: nonce ordering with locks Nov 28, 2025
@konstantinabl konstantinabl added the enhancement New feature or request label Nov 28, 2025
@konstantinabl konstantinabl self-assigned this Nov 28, 2025
@konstantinabl konstantinabl added this to the 0.74.0 milestone Nov 28, 2025
simzzz and others added 10 commits November 28, 2025 11:54
Signed-off-by: Simeon Nakov <simeon.nakov@limechain.tech>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: nikolay <n.atanasow94@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Simeon Nakov <simeon.nakov@limechain.tech>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Simeon Nakov <simeon.nakov@limechain.tech>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: konstantinabl <konstantina.blajukova@gmail.com>
Co-authored-by: Logan Nguyen <logan.nguyen@swirldslabs.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: nikolay <n.atanasow94@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: nikolay <n.atanasow94@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
@konstantinabl konstantinabl force-pushed the feat/nonce-ordering-with-locks branch from f976f16 to a36fcff Compare November 28, 2025 09:55
@konstantinabl konstantinabl marked this pull request as ready for review November 28, 2025 10:06
@konstantinabl konstantinabl requested review from a team as code owners November 28, 2025 10:06
natanasow
natanasow previously approved these changes Nov 28, 2025
@simzzz simzzz self-requested a review November 28, 2025 10:46
simzzz
simzzz previously approved these changes Nov 28, 2025
quiet-node
quiet-node previously approved these changes Dec 1, 2025
Copy link
Contributor

@quiet-node quiet-node left a comment

Choose a reason for hiding this comment

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

LGTM great work team!

Signed-off-by: Konstantina Blazhukova <konstantina.blajukova@gmail.com>
@konstantinabl konstantinabl dismissed stale reviews from quiet-node, simzzz, and natanasow via b6c39a2 December 2, 2025 12:09
@codecov
Copy link

codecov bot commented Dec 2, 2025

Codecov Report

❌ Patch coverage is 96.56947% with 20 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
.../src/lib/services/lockService/LocalLockStrategy.ts 91.35% 13 Missing and 1 partial ⚠️
.../src/lib/services/lockService/RedisLockStrategy.ts 97.05% 6 Missing ⚠️
@@            Coverage Diff             @@
##             main    #4635      +/-   ##
==========================================
+ Coverage   95.48%   95.50%   +0.02%     
==========================================
  Files         129      134       +5     
  Lines       20898    21483     +585     
  Branches     1777     1828      +51     
==========================================
+ Hits        19954    20517     +563     
- Misses        924      945      +21     
- Partials       20       21       +1     
Flag Coverage Δ
config-service 98.85% <100.00%> (+0.02%) ⬆️
relay 90.89% <91.65%> (-0.03%) ⬇️
server 88.99% <ø> (+0.06%) ⬆️
ws-server 97.93% <ø> (-0.12%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
...ckages/config-service/src/services/globalConfig.ts 100.00% <100.00%> (ø)
packages/relay/src/lib/eth.ts 99.57% <100.00%> (+<0.01%) ⬆️
packages/relay/src/lib/relay.ts 98.63% <100.00%> (-0.01%) ⬇️
...thService/transactionService/TransactionService.ts 99.45% <100.00%> (+0.02%) ⬆️
packages/relay/src/lib/services/index.ts 100.00% <100.00%> (ø)
.../relay/src/lib/services/lockService/LockService.ts 100.00% <100.00%> (ø)
...rc/lib/services/lockService/LockStrategyFactory.ts 100.00% <100.00%> (ø)
packages/relay/src/lib/types/index.ts 100.00% <100.00%> (ø)
packages/relay/src/lib/types/lock.ts 100.00% <100.00%> (ø)
.../src/lib/services/lockService/RedisLockStrategy.ts 97.05% <97.05%> (ø)
... and 1 more

... and 8 files with indirect coverage changes

🚀 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.

@simzzz simzzz self-requested a review December 8, 2025 08:43
@konstantinabl konstantinabl merged commit 990bd22 into main Dec 8, 2025
47 checks passed
@konstantinabl konstantinabl deleted the feat/nonce-ordering-with-locks branch December 8, 2025 09:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[EPIC] Nonce Ordering with Locks

5 participants