I'm having crashing issues on 9.1.74 running in -server mode. Any time I try to send a transaction i get a fatal error that closes down the program. I have no problem sending transactions when not in -server mode. I now occasionally get this error in regular mode as well. I am using the Windows 64 bit program in Win 7. Also, when solving a block it no longer says "Mined" under the type column in the transaction. It just says deposit. The pickaxe is now gone as well. Just cosmetic but letting ya know.
Debug output:
2015-09-09 02:17:24 ERROR: deposit transaction could not sign coinbase
2015-09-09 02:17:24
ERROR! IncrementExtraNonce() : Failed to recalculate coinbase as deposit. Miner exiting.
I'm also getting a popup window titled "MinGW Runtime -Assertion"
Inside the window says: File: miner.cpp.Line 1021
Expression: false
The debug output that you added at the end of the message, is that the miner shutting down after a while?
Am I correct when I say that there are three errors here:
1. Not possible to send txs in server mode?
2. The mined column wrong (minor error)?
3. The miner (the whole wallet?) dying on this line: miner.cpp.Line 1021?
This windows popup is the initial thing that happens when I try to send a transaction. Gives me 3 buttons (retry, ignore, and abort). Hitting the "retry" button brings up another window titled Microsoft Visual C++ runtime library. The messege in that window reads as follows:
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
the "abort" button shuts down and closes the program. If I hit the ignore key a few times (2-5 on average) the popup eventually goes away and I can send the transaction without kicking me out of the wallet.
1. Intermittently can't send a transaction. I should mention these are internal transaction where I am sending small amounts 5-6 cre to my personal receiving addresses to make prepared deposits.
2. after looking at this again I was incorrect on what is happening. In version 9.1.60 when you mined a block you would have 4 transactions. The first transaction was labeled "mined" with the pickaxe and the amount of the block (currently 45). The second transaction was a "deposit" for the block. The third transaction was a "deposit" from my prepared deposit. The fourth transaction was labeled "deposit change" with any overage from my prepared deposit coming back to me. In 9.1.74 I am no longer getting that first transaction labeled "mined" with the pickaxe and the value of the block mined.
3. Yes, the wallet shuts down.
Aha ok. Are you by any chance running your miner with a locked (encrypted) credits_wallet.dat file? That would explain the part that you can not view the mined coinbase tx in your transaction history. The reason is as follows:
- If you have an
unencrypted credits_wallet.dat file, then the mining software automatically and directly will spend the
coinbase tx with the
deposit tx if you are including the reward as deposit. You normally do this. If the credits_wallet.dat file is
encrypted, this can not be done (the software
does not have "spending access" to the coinbase tx output, it can not use the key, only view it).
To get around this problem, the coinbase tx output spending key is instead stored into the deposit_wallet.dat file, where the software always can use it; the deposit_wallet.dat file is never encrypted. Since the coinbase output is spent directly, the coinbase output key is really just a "throw away key" and the reward from the coinbase ends up in the deposit tx.
The key for the coinbase tx are however still hanging around in the deposit_wallet.dat file. BUT, when they are stored there, the transaction history extracted from the credits_wallet.dat file
does not cointain the coinbase tx output key, and therefore does not show the coinbase tx.
This could of course be remedied by merging the transaction history of the credits_wallet.dat and the deposit_wallet.dat files into one. This has not been done yet due to technical complexity and lack of time.
One other explanation, the deposit_wallet.dat file is ONLY used for temporary storage of prepared but not yet block included deposit txs. Except for the usage described above. It is NOT related to deposit txs in any other way. Deposit txs, like any other txs, lives in the blocks and the related keys for your own deposit txs lives in your credits_wallet.dat file. To repeat this; the deposit_wallet.dat file is ONLY a temporary working file, containing prepared but not yet used deposits, and as described above, "throw away" one time keys, used for coinbase txs that are spent by deposits txs when the coinbase tx output key can not be stored in credits_wallet.dat. That happens when credits_wallet.dat is encrypted. The deposit_wallet.dat can however be useful to save at the same time as backups of the other wallet files are done since it contains uniquely generated keys, and keys should in principle never be thrown away.This makes me believe that a single backup option that backups all three wallets at the same time probably should be added.
Good to hear that you have found a way (mostly) around the error popup.
I'm working on simulating the problems that you are having, however, so far, haven't been able to reproduce them.
Maybe I should take this discussion in a PM and then just post the outcome here?