La respuesta corta a este problema es cuando MULTI_STATEMENTS están habilitados, mysql espera que usted maneje el resultado de su consulta.
Una solución rápida es hacer algo similar a esto después de cada conjunto de declaraciones de actualización múltiples
while db_write.next_result
db_write.store_result rescue ''
end