Skip to Main Content

Database Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Disable Local Partitioned Index for loading

robenourMay 18 2006 — edited May 19 2006
Currently we have a partitioned table with a spatial column. There are 10 range partitions based on a customers name. The table currently has 150 million rows. During the week we receive data from various sources that is encoded and converted to flat files that are loaded into the database on the weekend using sql loader. The data we receive is based on a "Market" which is a geographic location in the USA, Dayton Ohio would be a market. During the weekend process any old data for a market is removed and then the new market is loaded.
To make this load faster, we drop all indexes ( local partitioned ) and then re-create them unusable and then submit jobs to re-build each index. The entire process takes about 12 hours.

The business would like this process to run every night. This would only give us an 8 hour window. We thought that maybe if we changed our partitions to be based on market that we could disable only the indexes for that partition, delete the rows and then re-build the indexes after the load. Sounds great on paper, but we ran into a problem with the spatial indexes. We get an OERR: ORA-29954 stating that DML is not allowed when the index is either loading, failed or unusable.
The session trying to delete from the partitions sets the parameter ignore_unusable_indexes to true.

I opened an SR and was told this is impossible, I'd just like a sanity check to see if what we are trying to do sounds like it should work.

Thanks in advance.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 16 2006
Added on May 18 2006
8 comments
2,688 views