Estoy usando pyethapp y web3.js para realizar transacciones en una red privada.
var to = "1152a50b91887591a2447b233105f392dbae72ce";
var from = "4dfd7cb92bca796821d5fc4512a6a02cc98d833d";
var json_data = {"Hi!" : "Hello World!!!"};
var tx_hash = web3.eth.sendTransaction({from: from_addr, to: to_addr, value: web3.toWei(10000, 'wei'), data: web3.toHex(json_data), gas:90000});
Todo va bien y la transacción está siendo firmada por pyethapp. Sin embargo, la transacción no se agrega a la cadena de bloques. El resultado cuando está firmado es el siguiente en la consola (mientras se ejecuta pyethapp):
INFO:p2p.peermgr waiting for bootstrap
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=ddcb1d6ad36c172fe077f0cbf4b7e889339ba8effbcbc9472866e8ac9c4724e1
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=c32c7a78781a65cab4fa9b5d9faa6926fc58b626fa7fa88d351f629228dfb379
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=697a2cb3c9b07e97114eca5eb0077258d05ce8b6d1a6f528083f3c768d6880fc
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=7a7697bfd0416b29360a2fb675b8c760aa8b90a54dde307cbde91e4c0cd3d8e1
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=8f19ee2ee4d8814ec9c172037d274f3a7f9df28b32a7e585610969dd06c240ed
INFO:accounts signing tx account=<Account(address=4dfd7cb92bca796821d5fc4512a6a02cc98d833d, id=None)> tx=<Transaction(7236)>
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=19f3d9615f961c7a2351a2460393476f22ddbaa79bbfe3bac3acd3eedab14676
WARNING:pow mining_hash does not match
INFO:pow.subprocess nonce found
INFO:pow.subprocess sending nonce
INFO:pow nonce found mining_hash=4daad5461707f1c29fc88c5929fd5c50b423159601181587e89d189d5f50329d
También noté la línea:
mining_hash=19f3d9615f961c7a2351a2460393476f22ddbaa79bbfe3bac3acd3eedab14676
WARNING:pow mining_hash does not match
No estoy seguro de que esté relacionado con la transacción (solo he realizado una transacción en la red privada). Todas las direcciones tienen saldos predefinidos dentro de la cadena de bloques y no es un problema relacionado con la insuficiencia de gas/éter.
El bloque de génesis también utiliza un nivel de dificultad muy bajo (<100) para extraer transacciones más rápidamente.
¿Por qué no se agrega la transacción a la cadena de bloques?
Estoy usando la función (desde aquí ) para consultar la cadena de bloques para la dirección del destinatario.
Editar :
Lo extraño es que la transacción tiene un recibo:
blockHash:"0x10b5c028b21e42104de61ba943ce14d11bcf01812ec675b10373d80316da481"
blockNumber:2
contractAddress:null
cumulativeGasUsed:21952
gasUsed:21952
logs:Array[0]
transactionHash:"0xcbd5db525f2b592d3d16f332747f22c50f1632e5629f5fe497673efc5d2b7a5a"
transactionIndex:0
Inicialmente gas:90000
era demasiado bajo. Después de aumentarlo, el recibo indica que la transacción ahora está en la cadena de bloques, bloque #2.
ética
gas:90000
no es tan alto y lo intentaríagas:3000000
durante la depuración.Sebí
Sebí
ética
gas
valor que especifique debe ser inferior al límite de gas del bloque.