• Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
Theme Center
  • Theme Center
  • default

  • reset theme
Collapse

tonpie.io

Подпишись на канал фаундера и разработчика экосистемы tonpie

LITE_SERVER_UNKNOWN: не удается вычислить блок с указанной транзакцией: его нет в базе данных

Запланировано Прикреплена Закрыта Перенесена TON Overflow на русском
a-lite-server-unknown-500
3 Сообщения 1 Posters 580 Просмотры
    • Сначала старые
    • Сначала новые
    • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #1

    Привет, я просто пытаюсь получить транзакции по адресу и время от времени получаю эту ошибку (несколько раз я получал успешный ответ)

    запрос:

     curl -X 'GET' 'https://toncenter.com/api/v2/getTransactions?address=EQBnvfmXYL_z7n4WriIEVrBNKVQBolTD5bx-syCe5B5EtqOy' -H 'accept: application/json'
    

    ошибка:

    {"ok":false,"error":"LITE_SERVER_UNKNOWN: cannot compute block with specified transaction: lt not in db","code":500}
    
    1. Почему я периодически получаю эту ошибку? 2. Нужно ли мне использовать свой собственный облегченный узел, чтобы избежать этой ошибки? В чем причина использования собственного облегченного узла?

    Спасибо.


    Оригинал вопроса

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #2

    Я нахожусь в такой же ситуации, кажется, что сервер не хранит полные данные блока. Кроме того, в строке tongo@1.4.1/liteap/client.go 648 есть соответствующая обработка ошибок, но я этого не понял. Приблизительный код выглядит следующим образом: txs, err := c.GetTransactions(ctx, uint32(transactionCount), a, lastLt, ton.Bits256(LastHash)) if err != nil { если e, ok := err.(liteclient.LiteServerErrorC); ok && int32(e.Code) == -400 { // liteserver может хранить неполную историю. в этом случае он возвращает ошибку -400 для разрыва старых транзакций } возвращает nil, err }

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #3

    Вероятно, вам следует добавить параметр "archival=true" в ваш запрос транзакций.

    1 ответ Последний ответ
    0

  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.