1

Before the update

Before the update of the code of my c++ smart contract, this uses to work absolutely fine. Data storing on the table and actions execution were done successfully.

After the update

After I updated the code - adding some functions and not touching the tables - it started showing this error:

Error 3050003: eosio_assert_message assertion failure
Error Details:
assertion failure with message: read
pending console output:

What I tried

  1. I tried to change the table names and execute the update code again (didn't work);
  2. I tried to revert the contract to the exactly previous code (didn't work);

  3. I tried to add $NODEOSBINDIR/nodeos --verbose-http-errors true to the script that starts the node (nothing more is shoed in the error output);

  4. I tried to access the table after changing its name, and I could do it (but of course is empty).

What I am looking for

  1. If anyone experienced the same issue please help to figure out more details about this eosio_asser_message;
  2. A clear explanation on how to update smart contracts with tables and what happens in different use cases;
  3. If I made some mistakes in the configuration of the flag --verbose-http-errors true.
7
  • Try to start nodeos with --verbose-http-errors flag and see if there is a more detailed error log. Commented Oct 2, 2018 at 12:06
  • I already tried, and this command is already in both the config.ini and the script to start the node; but I cannot see any difference in the error output. Commented Oct 2, 2018 at 12:07
  • But are you able to access the table using cleos? Commented Oct 2, 2018 at 12:11
  • I can access the table, but there is no content inside. The previous content - of the old table before renaming - is no more there. Commented Oct 2, 2018 at 12:12
  • I think you should post some code smippets you have changed to get mor help... Commented Oct 2, 2018 at 12:15

1 Answer 1

2

It took me a while, but I finally solved the issue.

Searching on Google for this kind of error, the most interesting source I was able to find was the following: https://github.com/EOSIO/eos/issues/4394.

The issue described at the link is not the same as mine, but actually suggested me that there was something wrong when calling an action, from a smart contract.

In fact, the error was in the parameters that I was passing, which where not matching with the action called.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.