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 31s ⏱️ +51s
797 tests +6  793 ✅ +7  4 💤 ±0  0 ❌  - 1 
813 runs  +6  809 ✅ +7  4 💤 ±0  0 ❌  - 1 

Results for commit a36fcff. ± 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
@codecov
Copy link

codecov bot commented Nov 28, 2025

Codecov Report

❌ Patch coverage is 96.57534% 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    21484     +586     
  Branches     1777     1827      +50     
==========================================
+ Hits        19954    20518     +564     
- Misses        924      945      +21     
- Partials       20       21       +1     
Flag Coverage Δ
config-service 98.85% <100.00%> (+0.02%) ⬆️
relay 90.89% <91.48%> (-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 November 28, 2025 10:46
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

4 participants