Partition key

Hi all,
Does anybody knows if ILM assistan (in 1.3 Version ) is able to manage partition table with no date partition key??
I am adding tables to Lifecycle Tables and they are falling with a ORA-20015: Invalid tablespace for table.
I have read here, solution would be adding a date column and use it as partition key. Is it right???

Hi, probably the replies in this thread will help....
Re: Partitioning possibilities for ILM Assistant

Similar Messages

  • How to make use of a list partition key in an IR?

    Hi all -- wondering if anyone has any thoughts on the following:
    I have a table like this:
    CREATE TABLE protocol (
    ptl_id INTEGER,
    ptl_name VARCHAR2(100),
    and this table is LIST partitioned on the key value PTL_ID. (There are many reasons for this need which I won't go into).
    My question is, queries that use this table in Interactive Reports I have always have the PTL_ID in them, but it's never a displayed column, it's always hidden (as it's a meaningless surrogate key, not to display to the user). However the default IR behavior, when filtering, won't use it, it will use PTL_NAME (if filtering on a particular PROTOCOL).
    What can I do to make the IR use the list partition key PTL_ID instead of PTL_NAME, even though PTL_ID is hidden and PTL_NAME is displayed? I'd get MUCH better performance if I could get it to query via the list partition key.
    Any thoughts??
    Thanks!
    David

    Users can change the name of the protocol at will, so that is not an option. Switching the partitioning is not an option either, as the PTL_ID's/partitions get pre-created during scheduled maintenance, and there is no tolerance to downtime to create a new partition for every new protocol as they are needed.
    Each partition is put in a separate tablespace as there is a need to archive off protocols once they are done.
    So I'm back to the original question still. My guess is the answer involves a bunch coding work arounds, not something native in the IRs. I figured I'd ask.
    Thanks
    David

  • NULL partition key in RANGE partition

    All,
    This is regarding partitioning a table using RANGE partition method. But the partition key contains null. How do I handle this situation? This is because there is no DEFAULT partition in RANGE partition though its present in LIST partition. Will rows with NULL partition key fall in MAXVALUE partition? Seeking your guidence.
    Thanks,
    ...

    NULLS would fit into the MAXVAL partition yes.
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/partconc.htm#sthref2590
    Thanks
    Paul

  • "ORA-14400: inserted partition key does not map to any partition"

    Hi Experts,
    While loading from DSO to Infocube, we are facing the below issue.,
    Database error text........: "ORA-14400: inserted partition key does no
    any partition"
    Internal call code.........: "[RSQL/INSR//BIC/FZORIMB08C ]"
    Please check the entries in the system log (Transaction SM21).
    "DBIF_RSQL_SQL_ERROR" "CX_SY_OPEN_SQL_DB"
    "GP4JNZKXF93GTRTVQO7A5J3Z2VD" or "GP4JNZKXF93GTRTVQO7A5J3Z2VD"
    "WRITE_ICFACT"
    Information on where terminated:
    Termination occurred in the ABAP program "GP4JNZKXF93GTRTVQO7A5J3Z2VD" - in
    "WRITE_ICFACT".
    The main program was "RSBATCH_EXECUTE_PROZESS ".
    In the source code you have the termination point in line 5185
    of the (Include) program "GP4JNZKXF93GTRTVQO7A5J3Z2VD".
    The program "GP4JNZKXF93GTRTVQO7A5J3Z2VD" was started as a background job.
    Job Name....... "BIDTPR_1999057_1"
    Job Initiator.. "ALE_POS"
    Job Number..... 09074400
    The termination is caused because exception "CX_SY_OPEN_SQL_DB" occurred in
    procedure "WRITE_ICFACT" "(FORM)", but it was neither handled locally nor
    declared
    in the RAISING clause of its signature.
    The procedure is in program "GP4JNZKXF93GTRTVQO7A5J3Z2VD "; its source code
    begins in line
    5147 of the (Include program "GP4JNZKXF93GTRTVQO7A5J3Z2VD ".
    Can anyone help me.
    Regards,
    Aaryan

    Hi Aaryan,
    From an Oracle point of view the error ORA-14400 is due to the partition range where an insert rows with a value out-of-bound of partition range
    The system displays the error message if you want to load data into a partitioned table where the partitions have not been defined correctly.
    Please run the RSRV test "Entries Not Used in the Dimension of an InfoCube " for the relevant Infocube and afterwards repair any errors with "Correct error" button.
    Please have a look at the following notes:
      #509660 - ORACLE ERROR 14400 during update to the InfoCube
      #590370 - too many uncompressed request (f table partitions)
    Finally please do not leave the infocube uncompressed.
    Rgds,
    Colum

  • What Oracle Table contains Partition Key Field Name?

    What Oracle table/view maintains the partition key field name?
    All_Tab_Partitions does not appear to maintain such information.
    When I use Toad -> Schema -> Tables -> Partitions, it lists the partition key field name that the partition is based.
    Thank You

    all_part_key_columns
    or
    USER_part_key_columns
    Edited by: OrionNet on Dec 5, 2008 3:56 PM

  • Query with non partition key in partitioning table

    i compare query select with non-partition key condition in table partition with 3, 4 and 6 partition.
    time execution for 3 partition faster then 4 partition, time execution for 4 partition faster than 6 partition.
    i know processing query select is selection all partition, but i don't know what make time execution different between 3, 4 and 6 partition??
    whether the transfer from one partition to another partition takes time?
    this example sql trace query select for 3,4 and 6 partition
    3 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.70       7.57      25291     1157583
    total        5.70       7.57      25291     1157583
    Parsing user id: 61  (SKENARIO1)
    Rows     Execution Plan
          0  SELECT STATEMENT   MODE: ALL_ROWS
          0   PARTITION HASH (ALL) PARTITION: START=1 STOP=3
          0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
                   'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=34 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.46       8.03      25126     1157583
    total        5.46       8.03      25126     1157583
    Parsing user id: 62  (SKENARIO2)
    Rows     Execution Plan
          0  SELECT STATEMENT   MODE: ALL_ROWS
          0   PARTITION HASH (ALL) PARTITION: START=1 STOP=4
          0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
                   'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=46 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.73       9.13      25190     1157583
    total        5.73       9.13      25190     1157583
    Parsing user id: 63  (SKENARIO3)
    Rows     Execution Plan
          0  SELECT STATEMENT   MODE: ALL_ROWS
          0   PARTITION HASH (ALL) PARTITION: START=1 STOP=6
          0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
                   'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=6thanks
    best regards
    eko

    ekopur wrote:
    i compare query select with non-partition key condition in table partition with 3, 4 and 6 partition.
    time execution for 3 partition faster then 4 partition, time execution for 4 partition faster than 6 partition.
    i know processing query select is selection all partition, but i don't know what make time execution different between 3, 4 and 6 partition??
    whether the transfer from one partition to another partition takes time?
    this example sql trace query select for 3,4 and 6 partition
    3 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.70       7.57      25291     1157583
    total        5.70       7.57      25291     1157583
    Parsing user id: 61  (SKENARIO1)
    Rows     Execution Plan
    0  SELECT STATEMENT   MODE: ALL_ROWS
    0   PARTITION HASH (ALL) PARTITION: START=1 STOP=3
    0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
    'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=34 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.46       8.03      25126     1157583
    total        5.46       8.03      25126     1157583
    Parsing user id: 62  (SKENARIO2)
    Rows     Execution Plan
    0  SELECT STATEMENT   MODE: ALL_ROWS
    0   PARTITION HASH (ALL) PARTITION: START=1 STOP=4
    0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
    'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=46 partition
    SELECT *
    FROM
    EQU_PARAM_MONITORINGHASH WHERE TO_CHAR(time_stamp,'mm/yy')=('02/09')
    call          cpu    elapsed       disk        rows
    Parse        0.00       0.00          0           0
    Execute      0.00       0.00          0           0
    Fetch        5.73       9.13      25190     1157583
    total        5.73       9.13      25190     1157583
    Parsing user id: 63  (SKENARIO3)
    Rows     Execution Plan
    0  SELECT STATEMENT   MODE: ALL_ROWS
    0   PARTITION HASH (ALL) PARTITION: START=1 STOP=6
    0    TABLE ACCESS   MODE: ANALYZED (FULL) OF
    'EQU_PARAM_MONITORINGHASH' (TABLE) PARTITION: START=1 STOP=6
    I'm assuming you recreated the table a couple of times with different numbers of hash partitions. (Tip: always use a power of two for the number of hash partitions - it keeps them all around the same size if you are using the feature on an appropriate data set.)
    There isn't really enough difference in time within the database to make any sensible comment about the difference in times. I note that you have also edited out the fetch count for the 1.1 million rows fetched, and have not captured (or perhaps just not printed) the wait times, so we don't know where you spent the time inside and outside the database.
    For all we can tell, the difference you are worried about might simply be network time on the fetch calls, and have nothing to do with the extract you've published.
    Regards
    Jonathan Lewis

  • Partitioning key columns

    Hi,
    I have created range partitioning on T_SEP
    STEP 1: Create temporary table t_SEP_TMP
    CREATE TABLE  "T_SEP"
       (     "SEP_SID" NUMBER(20,0)  ,
         "SEP_CURR_SID" NUMBER(20,0)  ,
         "BUS_CYC_D" DATE ,
            "FUND_BUS_D"  DATE)
          PARTITION BY RANGE (BUS_CYC_D)
    ( PARTITION STG_1 VALUES LESS THAN ( TO_DATE('19/12/08','DD/MM/YYYY'))
       TABLESPACE STG_1, 
      PARTITION STG_3 VALUES LESS THAN ( TO_DATE('22/12/08','DD/MM/YYYY'))
       TABLESPACE STG_2,
      PARTITION STG_4 VALUES LESS THAN (TO_DATE('23/12/08','DD/MM/YYYY'))
       TABLESPACE STG_3,
      PARTITION STG_5 VALUES LESS THAN (TO_DATE('24/12/08','DD/MM/YYYY'))
       TABLESPACE STG_4,
      PARTITION STG_6 VALUES LESS THAN (MAXVALUE)
       TABLESPACE STG_5
    currently, I have partitioning on only "BUS_CY_D" column, now I need to add one more column to the partitioning key. How can we do this?

    Anurag Tibrewal wrote:
    Hi,
    You can achieve this in following ways.
    1) Using DBMS_REDEFINITION
    2) a) Taking export backup of existing table.
    b) Rename existing table, constraints indexes
    c) Create new table with required paritition key
    d) Import the data to new table.
    Regards
    Anurag3) rename existing table, create table as select to create new table, add index constraints etc
    4) create table as select to create new table, drop existing table, rename new table, add index constraints etc
    5) create new table, for each partition of old table (insert data into new table, truncate old table partition) ... etc.
    I would try not to use the export method unless space was really tight. If space was an issue then I'd prefer 5.

  • When issuing a delete command, I get ORA-14400: inserted partition key...

    Ok, folks... this one is a little strange and baffling...
    I am running this command:
    delete
    from stgbb2_char_xref scx
    where exists (select 1 from tt a where scx.entity_id = a.entity_id and scx.attr_id = a.attr_id)
    the tt table is nothing but a regular heap table containing the rows that will be used to id those rows in STGBB2_CHAR_XREF that we need to delete.
    The definition of tt is:
    create table bloomberg.tt(
    ENTITY_ID     NUMBER(9,0) NOT NULL,
    ATTR_ID      NUMBER(9,0) NOT NULL
    parallel
    nocache
    nologging
    When running the delete, I get this error:
    [Error] Script lines: 1-3 --------------------------ORA-12801: error signaled in parallel query server P001
    ORA-14400: inserted partition key does not map to any partition
    (We are running Oracle 10g)
    The stgbb2_char_xref table is a partitioned IOT table - below is the definition:
    CREATE TABLE BLOOMBERG.STGBB2_CHAR_XREF (
    ENTITY_ID     NUMBER(9,0) NOT NULL,
    ATTR_ID      NUMBER(9,0) NOT NULL,
    BASE_ID      NUMBER(5,0) NOT NULL,
    ROW_ID      NUMBER NOT NULL,
    PRIMARY KEY(ENTITY_ID,ATTR_ID,BASE_ID,ROW_ID)
    ORGANIZATION INDEX
    parallel
    NOCACHE
    MONITORING
    partition list(base_id)
    (partition base_id1 values(1),
    partition base_id1 values(2500))
    The question is - why would I get a ORA-14400 on a delete?? I can understand if we were inserting data, but on a delete?? This looks like an Oracle bug almost??

    Good thought, but no - it's pretty much just a straight up partitioned table with no triggers that could contain an insert.

  • Imp error - ORA-14400: inserted partition key does not map to any partition

    Hi,
    We have a table (table t) with partitions (p1, p2, ... p12) and two of the partitions (p11 and p12) need to be imported into
    another database with different schema. Both the partitions to be imported are in two different export dumps. So, I started
    by dropping the table t and then import with the first export dump (p12). The first import went fine, but the second import
    failed with error:
    IMP-00058: ORACLE error 14400 encountered
    ORA-14400: inserted partition key does not map to any partition
    IMP-00057: Warning: Dump file may not contain data of all partitions of this table
    About to enable constraints...
    Import terminated successfully with warnings.
    The imp command used is:
    imp user/pwd tables=t log=imp.log file=exp.dmp fromuser=db1user touser=db2user ignore=Y grants=n indexes=n constraints=n
    statistics=none
    Please let me know where is the problem and what is the solution? I need to import the second partition (p11) also
    successfully.
    Thanks.
    BNetra

    Created a new partition REST_VALUES with higher range value and all my imports worked fine. But now I have two related issues:
    1) All the data got imported into the new partition instead of correct partitions.
    2) I observed that the column on which the table is partitioned CREATE_DATE values have been changed to today's (import) date for all rows imported into the new partition.
    How do I import properly into respective partitions and not into temporary new partition?
    Why did the CREATE_DATE value got changed automatically during import?
    Thanks.

  • Configuring IPIB with non-default partition key

    Hello
    I want to put IB HCA port into non-default partition to create separate network on my IB fabric. On IB switch (Voltaire ISR9096) I created network with non-default partition key 0x7ffe and add HCA port to this partition.
    But this IB-VPPA was displayed as unconfigured on Solaris host
    ib::3BA0001004181,ffff,ipib    IB-VPPA      connected    configured   ok
    ib::3BA0001004182,fffe,ipib    IB-VPPA      connected    unconfigured unknown
    ib::3BA0001004182,ffff,ipib    IB-VPPA      connected    configured   okConfiguration of new VPPA with cfgadm was unsuccessful:
    # cfgadm -c configure ib::3BA0001004182,fffe,ipib
    Configure the device: /devices/ib:fabric::3BA0001004182,fffe,ipib
    This operation will suspend activity on the IB device
    Continue (yes/no)? yes
    cfgadm: Hardware specific failure: configure operation failed ap_id: /devices/ib:fabric::3BA0001004182,fffe,ipibI unconfigured VPPA with default partition key (0xffff) on HCA port 0x3BA0001004182 and issued cfgadm for VPPA with pkey 0xfffe again - the same effect.
    I tried this on Solaris 10 8/07 and OpenSolaris b72 with the same result - no success ;)
    Is it possible to configure VPPA with non-default pkey on Solaris ?
    Is it possible to configure more than 1 IPIB VPPA on single HCA port ?
    How to perform these configurations ?
    Thanks in advance.
    Regards,
    Denis

    hi
    I was able to setup the listener to serve both databases using netmgr, thanks. Apparently I was trying to use the wrong tool for this previously.
    Now i'm able to access the EM Database Control and it seems to be working fine though i get the following error message
    Logged in As SYS
    Error
    java.lang.Exception: Number of responses does not match queries
    Database Instance: devel.foo.bar
    Now, i'd like to be able to use EM for administering two separate databases (running on the same host). Do i need to migrate the database control somehow to grid control? How do i do that?
    What about security? I'd like to use SSL and limit connections to selected clients only.
    regards,
    aspa

  • |Error SQL: ORA-14400: inserted partition key does not map to any partition

    I have an installation of ECC6 with BI7 in which consolidated through SEM-BCS OBCS_C10 with the cube, which I have version 100 for fiscal data, 101 data for IFRS and IFRS Copying a 301 version.
    The client will ask me the empty version of the 301 in the cube OBCS_C10.
    Before switching to empty the cube "Target Real-Time Data Can Be Loaded With Data; Planning Not Allowed."
    To empty the cube using transaction RSA1 / manage / contents / Delete Selection.
    However, the data is not erased and revise the job gives me the error:
    Resumen log job para job BI_INDXD51A1NTCIYWU06OKZZESN1R94 / 07520600
    Log job
    Hora
    Txt.mje.no codificado
    04.02.2009
    07:52:06
    El job ha sido lanzado.
    04.02.2009
    07:52:06
    Paso 001 iniciado (programa RSINDEX1, variante &0000000000108, usuario ACHUY)
    04.02.2009
    07:52:10
    SQL: 04.02.2009 07:52:10 ACHUY
    04.02.2009
    07:52:10
    DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'
    04.02.2009
    07:52:10
    AND INDEXNAME = ' ' AND TABNAME =
    04.02.2009
    07:52:10
    '/BI0/D0BCS_C101
    04.02.2009
    07:52:10
    SQL-END: 04.02.2009 07:52:10 00:00:00
    04.02.2009
    07:52:10
    SQL: 04.02.2009 07:52:10 ACHUY
    04.02.2009
    07:52:10
    DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'
    04.02.2009
    07:52:10
    AND INDEXNAME = ' ' AND TABNAME =
    04.02.2009
    07:52:10
    '/BI0/D0BCS_C101
    04.02.2009
    07:52:10
    SQL-END: 04.02.2009 07:52:10 00:00:00
    04.02.2009
    07:52:10
    SQL: 04.02.2009 07:52:10 ACHUY
    04.02.2009
    07:52:10
    CREATE TABLE "/BI0/0100000076" PCTFREE 00
    04.02.2009
    07:52:10
    PCTUSED 00 INITRANS 001 TABLESPACE PSAPSR3
    04.02.2009
    07:52:10
    STORAGE (INITIAL     0000000016 K NEXT
    04.02.2009
    07:52:10
    0000000016 K MINEXTENTS  0000000001 MAXEXTENTS
    04.02.2009
    07:52:10
    UNLIMITED PCTINCREASE 0000 FREELISTS   001
    04.02.2009
    07:52:10
    FREELIST GROUPS 01) AS SELECT DISTINCT DIMID FROM
    04.02.2009
    07:52:10
    "/BI0/D0BCS_C101" "DIM" , "/BI0/SCS_VERSION"
    04.02.2009
    07:52:10
    "MD1" WHERE "DIM"."SID_0CS_VERSION" = "MD1"."SID"
    04.02.2009
    07:52:10
    AND ( "MD1"."CS_VERSION" BETWEEN '301' AND '301'
    04.02.2009
    07:52:10
    SQL-END: 04.02.2009 07:52:10 00:00:00
    04.02.2009
    07:52:25
    SQL: 04.02.2009 07:52:25 ACHUY
    04.02.2009
    07:52:25
    DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'
    04.02.2009
    07:52:25
    AND INDEXNAME = ' ' AND TABNAME = '/BI0/F0BCS_C10
    04.02.2009
    07:52:25
    SQL-END: 04.02.2009 07:52:25 00:00:00
    04.02.2009
    07:52:25
    SQL: 04.02.2009 07:52:25 ACHUY
    04.02.2009
    07:52:25
    DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'
    04.02.2009
    07:52:25
    AND INDEXNAME = ' ' AND TABNAME = '/BI0/F0BCS_C10
    04.02.2009
    07:52:25
    SQL-END: 04.02.2009 07:52:25 00:00:00
    04.02.2009
    07:52:25
    SQL: 04.02.2009 07:52:25 ACHUY
    04.02.2009
    07:52:25
    CREATE TABLE "/BI0/0100000030" PCTFREE 10
    04.02.2009
    07:52:25
    PCTUSED 00 INITRANS 001 TABLESPACE PSAPSR3
    04.02.2009
    07:52:25
    STORAGE (INITIAL     0000000016 K NEXT
    04.02.2009
    07:52:25
    0000000000 K MINEXTENTS  0000000001 MAXEXTENTS
    04.02.2009
    07:52:25
    2147483645 PCTINCREASE 0000 FREELISTS   001
    04.02.2009
    07:52:25
    FREELIST GROUPS 01) PARTITION BY RANGE
    04.02.2009
    07:52:25
    ("KEY_0BCS_C10P") ( PARTITION "/BI0/F0BCS_C100"
    04.02.2009
    07:52:25
    VALUES LESS THAN (0) TABLESPACE "PSAPSR3",
    04.02.2009
    07:52:25
    PARTITION "/BI0/F0BCS_C100000000019" VALUES LESS
    04.02.2009
    07:52:25
    THAN (0000000019) TABLESPACE "PSAPSR3", PARTITION
                  |
    04.02.2009
    07:52:25
    "/BI0/F0BCS_C100000000276" VALUES LESS THAN
    04.02.2009
    07:52:25
    (0000000276) TABLESPACE "PSAPSR3", PARTITION
    04.02.2009
    07:52:25
    "/BI0/F0BCS_C100000000277" VALUES LESS THAN
    04.02.2009
    07:52:25
    (0000000277) TABLESPACE "PSAPSR3") AS SELECT *
    04.02.2009
    07:52:25
    FROM "/BI0/F0BCS_C10" WHERE "KEY_0BCS_C101" NOT
    04.02.2009
    07:52:25
    IN ( SELECT "DIMID" FROM "/BI0/0100000076"
    04.02.2009
    07:52:29
    SQL-END: 04.02.2009 07:52:29 00:00:04
    04.02.2009
    07:52:29
    Error SQL: ORA-14400: inserted partition key does not map to any partition
    04.02.2009
    07:52:29
    Error de sistema: CREATE_TABLE_AS_SELECT/RSDU_EXEC_SQL /BI0/0100000030 14400
    04.02.2009
    07:52:29
    El job ha sido cancelado tras excepción de sistema ERROR_MESSAGE.
    Someone has an idea how to fix this?

    This is the SQL of the insert
    The partition condition of the table is the column ("KEY_0BCS_C10P")
    SELECT * FROM "/BI0/F0BCS_C10" WHERE "KEY_0BCS_C101" NOT IN ( SELECT "DIMID" FROM "/BI0/0100000076" )
    This is the info of the /BIO/0100000076 TABLE
    SQL> SELECT "DIMID" FROM sapsr3."/BI0/0100000076";
         DIMID
             6
    SQL>
    And this are the rows that I think are not included in the partitions of the table
      1  SELECT DISTINCT KEY_0BCS_C10P, KEY_0BCS_C101 FROM SAPSR3."/BI0/F0BCS_C10"
      2  WHERE KEY_0BCS_C10P > 277
      3* AND "KEY_0BCS_C101" NOT IN ( SELECT "DIMID" FROM SAPSR3."/BI0/0100000076" )
    SQL> /
    KEY_0BCS_C10P KEY_0BCS_C101
              284             4
              285             4
              293             3
              292             4
              293             4
              293             5
              285             3
              290             4
              292             5
              283             4
              285             5
    KEY_0BCS_C10P KEY_0BCS_C101
              291             5
              292             3
              291             4
    14 rows selected.
    SQL>

  • RA-14400: inserted partition key does not map to any partition

    Our repository tablespace filledup alll 40GB allocated and over the weekend we stopped OMS agenets and ran the package for partition maintenance.
    exec emd_maint_util.partition_maintenance;
    Now after starting OMS, all xml files are gettting moved errors directory and following error is getting reported in the emoms.trc file. Any idea how to add these partitions. Not much help in metalink. One of the note says try running "exec emd_loader.rollup(); ". THis is for 10GR1 grid conrol. I am running 10gR2 and reopositiry database 10.1.0.5
    ==========>
    at oracle.sysman.emdrep.dbjava.loader.XMLLoader.run(XMLLoader.java:1304)
    at java.lang.Thread.run(Thread.java:534)
    2007-05-04 15:35:35,312 [XMLLoader0 90000003561.xml] WARN eml.XMLLoader LoadFiles.672 - Marking the file for retry : 90000003561.xml after receiving exceptionjava.sql.SQLException: ORA-14400: inserted partition key does not map to any partition
    <========

    I think emd_loader.rollup is part of the
    emd_maintenance.analyze_emd_schema('SYSMAN') package. Let me try this.

  • ORA-14402: updating partition key column would cause a partition change

    Hi,
    When I am trying to execute an update statement where i am tring to update date values emp_det from 11-oct-2010 to 12-nov-2010.
    Oracle throws an error :
    ORA-14402
    updating partition key column would cause a partition change
    I think that this is because emp_det is a partitioning key of a partitioned table.
    Oracle documentation says that
    "UPDATE will fail if you change a value in the column that would move the
    row to a different partition or subpartition, unless you enable row
    movement" .
    alter table t enable row movement;
    I did not understand what is meant by "enable row movement".
    I cannot drop the partitions and recreate it after updating the table and also i don't have proper priviliges for enale row movement syntax
    because of the lack of privileges. How to solve this is issues with out row movement and recreate partition.
    Can this be done by a developer or is there any other way to execute update in this case? its urgent.. pls help..
    thanks in advance..
    By
    Sivaraman
    Edited by: kn_sivaraman on Nov 1, 2010 2:32 AM

    kn_sivaraman wrote:
    I did not understand what is meant by "enable row movement". Each partition in partitioned table is physically separate segment. Assume you have a row that belongs to partition A stored in segment A and you change row's partitioning column to value that belongs to partition B - you have an issue since updated row can't be now stored in segment A anymore. By default such update is not allowed and you get an error. You can enable row movement and Oracle will move row to target partition:
    SQL> CREATE TABLE SALES_LIST(
      2                          SALESMAN_ID NUMBER(5,0),
      3                          SALESMAN_NAME VARCHAR2(30),
      4                          SALES_STATE VARCHAR2(20),
      5                          SALES_AMOUNT NUMBER(10,0),
      6                          SALES_DATE DATE
      7                         )
      8    PARTITION BY LIST(SALES_STATE)
      9    (
    10     PARTITION SALES_WEST     VALUES('California', 'Hawaii'),
    11     PARTITION SALES_EAST     VALUES('New York', 'Virginia', 'Florida'),
    12     PARTITION SALES_CENTRAL  VALUES('Texas', 'Illinois'),
    13     PARTITION SALES_OTHER    VALUES(DEFAULT)
    14    )
    15  /
    Table created.
    SQL> insert
      2    into sales_list
      3    values(
      4           1,
      5           'Sam',
      6           'Texas',
      7           1000,
      8           sysdate
      9          )
    10  /
    1 row created.
    SQL> update sales_list
      2    set  sales_state = 'New York'
      3    where sales_state = 'Texas'
      4  /
    update sales_list
    ERROR at line 1:
    ORA-14402: updating partition key column would cause a partition change
    SQL> alter table sales_list enable row movement
      2  /
    Table altered.
    SQL> update sales_list
      2    set  sales_state = 'New York'
      3    where sales_state = 'Texas'
      4  /
    1 row updated.
    SQL> SY.

  • Vld 004 error - partition key has less than 2 partitions defined

    HI All,
    i have created a new table with a partition on one colunm. when i am trying to validate the table in owb, i am getting the vld-904 - partition key has less than two partitions defined error.
    please help.
    thank you.

    Hi,
    Oracle DB requires that a partitioned table has at least 2 partitions. That is why you get an error from owb, the table creation would fail anyway.
    Regards,
    Carsten.

  • Oracle 11gR2: partition key column, need to be modified

    Hi folks,
    Have a situation, need to increase a column width, which is also a partition key and table is pretty huge, can any one assist, what is the best possible way to achieve this task.
    Thanks in advance.

    No need to build multiple temp tables, do multiple swaps, and do multiple redefines of the temp table columns when you can just build the one table that you need.OK. Could you show us a script for your approach.
    Meantime I show mine.
    Preparation
    create table PART_TEST (part_key number(1), val varchar2(100))
    partition by range(part_key)(
      partition P0 values less than (1),
      partition P1 values less than (2),
      partition P2 values less than (3),
      partition P3 values less than (4)
    insert into PART_TEST values (0,'zero');
    insert into PART_TEST values (1,'one');
    insert into PART_TEST values (2,'two');
    insert into PART_TEST values (3,'three');
    commit;The modification
    set timing on
    create table PART_TEST_P0 as select * from PART_TEST where 1=0;
    create table PART_TEST_P1 as select * from PART_TEST where 1=0;
    create table PART_TEST_P2 as select * from PART_TEST where 1=0;
    create table PART_TEST_P3 as select * from PART_TEST where 1=0;
    alter table PART_TEST exchange partition P0 with table PART_TEST_P0;
    alter table PART_TEST exchange partition P1 with table PART_TEST_P1;
    alter table PART_TEST exchange partition P2 with table PART_TEST_P2;
    alter table PART_TEST exchange partition P3 with table PART_TEST_P3;
    alter table PART_TEST_P0 modify part_key number(6);
    alter table PART_TEST_P1 modify part_key number(6);
    alter table PART_TEST_P2 modify part_key number(6);
    alter table PART_TEST_P3 modify part_key number(6);
    drop table PART_TEST;
    create table PART_TEST (part_key number(6), val varchar2(100))
    partition by range(part_key)(
      partition P0 values less than (1),
      partition P1 values less than (2),
      partition P2 values less than (3),
      partition P3 values less than (4)
    alter table PART_TEST exchange partition P0 with table PART_TEST_P0;
    alter table PART_TEST exchange partition P1 with table PART_TEST_P1;
    alter table PART_TEST exchange partition P2 with table PART_TEST_P2;
    alter table PART_TEST exchange partition P3 with table PART_TEST_P3;Whole modification of the column takes a fraction of second because there is no need to physically move data. Only metadata is changed.

  • Column Containing Partition Key Condition Information

    I am using 11.2.0.2 on AIX 6.1.
    I am creating a range partition table as below.
    CREATE TABLE SALES_RANGE
      ( prod_id       NUMBER(6)
      , cust_id       NUMBER
      , time_id       DATE
      , channel_id    NUMBER(3)
    PARTITION BY RANGE (time_id)
    ( PARTITION sales_q1_2012 VALUES LESS THAN (TO_DATE('01-APR-2012','dd-MON-yyyy'))
    , PARTITION sales_q2_2012 VALUES LESS THAN (TO_DATE('01-JUL-2012','dd-MON-yyyy'))
    , PARTITION sales_q3_2012 VALUES LESS THAN (TO_DATE('01-OCT-2012','dd-MON-yyyy'))
    , PARTITION sales_q4_2012 VALUES LESS THAN (TO_DATE('01-JAN-2013','dd-MON-yyyy'))
    );I can find all the information related to this table in dictionary tables like below.
    SQL> SELECT OWNER,
           TABLE_NAME,
           PARTITIONING_TYPE,
           SUBPARTITIONING_TYPE,
           PARTITION_COUNT,
           PARTITIONING_KEY_COUNT,
           STATUS,
           DEF_TABLESPACE_NAME
    FROM DBA_PART_TABLES
    WHERE OWNER='SCOTT';
    OWNER                          TABLE_NAME                     PARTITION SUBPARTIT PARTITION_COUNT PARTITIONING_KEY_COUNT STATUS   DEF_TABLESPACE_NAME
    SCOTT                          SALES_RANGE                    RANGE     NONE                    4                      1 VALID    USERS
    SQL> SELECT TABLE_OWNER,
           TABLE_NAME,
           COMPOSITE,
           PARTITION_NAME,
           PARTITION_POSITION,
           TABLESPACE_NAME,
           LAST_ANALYZED
    FROM DBA_TAB_PARTITIONS
    WHERE TABLE_OWNER='SCOTT'
    ORDER BY PARTITION_POSITION;
    TABLE_OWNER                    TABLE_NAME                     COM PARTITION_NAME                 PARTITION_POSITION TABLESPACE_NAME                LAST_ANAL
    SCOTT                          SALES_RANGE                    NO  SALES_Q1_2012                                   1 USERS                          17-FEB-12
    SCOTT                          SALES_RANGE                    NO  SALES_Q2_2012                                   2 USERS                          17-FEB-12
    SCOTT                          SALES_RANGE                    NO  SALES_Q3_2012                                   3 USERS                          17-FEB-12
    SCOTT                          SALES_RANGE                    NO  SALES_Q4_2012                                   4 USERS                          17-FEB-12
    SQL> SELECT * FROM DBA_PART_KEY_COLUMNS WHERE OWNER='SCOTT';
    OWNER      NAME            OBJEC COLUMN_NAME     COLUMN_POSITION
    SCOTT      SALES_RANGE     TABLE TIME_ID                       1But where can i find the partition key condition i.e. *"VALUES LESS THAN (TO_DATE('01-APR-2012','dd-MON-yyyy'))"* in any dictionary table ?

    Thanks for your quick reply....
    I have already checked and included in my example given.
    SQL> SELECT * FROM DBA_PART_KEY_COLUMNS WHERE OWNER='SCOTT';
    OWNER      NAME            OBJEC COLUMN_NAME     COLUMN_POSITION
    SCOTT      SALES_RANGE     TABLE TIME_ID                       1It's only giving the column name on which partitioning is done, not the partitioning condition.
    My question was, in which table i can check the criteria on which i have range partitioned a table ? Is there an dictionary table which holds information like:
    PARTITION_NAME     PARTITION_CONDITION
    SALES_Q1_2012       VALUES LESS THAN (TO_DATE('01-APR-2012','dd-MON-yyyy')I hope i am clear in my question......

Maybe you are looking for