He investigado un poco más sobre esto Updating AI plugin fails
Mi pregunta principal era por qué esto solo sucede al actualizar un plugin ya instalado y no cuando el plugin se instala nuevo. La respuesta es que el núcleo atrapa las excepciones PG::UndefinedTable pero no PG:UndefinedColumn. Si el plugin ya está instalado, la excepción es la última, si el plugin es completamente nuevo, es la primera.