Транзакция не добыта, но создан номер блока

Когда я отправляю транзакцию, она генерирует хэш-номер, но номер индекса транзакции не увеличивается, как показано ниже. Может кто-нибудь объяснить?

eth.getTransaction("0x46542d25d044f73cff4c19081284ac84623de6bcaceb1aadd0545d21cd44a056")
{
  blockHash: "0x71d79df1f93332f4cf3b239231a487ec61f4f0385447520078e51c56913fa091",
  blockNumber: 2,
  from: "0xed9d02e382b34818e88b88a309c7fe71e65f419d",
  gas: 4700000,
  gasPrice: 0,
  hash: "0x46542d25d044f73cff4c19081284ac84623de6bcaceb1aadd0545d21cd44a056",
  input: "0x4a78245865ad5c90515ab305fbdb5959abd40a8fba263eb4a30497a4c354b9a77a649c11d3e2f8cd305468fcfef474c001b7d7d5fa3fa7f482a64a3513cc5923",
  nonce: 1,
  r: "0x47e083e2d701c89eb0919733fde0163d5bdf878e46f8aa0bee300214d00b6cfd",
  s: "0x2a60267c3f549437a0fb7f474f5e00d9a2afa019cfb5b9a800875948cf14e4d7",
  to: null,
  transactionIndex: 0,
  v: "0x25",
  value: 0
}
Расскажите больше о том, как вы запускаете блокчейн (какой клиент: ganache, geth, parity, ..), как вы транслировали транзакцию, как узнать, что она не была добыта.

Ответы (2)

TransactionIndex — это позиция транзакции в блоке, в котором она была добыта. Это не глобальный индекс.

Например, если у вас есть транзакции T1, T2 в блоке 1; транзакции Т3, Т4, Т5 в блоке 2 и Т6 в блоке 3.

  • T1 имеет transactionIndex 0 в блоке 1, T2 имеет transactionIndex 1 в блоке 1.
  • T3 имеет индекс транзакции 0 в блоке 2, .. T5 имеет индекс транзакции 2 в блоке 2.
  • T6 имеет transactionIndex 0 в блоке 3

Наличие blockNumberи blockHashв ответе означает, что транзакция была добыта и включена в этот конкретный блок.

Значение tonull означает, что ваша транзакция пыталась создать контракт.

Возможно ли, что ваша транзакция вызвала ошибку, и поэтому вы думаете, что она не была добыта?

Как выглядит квитанция? Попробуйте запустить

eth.getTransactionReceipt("0x46542d25d044f73cff4c19081284ac84623de6bcaceb1aadd0545d21cd44a056")
eth.getTransactionReceipt("0x46542d25d044f73cff4c19081284ac84623de6bcaceb1aadd0545d21cd44a056") { blockHash: "0x71d79df1f93332f4cf3b239231a487ec61f4f0385447520078e51c56913fa091", blockNumber: 2, contractAddress: "0x1349f3e1b8d71effb47b840594ff27da7e603d17", cumulativeGasUsed: 0, from: "0xed9d02e382b34818e88b88a309c7fe71e65f419d", gasUsed: 0, logs: [], logsBloom: "0x0", root: "0x7776acd97aa1631c6df28a9572bd9bb6a861b13ac61dc0b30cbfea529529b11c", to: null, transactionHash: "хеш-значение", transactionIndex: 0 }