Skip to content

getShards returns 500 "Wrong constructor found" for valid masterchain seqno #19

Description

@lee20260601

Calling GET /api/v2/getShards?seqno=<valid_masterchain_seqno> consistently
returns HTTP 500 with error "INTERNAL: get last block failed Wrong constructor
found(during last block synchronization)" for any valid, already-finalized
masterchain seqno.

Steps to reproduce:

  1. curl http://localhost:8081/api/v2/getMasterchainInfo (get current seqno, e.g. 84314454)
  2. curl "http://localhost:8081/api/v2/getShards?seqno=84314454"
    -> 500 error

Tested across multiple seqnos (spanning 450+ blocks), all fail with the same error.
getMasterchainInfo and getConsensusBlock work correctly on the same deployment,
confirming liteserver connectivity is healthy.

The equivalent endpoint on the Python version (toncenter/ton-http-api) using
the same mainnet.json liteserver config, GET /shards?seqno=84314400, returns
correct data — ruling out a liteserver/network issue.

Environment:

  • Image: toncenter/ton-http-api-cpp:v2.1.6
  • config: default config_vars.yaml, tonlib_config_path pointed to standard mainnet global config

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions