That very useful command can save your life when EverythingElseFailed.
Normally, mldonkey keeps informations about the files you're downloading in md4-hash hash (used to identify files on the eDonkey2000 and files.ini. That includes several things, like the file MD4 networks), a list of known file names, the MD4 hashes of the chunks, etc.
Temp files must live in the temp directory, called after the MD4 hash of the file (32 hex \"digits\", all uppercase, with a \"urn_ed2k_\" string prefix, like \"urn_ed2k_682DF61F042B328E9BEF1EC233F21877\"). They must also have the correct file size. You can use the scan_temp command to check what files may be recovered by recover_temp.
Running ed2k_hash on the temp files won't work, because it will give you the hash of the partial file, not the hash of the completed file.
If those requirements are met, recover_temp can rebuild a minimal files.ini. After a LONG while, mldonkey should be able to recover all the missing informations from the network (file names, chunk hashes, etc) and resume the downloads.
MLdonkey will need to rehash the files to find which chunks are completed, that will take some more time. %%%
Completed chunks will be recovered, but partial chunks will be lost, and will need redownloading. But hey, that's better than nothing...
AFAIK recover_temp only works for ed2k/overnet files - i.e. you cannot recover BitTorrent or FastTrack files using this method (there's a procedure listed on this wiki that may help you to RecoverBittorrentDownloads, but it seemed pretty long and complicated...)