I spent about a week troubleshooting issues on a MySQL 5.1 replication issue where certain transactions causing duplicate key on index errors stopped replication. Easy enough to fix, right?
mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
mysql> start slave;
Hmm... nice until it happens almost every minute...
So, after reading every link I could find on the internet, forum posts, upgrading to 5.1.24, I finally started to think I just didn't know what I was doing with replication.
Last ditch effort... ask dev and application engineers to help out...
"Oh... you mean one of the application servers is pointed at the slave server in read/write mode and is trying to insert data there as well?..."
Yea, that's why it's a best practice to have your slave servers set READ ONLY .... duh...
Anyway, live and learn..