Posts

Showing posts from December, 2020

PL/SQL: Statement Ignored PLS-00201: identifier 'DBMS_OUTPUT' must be declared

Image
Recently I migrated a database(11gR1) from Windows Platform to 12C on Linux Platform. Migration was successful. During the sanity check, found lot of Invalid objects even after all the grants and privileges were provided. Ran utlrp.sql couple times, still the invalids count remains the same. So I choose an Invalid object, compiled it manually and faced the below issue. This was the issue for almost all the invalid objects. So I understood something is not right with the object DBMS_OUTPUT. So I checked this object and to my surprise it was valid. Since the status is Valid, before doing any change to the object 'DBMS_OUTPUT', I decided to check the coding of the invalid object, since the DBMS_OUTPUT is an oracle standard one. If I comment the line "dbms_output.put_line" from the invalid object, it is getting compiled and then it is a valid one but this is not the solution. This can be accepted as an workaround when a minimal no.of objects becomes invalid due to this is...

SEND_MAIL - ORA-01775: looping chain of synonyms

Image
 In one of our environment, post migration we tested the SEND_MAIL procedure to initiate the mail via SMTP server from DB level and faced the below issue. ORA-01775: looping chain of synonyms Looping chain of synonyms means, the created synonyms points to another object in a circle. Here for better understanding, SEND_MAIL is the procedure used to trigger mails from DB Server UTL_SMTP and DBMS_OUTPUT are the dependent objects for SEND_MAIL procedure UTL_SMTP synonym is also dependent object for SEND_MAIL procedure So it is clearly evident that the dependent objects should be valid before fixing the issues with the SEND_MAIL procedure. So, I started the drilldown on the required dependent objects and found the procedure 'SEND_MAIL' and package body of the object 'UTL_SMTP' is invalid. So I made an attempt to compile the UTL_SMTP body to make it a valid object and faced the below issue. This issue indicates the format of the wrapped unit being compiled is not understood b...

ORA-65040: Operation not allowed from within a pluggable database

Image
 I need to drop some package and synonyms from a PDB. When I attempted to do, I faced the below issue. Quick surf on the metalink leads to the solution. Warning: Object owned by SYS user should not be dropped without understanding its impact and proper backup. When you created the synonym with the schema name also appended with the object name, then it can be dropped like below. drop public synonym "TFGADMIN.DBMS_OUTPUT";