Tengo problemas para que aparezcan un par de transacciones de prueba en el saldo de la cuenta de destino. El código está debajo. Agradezco a alguien que señale cualquier movimiento que haya hecho...
Ejecutando geth como:
geth --rpc --networkid=34534 --maxpeers=0 --datadir=~/.ethereum/DevChain/ --mine --minerthreads 1 --genesis development_genesis.json console
Sesión de consola:
> var receiver = eth.accounts[1];
undefined
> var amount = web3.toWei(1, "ether")
undefined
> var amount = web3.toWei(2, "ether")
undefined
> personal.unlockAccount(eth.accounts[0], “passwd”, 9000)
true
> eth.sendTransaction({from:sender, to:receiver, value: amount})
I0401 19:49:03.928354 eth/api.go:1072] Tx(0x8c3c85c225c76bd558cba37c7336d73aec9825e668da3b241d80119bde3a6d40) to: 0x9a22b931b03768958141afa40d66fa587c7bfd3a
"0x8c3c85c225c76bd558cba37c7336d73aec9825e668da3b241d80119bde3a6d40"
> eth.pendingTransactions
[{
blockHash: "0x0000000000000000000000000000000000000000000000000000000000000000",
blockNumber: null,
from: "0x87fa50f10eda0ee47376427d4623deae9577c048",
gas: "0x15f90",
gasPrice: "0x4a817c800",
hash: "0x8c3c85c225c76bd558cba37c7336d73aec9825e668da3b241d80119bde3a6d40",
input: "0x",
nonce: "0x0",
to: "0x9a22b931b03768958141afa40d66fa587c7bfd3a",
transactionIndex: null,
value: "0x1bc16d674ec80000"
}]
>
> miner.start(1)
I0401 19:49:13.013921 miner/miner.go:119] Starting mining operation (CPU=1 TOT=2)
true
> I0401 19:49:13.044968 miner/worker.go:564] commit new work on block 28 with 1 txs & 0 uncles. Took 31.004161ms
> checkAllBalances()
eth.accounts[0]: 0x87fa50f10eda0ee47376427d4623deae9577c048 balance: 135 ether
eth.accounts[1]: 0x9a22b931b03768958141afa40d66fa587c7bfd3a balance: 0 ether
Quería ver 2 ether en esa segunda cuenta. (En realidad, 3 ether ya que una transacción anterior tampoco parece haberse realizado).
comprobarTodosLosSaldos() es:
function checkAllBalances() {
var i =0;
eth.accounts.forEach( function(e){
console.log(" eth.accounts["+i+"]: " + e + " \tbalance: " + web3.fromWei(eth.getBalance(e), "ether") + " ether");
i++;
})
};
Pero luego envié otros 3 ether y se mostró en el saldo de otra cuenta mucho más rápido. Ahora tengo 0.5 ether pendientes, con la salida de minería reconociendo 1 txn pero eth.pendingTransactions todavía lo muestra como pendiente.
Me encantaría una forma de conectar una transacción y obtener una imagen de lo que está sucediendo.
¡Aprecio tus consejos mientras aprendo lo básico!
Sí. Este es un comportamiento esperado. Las transacciones se confirmarán e incluirán en la cadena de bloques cuando se incluyan en un bloque extraído. Esto tomará al menos un bloque minado.
No conozco ningún explorador privado de testnet.
La forma en que realiza un seguimiento de las transacciones en la consola geth de Ethereum es realizar un seguimiento del hash de la transacción que se muestra después de ejecutar el comando eth.sendTransaction(...), luego puede usar eth.getTransaction(...) para recuperar los detalles de la transacción. En el siguiente ejemplo, la transacción se extrajo en el bloque 84. Antes de que se extraiga la transacción, blockHash y blockNumber serán nulos.
> eth.sendTransaction({from:eth.accounts[0], to:eth.accounts[1], web3.toWei(2, "ether")})
"0xe548890adc667af1f0b9694ddd9da75dd85d17d6ffcaef62aedb63389ac2da9b"
> eth.getTransaction("0xe548890adc667af1f0b9694ddd9da75dd85d17d6ffcaef62aedb63389ac2da9b")
{
blockHash: null,
blockNumber: null,
from: "0x1111903a542ef1ff952eab096eab0517a7d4eeee",
gas: 90000,
gasPrice: 20000000000,
hash: "0xe548890adc667af1f0b9694ddd9da75dd85d17d6ffcaef62aedb63389ac2da9b",
input: "0x",
nonce: 0,
to: "0x22222a45dce56b6804bbf6a2dc8fae045511ffff",
transactionIndex: null,
value: 1000000000000000000
}
... transaction mined ...
> eth.getTransaction("0xe548890adc667af1f0b9694ddd9da75dd85d17d6ffcaef62aedb63389ac2da9b")
{
blockHash: "0xc74d2b08c28b801344006e477fe99cdc7cd6f3936a4223135eec7b42a04bf999",
blockNumber: 84,
from: "0x1111903a542ef1ff952eab096eab0517a7d4eeee",
gas: 90000,
gasPrice: 20000000000,
hash: "0xe548890adc667af1f0b9694ddd9da75dd85d17d6ffcaef62aedb63389ac2da9b",
input: "0x",
nonce: 0,
to: "0x22222a45dce56b6804bbf6a2dc8fae045511ffff",
transactionIndex: 0,
value: 1000000000000000000
}
mowliv
commit new work on block 28
era una señal de que se estaba extrayendo un bloque. ¡Gracias!mtbitcoin
mowliv
Amán C