Buffer gets while inserting

Hi,
I have the table my_log in a 9.2.0.7 database. This table is used only for select and insert purposes (there are no deletions). The insertions are simple insert statement without any append hint. From Enterprise Manager I see that the insert performs a lot of buffer gets. This is reasonable because oracle must read the segment to find blocks to write (I imagine that it must also read dictionary and the indexes segments). In this scenario I imagine that the number of buffer getscan only grow over time. The strange thing is that the number of buffer gets can also decrease!
For example:
at 7:00 am => 9966 buffer gets
at 8:00 am => 9422 buffer gets
at 9:00 am => 8912 buffer gets
at 10:00 am => 9543 buffer gets
Why the number of buffer gets is so variable? I expected it to be increasing...

Have Checked below checklist
No joins can be made between a stored procedure and a table in a universe
No Query Filters can be used
No predefined conditions
The procedure itself may contain a variable that will prompt, but it cannot be manipulated.
They cannot be used in Linked Universes.
Not All Databases support stored procedures
These SQL Commands are not ALLOWED:  COMPUTE, PRINT, OUTPUT or STATUS
The stored procedures do not support OUT or dynamic result sets parameters
An IF statement cannot be used in the where clause.
You can only create a new universe based on the stored procedure.  You cannot add it to an existing universe.
The stored procedure creates all objects in the universe automatically.  If there is a long text object it will not generate an object.
If a change is made on the database to the stored procedure.  The universe view will not update the schema.  The stored procedure must be re-inserted.  (This causes the object id to change!)
In order to avoid parsing errors on stored procedures columns, it is recommended that you alias result columns based on complex SQL, for example using the aggregate functions - sum, count. The creation of aliased objects cannot be constrained.

