Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Disabling local partitioned indexes for load
Beth,
This seems to be it. If I disable to PK, the ignore for everything else is happy...so, the question becomes...
I have a table that represents quarterly data. The data in it is basically the same for every quarter...adding the period is what makes things unique. What is important from a processing standpoint is that no row in a single period be a duplicate, duplicates sans period are fine across the table.
Due to indexing, loading each successive period is taking way too long, approx. 24 hours. Without indexes this is a matter of a couple hours tops.
In this situation, would it make since to (yes this is heresy) NOT have a PK constraint, but have unique indexes on each partition. The UIs concatenated with the periods effectively ARE the PK, but because all the indexes are made local, I can now disable them on the new period during loads.
Other than religious conviction (and for the record, I routinely tell developers to NEVER request a table without a PK), am I missing a good reason not to do this?
TIA,
John P Weatherman
Database Administrator
Replacements Ltd.
-----Original Message-----
From: Seefelt, Beth [mailto:Beth.Seefelt_at_TetleyUSA.com]
Sent: Monday, September 09, 2002 5:25 PM
To: Multiple recipients of list ORACLE-L
Subject: RE: Disabling local partitioned indexes for load
Hi,
I believe there is the caveat that it doesn't apply to pk indexes, because they are required to enforce the integrity constaint, although I can't find that in the documentation at the moment.
Beth
-----Original Message-----
Sent: Monday, September 09, 2002 5:03 PM
To: Multiple recipients of list ORACLE-L
Sorry...sent with the wrong heading......
-----Original Message-----
Sent: Monday, September 09, 2002 4:18 PM
To: Multiple recipients of list ORACLE-L
Hi all,
I have a large data load to run into a partitioned table. With indexes
the
load takes over 24 hours, without on the order of 3 hours, obviously, I
don't want to mess with the indexes until after the job completes. So I
try to drop to local indexes and get ORA-14076. Fair enough. I go to metastink and see note 107976.1...exactly what I want. So I try to use it...and get ORA-01502. Has anybody done something like this and found there's an extra caveat from the note? Every other note oracle has seems to point back to the original one I am using. I'm on Solaris 8/Oracle 9.0.1.3.
Any help would be appreciated. Here's the output I'm getting...
SQL> select index_name, status from dba_ind_partitions where
partition_name
= 'TYPE13';
INDEX_NAME STATUS ------------------------------ -------- I_BUY_PR_PCE_TYPE_HIST_3 USABLE I_BUY_PR_PCE_TYPE_HIST_2 USABLE I_BUY_PR_PCE_TYPE_HIST_1 USABLE
SQL> select index_name, status from dba_ind_partitions where
partition_name
= 'TYPE13';
INDEX_NAME STATUS ------------------------------ -------- I_BUY_PR_PCE_TYPE_HIST_3 UNUSABLE I_BUY_PR_PCE_TYPE_HIST_2 UNUSABLE I_BUY_PR_PCE_TYPE_HIST_1 UNUSABLE
Session altered.
SQL> insert into buy_price_piece_type_history partition (type13) select
*
from hold_type13;
insert into buy_price_piece_type_history partition (type13) select *
from
hold_type13
*
ERROR at line 1:
ORA-01502: index 'RLADMIN.PK_BUY_PRICE_PCE_TYPE_HISTORY' or partition of
such
index is in unusable state
SQL>
TIA,
John P Weatherman
Database Administrator
Replacements Ltd.
--
Please see the official ORACLE-L FAQ: http://www.orafaq.com
--
Author: John Weatherman
INET: john.weatherman_at_replacements.com
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).
Fat City Network Services -- (858) 538-5051 FAX: (858) 538-5051 San Diego, California -- Public Internet access / Mailing Lists --------------------------------------------------------------------To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L Received on Tue Sep 10 2002 - 08:36:09 CDT
![]() |
![]() |