# Troubleshooting for HotPocket Developer Kit The Troubleshooting Guide for the HotPocket Developer Kit provides solutions for commonly encountered errors during the utilization of the HotPocket devkit. Furthermore, ensure that your HotPocket Developer Kit installation is up to date by running `hpdevkit update`. | **Possible Error** | **How to fix it** | | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | HotPocket usage limit failure. | Run the `hpdevkit update` command. | | Error response from daemon:
Container is not running. | Run `docker start ` to start the docker container and verify that the status of the relevant container is up using `docker ps -a`. You can also use Docker Desktop for this. | | Error response from daemon:
Ports are not available | Run `hpdevkit clean`. If the issue persists, either check and stop any other processes that may be using or blocking the specified port(s) or change the HotPocket user port numbers using [HP_USER_PORT_BEGIN](../hpdevkit/overview.md#environment-variables). | | Cluster 'default' already exists. | Run the `hpdevkit clean` command. | | Contract process execve() failed. | The `bin_path` variable defined in hp.cfg.override is invalid or does not contain the location of a valid application binary. | | Contract process ended prematurely. Exit code 0 | This occurs when the `forceTerminate=true` argument is used in the HotPocket contract `init` function. This will terminate the contract forcefully after the contract execution handler is completed, irrespective of any active listeners present. | Error: Cannot find module | 1\. The `bin_args` path defined in hp.cfg.overrride may be incorrect.
2\. Differences between Windows and Linux environments might cause this issue as well. In such case, try to use a Linux environment. | | HotPocket smart contracts must be executed via HotPocket. | You cannot execute a HotPocket smart contract through the console. Specify the contract path using `bin_args` variable in hp.cfg.override and [run the DApp](../tutorials/basics.md#run-the-dapp) | | Possible fork condition. | This indicates a failure of cluster synchronization after deployment. Ensure that your contract logic maintains the same input, output and state in all the nodes. Consider [lowering the cluster size](../hpdevkit/overview.md#changing-the-cluster-size) to recreate and isolate the error. | | Not enough peers proposing to perform consensus. | This condition occurs before consensus is reached, typically at the initial consensus rounds. This should be a temporary stage. If it persists, check whether each node is operational. | | Error: EACCES: permission denied | This occurs when a write command is executed in read only mode. Use an if-else condition to control logic executed in read only mode. | | _Errors encountered when executing contracts which use timeouts or other asynchronous functions_ | These errors may occur when the `forceTerminate=true` argument is not used in the HotPocket contract `init` function. By adding this argument, the contract will terminate the contract forcefully after the contract execution handler is completed. |