Skip to content

upstream(node): Porting node team related upstream changes in range mainnet-1.36.2 to mainnet-1.37.4 #7304

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Jun 11, 2025

Conversation

muXxer
Copy link
Contributor

@muXxer muXxer commented Jun 10, 2025

Description of change

This PR contains a batch of node-team related upstream changes. The changes have been individually reviewed before squash-merging. None of them modify protocol parameters, so a new protocol version is not necessary.

This PR should be rebased on top of develop without squashing as it already contains squashed PRs.

Links to any relevant issues

List of included PRs:

List of included upstream commits:

Type of change

  • Enhancement (a non-breaking change which adds functionality)

How the change has been tested

  • Basic tests (linting, compilation, formatting, unit/integration tests)
  • Patch-specific tests (correctness, functionality coverage)

Release Notes

  • Protocol:
  • Nodes (Validators and Full nodes):
    • compaction: enable periodic compaction of individual SST files by default
  • Indexer:
  • JSON-RPC:
  • GraphQL:
  • CLI:
  • Rust SDK:
  • REST API:

Copy link

vercel bot commented Jun 10, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

4 Skipped Deployments
Name Status Preview Comments Updated (UTC)
apps-backend ⬜️ Ignored (Inspect) Visit Preview Jun 11, 2025 11:48am
apps-ui-kit ⬜️ Ignored (Inspect) Visit Preview Jun 11, 2025 11:48am
rebased-explorer ⬜️ Ignored (Inspect) Visit Preview Jun 11, 2025 11:48am
wallet-dashboard ⬜️ Ignored (Inspect) Visit Preview Jun 11, 2025 11:48am

@iota-ci iota-ci added core-protocol node Issues related to the Core Node team labels Jun 10, 2025
@muXxer muXxer force-pushed the core-node/upstream-changes/mainnet-1.36.2-1.37.4 branch from 768e296 to a5e211e Compare June 11, 2025 07:44
@muXxer muXxer marked this pull request as ready for review June 11, 2025 11:40
@muXxer muXxer requested review from a team as code owners June 11, 2025 11:40
gokhan-simsek-iota and others added 8 commits June 11, 2025 13:40
# Description of change

Upstream range: [v1.36.2, v1.37.4)

Port
MystenLabs/sui@cf2a573
Support system tx in replay


## Links to any relevant issues

Part of #3990

## Type of change

- Enhancement (a non-breaking change which adds functionality)

## How the change has been tested

```
cargo c --all-targets
cargo t -p iota-replay
cargo r -p iota-replay --example make_sandbox_snapshot
```
## Port
[MystenLabs/sui@7c517e7](MystenLabs/sui@7c517e7):
Add system_invariant_violation macro
Upstream range: [1.36.2, 1.37.4) 
### Upstream PR(s): 
- MystenLabs/sui#20105  

## Description 

Introduce a system invariant violation macro.  
We can then set up alerts whenever the counter value changes.  
Used it in one place as an example.
# Description of change

Upstream range: [v1.36.2, v1.37.4)

Port
MystenLabs/sui@5fd33ae
This allows the Sui replay tool to replay transaction's using a local
version of the framework. This can be done by passing the protocol
override version to use as `-1` -- so `replay -tx <tx_digest> -p -1`


## Links to any relevant issues

Part of #3990

## Type of change

- Enhancement (a non-breaking change which adds functionality)
# Description of change

- Upstream range: [v1.36.2, v1.37.4)
- Port the following Sui's commit:
MystenLabs/sui@832da30
- Descriptions from commits
  Don't explicitly remove old jsonrpc index tables as well as remove a
possible panic when reporting rocksdb metrics.
- Notes
- There's no file `crates/iota-core/src/jsonrpc_index.rs`, so the
changes in this file are not ported.

## Links to any relevant issues

Part of #3990 

## How the change has been tested

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [ ] Patch-specific tests (correctness, functionality coverage)
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have checked that new and existing unit tests pass locally with
my changes

### Release Notes

- [ ] Protocol:
- [ ] Nodes (Validators and Full nodes):
- [ ] Indexer:
- [ ] JSON-RPC:
- [ ] GraphQL:
- [ ] CLI:
- [ ] Rust SDK:
- [ ] REST API:
… files by default (#7266)

# Description of change

- Upstream range: [v1.36.2, v1.37.4)
- Port commit:
MystenLabs/sui@65b02e2
- Descriptions from commits
  Enables periodic compaction of individual SST files by default


## Links to any relevant issues

Part of #3990 

## How the change has been tested

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [ ] Patch-specific tests (correctness, functionality coverage)
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have checked that new and existing unit tests pass locally with
my changes

### Release Notes

- [ ] Protocol:
- [ ] Nodes (Validators and Full nodes):
- [ ] Indexer:
- [ ] JSON-RPC:
- [ ] GraphQL:
- [ ] CLI:
- [ ] Rust SDK:
- [ ] REST API:
# Description of change

- Upstream range: [v1.36.2, v1.37.4)
- Port commit:
MystenLabs/sui@16f2683
- Descriptions from commits
Introduce a new payload type into the benchmark tool -
`ExpectedFailurePayload`.

This payload type is configured with some expected failure type
(currently only one implemented - user signature failure - but others
can be added with minimal scaffolding) such that
`payload.make_transaction()` generates a transaction that will fail in
this manner. Note that the failures that this payload type is concerned
with are failures to execute the transaction itself, rather than during
execution by the MoveVM. In other words, it is expected that the failure
mode will not consume gas or produce effects.

Note that for this reason, its failure mode is inverted. It will be
tallied for metrics purposes as an `error` if it succeeds and tallied as
an `expected_error` (which is a success) if it fails.

Also note that transaction responses for this type are handled by
producing a `NextOp::Retry` (with some additional logging/metrics) since
it is functionally equivalent to a retryable error.


## Links to any relevant issues

Part of #3990 

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [ ] Patch-specific tests (correctness, functionality coverage)
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have checked that new and existing unit tests pass locally with
my changes
# Description of change

- Upstream range: [v1.35.4, v1.36.2)
- Port commit:
MystenLabs/sui@6159973
- Descriptions from commits
Factor out the parallel live object indexing, used for initializing the
rest indexes, into more general purpose and reusable logic.

## Links to any relevant issues

Part of #3990 

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [ ] Patch-specific tests (correctness, functionality coverage)
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have checked that new and existing unit tests pass locally with
my changes
…7320)

# Description of change

- Upstream range: [v1.35.4, v1.36.2)
- Port commits:
-
MystenLabs/sui@4ad76b5
-
MystenLabs/sui@814af2a

## Links to any relevant issues

Part of #3990 

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [ ] Patch-specific tests (correctness, functionality coverage)
- [ ] I have added tests that prove my fix is effective or that my
feature works
- [ ] I have checked that new and existing unit tests pass locally with
my changes

---------

Co-authored-by: Bing-Yang Lin <[email protected]>
@muXxer muXxer force-pushed the core-node/upstream-changes/mainnet-1.36.2-1.37.4 branch from 5f5d089 to 05c9424 Compare June 11, 2025 11:40
@muXxer muXxer merged commit 551bcbe into develop Jun 11, 2025
57 of 58 checks passed
@muXxer muXxer deleted the core-node/upstream-changes/mainnet-1.36.2-1.37.4 branch June 11, 2025 15:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core-protocol node Issues related to the Core Node team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants