Skip to content

Conversation

@bingyanglin
Copy link
Contributor

Description of change

Links to any relevant issues

Part of #8688

How the change has been tested

  • 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

  • Nodes (Validators and Full nodes): Added GetTransactions in the gRPC API for internal usage.

bingyanglin and others added 13 commits November 17, 2025 18:52
- Ported field masking mechanism, including
  - The `field` module
- The `iota-proto-build` crate to generate fields, so we can use
`FieldMaskUtil::validate` to verify the client-requested field paths.
- Change `EventID` to `EventId` to meet `prost`'s naming convention, so
the generated Rust code from `protobuf` can be used without additional
conversion (like change `ID` to `Id`).

Part of #8688

- [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: muXxer <git@muxxer.de>
# Description of change

This PR adds a new transaction filter and a new event filter for gRPC
(not used yet by the API).
It combines the two existing json-rpc filters into one, but also adds
the possibility to filter for transactions that match a certain event
filter. Also, the possibility to chain the filters was added (`Any`,
`All`, `Or`, `And`) similar to the event filters.

## 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
# Description of change

- Initialize the gRPC proto files, which addressed APIs documented in
#8688.
- Note that the design of gRPC request/response in is that we focus on
returning low-level BCS iota-type data, instead of extracting fields
from the iota-type data and put them in response in most cases (to
discuss).

## Links to any relevant issues

Part of #8688

## 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

---------

Co-authored-by: muXxer <git@muxxer.de>
# Description of change

- Upstream range: [v1.46.3, 1.47.1)
- Port commit: 
-
MystenLabs/sui@343906c
-
MystenLabs/sui@1a496a5
-
MystenLabs/sui@aec90b4
-
MystenLabs/sui@24f9ea2
- Description:
  - Avoid std::thread::sleep() in safe_drop_db()
  - Add backoff to safe_drop_db
- Mitigates the race between the destructor and metric threads. Reason:
`rocksdb::DB::Destroy` returns an error immediately if any other
reference is still alive
  - Reworks the 'rest-index' database to:
    - Add support for indexing information about epochs

## Links to any relevant issues

None

## 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

- [x] Nodes (Validators and Full nodes): Add support for indexing
epochs, object type information for transactions, type information for
dynamic fields. Hint: This will trigger re-indexation of the REST
indexes.

---------

Co-authored-by: muXxer <git@muxxer.de>
@bingyanglin bingyanglin self-assigned this Nov 19, 2025
@vercel
Copy link

vercel bot commented Nov 19, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

6 Skipped Deployments
Project Deployment Preview Comments Updated (UTC)
apps-backend Ignored Ignored Nov 19, 2025 1:45pm
apps-ui-kit Ignored Ignored Nov 19, 2025 1:45pm
iota-evm-bridge Ignored Ignored Nov 19, 2025 1:45pm
iota-multisig-toolkit Ignored Ignored Nov 19, 2025 1:45pm
rebased-explorer Ignored Ignored Nov 19, 2025 1:45pm
wallet-dashboard Ignored Ignored Nov 19, 2025 1:45pm

@bingyanglin bingyanglin added the node Issues related to the Core Node team label Nov 19, 2025
@muXxer muXxer force-pushed the feat/grpc-implementation branch 2 times, most recently from f79ae9f to edf9c4c Compare November 20, 2025 13:26
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.

4 participants