Olá, Álvaro e Émerson Corrigindo a minha resposta:
Segundo a documentação: ON_ERROR_ROLLBACK When on, if a statement in a transaction block generates an error, the error is ignored and the transaction continues. When interactive, such errors are only ignored in interactive sessions, and not when reading script files. When off (the default), a statement in a transaction block that generates an error aborts the entire transaction. The on_error_rollback-on mode works by issuing an implicit SAVEPOINT for you, just before each command that is in a transaction block, and rolls back to the savepoint on error. Isto significa que os erros são apenas ignorados com ON_ERROR_ROLLBACK ON em sessões interativas e não quando são lidas de um arquivo de script. Neste caso você pode tentar usar o ON_ERROR_STOP, mas como comentei no e-mail anterior nunca usei com em bloco de transação com BEGIN e COMMIT em um arquivo de script, então precisaria ser testado. Espero ter ajudado. []s 2008/5/29 jota. comm <[EMAIL PROTECTED]>: > Olá, > > Para recuperar backup binário você precisa usar o pg_restore, com o comando > psql não é possível. > > Nunca usei este parâmetro, existe um parâmetro chamado ON_ERROR_STOP que > você pode habilitar ON ou OFF, quando ON se um comando gerar um erro ele > aborta o processo, caso OFF ele executará todo o procedimento ignorando os > erros. Nunca usei com transação então não sei se funcionará, acredito que > deve ser melhor usar o ON_ERROR_ROLLBACK. > > E quanto ao parâmetro ON_ERROR_ROLLBACK para continuar uma transação quando > um erro é gerado deve estar setado como ON, conforme a documentação: > http://www.postgresql.org/docs/current/static/app-psql.html > > Espero ter ajudado. > > []s > > 2008/5/29 Emerson Casas Salvador <[EMAIL PROTECTED]>: > >> Álvaro Guimarães escreveu: >> >> Olá lista. >> >> Preciso restaurar um backup que está gerando alguns erros. Porém eu >> preciso que esses erros sejam ignorados e que o rollback *não* seja >> executado. >> Estou tentando o seguinte dentro do utilitário psql: >> >> banco=# \set ON_ERROR_ROLLBACK on >> banco=# \i backup.sql >> >> Porém o rollback é executado quando erros são encontrados. >> Versão do postgresql é a *O Sistema Anti-Vírus detectou tentativa de >> fraude de "8.1.9." * 8.1.9. <http://8.1.9.> >> Sistema Operacional é o Fedora Core 6. >> >> Segundo o man psql isso era pra funcionar. >> >> ON_ERROR_ROLLBACK >>> When on, if a statement in a transaction block >>> generates an >>> error, the error is ignored and the transaction continues. >>> >> >> Outra dúvida aproveitando a mesma mensagem. >> Há a possibilidade de restaurar backups binários pelo utilitário psql? >> >> Agradeço desde já. >> >> -- >> Álvaro Guimarães >> Santa Bárbara D'Oeste - SP - Brazil >> >> Pois é... mas ali vc ta dizendo >> banco=# \set ON_ERROR_ROLLBACK *on >> * >> não seria: >> banco=# \set ON_ERROR_ROLLBACK *off * >> ? >> >> nunca usei isso, mas testa aí... >> >> ------------------------------------------------------------------------------------- >> >> Esta mensagem foi verificada pelo sistema de Anti-virus da SJB Solados. >> >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> >> > > > -- > João Paulo > www.dextra.com.br/postgres > PostgreSQL -- João Paulo www.dextra.com.br/postgres PostgreSQL
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
