I’ve had this witness error on both of my machines a couple of times. In all instances I deleted the testnet3 directory and restarted. Now 1 machine gets the following error when I try to transfer mined coins to my private address.
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
I have backed up and deleted the testnet3 directory again to see if this will help, but will need to wait until I find another block to test.
I had this error too. It seems an error with the wallet.dat file. As we are in the testnet, I simply deleted this file (¡¡¡YOU WILL LOSE ALL YOUR ZCASH!!!) and relaunch the miner.
bad::alloc means you didn’t have enough RAM to create a JoinSplit. It doesn’t have anything to do with the wallet.dat file, so don’t delete that in general (although this is testnet, and we’ll be resetting the testnet next release, so it doesn’t matter too much).
Ummm, I think I had exactly the same error and, as I said, deleting the wallet was the way to solve it. Maybe, move the wallet.dat file to another folder, and relaunch the miner to test if it solves the problem.
Oh, sorry, I didn’t see the top post. The bad::alloc has nothing to do with the wallet.dat, but the original error does. It should be mostly-fixed in the next release (beta 2), but in some cases you may also need to launch your node with -reindex (this should hopefully no longer be necessary by RC 1).