dgterritorio / recart-plugin

3 stars 8 forks source link

A validação termina devido a erro devido a cópia repetida para a tabela de erros (duplicate id) #36

Open dgterritorio opened 2 years ago

dgterritorio commented 2 years ago

5078_carttop2_olhao_20211222 Versão plugin 1.3

Erro:

    A executar validação 're4_11_1 Hierarquia dos nós hidrográficos (Parte 1 - Eixos)' (31 de 48)
[Erro 11]
    Exception: Error while connecting to PostgreSQL duplicate key value violates unique constraint "curso_de_agua_eixo_re4_11_1_pkey"
DETAIL:  Key (identificador)=(b5b7237e-e318-4b22-8104-f427dd8fbf77) already exists.
CONTEXT:  SQL statement "insert into errors.curso_de_agua_eixo_re4_11_1 select a.*
    from public.curso_de_agua_eixo a, public.curso_de_agua_eixo b
        where a.identificador<>b.identificador and st_intersects(a.geometria, b.geometria)
        and not (coalesce(a.nome, '') = coalesce(b.nome, '') and
                coalesce(a.delimitacao_conhecida, false) = coalesce(b.delimitacao_conhecida, false) and
                coalesce(a.ficticio, false) = coalesce(b.ficticio, false) and
                coalesce(a.largura, 0) = coalesce(b.largura, 0) and
                coalesce(a.id_hidrografico, '') = coalesce(b.id_hidrografico, '') and
                coalesce(a.id_curso_de_agua_area, 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa') = coalesce(b.id_curso_de_agua_area, 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa') and
                coalesce(a.ordem_hidrologica, '') = coalesce(b.ordem_hidrologica, '') and
                coalesce(a.origem_natural, false) = coalesce(b.origem_natural, false) and
                coalesce(a.valor_curso_de_agua, '') = coalesce(b.valor_curso_de_agua, '') and
                coalesce(a.valor_persistencia_hidrologica, '') = coalesce(b.valor_persistencia_hidrologica, '') and
                coalesce(a.valor_posicao_vertical, '') = coalesce(b.valor_posicao_vertical, '')) and not ((select st_intersects(a.geometria, f.geometria) from
                    (select geom_col as geometria from validation.no_hidro_juncao) as f)
                or (select ST_intersects(a.geometria, i.geometria) from 
                    (select geom_col as geometria from validation.interrupcao_fluxo) as i))"
PL/pgSQL function validation.do_validation(boolean,character varying) line 38 at EXECUTE

Terminada a validação