Ora-21700 Object Does Not Exist Or Is Marked For Delete  With ST_GEOMETRY

17677
4
Jump to solution
01-31-2014 01:00 AM
EmadAl-Mousa
Occasional Contributor III
When trying to drop the SDE user, you are getting the error:

ORA-21700: object does not exist or is marked for delete
0 Kudos
1 Solution

Accepted Solutions
EmadAl-Mousa
Occasional Contributor III
A corruption is introduced in your ArcSDE Geodatabase instance:

1. Try to drop user SDE using drop user cascade command: DROP USER SDE CASCADE;
This will generate error if there are objects created using SDE.ST_GEOMETRY because of dependencies

2. Try to drop the tables in other schemas using the SDE.ST_GEOMETRY type
Get also error ORA-21700: object does not exist or is marked for delete

3. Back to SDE and try to drop the SDE.ST_GEOMETRY type gives error
ORA-21700: object does not exist or is marked for delete

The Cause of this issue:

Dictionary gets corrupted when tables using a specific object type (SDE.ST_GEOMETRY) are tried to be dropped after the type was tried to get dropped

The Solution:

the objects cannot be dropped after this type of corruption is introduced

The objects can be left there and create a new database for this cartridge to be reinstalled or create a new database and do full exp/imp

In order to avoid this problem the objects using the SDE.ST_GEOMETRY type have to be dropped before dropping the SDE schema. Also the drop user SDE cascade should not be used.

my blog reference: http://geodatamaster.wordpress.com/2014/01/31/ora-21700-object-does-not-exist-or-is-marked-for-delet...

ESRI Reference Link: http://support.esri.com/en/knowledgebase/techarticles/detail/34483

Oracle Metal ink reference document number 9876

View solution in original post

0 Kudos
4 Replies
EmadAl-Mousa
Occasional Contributor III
A corruption is introduced in your ArcSDE Geodatabase instance:

1. Try to drop user SDE using drop user cascade command: DROP USER SDE CASCADE;
This will generate error if there are objects created using SDE.ST_GEOMETRY because of dependencies

2. Try to drop the tables in other schemas using the SDE.ST_GEOMETRY type
Get also error ORA-21700: object does not exist or is marked for delete

3. Back to SDE and try to drop the SDE.ST_GEOMETRY type gives error
ORA-21700: object does not exist or is marked for delete

The Cause of this issue:

Dictionary gets corrupted when tables using a specific object type (SDE.ST_GEOMETRY) are tried to be dropped after the type was tried to get dropped

The Solution:

the objects cannot be dropped after this type of corruption is introduced

The objects can be left there and create a new database for this cartridge to be reinstalled or create a new database and do full exp/imp

In order to avoid this problem the objects using the SDE.ST_GEOMETRY type have to be dropped before dropping the SDE schema. Also the drop user SDE cascade should not be used.

my blog reference: http://geodatamaster.wordpress.com/2014/01/31/ora-21700-object-does-not-exist-or-is-marked-for-delet...

ESRI Reference Link: http://support.esri.com/en/knowledgebase/techarticles/detail/34483

Oracle Metal ink reference document number 9876
0 Kudos
VinceAngelo
Esri Esteemed Contributor
This has been discussed before, in the form of actual questions. This practice of posting self-answered questions appears to be a way of publicizing your blog, which is spamming.  Please do not spam this Forum.
0 Kudos
EmadAl-Mousa
Occasional Contributor III
First of all my "intentions" is to "share knowledge".......

I checked the forums about this problem "before" posting my thread, and the answer was not written in a systematic way.

This forum has helped me a lot for the last couple of years, and i think i am contributing in it even if its in small amount.
0 Kudos
VinceAngelo
Esri Esteemed Contributor
You "answered" the question in second person, as if you hadn't asked it, then gave yourself MVP points for responding.  This is abusive.  You could have just posted a discussion thread.  And this is the third occurrence of this practice. I understand the desire to help others, but publicizing your blog in this manner crosses the line to helping yourself.
0 Kudos