As you are writing this is expected behaviour, does this mean the transaction will eventually get confirmed at some point (if so, how will it be funded?)? Or do I have to do something in order to recover the coins?
It will get confirmed; it is already 'funded' (you can never send more coins than you have in total in your wallet).
This example might help; if you have exactly two accounts in your bitcoin wallet and their balances are:
Account A: -0.1 BTC
Account B: 1 BTC
... then if you tried to send 1 btc from account B the send would fail with an "insufficient funds" error.
Yeah, this seems logical. If it wasn't that way, I could just send more coins than I have to another wallet, and delete the wallet with the negative balance in order to create free coins
I just thought I would trigger an error already by maxing out one account.
I'd suggest funding a 'TransactionFees' account, and then when a sendfrom results in transaction fees reimburse the account by moving funds from TransactionFees.
So are you saying the transaction will go through after I put the negative balance account to a positive value again by moving funds from another account?
Or will it go through anyway without me interfering (although I assume this is not the case as it has been lying around unconfirmed for 3 hours now)?