Search code examples
sqlingres

Ingres DB error E_PS055B CREATE PROCEDURE


E_PS055B CREATE PROCEDURE: You may not create database procedure
    'proc_name'
    because database procedure 'proc_2' invoked by it is dormant.
    Any database procedure attempting to invoke a dormant
    database procedure is itself dormant, and it is illegal
    to create dormant database procedures.

I get this error when was trying to create procedure, could you please explain me what does it mean, cant find any information on it

DB Ingres version 10


Solution

  • From the Ingres documentation:

    The DROP PROCEDURE statement removes a database procedure definition from the database. Sessions that are executing the procedure are allowed to complete before the procedure's query plan is removed from memory. If a procedure that is executed from another procedure is removed, the calling procedure is retained but marked dormant, and cannot be executed until the called procedure is restored.

    In summary, proc_2 calls a procedure which has been dropped. This means proc_2 will be marked as dormant (as it cannot run) until such time as the dropped procedure is replaced. Any procedures which call proc_2 will also be marked as dormant. You will need to work out which procedure that proc_2 needs has been dropped and recreate it before you can create your new procedure.