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

Pedro Felipi Manoel pedrorizatto em gmail.com
Ter Jan 3 16:40:28 -03 2012


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


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

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

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

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

Desde ja muito obrigado.

Atenciosamente



Mais detalhes sobre a lista de discussão lista