Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: what is obj$.type#=10?

RE: what is obj$.type#=10?

From: Riyaj Shamsudeen <rshamsud_at_jcpenney.com>
Date: Wed, 23 Jun 2004 14:26:41 -0500
Message-id: <00ad01c45958$03626270$212f200a@rshamsudxp>


It is a dependency tracking mechanism for public synonyms. If a schema object is dependent upon another object through a public synonym then the code creates type#=10 object with the same synonym name. This is so that in future, if a new object was created in the schema with the same name as the public synonym, the dependent objects can be correctly invalidated.
But type# will be different won't be 10 though..

Thanks
Riyaj "Re-yas" Shamsudeen
Certified Oracle DBA

-----Original Message-----

From: oracle-l-bounce_at_freelists.org
[mailto:oracle-l-bounce_at_freelists.org] On Behalf Of Jonathan Lewis Sent: Wednesday, June 23, 2004 2:05 PM
To: oracle-l_at_freelists.org
Subject: Re: what is obj$.type#=10?

Your original post about type# = 10 was correct - I did post something a long time ago about Oracle keeping obj# rows intact as type# = 10.

I think, at the time, that it was keeping two or three types, including tables. At present though it may only be keeping only synonyms (including private ones for objects in your own schema) and the only way that you can re-use those object numbers is to create a new synonym of the same name (which can reference a different object).

In this case, the type# = 10 really is the row for the object you have dropped, and not a previously existing "non-existent" object.

I don't have any idea at present why Oracle does this.

Regards

Jonathan Lewis

http://www.jlcomp.demon.co.uk

http://www.jlcomp.demon.co.uk/faq/ind_faq.html The Co-operative Oracle Users' FAQ

http://www.jlcomp.demon.co.uk/seminar.html Optimising Oracle Seminar - schedule updated May 1st

-----Original Message-----

Jonathan Lewis

Once again I learn something from the list. (I wrote a sample script = below to show what Mr. Lewis is talking about.) I have a question = though. In an Oracle 9.2 database, I create public synonym X for = some_table. Then I drop public synonym X. No one has ever used public = synonym X, there are no dependencies on it, so why does a row remain in = SYS.OBJ$ for X with type# 10? That row will remain until I restart the = database.



Please see the official ORACLE-L FAQ: http://www.orafaq.com

To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line.
--

Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html

The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. If the reader of this message is not the intended recipient, you are hereby notified that your access is unauthorized, and any review, dissemination, distribution or copying of this message including any attachments is strictly prohibited. If you are not the intended recipient, please contact the sender and delete the material from any computer.



Please see the official ORACLE-L FAQ: http://www.orafaq.com

To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line.
--

Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
Received on Wed Jun 23 2004 - 14:24:06 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US