I have an application that makes a lot of listunspent rpc calls and issues a lot of null data OP_RETURN transactions. Bitcoind tracks the addresses that these OP_RETURN transactions are made from and when it calls listunspent (or getbalance or listaccounts) it calls CWalletTx::GetAmounts, which cannot find the output address for the transaction. Since it sees OP_RETURN transactions, it can't find an address and issues the error in debug.log:
2015-05-15 02:28:42 CWalletTx::GetAmounts: Unknown transaction type found, txid 09c22cb5e360ed4d048a659992ace972c19e2f13e2cbd9eca84c6e1b92626e65
The user level behavior returns the correct results, but because my application has a high volume of rpc calls and transactions, the log very quickly fills up with these extraneous error messages and crashes the application. The simple fix is to check if the transaction is an OP_RETURN, and if it is not issue the debug.log statement.