Oracle 10g hates my varchar2(2000) blocks... I did have quite a lot of code written to store user data in such blocks. The way I used it was always a fudge, but that should not cause random ORA-00600 errors every 2 hours or so. I use these long varchars to hold SQL of users and tutorial question information. Actually I am not sure if the varchars are the cause of the problems, but the errors only appear involving queries which look at these strings.
The actual error message is
ORA-00600: internal error code, arguments: [kpofdr-long], , , , , ,  ,
Anyway, to be 100% sure, I converted to clobs (character LOB). I decided not to use BLOBS as I am playing with NLS language handling. I have done some initial testing and cannot make the error reappear.
So if you are having the same problem, make sure that you use varchar or varchar2 types to hold simple data only. Avoid long strings, perhaps with less usual characters like ';' or quotes. If all else fails, switch to LOBs. Other than that, 10g is great!