I have three private testnet nodes set up, and one wallet-rpc that connects to one of those three nodes (which are all connected to eachother as peers). I am constantly having to delete the walllet files, and the lmdb files, due to various errors. I have a PHP webapp that I am trying to get to accept XMR payments. To test it out, I have set up a private testnet with three nodes, one wallet for the e-commerce store (which is what the wallet-rpc uses), and one for the user (me). I am able to accept transactions, but the ability to refund is spotty at best. Sometimes I can refund at recieve the funds, sometimes I get an error, such as [on_send_raw_tx]: tx verification failed: invalid input
or Unable to send transaction(s) via Dandelion++ stem
, and sometimes the refund isn't recieved at all.
All of these errors were fixed by restarting the testnet completely, ie, deleting lmdb files, and making new wallets.
There was another error too, but I've forgetten the description, just remember it being extremely vague.
There are also errors with the gui wallet. Sometimes I get not enough outputs for specified ring size
and other errors when trying to send transactions. Such as the Dandelion++ stem
error.
For context:
I am using https://github.com/monero-integrations/monerophp
The script I use to start the testnet & GUI:
#!/usr/bin/env bash
function cleanup {
echo "Ctrl+C"
pgrep monerod | xargs kill -1 2>/dev/null
pgrep monero-wallet-r | xargs kill -1 2>/dev/null
pgrep monero-wallet-gui | xargs kill -1 2>/dev/null
}
trap cleanup INT
#start node
echo "[+] Starting testnet node 1 p2p: localhost:8848 ~/node_04"
gnome-terminal -- bash -c "monerod --testnet --p2p-bind-port 8848 --rpc-bind-port 12231 --no-igd --hide-my-port --log-level 2 --data-dir /home/user/node_04 --zmq-rpc-bind-port 55535 --p2p-bind-ip 127.0.0.1 --add-exclusive-node 127.0.0.1:28080 --add-exclusive-node 127.0.0.1:29901 --fixed-difficulty 10 --disable-rpc-ban; sleep $1"
echo "[+] Starting testnet node 2 p2p: localhost:28080 ~/node_05"
gnome-terminal -- bash -c "monerod --testnet --no-igd --hide-my-port --data-dir /home/user/node_05 --p2p-bind-ip 127.0.0.1 --p2p-bind-port 28080 --log-level 2 --zmq-rpc-bind-port 45535 --add-exclusive-node 127.0.0.1:8848 --add-exclusive-node 127.0.0.1:29901 --fixed-difficulty 10 --disable-rpc-ban; sleep $1"
echo "[+] Starting testnet node 3 p2p: localhost:29901 ~/node_06"
gnome-terminal -- bash -c "monerod --testnet --no-igd --hide-my-port --rpc-bind-port 29092 --data-dir /home/user/node_06 --p2p-bind-ip 127.0.0.1 --p2p-bind-port 29901 --log-level 2 --zmq-rpc-bind-port 55531 --add-exclusive-node 127.0.0.1:8848 --add-exclusive-node 127.0.0.1:28080 --fixed-difficulty 10 --disable-rpc-ban; sleep $1"
echo "[+] Starting wallet RPC client"
gnome-terminal -- /home/user/testnet/wallet_rpc.sh
#start gui
echo "[+] Gui will start without text output"
/home/user/Desktop/monero-gui-v0.18.3.1/monero-wallet-gui >/dev/null
I usually only get errors with the wallet RPC when the network has been running for a while (~ 3+ hrs)