Similar Messages

  • What causes BUFFER GETS and PHYSICAL READS in INSERT operation to be high?

    Hi All,
    Am performing a huge number of INSERTs to a newly installed Oracle XE 10.2.0.1.0 on Windows. There is no SELECT statement running, but just INSERTs one after the other of 550,000 in count. When I monitor the SESSION I/O from Home > Administration > Database Monitor > Sessions, I see the following stats:
    BUFFER GETS = 1,550,560
    CONSISTENT GETS = 512,036
    PHYSICAL READS = 3,834
    BLOCK CHANGES = 1,034,232
    The presence of 2 stats confuses. Though the operation is just INSERT in database for this session, why should there be BUFFER GETS of this magnitude and why should there by PHYSICAL READS. Aren't these parameters for read operations? The BLOCK CHANGES value is clear as there are huge writes and the writes change these many blocks. Can any kind soul explain me what causes there parameters to show high value?
    The total columns in the display table are as follows (from the link mentioned above)
    1. Status
    2. SID
    3. Database Users
    4. Command
    5. Time
    6. Block Gets
    7. Consistent Gets
    8. Physical Reads
    9. Block Changes
    10. Consistent Changes
    What does CONSISTENT GETS and CONSISTENT CHANGES mean in a typical INSERT operation? And does someone know which all tables are involved in getting these values?
    Thank,
    ...

    Flake wrote:
    Hans, gracias.
    The table just have 2 columns, both of which are varchar2 (500). No constraints, no indexes, neither foreign key references are in place. The total size of RAM in system is 1GB, and yes, there are other GUI's going on like Firefox browser, notepad and command terminals.
    But, what does these other applications have to do with Oracle BUFFER GETS, PHYSICAL READS etc.? Awaiting your reply.Total RAM is 1GB. If you let XE decide how much RAM is to be allocated to buffers, on startup that needs to be shared with any/all other applications. Let's say that leaves us with, say 400M for the SGA + PGA.
    PGA is used for internal stuff, such as sorting, which is also used in determing the layout of secondary facets such as indexes and uniqueness. Total PGA usage varies in size based on the number of connections and required operations.
    And then there's the SGA. That needs to cover the space requirement for the data dictionary, any/all stored procedures and SQL statements being run, user security and so on. As well as the buffer blocks which represent the tablespace of the database. Since it is rare that the entire tablespace will fit into memory, stuff needs to be swapped in and out.
    So - put too much space pressure on the poor operating system before starting the database, and the SGA may be squeezed. Put that space pressure on the system and you may enbd up with swapping or paging.
    This is one of the reasons Oracle professionals will argue for dedicated machines to handle Oracle software.

  • Getting a Runtime Exception while inserting value in MSAccess 2000

    I am using below mentioned code to insert values in MSAccess 2000 which having table structure as mentioned below:-
    Field Name
    Data Type
    TodaysDate
    Date/Time
    Cart ID
    Number
    Client Name
    Text
    Team & Segment
    Text
    Duration
    Number
    Tape ID
    Text
    Start Date
    Date/Time
    End Date
    Date/Time
    Code:-
    private boolean enterDataIntoMSAccessDatabaseusingPreparedStatement()
            try {
                ps = connection.prepareStatement("INSERT INTO [Cart ID Details] VALUES (?,?,?,?,?,?,?,?)");
                System.out.println("After Query");
            catch (SQLException se) {
                generateErrorMessage("Error in Prepared Statement \n " + se.getMessage() );
                return false;
            catch (Exception e)
                generateErrorMessage("Unexpected Error Occured \n " + e.getMessage());
            String todaysDate = cartIDApplicationAddCartIDDatejTextField.getText().trim();
            String cartID = cartIDApplicationAddCartIDCartIDjTextField.getText().trim();
            String clientName = cartIDApplicationAddCartIDClientNamejTextField.getText().trim();
            String teamSegment = cartIDApplicationAddCartIDTeamAndSegmentjTextField.getText().trim();
            String duration = cartIDApplicationAddCartIDDurationjTextField.getText().trim();
            String tapeID = cartIDApplicationAddCartIDTapeIDjTextField.getText().trim();
            String startDate = cartIDApplicationAddCartIDStartDatejTextField.getText().trim();
            String endDate = cartIDApplicationAddCartIDEndDatejTextField.getText().trim();
            try {
                //System.out.println("Before ps.setString()");
                ps.setString(1, todaysDate);
                ps.setString(2, cartID );
                ps.setString(3, clientName);
                ps.setString(4, teamSegment);
                ps.setString(5, duration);
                ps.setString(6, tapeID);
                ps.setString(7, startDate);
                ps.setString(8, endDate);
                //System.out.println("After ps.setString()");
                    ps.executeUpdate();
            catch (SQLException se) {
                generateErrorMessage("Error while inserting data in database \n " + se.getMessage());
                return false;
            catch (Exception e)
                generateErrorMessage("Unexpected Error Occured \n" + e.getMessage() );
            return true;
    The above boolean function is called in "Save Button" action event, but when I click Save I am getting as Runtime Exception.
    Kindly help me to sort out this issue.

    Print stack traces not just messages.  And it will tell you what is wrong.  And if you posted the stack trace someone else might be able to tell you.
    If you get an exception DO NOT CONTINUE.  You can't do an update if the prepared statement failed so there is no point in trying.  (Of course that depends on what 'generateErrorMessage' does)
    Other than that note that you are using strings for everything even though the data types are not all text fields.

  • INSERT causing lots of buffer gets

    select * from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for Linux: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - ProductionSQL
    desc tab
    Name                                            Null?    Type
    DEF_ID                                   NOT NULL VARCHAR2(64)
    INST_ID                                     NOT NULL VARCHAR2(64)
    BUSINESS_KEY                             NOT NULL VARCHAR2(64)
    BUSINESS_DATA                                     CLOB
    TIME                                 NOT NULL TIMESTAMP(6)
    REQUEST_CXT                                     NOT NULL VARCHAR2(4000)
    IS_PROCESSED                                    NOT NULL NUMBER(3)
    ON_STATUS                                                  TIMESTAMP(6)
    RVN                                             NOT NULL NUMBER(10)
    HV                                                 NUMBER(10)
    ID                                          NOT NULL VARCHAR2(128)
    STATE                                                CHAR(1)
    insert into tab(def_id, inst_id, business_key,
    businessdata, time, is_processed, next_retry_time, on_status, req_cxt, hv,
    id, op_type, rvn ) values
    (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, 'I', 0)
    BUSINESS_DATA IS A clob datatype
    table got two indexes
    1.idx1(pk) on (inst_id,def_id,rvn)
    2.idx2 on (id,state,op_type)
    High buffer gets in past
    select a.sql_id,TO_DATE(TO_CHAR(b.BEGIN_INTERVAL_TIME,'DD-MON-YY HH24:MI'),'DD-MON-YY HH24:MI') as sdate,a.PLAN_HASH_VALUE,a.EXECUTIONS_DELTA EXE_D,
    case (executions_delta) when 0 then 0 else ceil(a.ROWS_PROCESSED_DELTA/a.EXECUTIONS_DELTA) end as RD,
    case (executions_delta) when 0 then 0 else ceil(a.ELAPSED_TIME_DELTA/a.EXECUTIONS_DELTA) end as  ELA_D_MCR_SEC,
    case (executions_delta) when 0 then 0 else ceil(a.BUFFER_GETS_DELTA/a.EXECUTIONS_DELTA) end as  BG_D,
    case (executions_delta) when 0 then 0 else ceil(a.IOWAIT_DELTA/a.EXECUTIONS_DELTA) end as W_IO_D_MCR_SEC
    from dba_hist_sqlstat a ,dba_hist_snapshot b where a.snap_id=b.snap_id and a.sql_id = 'ayzxbxqvp5dk3' and a.PARSING_SCHEMA_NAME='SAL_WORKFLOW'
    and BEGIN_INTERVAL_TIME>=TO_DATE('27-MAR-2013 21:00', 'dd-mon-yyyy hh24:mi') AND END_INTERVAL_TIME<=TO_DATE('27-MAR-2013 23:00', 'dd-mon-yyyy hh24:mi')
    order by 1,2;
    SQL_ID           SDATE                PLAN_HASH_VALUE        EXE_D           RD   ELA_D_MCR_SEC         BG_D   W_IO_D_MCR_SEC
    ayzxbxqvp5dk3    27.Mar.13/21:00:00                 0         2406            1           15876         1396             7052
    ayzxbxqvp5dk3    27.Mar.13/21:10:00                 0         2502            1           16401         1420             7001
    ayzxbxqvp5dk3    27.Mar.13/21:20:00                 0         3552            1           17444         1203             7183
    ayzxbxqvp5dk3    27.Mar.13/21:30:00                 0         2825            1           17860         1474             6310
    ayzxbxqvp5dk3    27.Mar.13/22:00:00                 0         1942            1           16250         1629             6510
    ayzxbxqvp5dk3    27.Mar.13/22:10:00                 0         2114            1           16276         1795             6170
    ayzxbxqvp5dk3    27.Mar.13/22:20:00                 0         2031            1           16769         1746             6604
    ayzxbxqvp5dk3    27.Mar.13/22:40:00                 0         2233            1           16435         1838             6348
    8 rows selected.
    select a.sql_id,TO_DATE(TO_CHAR(b.BEGIN_INTERVAL_TIME,'DD-MON-YY HH24:MI'),'DD-MON-YY HH24:MI') as sdate,a.PLAN_HASH_VALUE,a.EXECUTIONS_DELTA EXE_D,
    case (executions_delta) when 0 then 0 else ceil(a.ROWS_PROCESSED_DELTA/a.EXECUTIONS_DELTA) end as RD,
    case (executions_delta) when 0 then 0 else ceil(a.ELAPSED_TIME_DELTA/a.EXECUTIONS_DELTA) end as  ELA_D_MCR_SEC,
    case (executions_delta) when 0 then 0 else ceil(a.BUFFER_GETS_DELTA/a.EXECUTIONS_DELTA) end as  BG_D,
    case (executions_delta) when 0 then 0 else ceil(a.IOWAIT_DELTA/a.EXECUTIONS_DELTA) end as W_IO_D_MCR_SEC
    from dba_hist_sqlstat a ,dba_hist_snapshot b where a.snap_id=b.snap_id and a.sql_id = 'ayzxbxqvp5dk3' and a.PARSING_SCHEMA_NAME='SAL_WORKFLOW'
    and BEGIN_INTERVAL_TIME>=TO_DATE('26-MAR-2013 21:00', 'dd-mon-yyyy hh24:mi') AND END_INTERVAL_TIME<=TO_DATE('26-MAR-2013 23:00', 'dd-mon-yyyy hh24:mi')
    order by 1,2;
    SQL_ID           SDATE                PLAN_HASH_VALUE        EXE_D           RD   ELA_D_MCR_SEC         BG_D   W_IO_D_MCR_SEC
    ayzxbxqvp5dk3    26.Mar.13/21:00:00                 0         2948            1           11052           21            10543
    ayzxbxqvp5dk3    26.Mar.13/21:30:00                 0         2042            1           12381           23            11857
    ayzxbxqvp5dk3    26.Mar.13/21:40:00                 0         2329            1           12089           23            11586
    ayzxbxqvp5dk3    26.Mar.13/21:50:00                 0         2421            1           12209           23            11684
    ayzxbxqvp5dk3    26.Mar.13/22:00:00                 0         2360            1           10889           22            10398
    ayzxbxqvp5dk3    26.Mar.13/22:10:00                 0         2081            1           11059           22            10562
    ayzxbxqvp5dk3    26.Mar.13/22:20:00                 0         2384            1           11464           22            10894
    ayzxbxqvp5dk3    26.Mar.13/22:40:00                 0         2196            1           11514           22            11021
    8 rows selected.Table is a non partitioned table without any trigger.
    select OWNER,TABLE_NAME,SEGMENT_NAME,COLUMN_NAME,INDEX_NAME,CHUNK,ENCRYPT,COMPRESSION,SECUREFILE from dba_lobs where TABLE_NAME='&TABLE_NAME';
    OWNER             TABLE_NAME                       SEGMENT_NAME                     COLUMN_NAME            INDEX_NAME                       CHUNK   ENCR   COMPRE   SEC
    CLASS       TAB                       SYS_LOB0000119958C00004$$        BUSINESS_DATA   SYS_IL0000119958C00004$$          8192   NONE   NONE     NO
    COLUMN_NAME            NUM_DISTINCT    NUM_NULLS   LAST_ANALYZED          SAMPLE_SIZE   AVG_COL_LEN   HISTOGRAM                 DENSITY
    BUSINESS_DATA               0            0   16.Apr.13/09:28:06        14584877            87   NONE                  .0000000000Can anyone help me troubleshoot such high spike in buffer_gets ?

    >
    Can anyone help me troubleshoot such high spike in buffer_gets ?
    >
    You haven't posted anything indicating a 'high spike in buffer_gets'.
    All you posted are two sets of data with one set having higher values. Nothing indicates that the values are wrong or larger than they should be.
    When a new row is inserted it goes into a block. Oracle has to 'get' that block before it can put the row into it. The more rows you INSERT the more blocks that will likely be needed and the more 'gets' that will likely occur.
    You need to post something to support your assertion that there has been a 'spike' and also need to post some reason why that would be an issue even if there has been a spike.

  • Performance / buffer gets

    Hi all,
    possible someone could help me on following issue:
    I'm working for a software vendor and one of our customers is reporting that especially 2 of the sql statements of our application are " executed ineffective" on their database environment.
    They are especially saying that "These statements are consuming a lot of CPU and doing a lot of buffer gets in relation to the number of executions."
    They provided following extracts out of the statspack report.
    SQL1:
    SQL Statistics
    ~~~~~~~~~~~~~~
    -> CPU and Elapsed Time are in seconds (s) for Statement Total and in
       milliseconds (ms) for Per Execute
                                                           % Snap
                         Statement Total      Per Execute   Total
            Buffer Gets:         322,101             16.6     .89
             Disk Reads:             631              0.0     .48
         Rows processed:          19,444              1.0
         CPU Time(s/ms):              19              1.0
    Elapsed Time(s/ms):              26              1.3
                  Sorts:               0               .0
            Parse Calls:              -2              -.0
          Invalidations:               0
          Version count:               1
        Sharable Mem(K):              43
             Executions:          19,444 SQL2:
    SQL Statistics
    ~~~~~~~~~~~~~~
    -> CPU and Elapsed Time are in seconds (s) for Statement Total and in
       milliseconds (ms) for Per Execute
                                                           % Snap
                         Statement Total      Per Execute   Total
            Buffer Gets:         628,517             22.9    3.26
             Disk Reads:             128              0.0     .18
         Rows processed:          27,492              1.0
         CPU Time(s/ms):              27              1.0
    Elapsed Time(s/ms):              30              1.1
                  Sorts:               0               .0
            Parse Calls:               0               .0
          Invalidations:               0
          Version count:               1
        Sharable Mem(K):              39
             Executions:          27,492 The SQL1 is an update and SQL2 an Insert on the same table.
    The accessed table has 6 indexes and a primary key column. On SQL1, the update, the where condition is reffering to the primary key column.
    Both statements are using bind variables.
    From my point, I would say, that the customer should provide the execution plan of both statements to verify that SQL1 is using the primary key.
    As far as I understand "buffer gets" this issn't an issue because it's only saying that the data coumes out of the cache (which would be good) instead of reading the data from disk.
    But I don't really see there any bottleneck.
    Could you please give me some suggestions?
    Many Thanks
    Joerg

    Hi,
    Recently we have encountered one performance issue, which is most likely caused by a sudden increase in the buffer gets per execution.
    The SQL is an update statement, updating a table using a primary key (we have checked to confirm the running execution plan is using the primary key), and one field being updated is a BLOB column.
    As shown in the below statistics, there is no major change in the number of executions during the every 20 minutes monitoring interval. However, the buffer gets per executions has been more than double, and the CPU time is almost doubled, hence the exec_time (elapsed time) has been doubled.
    The same SQL has been running for the past four years in multiple similar databases. The database is Oracle 9.2.0.4 running on Solaris 9. For the past 300 days, the average elapsed time per execution is about 0.0093s, while the average buffer gets per execution is about 670. The update statement has been executed about 9 times per second.
    The question is why there is a sudden increase in the buffer gets? The sudden increase happened twice for the past two days.
    <pre>
    B_TIME E_TIME EXECUTIONS_DIFF EXEC_TIME CPU_TIME BUFFER_GETS EXEC_PER_DAY
    2009-11-25-12:23 2009-11-25-12:43 9363 .0081 .008 530.04 671338
    2009-11-25-12:43 2009-11-25-13:03 11182 .0083 .008 538.59 799772
    2009-11-25-13:03 2009-11-25-13:23 10433 .0078 .0077 474.61 761970
    2009-11-25-13:23 2009-11-25-13:43 10043 .008 .0078 496.65 713581
    2009-11-25-13:43 2009-11-25-14:04 8661 .0076 .0074 401.22 598169
    2009-11-25-14:04 2009-11-25-14:23 8513 .0069 .0068 315.56 646329
    2009-11-25-14:23 2009-11-25-14:43 10170 .007 .0068 312.28 726188
    2009-11-25-14:43 2009-11-25-15:05 11873 .0072 .0069 320.17 787885
    2009-11-25-15:05 2009-11-25-15:23 8633 .011 .0101 844.83 675014
    2009-11-25-15:23 2009-11-25-15:44 9668 .0144 .0137 1448.51 680778
    2009-11-25-15:44 2009-11-25-16:04 9671 .0163 .0156 1809.04 702163
    2009-11-25-16:04 2009-11-25-16:25 10260 .0188 .0177 2107.67 711447
    2009-11-25-16:25 2009-11-25-16:44 9827 .0157 .0151 1834.3 739593
    2009-11-25-16:44 2009-11-25-17:05 10586 .0171 .0164 2008.25 714555
    2009-11-25-17:05 2009-11-25-17:24 9625 .0189 .0181 2214.07 745829
    2009-11-25-17:24 2009-11-25-17:44 9764 .016 .0154 1877.34 679782
    2009-11-25-17:44 2009-11-25-18:04 8812 .0167 .0163 1989.61 652405
    2009-11-26-07:24 2009-11-26-07:43 8230 .0141 .014 1614.6 614051
    2009-11-26-07:43 2009-11-26-08:04 11494 .0165 .0159 1833.1 785044
    2009-11-26-08:04 2009-11-26-08:24 11028 .0182 .0172 1979.61 800688
    2009-11-26-08:24 2009-11-26-08:44 10533 .0154 .0149 1734.62 750248
    2009-11-26-08:44 2009-11-26-09:04 9367 .018 .0168 2043.95 685274
    2009-11-26-09:04 2009-11-26-09:24 10307 .0214 .0201 2552.43 729938
    2009-11-26-09:24 2009-11-26-09:45 10932 .0251 .0234 3111.48 762328
    2009-11-26-09:45 2009-11-26-10:05 10992 .0278 .0254 3386.41 797404
    2009-11-26-10:05 2009-11-26-10:24 10179 .0289 .0269 3597.24 764088
    2009-11-26-10:24 2009-11-26-10:45 10216 .032 .0286 3879.47 681592
    2009-11-26-10:45 2009-11-26-11:04 10277 .0286 .0263 3539.44 799219
    2009-11-26-11:20 2009-11-26-11:23 1378 .0344 .0312 4261.62 688203
    2009-11-26-11:23 2009-11-26-11:36 7598 .0299 .027 3675.36 805481
    2009-11-26-11:36 2009-11-26-11:43 3345 .0298 .0272 3610.28 752625
    2009-11-26-11:43 2009-11-26-12:03 10383 .0295 .0278 3708.36 728158
    2009-11-26-12:03 2009-11-26-12:23 10322 .0332 .03 4002.33 745669
    2009-11-26-12:23 2009-11-26-12:43 11847 .0316 .0292 3899.34 852273
    2009-11-26-12:43 2009-11-26-13:03 10027 .0331 .0298 4030.5 722546
    2009-11-26-13:03 2009-11-26-13:23 10130 .035 .0309 4199.08 730577
    2009-11-26-13:23 2009-11-26-13:43 9783 .0331 .0306 4161.3 707915
    2009-11-26-13:43 2009-11-26-14:03 10460 .0322 .0291 3947.63 753748
    2009-11-26-14:03 2009-11-26-14:23 9452 .0333 .0309 4143.31 678283
    2009-11-26-14:23 2009-11-26-14:43 9127 .0318 .03 4051.52 659341
    2009-11-26-14:51 2009-11-26-15:03 5391 .0358 .0328 4358.58 652356
    2009-11-26-15:03 2009-11-26-15:16 7183 .0425 .0348 4615.42 746824
    2009-11-26-15:16 2009-11-26-15:23 2921 .0417 .0373 4887.75 682092
    2009-11-26-15:23 2009-11-26-15:43 9597 .0393 .0352 4603.62 679656
    2009-11-26-15:43 2009-11-26-16:03 8797 .0411 .0362 4783.66 630755
    2009-11-26-16:03 2009-11-26-16:23 9957 .0453 .0391 5168.28 718100
    2009-11-26-16:23 2009-11-26-16:43 11209 .0436 .0369 4870.77 808395
    2009-11-26-16:43 2009-11-26-17:03 10729 .0428 .0375 5119.56 766103
    2009-11-26-17:03 2009-11-26-17:23 9116 .0409 .0363 4912.58 659098
    </pre>
    GaoYuan
    Edited by: user12194561 on Nov 26, 2009 7:34 PM

  • While inserting numeric data into a character datatype field and vice versa

    Sir,
        I have a very basic qiestion.Why am i not getting any error while inserting to say employees table a character type data to a numeric type field and vice versa?Iam using Oracle Database 10g Enterprise edition.

    Why am i not getting any error while inserting to say employees table a character type data to a numeric type field and vice versa?
    Oracle tries an automatic conversion, when possible. Post an example of a character type data inserted into a numeric column.

  • Error while inserting spatial data

    Hi All,
    I have a problem while inserting spatial data. could some one please help me in solving this.
    I have creatd a table with spatial index.
    INSERT INTO USER_SDO_GEOM_METADATA
                VALUES('SDO_CA_test', 'CA', SDO_DIM_ARRAY(
                    MDSYS.SDO_DIM_ELEMENT ('LON', 71.19545, 120.35101, 0.000005),
                    MDSYS.SDO_DIM_ELEMENT ('LAT', 12.1145, 26.58041, 0.000005)), 8687);
         CREATE INDEX IO_CA_test ON SDO_CAR_test(CA)
        INDEXTYPE IS MDSYS.SPATIAL_INDEX PARAMETERS ('SDO_COMMIT_INTERVAL=10000 SDO_RTR_PCTFREE = 0');when I insert data from another spatail table that does not have a index I get an error.
    insert into sdo_ca_test as select * from base_sdo;
    ORA-29875 Failed in the ececution of the ODCINDEXINSERT routine
    ORA-13354 incorrect offset in ELEM_INFO_ARRAY
    ORA_06512 at MDSYS.SDO_INDEX_METHOD_101 line. 709I believe that there is some incorrect data that is not with my index defination.
    How do I check this invalid data at base_sdo table. The base_sdo table has no index.
    rgds
    Saz
    Edited by: Saaz Ena on Dec 21, 2009 6:16 PM

    Can you try SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT
    or SDO_GEOM.VALIDATE_LAYER_WITH_CONTEXT? e.g.
    select * from base_sdo a where
    SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(a.CA, 0.000005) != 'TRUE';

  • Error while inserting data in SQL Server.

    Hi',
    I am using SOA 11.1.1.5
    I am inserting data using DB adapter in MS SQL Server. Some times I get below error.
    Error Message: {http://schemas.oracle.com/bpel/extension}bindingFault
    Fault ID     rrr/xxx!1.1*soa_313bd437-7bb9-41c6-a719-d1775b9afc4b/xx/4115908-BpInv0-BpSeq1.6-4
    Fault Time     Dec 24, 2012 8:02:09 AM
    Non Recoverable System Fault :
    <bpelFault><faultType>0</faultType><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception. insert failed. Descriptor name: [InsertIntoStagingxx.Stagingxx]. Caused by java.sql.BatchUpdateException: String or binary data would be truncated.. Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake. To classify it as retriable instead add property nonRetriableErrorCodes with value "-8152" to your deployment descriptor (i.e. weblogic-ra.xml). To auto retry a retriable fault set these composite.xml properties for this invoke: jca.retry.interval, jca.retry.count, and jca.retry.backoff. All properties are integers. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary></part><part name="detail"><detail>String or binary data would be truncated.</detail></part><part name="code"><code>8152</code></part></bindingFault></bpelFault>
    Please advice.
    Thanks
    Yatan

    Hi Yatan,
    This should be due to data issues. And the error message is due to data truncation issues.
    Please check your payload that you are trying to insert into the SQL server table.
    One or more fields might have a data that is exceeding its defined length with respect to the table definitions.
    Problem with using SQL server is that while inserting, you will not be pointed towards which field or column is causing the error.
    You have to take the pain of searching through the entire payload to find the problem causing ones.
    Thanks,
    Deepak.

  • Error while Inserting DB

    Hi,
    We are getting the below error while inserting a record in to DB. It is not occuring always, as sometimes the transactions are passing and some times it is throwing the below error. Any one faced this issue and have solution for the same?
    The invocation resulted in an error: <jca-transport-application-error xmlns="http://www.bea.com/wli/sb/transports/jca" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <jca-transport-error-message>Invoke JCA outbound service failed with application error</jca-transport-error-message>
    <jca-runtime-fault-detail>
    <eis-error-code xsi:nil="true"/>
    <eis-error-message xsi:nil="true"/>
    <exception>com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/ServiceProcessor_1.00/src/osb/resources/wsdls/Service_DB_Write_1.00 [ ServiceDBAdp_ptt::insert(SampleMiddlewareLogCollection) ] - WSIF JCA Execute of operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    ; nested exception is:
    BINDING.JCA-11616
    DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake.
    at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invokeOneWay(JCATransportOutboundOperationBindingServiceImpl.java:114)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.sendOneWay(JCATransportEndpoint.java:191)
    at com.bea.wli.sb.transports.jca.JCATransportEndpoint.send(JCATransportEndpoint.java:168)
    at com.bea.wli.sb.transports.jca.JCATransportProvider.sendMessageAsync(JCATransportProvider.java:598)
    at sun.reflect.GeneratedMethodAccessor900.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.bea.wli.sb.transports.Util$1.invoke(Util.java:83)
    at $Proxy142.sendMessageAsync(Unknown Source)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageAsync(LoadBalanceFailoverListener.java:148)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToServiceAsync(LoadBalanceFailoverListener.java:603)
    at com.bea.wli.sb.transports.LoadBalanceFailoverListener.sendMessageToService(LoadBalanceFailoverListener.java:538)
    at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageToService(TransportManagerImpl.java:558)
    at com.bea.wli.sb.transports.TransportManagerImpl.sendMessageAsync(TransportManagerImpl.java:426)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessageSender.java:380)
    at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMessageSender.java:79)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:137)
    at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessageSender.java:135)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at com.bea.wli.sb.security.WLSSecurityContextService.runAs(WLSSecurityContextService.java:55)
    at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageSender.java:140)
    at com.bea.wli.sb.test.service.ServiceProcessor.invoke(ServiceProcessor.java:454)
    at com.bea.wli.sb.test.TestServiceImpl.invoke(TestServiceImpl.java:172)
    at com.bea.wli.sb.test.client.ejb.TestServiceEJBBean.invoke(TestServiceEJBBean.java:167)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.invoke(Unknown Source)
    at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
    at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:207)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:176)
    Caused by: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/ServiceProcessor_1.00/src/osb/resources/wsdls/Service_DB_Write_1.00 [ ServiceDBAdp_ptt::insert(SampleMiddlewareLogCollection) ] - WSIF JCA Execute of operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    ; nested exception is:
    BINDING.JCA-11616
    DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake.
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.post(JCABindingReferenceImpl.java:197)
    at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invokeOneWay(JCATransportOutboundOperationBindingServiceImpl.java:109)
    ... 37 more
    Caused by: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/ServiceProcessor_1.00/src/osb/resources/wsdls/Service_DB_Write_1.00 [ ServiceDBAdp_ptt::insert(SampleMiddlewareLogCollection) ] - WSIF JCA Execute of operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    ; nested exception is:
    BINDING.JCA-11616
    DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake.
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.performOperation(WSIFOperation_JCA.java:662)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.executeOperation(WSIFOperation_JCA.java:353)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.executeRequestResponseOperation(WSIFOperation_JCA.java:312)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.executeInputOnlyOperation(WSIFOperation_JCA.java:291)
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.invokeWsifProvider(JCABindingReferenceImpl.java:345)
    at oracle.tip.adapter.sa.impl.JCABindingReferenceImpl.post(JCABindingReferenceImpl.java:195)
    ... 38 more
    Caused by: BINDING.JCA-11616
    DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ServiceDBAdp.SampleMiddlewareLog].
    Caused by java.lang.ArrayIndexOutOfBoundsException.
    Please see the logs for the full DBAdapter logging output prior to this exception. This exception is considered not retriable, likely due to a modelling mistake.
    at oracle.tip.adapter.db.exceptions.DBResourceException.createNonRetriableException(DBResourceException.java:682)
    at oracle.tip.adapter.db.exceptions.DBResourceException.createEISException(DBResourceException.java:648)
    at oracle.tip.adapter.db.exceptions.DBResourceException.outboundWriteException(DBResourceException.java:696)
    at oracle.tip.adapter.db.DBInteraction.executeOutboundWrite(DBInteraction.java:1056)
    at oracle.tip.adapter.db.DBInteraction.execute(DBInteraction.java:240)
    at oracle.tip.adapter.sa.impl.fw.wsif.jca.WSIFOperation_JCA.performOperation(WSIFOperation_JCA.java:529)
    ... 43 more
    Caused by: java.lang.ArrayIndexOutOfBoundsException</exception>
    </jca-runtime-fault-detail>
    </jca-transport-application-error>.
    Thanks

    Hi
    Thrown to indicate that an array has been accessed with an illegal index. The index is either negative or greater than or equal to the size of the array you are sending.
    make sure your table can able to recieve that array of data

  • ORA-00600: internal error code while inserting data in table

    hi gems..
    i am getting the below error while inserting data in a table...
    *ORA-00600: internal error code, arguments: [kqd-objerror$ ] , , [0], [98], [BIN$sm1O+fYhF1jgRAAhKNYyZA==$0], [], [], [], [], [], [], []*
    i can select the table absolutely but cant insert datas(but this is the schema owner and so datas should get inserted)
    i have checked the alert.log...the entries in last few lines are like this:
    <msg time='2011-11-25T03:08:55.763+05:30' org_id='oracle' comp_id='clients'
    type='UNKNOWN' level='16' host_id='ICS167DOR'
    host_addr='10.184.134.139'>
    <txt>Directory does not exist for read/write [oracle/ora11g/app/ora11g/product/11.2.0/dbhome_1/log] [oracle/ora11g/app/ora11g/product/11.2.0/dbhome_1/log/diag/clients]
    </txt>
    </msg>
    please help...thanks in advance
    Edited by: user12780416 on Nov 25, 2011 3:29 AM

    hi...
    finally i got the solution...i know that this problem may occur due to some other reasons also for different users...but the problem which caused the developers facing the error in this case is below:
    they faced the error while importing the dumps in the server. at the same time the application developers told that they can select the tables but cannot insert any datas.
    after listenning to this, i assumed that this may be a space problem with the system tablespace as it is responsible for storing the data dictionary.
    i asked for the free spaces for the system tablespace and got the reason. It has only 0.2% left.
    i told them to issue the resize command for the system01.dbf datafile(allocated 2GB more) and the problem got resolved.
    Hope this helps..thanks

  • Problem while inserting a record to infotype 416

    Iam facing a problem while inserting a record to the infotype 416 for a personnel no using the FM 'HR_INFOTYPE_OPERATION'.I have created a FM to insert a record to the infotype 416.In that FM iam using the FM 'HR_INFOTYPE_OPERATION' to create a record for infotype 416.while executing  my FM the FM 'HR_INFOTYPE_OPERATION' is returning the return value 0.But when i check in PA30 for the infotype 416,there is no record created for that personnel no.Also in the table PA0416 the record is not get created.SO what might be the problem.can anyone please provide me help on this.
    I have attached the code of my FM for ur reference.
    FUNCTION Y_ESS_FL_ENCASH.
    DATA: G_COMPENSATION_AMOUNT LIKE PA0416-AMONT,
          G_RETURN TYPE BAPIRETURN1.
    DATA T_PA0416 LIKE P0416 OCCURS 0 WITH HEADER LINE.
    CALL FUNCTION 'HR_READ_INFOTYPE'
        EXPORTING
           TCLAS                 = 'A'
           PERNR                 = '00000014'
           INFTY                 = '0416'
         BEGDA                 = sy-datum
         ENDDA                 =  sy-datum
           BYPASS_BUFFER         = 'X'
         LEGACY_MODE           = ' '
    IMPORTING
         SUBRC                 =
          TABLES
            INFTY_TAB             = T_PA0416
    EXCEPTIONS
      INFTY_NOT_FOUND       = 1
      OTHERS                = 2
        LOOP AT T_PA0416
        WHERE SUBTY = '1002'.
        ENDLOOP.
        IF SY-SUBRC <> 0.
          CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
            EXPORTING
               NUMBER = '00000014'
            IMPORTING
               RETURN = G_RETURN.
          IF SY-SUBRC <> 0.
             MESSAGE I016(RP) WITH ' RECORD IS ALREADY LOCKED'.
          ENDIF.
          T_PA0416-PERNR = '00000014'.
          T_PA0416-SUBTY = '1002'.
          T_PA0416-INFTY = '0416'.
          T_PA0416-OBJPS = ''.
          T_PA0416-SPRPS = ''.
          T_PA0416-SEQNR = ''.
          T_PA0416-AEDTM = SY-DATUM.
          T_PA0416-UNAME = SY-UNAME.
          T_PA0416-ENDDA = SY-DATUM.
          T_PA0416-BEGDA = SY-DATUM.
          T_PA0416-NUMBR = '10'.
          T_PA0416-WGTYP = '1530'.
          T_PA0416-AMONT = '15000'.
          T_PA0416-WAERS = 'INR'.
          T_PA0416-QUONR = '1'.
          APPEND T_PA0416.
          CALL FUNCTION 'HR_INFOTYPE_OPERATION'
            EXPORTING
              INFTY                  = '0416'
              NUMBER                 = '00000014'
              SUBTYPE                = '1002'
      OBJECTID               =
      LOCKINDICATOR          =
             VALIDITYEND            = '31129999'
             VALIDITYBEGIN          = SY-DATUM
            RECORDNUMBER           = ''
              RECORD                 = T_PA0416
              OPERATION              = 'INS'
              TCLAS                  = 'A'
      DIALOG_MODE            = '0'
            NOCOMMIT               = 'X'
      VIEW_IDENTIFIER        =
      SECONDARY_RECORD       =
            IMPORTING
              RETURN                 = G_RETURN.
      KEY                    =
          IF G_RETURN+0(1) EQ 'E'.
                  MESSAGE I086(ZHR) WITH 'Record is not inserted in IT416'.
          ELSE.
              COMMIT WORK.
          ENDIF.
          CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
            EXPORTING
              NUMBER = '00000014'
            IMPORTING
              RETURN = G_RETURN.
        ENDIF.
    ENDFUNCTION.

    Hi Murthy
    With a first glance, I think you have given a wrong parameter value to "validityend". It should be '99991231' not '31129999' .
    If your problem still persists, try inserting the data online from PA30. If your input causes no errors, then please state what the return parameter contains.
    Regards
    *--Serdar <a href="https://www.sdn.sap.com:443http://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.sdn.businesscard.sdnbusinesscard?u=qbk%2bsag%2bjiw%3d">[ BC ]</a>

  • Error while Inserting message in JMS

    Version : SOA 11G
    I am getting following error while inserting message in JMS.
    rror Message: {http://schemas.oracle.com/bpel/extension}bindingFault
    Fault ID     default/TestingSOA!2.0*soa_3b8b3493-6062-457c-8213-5dd613c95dd3/TransformData/30014-BpInv0-BpSeq0.3-4
    Fault Time     06-Dec-2010 03:25:10
    Non Recoverable System Fault :
    <bpelFault><faultType>0</faultType><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked. Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'Produce_Message' failed due to: ERRJMS_ERR_CR_QUEUE_PROD. ERRJMS_ERR_CR_QUEUE_PROD. Unable to create Queue producer due to JMSException. ". The invoked JCA adapter raised a resource exception. Please examine the above error message carefully to determine a resolution. </summary></part><part name="detail"><detail>[JMSExceptions:045103]While trying to find a topic or a queue we could not find the specific JMSServer requested. The linked exception may contain more information about the reason for failure.</detail></part><part name="code"><code>null</code></part></bindingFault></bpelFault>
    Steps followed while creating JMS
    1. Login to weblogic console
    2. Click Services>Messaging>JMS Module
    3. Select SOAJMSModule
    4. Click new, select Queue and press Next
    5. Give JMS Name and JNDI
    5. Pick Subdepolyment as "SOASUBDeployment" from dropdown and select JMS Server as "SOAJMSServer" and click "Finish"

    Steps followed while creating JMS
    +1. Login to weblogic console+
    +2. Click Services>Messaging>JMS Module+
    +3. Select SOAJMSModule+
    +4. Click new, select Queue and press Next+
    +5. Give JMS Name and JNDI+
    +5. Pick Subdepolyment as "SOASUBDeployment" from dropdown and select JMS Server as "SOAJMSServer" and click "Finish"+
    Next u need to create Connection Factory and u need to update or create(if doesnt exist) a new plan.xml
    Follow the below link:
    http://www.packtpub.com/article/installation-configuration-oracle-soa-suite-11g-2

  • Issue while inserting a BDC program in Inbound Proxy.JDBC-- PI-- SAP.

    The scenerio is jdbcsender-sappi-inboundproxy(ECC6.0).
    The issue is related to SAP Plant Maintenance Module where  We have a requirement for creating Maintenance item
    programmatically from (SQLDatabase)Legacy Data for one of the interface.
    since there are no standard BAPIS/Idocs or function modules available from SAP side for creating the maintenance item. So I
    have written BDC program and with the help of submit statement in inbound proxy program, I am calling BDC program for
    creation of the maintenance item.
    When I tested the program independently on proxy side  the Maintenance Item is getting created successfully but when I
    executed from end-to-end ie.  SQLDATABASE->SAP PI-->SAP. The message is getting strucked into the queue and queue  got stopped on SAP.
    ECC side and the status of the message is scheduled state  on SXMB_MONI  transaction of SAP ECC.
    As the message  is in scheduled state multiple number of Maintenance Items are getting created with the same values.
    Has any one of our SAP friends, encountered this type of issue while inserting a BDC program in inbound proxy, please help 
    in fixing this issue. FYI... I am using sap pi7.0 with service pack 24 and ecc6.0
    Waiting for your kind expert guidance...
    cheers,
    Ram

    Raj,
    Thanks for the reply. I have tried registering the queues but still the same problem. the message got stuck in the queue of ECC and showing below message in queue.
    function module                                    StatusText
    SXMS_ASYNC_EXEC                  connection closed (no data)
    I have checked in the forums especially  for this issue but no one has provided the answer for this.
    Thanks and Regards
    Ram

  • Issue while insert and update data to DB tables

    Hello all,
    i am having an issue while insert the data to DB table.
    my scenario is DB1 to DB2. i had a sender channel with select query which fetches data from DB1 and inserts to DB2.
    so the select query will fetch the records that were INSERTED to DB1 and records that were UPDATED to DB1 and needs to insert/update to DB2 table.
    Now the issue is i am able to insert the records but not able toupdate the records to DB2 table due to primary key issue.
    im message mapping
    sender message type is as follows:
    <src_message1>
    ----<row>
    -------<fieldA>
    -------<filedB>
    -------<filedC>
    Receiver message type as follows:
    <trgt_message1>
    ----<STATEMENT_1>
    ----<TABLE_NAME>
    ----<ACTION> INSERT
    ----<TABLE>
    ----<ACCESS>
    ----<field1> primary key
    ----<field2>
    ----<field3>
    ----<field4>
    ----<KEY>
    ----<field1>
    ----<field2>
    ----<field3>
    ----<field4>
    my query in sender channel is : select filedA, filedB, filedC from test_table where createdate=sysdate or updatedate=sysdate
    so it feteches the data from DB1 and inserting to DB2 but not updating the records to DB2 due to primarykey issue.
    please suggest how to solve ....will it solve by using UPDATE_INSERT for action?
    Best Regards,SARAN

    Hi Nagarjuna,
    i have done the following changes to target mapping structure;
    1. action as UPDATE_INSERT
    2.  in access tab, i had mapped fieldDate to field4.
    3. in Key tab, i assigned the sysdate to field4.
    but issue still exist. could you please check my above changes are correct or not. if wrong please provide me the details that needs to be done.
    thanks in advance.
    i'm providing the error details again:
    my query in sender channel is : select filedA, filedB, filedC, FiledDate from TEST_TABLE where fieldDate=sysdate or updatedate=sysdate
    it returns 4 records as follows:
    fieldA--fieldB-fieldC---fieldDate
    1001----EU----  1----
        2011-11-10
    1002----CN----  0----
         2011-11-10
    1003----AP---- 1----
          2008-03-15 (already exist in DB2)
    1004----JP----  1----
        2007-04-12 (already exist in DB2)
    the first two records are created today and remaining 2 records are updated the fieldC from 0 to 1 ( in DB1 )
    while inserting these 4 records to DB2, we get the following error "java.sql.SQLException: ORA-00001: unique constraint (data.TEST_TABLE_PK) violated" .
    Best Regards,SARAN

  • Taking More Time while inserting into the table (With foriegn key)

    Hi All,
    I am facing problem while inserting the values into the master table.
    The problem,
    Table A -- User Master Table (Reg No, Name, etc)
    Table B -- Transaction Table (Foreign key reference with Table A).
    While inserting the data's in Table B, i need to insert the reg no also in table B which is mandatory. I followed the logic which is mentioned in the SRDemo.
    While inserting we need to query the Table A first to have the values in TableABean.java.
    final TableA tableA= (TableA )uow.executeQuery("findUser",TableA .class, regNo);
    Then, we need to create the instance for TableB
    TableB tableB= (TableB)uow.newInstance(TableB.class);
    tableB.setID(bean.getID);
    tableA.addTableB(tableB); --- this is for to insert the regNo of TableA in TableB.. This line is executing the query "select * from TableB where RegNo = <tableA.getRegNo>".
    This query is taking too much time if values are more in the TableB for that particular registrationNo. Because of this its taking more time to insert into the TableB.
    For Ex: TableA -- regNo : 101...having less entry in TableB means...inserting record is taking less than 1 sec
    regNo : 102...having more entry in TableB means...inserting record is taking more than 2 sec
    Time delay is there for different users when they enter transaction in TableB.
    I need to avoid this since in future it will take more time...from 2 sec to 10 sec, if volume of data increases mean.
    Please help me to resolve this issue...I am facing it now in production.
    Thanks & Regards
    VB

    Hello,
    Looks like you have a 1:M relationship from TableA to TableB, with a 1:1 back pointer from TableB to TableA. If triggering the 1:M relationship is causing you delays that you want to avoid there might be two quick ways I can see:
    1) Don't map it. Leave the TableA->TableB 1:M unmapped, and instead just query for relationship when you do need it. This means you do not need to call tableA.addTableB(tableB), and instead only need to call tableB.setTableA(tableA), so that the TableB->TableA relation gets set. Might not be the best option, but it depends on your application's usage. It does allow you to potentially page the TableB results or add other query query performance options when you do need the data though.
    2) You are currently using Lazy loading for the TableA->TableB relationship - if it is untriggered, don't bother calling tableA.addTableB(tableB), and instead only need to call tableB.setTableA(tableA). This of course requires using TopLink api to a) verify the collection is an IndirectCollection type, and b) that it is hasn't been triggered. If it has been triggered, you will still need to call tableA.addTableB(tableB), but it won't result in a query. Check out the oracle.toplink.indirection.IndirectContainer class and it's isInstantiated() method. This can cause problems though in highly concurrent environments, as other threads may have triggered the indirection before you commit your transaction, so that the A->B collection is not up to date - this might require refreshing the TableA if so.
    Change tracking would probably be the best option to use here, and is described in the EclipseLink wiki:
    http://wiki.eclipse.org/Introduction_to_EclipseLink_Transactions_(ELUG)#Attribute_Change_Tracking_Policy
    Best Regards,
    Chris

Maybe you are looking for

  • *** iTunes can't find my music but it's there!!!***

    Hello All, I recently tried backing up all my music and I've ran into a problem. Whenever I plug in my external harddrive in my music plays with no problem at all When i disconnect the external and try to play my music every single song has a little

  • My brand new osx tiger dvd is scratched!

    Right, is was initially meant to be an email to apple themselves but i seem unable to find an email address for them, i would write out my problem again but this per written email seems to sum everything up quite nicely... so perhaps my question is w

  • Resize table row height dynamically

    Hi All,   I have a requirement to display four item texts in one of the table column. I had created a subform with four texts in that column. I am getting the data as required, but by default the table row size has increased because of four texts in

  • Can't validate purchase date

    Hello all! I am a proud Macbook owner, but when I tried to register my product, I failed. The selfsolve page says "Please validate your purchase date" and when I click on it, I get back to the screen where I have to enter a serial number. This loop c

  • Traveling to South Korea

    I'm planning to travel to South Korea. I like to make/receive calls from/to South Korea and US. In this case, what is the best option I can combine to purchase Skype products?I'll have my Sprint HTC Evo 4G brought to South Korea with unlimited data p