I have a simple question. I have a join table which has an index that ensure that (col 1, col 2) is unique. I am adding to that table using mysql2 gem and am trying to catch the Mysql2::Error if the attempt results in a duplicate key error. While I am getting the duplicate key error, my rescue body is not being executed. begin self.foo << bar rescue Mysql2::Error logger.debug("#{$!}") end I am rec