That might be your problem then. MyISAM uses table-based locks and InnoDB row-based. Maybe you're getting some deadlocks or it's just hanging because it's waiting too long. Try making that table InnoDB too (on the master):
ALTER TABLE download_category_mapping ENGINE=InnoDB;
That may fix your problem. It might also speed up your application too .