How to debug a long "0/unconfirmed" status in the bitcoin client? When someone gets a status of "0/unconfirmed" on a transaction for a long time - what could he be doing wrong? What should he check to solve this?
Try running bitcoind from the command line with the -rescan option. It may be that your transaction was erroneous or a double-spend attempt and it only exists in your client. You could double-check the receiving address in blockexplorer to see if the transaction ever came through from the rest of the network's perspective. If this is a zero transaction fee transaction (or is just otherwise unlucky) it might still be in-queue to be included in a block. Bitcoin Charts has a list of in-queue transactions you can check as well.

Assuming blockexplorer sees the transaction, your client probably isn't downloading blocks and may not even be connected at all. Check that the block number in your client matches the block number at blockexplorer (or any of a number of other sites), check if your client has 0 connections. If you have no connections, try the troubleshooting steps from this question. Worst case scenario delete everything from the Bitcoin data folder except for wallet.dat and re-launch the client. Several hours later when you've finished downloading a fresh copy of the block chain, your 0/unconfirmed transaction will probably be resolved.