Системные ошибки¶
Ниже приведен список кодов ошибок блокчейн платформы Waves Enterprise.
0-10 – Swagger/API Specific Errs
¶ Ошибки
уровня
ноды
HTTP
код
Код
уровня
API
Ошибки
уровня
API
Message
Контекст
Условие
Нет
Нет
Transaction is not in blockchain
При запросе транзакции по id
Транзакции нет в блокчейне
400
1
WrongJson
Failed to parse json message
Актуально для запросов через Swagger
403
2
ApiKeyNotValid
Provided API key is not correct
Актуально только для подписания
транзакций на ноде, т.к. при передаче подписанных
транзакций не нужен ключ
В запросе передан
некорректный или
пустой ключ
TooBigArray
400
10
TooBigArrayAllocation
Too big sequences requested
При запросе через Swagger
Запрос содержит слишком много значений
101-111 – TxValidation Errs
Ошибки уровня ноды |
HTTP код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
InvalidSignature(_, _) InvalidRequestSignature |
400 |
101 |
InvalidSignature |
invalid signature |
Cобытие внутри блокчейна при валидации блоков в клиенте не отображается ) |
Некорректный id транзакции Некорректная сигнатура блока в запросе Ошибка отображается в интерфейсе клиента при попытке откатить блокчейн для блока с указанной сигнатурой |
InvalidAddress |
400 |
102 |
InvalidAddress |
invalid address. Логгируется как: 1. Bad public key string lenght. 2. Unable to decode base58: ${ex.getMessage}» 3. «Unable to create public key: ${ex.getMessage}» |
При валидации на ноде любого поля, содержащего адрес, алиас и приватный ключ как отправителя, так и получателя. Если клиентская часть не проверяет валидность адреса |
В запросе передан некорректный адрес, алиас или публичный ключ |
400 |
106 |
InvalidSender |
invalid sender |
При формировании Diff из Executed Contract Transaction |
Если создателем Executed Contract Transaction является не майнер блока |
|
400 |
108 |
InvalidPublicKey |
invalid public key |
При проверке того, является ли переданная строка публичным ключом |
GET /addresses/ publicKey/ {publicKey} |
|
400 |
110 |
InvalidMessage |
invalid message |
При проверке подписи сообщения на ноде. Подпись транзакции не соответ- ствует публичному ключу. |
POST / addresses/ verify/ {address} POST / addresses/ verifyText/ {address} |
|
NegativeAmount(x, of) |
400 |
111 |
NegativeAmount (s»$x of
|
negative amount: $msg |
При создании транзакции, отправки, массовой отправки, передачи в лизинг, эмиссии и дополнитель- ной эмиссии пользователь вводит значение в поле «Сумма» отрицатель- ное число |
Если передано отрицательное значение. В интерфейсе клиента при попытке указать отрицательное число, поле ввода переходит в состояние ошибки и выводится ошибка: «Введите положительное число» |
112 - StateCheckFailed Errs
В данном разделе описана ошибка уровня ноды TransactionValidationError. Ей соответствует HTTP-код
400
и код уровня API112
.
¶ Ошибки уровня API
Message
Контекст
Условие
StateCheckFailed(tx: Transaction, err: String)
State check failed. Reason: $err («error id», «message», tx.json())
Возвращается ошибка 112 StateCheckFailed с вложением,
которое содержит код и описание ошибки
Валидация перед UTX
«Script doesn’t exist and proof doesn’t validate as signature for $pt»
Публичный ключ отправителя не соответствует подписи транзакции
Transactions from non-scripted accounts must have exactly 1 proof
При отправке транзакции с более чем одной подписью на аккаунт без скрипта
${tx.getClass.getSimpleName} transaction has not been activated yet
Если на ноде-валидаторе не включена используемая в транзакции опция
Transaction $tx is already in the state on a height of $txHeight
Если транзакция с таким id уже есть в блокчейне
«Attempt to transfer unavailable funds: Transaction application leads to « +s»negative WEST balance to (at least) temporary negative state,
current balance equals $oldWestBalance, « +s»spends equals $ {spendings.balance}, result is $newWestBalance»)
Если на балансе недостаточно средств для транзакций перевода одному или нескольким
получателям основного токена WEST
В интерфейсе клиента отображается ошибка:
«Не удалось выполнить транзакцию (%Тип транзакции%)
Недостаточно токенов для оплаты комиссии. Пополните баланс и повторите попытку.»
«Attempt to transfer unavailable funds: Transaction application leads to negative asset « + s»“$aid“ balance to (at least) temporary negative state,
current balance is $availableBalance, « + s»spends equals $delta, result is ${availableBalance + delta}»
Если на балансе недостаточно средств для транзакций перевода одному или нескольким
получателям ассета В интерфейсе клиента отображается ошибка:
«Не удалось выполнить операцию (%Тип транзакции%)
Рассчитанной суммы комиссии недостаточно для оплаты транзакции.
Отредактируйте сумму комиссии и повторите попытку.»
s»Fee in ${feeAssetId.fold («WEST»)(_.toString)} for ${tx.builder.classTag} does not exceed minimal value of $minimumFee WEST: $feeAmount»
Комиссия за стандартную транзакцию (без учета скриптов) меньше требуемой
Смотрите также
113-117 - TxValidation Errs
Ошибки уровня ноды |
HTTP код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
OverflowError |
400 |
113 |
OverflowError |
overflow error |
Если сумма транзакции и комиссии превышает допустимое значение: общая сумма в масс- трансфере больше лонга (технически мало вероятно) |
Переполнение long |
NegativeMinFee(x, of) |
400 |
114 |
(s «$x per $of») |
negative fee per: $msg |
Актуально для Sponsorship транзакций |
Ошибка возвращается при валидации транзакции, если передано отрицательное значение |
MissingSenderPrivateKey |
400 |
115 |
MissingSender PrivateKey |
no private key for sender address in wallet or provided password is incorrect |
При попытке подписать транзакцию на ноде (не на клиенте) в хранилище ключей не найден ключ для данного публичного ключа |
Не найден приватный ключ (для подписи), или пароль от ключевой пары неверный. В клиенте отображается сообщение: «В хранилище ключей не найден подходящий приватный ключ, либо пароль от ключевой пары введен неверно |
InvalidName |
400 |
116 |
InvalidName |
invalid name |
Некоррект- ное имя ассета при транзакции |
в issue транзакции длина названия ассета выходит за установленные границы |
117 |
«Trying to revoke role „$role“ from it’s last owner: „$address“» |
Слишком мало участников с заданной ролью осталось в сети |
Смотрите также
199 - CustomValidationError
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
Ошибки уровня ноды |
HTTP код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
301-304 - TxValidation Errs
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
305-307, 309-310, 600-605 - RIDE and Docker Contract Errs
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
606-629, 636 - Privacy, Auth, PKI, Contracts
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
631-635 - License Errs
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
640 - Health check
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
641-643 gRPC specific
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
700-799 Snapshot
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |
800 ForbiddenDuePkiModeError
Ошибки уровня ноды |
HTTP-код |
Код уровня API |
Ошибки уровня API |
Message |
Контекст |
Условие |
---|---|---|---|---|---|---|
node-0 |