es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

No es posible implementar el contrato inteligente en la red de prueba (Ropsten) utilizando Truffle Infura.

Estoy intentando implementar un contrato inteligente simple en Testnet Ropsten, pero siempre falla con el siguiente error:

Error: Implementación fallida

“Migraciones”: la transacción no se minó en 750 segundos, asegúrese de que su transacción se haya enviado correctamente. ¡Tenga en cuenta que aún puede ser minada!.

He buscado en muchos lugares y dice que cambie el valor de gas. He probado casi todos los valores, pero sigo obteniendo el mismo error. A veces dice que el valor de gas no es suficiente y otras veces es demasiado.

Este es mi código:

require("dotenv").config();
const HDWalletProvider = require("truffle-hdwallet-provider");
const MNEMONIC = process.env.MNEMONIC;

module.exports = {
  networks: {
    development: {
      host: "127.0.0.1",
      port: 7545,
      network_id: "*",
    },
    ropsten: {
      provider: function () {
        return new HDWalletProvider(
          MNEMONIC,
          `https://ropsten.infura.io/v3/${process.env.INFURA_API_KEY}`
        );
      },
      network_id: 3,
      gas: 5500000, // Aquí he probado desde 1000000 hasta 5500000
    },
  },
  compilers: {
    solc: {
      version: "0.8.10",
    },
  },
};

Contrato:

// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.8.3;

contract HelloWorld {
    function sayHello() public pure returns(string memory){
        return "hello world";
    }
}

Migraciones:

const Migrations = artifacts.require("Migrations");

module.exports = function (deployer) {
  deployer.deploy(Migrations);
};

const HelloWorld = artifacts.require("HelloWorld");
module.exports = function (deployer) {
  deployer.deploy(HelloWorld, "hello");
};

Tengo mi billetera Metamask con 1 ether en Ropsten.

¿Alguna idea de cómo implementar un contrato inteligente en una testnet?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Una sugerencia podría ser aumentar el precio del gas, así como el límite de gas. Podrías intentar establecer el precio del gas en un valor más alto, como 20 Gwei, y aumentar el límite de gas a alrededor de 8000000. Además, asegúrate de tener suficientes fondos en tu cuenta para cubrir el costo del gas.

    Otra posibilidad es verificar la conectividad del nodo y asegurarte de estar conectado a un nodo de prueba estable y confiable. A veces, el despliegue falla debido a problemas de red.

    También puedes considerar probar una red de prueba diferente, como Rinkeby o Kovan, y ver si el despliegue tiene éxito en esas redes de prueba.

    Por último, asegúrate de haber autorizado tu HDWalletProvider con la dirección de tu billetera y de haber verificado el código de tu contrato antes del despliegue.

Comments are closed.