A resposta curta para este problema é quando MULTI_STATEMENTS estão habilitados, o mysql espera que você lide com o resultado de sua consulta.
Uma solução rápida é fazer algo semelhante a isso após cada conjunto de várias instruções de atualização
while db_write.next_result
db_write.store_result rescue ''
end