Skip to content

Latest commit

 

History

History
206 lines (157 loc) · 8.14 KB

CHANGELOG.md

File metadata and controls

206 lines (157 loc) · 8.14 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Supported Nearcore Version

  • nearcore v2.4.0
  • rust v1.82.0

What's Changed

  • Corrected state size calculation logic.
  • Integrated cargo_pkg_version metric to reflect the current server version.
  • Delete unnecessary debug logs about update blocks by finalities
  • Support new method EXPERIMENTAL_congestion_level

Supported Nearcore Version

  • nearcore v2.3.1
  • rust v1.81.0

Supported Nearcore Version

  • nearcore v2.3.0
  • rust v1.81.0

What's Changed

  • Corrected state size calculation logic.
  • Integrated cargo_pkg_version metric to reflect the current server version.
  • Delete unnecessary debug logs about update blocks by finalities

Supported Nearcore Version

  • nearcore v2.3.0
  • rust v1.81.0

What's Changed

  • Corrected state size calculation logic.
  • Integrated cargo_pkg_version metric to reflect the current server version.
  • Delete unnecessary debug logs about update blocks by finalities

Supported Nearcore Version

  • nearcore v2.3.0
  • rust v1.81.0

What's Changed

  • Improved bulk insertion of state_changes, reducing database requests from hundreds to a maximum of 7 per block.
  • Configuration improvement. Create default config.toml on start application to loaded parameters from the environment variables.
  • Fix to fetch state by pages (view_state_paginated).
  • Change logic to get shard_layout for indexers. Main idea to avoid request protocol_config via RPC, protocol_config could be changed with new nearcore release and we should support old and new versions of protocol_config.

BREAKING CHANGES

Please, see the PostgreSQL & ShardLayout Pull Request for details. This is a completely new version of the ReadRPC with a new data storage layout and a new data storage engine. The main changes are:

  • Migrate from ScyllaDB to PostgreSQL for storing the data. We adopted the ShardLayout from the nearcore and split the data to separate PostgreSQL databases for each shard.
  • Changed the way we store TransactionDetails (JSON blobs again, but it might change soon)

All the work in this release allowed us to increase the performance of the ReadRPC and make it more reliable. We are still working on the performance improvements and will continue to work on the ReadRPC to make it even better.

Supported Nearcore Version (not changed)

  • nearcore v2.2.1
  • rust v1.79.0

Supported Nearcore Version

  • nearcore v2.2.1
  • rust v1.79.0

Supported Nearcore Version

  • nearcore v2.2.0
  • rust v1.79.0

Supported Nearcore Version

  • nearcore v2.1.1
  • rust v1.79.0

What's Changed

  • Fix docker build

Supported Nearcore Version

  • nearcore v2.1.1
  • rust v1.79.0

What's Changed

  • Update nearcore to v2.1.1
  • Update rust version to v1.79.0

Supported Nearcore Version

  • nearcore v2.0.0
  • rust v1.78.0

What's Changed

  • Update nearcore to v2.0.0
  • Update rust version to v1.78.0
  • Fixed transaction borsh deserialization error

Supported Nearcore Version

  • nearcore v1.40.0
  • rust v1.77.0

What's Changed

  • Change main data source for transaction_details from database to the object storage (GCS Bucket)
    • Add tx-details-storage library to handle the GCS communication
    • Update rpc-server to read from the GCS Bucket when transaction is requested
    • Keep the database as a backup data source for the migration period
    • Add metric legacy_database_tx_details to track the number of requests to the database to monitor the transition progress (expected to decrease over time to zero)
    • Extend the number of save attempts to ensure the transaction is saved to the GCS Bucket and is deserializable correctly
  • Refactor tx-indexer to store the transaction details in the GCS Bucket
    • Still storing ExecutionOutcome and Receipt in the database

Supported Nearcore Version

  • nearcore v1.40.0
  • rust v1.77.0

Supported Nearcore Version

  • nearcore v1.39.1
  • rust v1.77.0

What's Changed

  • Refactoring, extending and improving the metrics
  • Refactoring and improving query.call_function
  • Added view_receipt_record rpc endpoint

Supported Nearcore Version

  • nearcore v1.39.1
  • rust v1.77.0

Supported Nearcore Version

  • nearcore v1.39.1
  • rust v1.76.0

Supported Nearcore Version

  • nearcore v1.39.0
  • rust v1.76.0

Supported Nearcore Version

  • nearcore v1.38.0
  • rust v1.76.0

What's Changed

  • Fix transactions request parser
  • Fix tx request returns "Invalid params" to a totally valid request
  • Fix Dockerfile for read-rpc server
  • Fix proxy broadcast-tx-commit
  • Improvement logs for shadow_compare_results_handler
  • Extending and improving optimistic handler
  • Add waiting until node will be fully synced
  • Added RUST_LOG=info as the default directive to enhance visibility and provide informative logs for better troubleshooting and monitoring.
  • Included additional informational logs at the start of the near-state-indexer process, providing deeper insights into its functionality and progress.
  • Implemented a handler to check the regularity of optimistic block updates.
  • If updates are irregular, the system initiates an update task to synchronize the final block from the lake, ensuring data consistency and integrity.

Supported Nearcore Version

  • nearcore v.38.0-rc.2
  • rust v1.76.0

Added

  • Added support for SyncCheckpoint in the block method for better block handling and synchronization.
  • Added support for OptimisticBlock in the block method for better block handling and synchronization.
  • Added ARCHIVAL_PROXY_QUERY_VIEW_STATE_WITH_INCLUDE_PROOFS metric to track the number of archival proxy requests for view state with include proofs.
  • Added TOTAL_REQUESTS_COUNTER metric to counting total rpc requests.
  • Added GET /health for the healthcheck of rpc-server.
  • Implemented the status method to accommodate near_primitives::views::StatusResponse.
  • Implemented the health method. Health includes the info about the syncing state of the node of rpc-server.
  • Implemented near-state-indexer to index the state of the nearcore node.

Changed

  • Enhanced the tx method to show in-progress transaction status, avoiding UNKNOWN_TRANSACTION responses and providing more accurate feedback.
  • Reverted the logic behind the block_height and block_hash parameters in the query method to match the behavior of the nearcore JSON-RPC API.

Removed

  • Dropped the SYNC_CHECKPOINT_REQUESTS_TOTAL metric for redundancy.
  • Removed in-memory cache for tx-indexer to optimize resource usage and streamline the process.
  • nearcore v1.36.0
  • rust v1.73.0

Release Page: https://github.com/near/read-rpc/releases/tag/v0.1.0