nucypher/docs/source/support/troubleshooting.rst

102 lines
4.7 KiB
ReStructuredText

===============
Troubleshooting
===============
self.InsufficientTokens(f"Insufficient token balance ({self.token_agent})
-------------------------------------------------------------------------
There is an insufficient amount of NU in your staking account.
ValueError: {'code': -32000, 'message': 'no suitable peers available'}
----------------------------------------------------------------------
This is a Geth error and not related to ``nucypher``. You are probably running a light node that needs
full nodes willing to serve information to it, but no such nodes were found (a frequent problem on the Goerli Ethereum testnet).
nucypher.blockchain.eth.interfaces.ConnectionFailed: Connection Failed, is IPC enabled
--------------------------------------------------------------------------------------
The provider URI may be incorrect.
For example: if the scheme is ``ipc://`` then the path should be appended as is to the end ``ipc:///home/…``
i.e. **THREE** slashes not two.
Validation error: 'code': -32000, 'message': 'gas required exceeds allowance (8000000) or always failing transaction
--------------------------------------------------------------------------------------------------------------------
This is a generic exception thrown by Geth meaning "Transaction Failed".
This error can be caused by a variety of reasons. Each time ``require()`` fails to validate a condition in a contract
without a corresponding check in the ``nucypher`` client itself, this error is raised. Over time, as we update the
client, this generic error will become extinct.
In the most common cases:
- Ensure that your worker is :ref:`bonded to a staker <bond-worker>`.
You can confirm by running ``nucypher stake list`` and check that `Worker` is set correctly i.e. not ``0x0000``.
- If your worker is configured, ensure that the worker address has (Goerli) ETH and that the correct worker address is
provided in the Ursula configuration file being used - the default configuration file is ``~/.local/share/nucypher/ursula.json``
builtins.ValueError: {'code': -32000, 'message': 'insufficient funds for gas * price + value'}
----------------------------------------------------------------------------------------------
The Ursula node does not have enough (Goerli) ETH to pay for transaction gas. Ensure that your worker address has
(Goerli) ETH.
Warning! Error encountered during contract execution [Out of gas]
-----------------------------------------------------------------
The Ursula node does not have enough (Goerli) ETH to pay for transaction gas; ensure that your worker address has (Goerli) ETH.
RuntimeError: Click will abort further execution because Python 3 was configured to use ASCII as encoding for the environment
-----------------------------------------------------------------------------------------------------------------------------
Try setting the following environment variables:
.. code::
export LC_ALL=en_US.utf-8
export LANG=en_US.utf-8
builtins.FileNotFoundError: [Errno 2] No such file or directory: '/<path>/.cache/nucypher/log/nucypher.log.20191227'
--------------------------------------------------------------------------------------------------------------------
This is an artifact of upgrading Ursula - remove the directory ``<path>/.cache/nucypher/log`` and restart Ursula.
web3.exceptions.BadFunctionCallOutput: Could not transact with/call contract function, is contract deployed correctly and chain synced?
---------------------------------------------------------------------------------------------------------------------------------------
This error usually means your blockchain data is not synced.
If using Geth, ensure that Geth is fully synced. You can use the ``--exitwhensynced`` flag which causes Geth
to exit once fully synced.
When using parity in light mode, this is raised when the light node cannot satisfy the call/transaction, e.g. not
enough full nodes are serving requests.
ValueError: {'code': -32000, 'message': 'could not decrypt key with given password'}
------------------------------------------------------------------------------------
Potential reasons:
#. You may be using the wrong password for your ethereum account.
#. You may be using the wrong ethereum account.
#. If trying to collect rewards, this is a `known bug <https://github.com/nucypher/nucypher/issues/1657>`_ in our
code - rerun the command without the ``--staking-address`` option.
ValidationError: The field extraData is 97 bytes, but should be 32. It is quite likely that you are connected to a POA chain
----------------------------------------------------------------------------------------------------------------------------
Add the ``--poa`` flag to your command and try again.