[firebase-br] Erro ao executar a procedure de Log

Carlos H. Cantu listas em warmboot.com.br
Sáb Jan 7 10:33:53 -03 2012


1) Verifique se os dois bancos de dados foram criados com o mesmo
usuário/senha, inclusive para as tabelas, etc. Caso contrário, no
execute statement, vc terá que informar qual usuário e senha será
usado na conexão com o banco de log.

2) Use o gfix para verificar se os bancos de dados não estão
corrompidos.

[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org
www.warmboot.com.br - blog.firebase.com.br

PFM> Assistindo uma video aula do Cantu da fbday 7 que mostrava como gerar log
PFM> direto pelo banco de dados, implementamos as procedures e utilizando um
PFM> banco de log separado do banco da aplicação, quando executada a procedure
PFM> de operações (LOGOPER) que esta abaixo.


PFM> SET TERM ^ ;
PFM> CREATE OR ALTER PROCEDURE LOGOPER (
PFM>     table_name varchar(31),
PFM>     operation char(1),
PFM>     pk1 varchar(50),
PFM>     pk2 varchar(50),
PFM>     pk3 varchar(50))
PFM> returns (
PFM>     logoper_id bigint)
PFM> as
PFM> declare variable s varchar(16384);
PFM> begin
PFM>   S = 'INSERT INTO OPERACOES (TABELA, OPERACAO, USUARIO, DATA_HORA,
PFM> TRANSACAO,
PFM>                               HOST, PROTOCOLO, TR_ISOLATION, PK1, PK2, PK3)
PFM>        VALUES (:table_name, :operation, :USUARIO, current_timestamp(0),
PFM> current_transaction,
PFM>                :HOST, :PROTOCOLO, :ISOLAT, :PK1, :PK2, :PK3) returning
PFM> LOGOPER_ID';

PFM>   execute statement (:S)
PFM>       (table_name := :table_name
PFM>       , operation := :operation,
PFM>        USUARIO := rdb$get_context('USER_SESSION','USUARIO'),
PFM>        HOST := rdb$get_context('SYSTEM','CLIENT_ADDRESS'),
PFM>        PROTOCOLO := rdb$get_context('SYSTEM','NETWORK_PROTOCOL'),
PFM>        ISOLAT := rdb$get_context('SYSTEM','ISOLATION_LEVEL'),
PFM>        PK1 := :PK1, PK2 := :PK2, PK3 := :PK3 )
PFM>         ON external rdb$get_context('USER_SESSION','PATHLOG')
PFM>         AS USER 'SYSDBA' password 'masterkey'
PFM>         with common transaction
PFM>        into :LOGOPER_ID;
PFM> end^
PFM> SET TERM ; ^
PFM> GRANT EXECUTE ON PROCEDURE LOGOPER TO SYSDBA;
PFM> --------------------------------------------------------------------------------------------------------------------------------------------
PFM> ocorreu o seguinte erro :

PFM> ' Unsuccessful execution caused by system error that does not preclude
PFM> successful execution of subsequent statements.
PFM> wrong length record, expected 53328380 encountered 53393948.
PFM> password required. '

PFM> não estou conseguindo encontrar uma solução para este erro.

PFM> Desde ja muito obrigado.

PFM> Atenciosamente
PFM> ______________________________________________
PFM> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
PFM> Para saber como gerenciar/excluir seu cadastro na lista, use:
PFM> http://www.firebase.com.br/fb/artigo.php?id=1107
PFM> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista