Too many Transactions?

Created a BPEL process (10.1.2.0.0) to access a stored procedure in a 10gR1 database and using the emp table. The PartnerLink references the stored procedure which takes a number (empno) and is to return the ename and sal corresponding to the empno.
Stored procedure works as run from a SQL prompt. When invoke the the PartnerLink using an empno after about a minute delay get the following error message.
Any help is greatly appreciated - Ken Cooper
Build Information:
Oracle BPEL Server version 10.1.2.0.0
Build: 1442
Build time: Fri Apr 29 16:59:32 PDT 2005
Build type: release
Source tag: BPELPM_10_1_2_release_branch
Exception Message:
[com.evermind.server.rmi.OrionRemoteException]
Transaction was rolled back: Error in transaction: MarshallingXAException : [POL-3261] there are too many transactions; nested exception is:
     MarshallingXAException : [POL-3261] there are too many transactions

Just to clarify ..
you are using OLite as dehydration store .. and connect your plnk to a fledged Oracle DB - right ..
because the exception is coming from the olite stack ...
/clemens

Similar Messages

  • Too many transactions in buffer

    Hi:
    I am sending a lot of transactions to TimesTen, now I checked the sys tables and i can see my tables must have almost 745 rows, but when I send a count(*) directly to the table, I get 246 rows only. So I tried to find the missing records, I ran the command:
    ttxactadmin -v 1 -interval 5 "dsn=snapshotdsn"
    And I got something like:
    13394 locks found for transaction 12.204928
    1 outstanding transaction found
    I have to many locked or pending transactions in TimesTen. I tried free this transactions using ttckpt but nothing happened.
    some one can help please...

    Hi,
    As with all databases, to complete a transaction, release the locks and make the new rows visible to other connections/users/transactions you need to commit the transaction.
    The active locks for this transaction show that your application code have not issues a commit call. In general, you should try to keep transactions reasonably short. For example, inserting 1000 rows as one transaction is very reasonable, inserting 100,000 rows in one transaction is not very reasonable. Large transactions can consume excessive system resources (locks etc.) and may also impact concurrency.
    Chris

  • Too many loopback session id's in SMGW transaction (ABAP+JAVA System)

    Hi All,
    From SMGW transaction I am able to see too many loopback (127.0.01) session ids existing in the system.
    107 system(s) logged on *** showing from this more than 50 session are loopback. I am not able to find the reason.
    How to check and how to reduce this session.
    Thanks in advance

    Hi Maurício
    Thank you for your support.
    As per note I have checked in my system and I can not find relavent things
    from SM04 I am able to see only 12 users logged into the system ( *** 12 users logged on with 15 modes *** 
    ) and from 12 users 5 of users using GUI and remaing RFC. From SMGW it is showing only 8 active connection and
    SMGW --? Goto -->logged on clients  from here able to 98 systems logged on ( *** 97 system(s) logged on ***  ) in this around 70 logons related to loopback (127.0.0.1)
    Please suggest me how to anaylze this issue and how to take corrective steps for this kind of issue.

  • Too many distributed transactions

    I am programming an application with JDeveloper 10g and ADF Framework. It is a application that only queries data (no modifications). I created ViewObjects based on sql queries and an application module.
    The problem is that is I execute that application for some time, I get the following error:
    java.sql.SQLException: ORA-02042: too many distributed transactions
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:189)
         at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:242)
         at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:554)
         at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java)
         at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:888)
         at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2346)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2660)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:457)
         at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:387)
         at oracle.jbo.server.QueryCollection.buildResultSet(QueryCollection.java:665)
    As it is a query only program, i do not need transactions. How can fix this?
    Thanks in advance

    Hi,
    this is information from metalink:
    The ORA-2042 indicates that you should increase the parameter
    distributed_transactions.
    The ORA-2063 indicates that this must be done at the remote
    database.
    Explanation
    If the distributed transaction table is full on either side of
    the database link you get the error ORA-2042:
    ORA-02042: "too many distributed transactions"
    Cause: the distributed transaction table is full,
    because too many distributed transactions are active.
    Action: increase the INIT.ORA "distributed_transactions" or
    run fewer transactions.
    If you are sure you don't have too many concurrent
    distributed transactions, this indicates an internal
    error and support should be notified.
    Instance shutdown/restart would be a workaround.
    When the error is generated at the remote database it is
    accompanied with an ORA-2063. In this case the parameter
    distributed_transactions must be increased at the remote
    database.
    If there is no ORA-2063 the parameter distributed_transactions
    must be increased at the local database.

  • ORA-02042: too many distributed transactions

    1. I have been working on a portal application for several weeks.
    2. Portal is installed in 1 instance and my data is in another instance.
    3. I've had no ora-02042 problems in the devt environment set up that way.
    4. I've recently migrated the application/pages to a test environment set up that way.
    5. I've been working in the test environment for several days with no problems.
    6. For some portlets on some pages I'm now getting:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>
    Failed to parse query
    Error:ORA-02042: too many distributed transactions
    Error:ORA-02042: too many distributed transactions
    ORA-02063: preceding line from
    LINK_TO_TEST (WWV-11230) Failed to parse as PACID_SCHEMA -
    select user_action.userid, action.name,
    user_action.created_date,
    user_action.created_by, action.action_id,
    'del' del_link from user_action , action
    where user_action.action_id =
    action.action_id and user_action.userid
    LIKE UPPER(:userid) order by USERID
    ASC, NAME ASC, CREATED_DATE
    ASC (WWV-08300)
    <HR></BLOCKQUOTE>
    7. I cannot find anything about this error in the db log files for either instance.
    8. I've increased distributed transactions to 200 in the portal db and bounced
    it. Still get the error.
    9. No records in dba_2pc_pending or dba_2pc_neighbors in the portal instance.
    10. I get the error in various reports and form LOVs at different times. Pages with a lot of portlets seem to be more prone to the error.
    Here is a typical LOV error:
    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>
    COMBOBOX LOV ERROR:
    LOV: "ASIMM_1022.TITLE_LOV"
    Parse Message: Parse as pre-set global: "PACID_SCHEMA".
    Find Message: LOV is of type DYNAMIC (LOV based on SQL query).
    Query: "select code display_column, code return_column from codes where table_id = 'OFFICER_TITLE' order by code"
    wwv_parse.parse_as_user: ORA-02042: too many distributed transactions ORA-02063: preceding line from LINK_TO_TEST wwv_parse.parse_as_user: Failed to parse as PACID_SCHEMA - select code display_column, code return_column from codes where table_id = 'OFFICER_TITLE' order by code wwv_security.check_comp_privilege: Insufficient privileges. wwpre_utl.get_path_id: The preference path does not exist: ORACLE.WEBVIEW.PARAMETERS.217_USER_INPUT_ASIMM_5423428
    <HR></BLOCKQUOTE>
    Why are these select statements being interpreted as distributed transactions? Note:1032658.6 suggests I "USE SET TRANSACTION READ ONLY". Is this necessary? If so how?
    What puzzles me is that this set up has been working fine for several days. I don't know of any changes to my environment apart from me increasing distributed transactions.
    null

    Hi,
    this is information from metalink:
    The ORA-2042 indicates that you should increase the parameter
    distributed_transactions.
    The ORA-2063 indicates that this must be done at the remote
    database.
    Explanation
    If the distributed transaction table is full on either side of
    the database link you get the error ORA-2042:
    ORA-02042: "too many distributed transactions"
    Cause: the distributed transaction table is full,
    because too many distributed transactions are active.
    Action: increase the INIT.ORA "distributed_transactions" or
    run fewer transactions.
    If you are sure you don't have too many concurrent
    distributed transactions, this indicates an internal
    error and support should be notified.
    Instance shutdown/restart would be a workaround.
    When the error is generated at the remote database it is
    accompanied with an ORA-2063. In this case the parameter
    distributed_transactions must be increased at the remote
    database.
    If there is no ORA-2063 the parameter distributed_transactions
    must be increased at the local database.

  • Too many loopback session id's in SMGW transaction

    Hi All,
    From SMGW transaction I am able to see too many loopback (127.0.01) session ids existing in the system.
    107 system(s) logged on ***   showing from this more than 50 session are loopback. I am not able to find the reason.
    How to check and how to reduce this session.
    Thanks in advance

    Dear Pravin,
    Are you referring to 'Active Connections' or 'Logged on clients'. Which is the kernel patch level that you are running?
    Best Regards,
    Tim

  • Getting ORA-06512: at "SYS.UTL_HTTP", line 1022 ORA-29270: too many open

    hi
    I am getting the following error while calling the procedure in the batch process
    ORA-06512: at "SYS.UTL_HTTP", line 1022
    ORA-29270: too many open HTTP requests
    Could you please help me on this? As this is getting affected in the live databases.
    ORA-06512: at "SYS.UTL_HTTP", line 1022
    ORA-29270: too many open HTTP requests
    CREATE OR REPLACE PROCEDURE Send_To_Spg(
    PTRANSACTION_ID               IN          VARCHAR2,
    PCHANNEL_TYPE               IN VARCHAR2 DEFAULT NULL,
    PCSS_ORDER_NUMBER          IN VARCHAR2 DEFAULT NULL,
    PTELEPHONE_NUMBER          IN VARCHAR2 DEFAULT NULL,
    PSCENARIO_TYPE               IN VARCHAR2 DEFAULT NULL,
    PCUSTOMER_REQUIRED_DATE IN          VARCHAR2 DEFAULT NULL,
    PCUSTOMER_REQUIRED_TIME IN          VARCHAR2 DEFAULT NULL,
    PCANCELLATION_REASON     IN          VARCHAR2 DEFAULT NULL,
    PCANCELLATION_NOTES          IN          VARCHAR2 DEFAULT NULL,
    PSMPF_RETENTION               IN          VARCHAR2 DEFAULT NULL,
    PEMERGENCY_WINBACK          IN          VARCHAR2 DEFAULT NULL,
    PCSS_PROJECT_ID               IN          VARCHAR2 DEFAULT NULL,
    PCSS_ORDER_NOTES          IN          VARCHAR2 DEFAULT NULL,
    PREASON_FOR_CESSATION     IN          VARCHAR2 DEFAULT NULL,
    P_RESPONSE                    OUT VARCHAR2,
    PSMART_USER_ID               IN VARCHAR2 DEFAULT NULL,
    PORACLE_ERROR               OUT VARCHAR2,
    PORACLE_ERROR_MESSAGE     OUT          VARCHAR2,
    PRESPONSE_TIME               OUT          NUMBER,
    PDATA_TRANSFER_STATUS     OUT          VARCHAR2)
    IS
    v_scenario_type               VARCHAR2(20); -- Varialble to Hold Time Out of every request to SPG
    v_transaction_time          NUMBER;          -- Total time in which Request to SPG was processed
    v_record_inserted_at     DATE;          -- Date/Time about the record insertion to the Error Handler
    v_start_time               NUMBER;          -- Variable to hold Start Time for calculationg Transaction Time
    v_url                         VARCHAR2(32767);-- URL to use when sending data to SPG
    vtransaction_id               VARCHAR2(18); -- Variable to hold Transaction ID for the request
    v_buffer                    VARCHAR2(32760);-- Variable to read response from the SPG interface
    v_timeout                    PLS_INTEGER; -- Time Out for each Transaction
    v_oracle_err_msg          VARCHAR2(600); -- Variable to hold Oracle Error Message
    v_resp                UTL_HTTP.RESP; -- Response Object
    v_req                UTL_HTTP.REQ; -- Request Object
    v_userid_pwd               SMT_ORACLE_PARAMETERS%ROWTYPE; --Variable declared to contain User ID & Password
    vl_RetCode          VARCHAR2(5000);
    vl_std_returnCode     VARCHAR2(3000);
    --PDATA_TRANSFER_STATUS Holds the Data Transfer Status which can have possible values as
    -- N => Data Has not been sent to SPG
    -- Y => Received Successful response from SPG
    -- F => On the First try to Send data to SPG Oracle Error Occured or response from SPG was a faulure
    -- S => On the Second try to Send data to SPG Oracle Error Occured or response from SPG was a faulure
    -- T => Data Has been transferred to the Error Log Table
    -- X => Data need not be transfered to Error Log Table.
    --Location of the timeout, URL & User Id & Password in Standing Data.
    c_url_stopwlr SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_WLR';-- Stop WLR URL
    c_url_cancelown SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_OWN';-- Cancel own URL
    c_url_cancelother SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_OTH';-- Cancel other URL
    c_url_amendcrd SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPG_CRD';--Amend CRD URL
    c_spg_useridpwd SMT_ORACLE_PARAMETERS.PARAMETER_CODE%TYPE:='SPGIDPWD'; --Contains user id and pwd
    ctimeout smt_parameters.parameter_code%TYPE:='SPGTO'; --This holds the timeout parameter
    BEGIN
         --In case the calling batch process can pass this value this SQL read will not be required & can be deleted
         --Read data transfer status for the transaction Id
         SELECT data_transfer_status INTO PDATA_TRANSFER_STATUS     FROM SPG_INTERFACE_TABLE
         WHERE transaction_id     =     PTRANSACTION_ID;
         --Record the start time
         v_start_time:=DBMS_UTILITY.GET_TIME;
         --If Data transfer status is S then send the record to error handler
         IF PDATA_TRANSFER_STATUS = 'S' THEN
              Error_Handler(PTRANSACTION_ID,PSMART_USER_ID,PORACLE_ERROR,PORACLE_ERROR_MESSAGE,v_record_inserted_at,PDATA_TRANSFER_STATUS);
         ELSE
         --In case Data Tranfer Status is something other than S then send the request to SPG
              --Initialise other variables which will be populated during the journey
              P_RESPONSE                    :=     '';
              PORACLE_ERROR               :=     NULL;
              PORACLE_ERROR_MESSAGE     :=     NULL;
              PRESPONSE_TIME               :=     0;
         --Read timeout parameter from standing data.
              BEGIN
                   SELECT VALUE INTO v_timeout FROM smt_parameters WHERE parameter_code=ctimeout;
              EXCEPTION
                   WHEN NO_DATA_FOUND THEN
                   v_timeout:=30;
              WHEN OTHERS THEN
                   v_timeout:=30;
              END;
         -- Construct the URL for Stop WLR Scenario
              IF PSCENARIO_TYPE = 'STOP_WLR' THEN
                   BEGIN
                   -- Read the Initial URL from Standing Data
                   SELECT VALUE
                        INTO v_url
                        FROM SMT_ORACLE_PARAMETERS
                        WHERE parameter_code = c_url_stopwlr
                        AND host_id = ( SELECT host_id
                                                      FROM SMART_HOSTS A
                                                      WHERE EXISTS ( SELECT 1
                                                                     FROM DB_PARAMETERS b
                                                                     WHERE A.hostname = b.hostname
                                                                     AND A.database_id = b.database_id));
                   --handle unforseen exception
                   EXCEPTION
                   WHEN NO_DATA_FOUND THEN
                        v_url:='Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_winback_details'; --After testing the same, URL will be fetched from the Query
                   WHEN OTHERS THEN
                        v_url:='Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_winback_details'; --After testing the same, URL will be fetched from the Query
                   END;
                   --construct the URL depending on the parameters to be passed to the url
                   v_url := v_url || '?';
                   v_url := v_url || 'p_data_entered=' || Smart_Urlencode('xmloverhttp') || '&';
                   v_url := v_url || 'p_channel_type=' || Smart_Urlencode(PCHANNEL_TYPE)|| '&';
                   v_url := v_url || 'p_css_start_order_no=' || Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
                   v_url := v_url || 'p_tel_no=' || Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
                   v_url := v_url || 'p_crd=' || Smart_Urlencode(PCUSTOMER_REQUIRED_DATE)|| '&';
                   v_url := v_url || 'p_take_over_time=' || Smart_Urlencode(PCUSTOMER_REQUIRED_TIME)|| '&';
                   v_url := v_url || 'p_retainsmpf=' || Smart_Urlencode(PSMPF_RETENTION)|| '&';
                   --v_url := v_url || 'p_emergency_winback='                    || Smart_Urlencode(PEMERGENCY_WINBACK)|| '&';
                   v_url := v_url || 'p_projectno=' || Smart_Urlencode(PCSS_PROJECT_ID)|| '&';
                   v_url := v_url || 'p_ordernotes=' || Smart_Urlencode(PCSS_ORDER_NOTES)|| '&';
                   v_url := v_url || 'p_reason_cessation=' || Smart_Urlencode(PREASON_FOR_CESSATION);
              ELSIF PSCENARIO_TYPE='CANCEL_OWN' THEN
              --Fetch the URL for cancel own from standing data.
                   BEGIN
                        SELECT VALUE
                        INTO v_url
                        FROM SMT_ORACLE_PARAMETERS
                        WHERE parameter_code = c_url_cancelown
                        AND host_id = ( SELECT host_id
                                                      FROM SMART_HOSTS A
                                                      WHERE EXISTS ( SELECT 1
                                                                     FROM DB_PARAMETERS b
                                                                     WHERE A.hostname = b.hostname
                                                                     AND A.database_id = b.database_id));
              --handle unforseen exception
                   EXCEPTION
                             WHEN NO_DATA_FOUND THEN
                             v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelown_details'; --After testing the same, URL will be fetched from the Query
                   WHEN OTHERS THEN
                             v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelown_details'; --After testing the same, URL will be fetched from the Query
                   END;
              --construct the URL
              v_url := v_url || '?';
              v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
              v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
              v_url := v_url || 'p_css_start_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
              v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
              v_url := v_url || 'p_cancel_reason=' ||Smart_Urlencode(PCANCELLATION_REASON)|| '&';
              v_url:= v_url || 'p_cancel_notes=' ||Smart_Urlencode(PCANCELLATION_NOTES);
              ELSIF PSCENARIO_TYPE='CANCEL_OTHER' THEN
              --Fetch the URL for cancel own from standing data.
              BEGIN
              SELECT VALUE
                        INTO v_url
                        FROM SMT_ORACLE_PARAMETERS
                        WHERE parameter_code = c_url_cancelother
                        AND host_id = ( SELECT host_id
                                                      FROM SMART_HOSTS A
                                                      WHERE EXISTS ( SELECT 1
                                                                     FROM DB_PARAMETERS b
                                                                     WHERE A.hostname = b.hostname
                                                                     AND A.database_id = b.database_id));
              --handle unforseen exception
              EXCEPTION
                   WHEN NO_DATA_FOUND THEN
                        v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelother_details'; --After testing the same, URL will be fetched from the Query
                   WHEN OTHERS THEN
                        v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_cancelother_details'; --After testing the same, URL will be fetched from the Query
              END;
              --construct the URL
              v_url := v_url || '?';
              v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
              v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
              v_url := v_url || 'p_css_stop_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
              v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
              v_url := v_url || 'p_cancel_reason=' ||Smart_Urlencode(PCANCELLATION_REASON);
              ELSIF Pscenario_type='AMEND_CRD' THEN
              --Fetch the URL for cancel own from standing data.
              BEGIN
              SELECT VALUE
                        INTO v_url
                        FROM SMT_ORACLE_PARAMETERS
                        WHERE parameter_code = c_url_amendcrd
                        AND host_id = ( SELECT host_id
                                                      FROM SMART_HOSTS A
                                                      WHERE EXISTS ( SELECT 1
                                                                     FROM DB_PARAMETERS b
                                                                     WHERE A.hostname = b.hostname
                                                                     AND A.database_id = b.database_id));
              --handle unforseen exception
              EXCEPTION
              WHEN NO_DATA_FOUND THEN
                   v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_amendcrd_details'; -- After testing the same , URL will be fetched from the Query
              WHEN OTHERS THEN
                   v_url := 'Http://wls.brassi1c.devenv1.bt.co.uk:64738/pls/spgenv/spg_btrc.add_btrc_amendcrd_details'; -- After testing the same , URL will be fetched from the Query
              END;
              --construct the URL
              v_url := v_url || '?';
              v_url := v_url || 'p_data_entered=' ||Smart_Urlencode('xmloverhttp')|| '&';
              v_url := v_url || 'p_channel_type=' ||Smart_Urlencode(PCHANNEL_TYPE)|| '&';
              v_url := v_url || 'p_css_start_order_no=' ||Smart_Urlencode(PCSS_ORDER_NUMBER)|| '&';
              v_url := v_url || 'p_tel_no=' ||Smart_Urlencode(PTELEPHONE_NUMBER)|| '&';
              v_url := v_url || 'p_crd='                         ||Smart_Urlencode(PCUSTOMER_REQUIRED_DATE)|| '&';
              v_url := v_url || 'p_css_change_order_numbers='||Smart_Urlencode(PCANCELLATION_REASON);
              END IF;
              --this is start of setting parameters for utl http object. the show begins...
              utl_http.set_transfer_timeout(v_timeout);
              --Set the wallet
              --XXXXX e.g.UTL_HTTP.SET_WALLET(?file:DirectoryPath?,'put password here?);
              --Set proxy
              --YYYYY e.g. utl_http.set_proxy(p_proxy_in, p_no_proxy_domains_in);
              v_url := REPLACE(v_url,'%27%27','%27'); -- Fix to ensure Double Quotes are converted to Single Quotes
              --set the required URL to utl http.
              v_req := utl_http.begin_request(v_url);
              --Authentication setting
              --Fetch the user id and password from stnding data.
              BEGIN
                   SELECT *
                        INTO v_userid_pwd
                        FROM SMT_ORACLE_PARAMETERS
                        WHERE PARAMETER_CODE=c_spg_useridpwd
                        AND HOST_ID = ( SELECT HOST_ID
                                            FROM SMART_HOSTS A
                                            WHERE EXISTS ( SELECT 1
                                                                FROM DB_PARAMETERS B
                                                                WHERE A.HOSTNAME = B.HOSTNAME
                                                                AND A.DATABASE_ID = B.DATABASE_ID));
              EXCEPTION
                   WHEN NO_DATA_FOUND THEN
                   P_RESPONSE := 'ORACLE_ERROR: USER id AND Password NOT configured IN SMT_ORACLE_PARAMETERS:SPGIDPWD';
                   WHEN OTHERS THEN
                   P_RESPONSE := 'ORACLE_ERROR: USER id AND Password NOT configured IN SMT_ORACLE_PARAMETERS:SPGIDPWD';
              END;
              --utl_http.set_authentication(v_req, p_username_in, p_password_in);
              utl_http.set_authentication(v_req, v_userid_pwd.description, v_userid_pwd.VALUE);
              v_resp := utl_http.get_response(v_req);
              --Fill in the the response time
              PRESPONSE_TIME := (DBMS_UTILITY.GET_TIME - v_start_time)/100;
              IF v_resp.reason_phrase = 'OK' THEN
                   -- Fetch the response
                   BEGIN
                        LOOP
                        utl_http.read_line(v_resp, v_buffer);
                             P_RESPONSE := P_RESPONSE || v_buffer;
                        END LOOP;
                             utl_http.end_response(v_resp);
                        EXCEPTION
                        WHEN utl_http.end_of_body THEN
                        utl_http.end_response(v_resp);
                        P_RESPONSE := P_RESPONSE || v_buffer;
                   END;
              ELSIF v_resp.reason_phrase <> 'OK' OR P_RESPONSE = '' THEN
                   --error handling starts
                   --If the HTTP Status is not OK then store the error information
                   PORACLE_ERROR_MESSAGE     :=     'Status Code: '|| v_resp.STATUS_CODE||'. Reason Phrase ' ||v_resp.reason_phrase;
                   P_RESPONSE                    :=     'ORACLE_ERROR: '||     ' Reason Phrase ' ||     v_resp.reason_phrase;
                   PORACLE_ERROR               :=     v_resp.STATUS_CODE;
              END IF;
              --In case we got successful response from SPG
              IF P_RESPONSE LIKE '%<RetCde>0</RetCde>%' THEN
                   PDATA_TRANSFER_STATUS     :=     'Y';
              ELSE
                   BEGIN
    SELECT message
                                  INTO vl_std_returnCode
                                  FROM SMT_MESSAGES
                                  WHERE MESSAGE_CODE='SPGANTIDTS';
    EXCEPTION
    WHEN NO_DATA_FOUND THEN
         vl_std_returnCode := '-12545,-29273,-1,401,';
    WHEN OTHERS THEN
                        vl_std_returnCode := '-12545,-29273,-1,401,';
    END;
                   --In case there was an error do not update Data Transfer Status
                   IF PORACLE_ERROR <> NULL AND INSTR(vl_std_returnCode, PORACLE_ERROR || ',', 1, 1) <> 0 THEN
                             PDATA_TRANSFER_STATUS:=PDATA_TRANSFER_STATUS;
                   ELSE
                        vl_RetCode := SUBSTR(P_RESPONSE, INSTR(P_RESPONSE,'<RetCde>', 1, 1),
                        INSTR(P_RESPONSE,'</RetCde>',1,1)+9 - INSTR(P_RESPONSE,'<RetCde>', 1, 1));
                        BEGIN
                             SELECT VALUE
                                  INTO vl_std_returnCode
                                  FROM SMT_ORACLE_PARAMETERS
                                  WHERE PARAMETER_CODE='SPGRCS'
                                  AND HOST_ID = ( SELECT HOST_ID
                                       FROM SMART_HOSTS A
                                       WHERE EXISTS ( SELECT 1
                                                           FROM DB_PARAMETERS B
                                                           WHERE A.HOSTNAME = B.HOSTNAME
                                                           AND A.DATABASE_ID = B.DATABASE_ID));
                   EXCEPTION
                        WHEN NO_DATA_FOUND THEN
                             vl_std_returnCode := '<RetCde>4244</RetCde><RetCde>4245</RetCde><RetCde>4246</RetCde>';
                        WHEN OTHERS THEN
                             vl_std_returnCode := '<RetCde>4244</RetCde><RetCde>4245</RetCde><RetCde>4246</RetCde>';
                        END;
                        IF INSTR(vl_std_returnCode, vl_RetCode, 1, 1) <> 0 THEN
                             --needs not to re attempted.
                             PDATA_TRANSFER_STATUS:='X';
                        ELSE
                             --In case we did'nt got SUCCESSFUL response FROM SPG THEN UPDATE the Data Transfer Status so that the failed requests can be picked up BY the NEXT batch job RUN
                             IF PDATA_TRANSFER_STATUS='N' THEN
                                  --initially if data transfer status was N then update it now to F
                                  PDATA_TRANSFER_STATUS     :=     'F';
                             ELSIF PDATA_TRANSFER_STATUS='F' THEN
                                  --initially if data transfer status was N then update it now to S
                                  PDATA_TRANSFER_STATUS     :=     'S';
                             END IF;
                        END IF;
                   END IF;
              END IF;
              --Now Update all the modified Values
         UPDATE SPG_INTERFACE_TABLE
                   SET     response          =     P_RESPONSE,
                   data_transfer_status     =     PDATA_TRANSFER_STATUS,
                   oracle_error               =     PORACLE_ERROR,
                   oracle_error_message     =     PORACLE_ERROR_MESSAGE,
                   response_time               =     PRESPONSE_TIME
                   WHERE transaction_id     =     PTRANSACTION_ID;
              COMMIT;
    END IF;
    EXCEPTION
         WHEN OTHERS THEN
         --Handling the unhandled exception
         PORACLE_ERROR               :=     SQLCODE;
         PORACLE_ERROR_MESSAGE     :=     SQLERRM;
         P_RESPONSE                    :=     'ORACLE_ERROR: '|| PORACLE_ERROR_MESSAGE;
         PRESPONSE_TIME               :=     (DBMS_UTILITY.GET_TIME - v_start_time)/100;
         SELECT data_transfer_status INTO PDATA_TRANSFER_STATUS
         FROM SPG_INTERFACE_TABLE
         WHERE transaction_id=PTRANSACTION_ID;
         --New functionality to update the oracle error and oracle error message and not the Data Transfer Status
    BEGIN
    SELECT message
    INTO vl_std_returnCode
    FROM SMT_MESSAGES
    WHERE MESSAGE_CODE='SPGANTIDTS';
    EXCEPTION
    WHEN NO_DATA_FOUND THEN
    vl_std_returnCode := '-12545,-29273,-1,';
    WHEN OTHERS THEN
    vl_std_returnCode := '-12545,-29273,-1,';
    END;
         vl_RetCode     :=     PORACLE_ERROR || ',';
    IF INSTR(vl_std_returnCode, vl_RetCode, 1, 1) <> 0 THEN
    --If the error is found in above maintained standing data do not change the Data Transfer Status
                   pdata_transfer_status:=pdata_transfer_status;
    ELSE
              IF pdata_transfer_status='N' THEN
                             PDATA_TRANSFER_STATUS     :=     'F';
                             DBMS_OUTPUT.PUT_LINE('DUE TO ERROR DATA COULDN''T GET TRANSFERED TO SPG FOR TRANSACTION'||' '||PTRANSACTION_ID);
                             DBMS_OUTPUT.PUT_LINE(SQLERRM);
              ELSIF pdata_transfer_status='F' THEN
                             PDATA_TRANSFER_STATUS     :=     'S';
                             DBMS_OUTPUT.PUT_LINE('DUE TO ERROR DATA COULDN''T GET TRANSFERED TO SPG FOR TRANSACTION'||' '||PTRANSACTION_ID);
                             DBMS_OUTPUT.PUT_LINE(SQLERRM);
    ELSE
                             DBMS_OUTPUT.PUT_LINE('Failure WHEN sending data TO Error LOG. Data Transfer Status IS ' || PDATA_TRANSFER_STATUS || '. TRANSACTION ID '|| PTRANSACTION_ID);
              END IF;
    END IF;
              --Now update all the information gathered above to the table
         UPDATE SPG_INTERFACE_TABLE
              SET     response          =     P_RESPONSE,
              data_transfer_status     =     PDATA_TRANSFER_STATUS,
              oracle_error               =     PORACLE_ERROR,
              oracle_error_message     =     PORACLE_ERROR_MESSAGE,
              response_time               =     PRESPONSE_TIME
              WHERE transaction_id     =     PTRANSACTION_ID;
              COMMIT;
    END;
    /

    I have fixed the problem by own.
    Seems there are some while space in the endpoint url.
    Fix
    http_req:= utl_http.begin_request
    trim(l_endpoint_url)
    ,'POST'
    ,'HTTP/1.1'
    It works...
    Regards
    BS

  • TOO many OPEN CURSORS during loop of INSERT's

    Running ODP.NET beta2 (can't move up yet but will do that soon)
    I don't think it is related with ODP itself but probably on how .Net works with cursors. We have a for/next loop that executes INSERT INTO xxx VALUES (:a,:b,:c)
    statements. Apparently, when monitoring v$sysstat (current open cursors) we see these raising with 1 INSERT = 1 cursor. If subsequently we try to perform another action, we get max cursors exceeded. We allready set open_cursor = 1000, but the number of inserts can be very high. Is there a way to release these cursors (already wrote oDataAdaptor.dispose, oCmd.dispose but this does not help.
    Is it normal that each INSERT has it's own cursor ? they all have the same hashvalue in v$open_cursor. They seem to be released after a while, especially when moving to another asp.net page, but it's not clear when that happens and if it is possible to force the release of the (implicit?) cursors faster.
    Below is a snippet of the code, I unrolled a couple of function-calls into the code so this is just an example, not sure it will run without errors like this, but the idea should be clear (the code looks rather complex for what it does but the unrolled functions make the code more generic and we have a database-independend datalayer):
    Try
    ' Set the Base Delete statement
    lBaseSql = _
    "INSERT INTO atable(col1,col2,col3) " & _
    "VALUES(:col1,:col2,:col3)"
    ' Initialize a transaction
    lTransaction = oConnection.BeginTransaction()
    ' Create the parameter collection, containing for each
    ' row in the list the arguments
    For Each lDataRow In aList.Rows
    lOracleParamters = New OracleParameterCollection()
    lOracleParameter = New OracleParameter("luserid", OracleDbType.Varchar2,
    _ CType(aCol1, Object))
    lOracleParamters.Add(lOracleParameter)
    lOracleParameter = New OracleParameter("part_no", OracleDbType.Varchar2, _
    CType(lDataRow.Item("col2"), Object))
    lOracleParamters.Add(lOracleParameter)
    lOracleParameter = New OracleParameter("revision", OracleDbType.Int32, _
    CType(lDataRow.Item("col3"), Object))
    lOracleParamters.Add(lOracleParameter)
    ' Execute the Statement;
    ' If the execution fails because the row already exists,
    ' then the insert should be considered as succesfull.
    Try
    Dim aCommand As New OracleCommand()
    Dim retval As Integer
    'associate the aConnection with the aCommand
    aCommand.Connection = oConnection
    'set the aCommand text (stored procedure name or SQL statement)
    aCommand.CommandText = lBaseSQL
    'set the aCommand type
    aCommand.CommandType = CommandType.Text
    'attach the aCommand parameters if they are provided
    If Not (lOracleParameters Is Nothing) Then
    Dim lParameter As OracleParameter
    For Each lParameter In lOracleParameters
    'check for derived output value with no value assigned
    If lParameter.Direction = ParameterDirection.InputOutput _
    And lParameter.Value Is Nothing Then
    lParameter.Value = Nothing
    End If
    aCommand.Parameters.Add(lParameter)
    Next lParameter
    End If
    Return
    ' finally, execute the aCommand.
    retval = cmd.ExecuteNonQuery()
    ' detach the OracleParameters from the aCommand object,
    ' so they can be used again
    cmd.Parameters.Clear()
    Catch ex As Exception
    Dim lErrorMsg As String
    lErrorMsg = ex.ToString
    If Not lTransaction Is Nothing Then
    lTransaction.Rollback()
    End If
    End Try
    Next
    lTransaction.Commit()
    Catch ex As Exception
    lTransaction.Rollback()
    Throw New DLDataException(aConnection, ex)
    End Try

    I have run into this problem as well. To my mind
    Phillip's solution will work but seems completey unnecessary. This is work the provider itself should be managing.
    I've done extensive testing with both ODP and OracleClient. Here is one of the scenarios: In a tight loop of 10,000 records, each of which is either going to be inserted or updated via a stored procedure call, the ODP provider throws the "too many cursor errors at around the 800th iteration. With over 300 cursors being open. The exact same code with OracleClient as the provider never throws an error and opens up 40+ cursors during execution.
    The applicaation I have updates a Oracle8i database from a DB2 database. There are over 30 tables being updated in near real time. Reusing the command object is not an option and adding all the code Phillip did for each call seems highly unnecessary. I say Oracle needs to fix this problem. As much as I hate to say it the microsoft provider seems superior at this point.

  • Error MDX result contains too many cells (more than 1 million). (WIS 10901)

    Hi,
    We have developed an universe on BI query and developed report on it. But while running this BO query in Web Intelligence we get the following error
    A database error occured. The database error text is: Error in MDDataSetBW.GetCellData.  MDX result contains too many cells (more than 1 million). (WIS 10901)
    This BO query is restricted for one document number.
    Now when i check in the BI cube there are not more than 300-400 records for that document number.
    If i restrict the BO query for document number, delivery number, material and acknowledged date then the query runs successfully.
    Can anyone please help with this issue.

    follow this article to get the mdx generated by the webi report.
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/90b02218-d909-2e10-1988-a2ca74547900
    then try to execute the same in mdxtest transaction in bw

  • Too many objects match the primary key oracle.jbo.Key

    Hi OAF Gurus,
    Currently we are implementing R12 Upgrade , for this we have deployed all the custom OAF Application related files on to the the respective JAVA_TOP folder.
    We have a custom municipal postal application which tracks the Postal Details.
    The page runs perfectly fine without any error in 11i instance, but the same is erroring out In R12.
    In R12 it shows an error as Too many objects match the primary key oracle.jbo.Key[112010 2014-10-01]
    here 112010 is nothing but the postal code id and 2014-10-01 is the Effective Start Date
    We have a custom table as xxad_postal_codes_f  (Date Track table)which contains the postal_code_id and effective_start_date (primary key is combination of postal_code_id and effective_start_date ).
    The Table already contains a row for postal_code_id = 112010  and Effective_Start_date = Sysdate.
    Now we want to update the entry for the same postal code with the Id being same as 112010  and  Effective_Start_date as 2014-10-01 through custom PostCodeChangePG
    at the time of save we are getting an error as Too many objects match the primary key oracle.jbo.Key[112010 2014-10-01]
    The table doesn't contain any of the data mentioned ([112010 2014-10-01]) at the time of insertion, hence there should not be any duplication of primary key but still we are getting the error.
    Please let us know how can we handle this..?
    Below is the code which is getting called on Click of Save button of PostCodeChangePG
    if (pageContext.getParameter("Apply") != null)
          PCodeCoWorkerBase coWorker = getCoWorker(pageContext, webBean);
              coWorker.processApply();
    Code in PCodeCoWorkerBase
        public void processApply()
          String postalCodeId = UIHelper.getRequiredParameter(pageContext, "postalCodeId");
          Date startDate = UIHelper.getRequiredDateParameter(pageContext , "EffectiveStartDate");
         Serializable[] postalCodeData = (Serializable[]) applicationModule.invokeMethod( "insertPostalCodeMajorChange", params, paramTypes );
          finalizeTransactionAndRedirect( postalCodeData );
    Code in Application Module
      public Serializable[] insertPostalCodeMajorChange ( String postalCodeId, Date date )
        PCodeAmWorker amWorker = new PCodeAmWorker(this);
        return amWorker.insertMajorChange( postalCodeId, DateHelper.convertClientToServerDate( getOADBTransaction(), date )
    Code in PCodeAmWorker
      public Serializable[] insertMajorChange ( String postalCodeId, Date date )
        // Get the view objects we need from the application module
        OAViewObject viewObject = (OAViewObject) applicationModule.getPCodesVO();
        PCodesVORowImpl currentRow = (PCodesVORowImpl) viewObject.getCurrentRow();
        currentRow.validate();
        currentRow.setEffectiveStartDate(date);
        currentRow.setComment1(currentRow.getNewComment());
    // Create a new row based on the current row
    PCodesVORowImpl newRow = (PCodesVORowImpl) viewObject.createAndInitRow(currentRow); //This is failing out and gives the error
    // Get the new effective start date as entered by the user
    Date effectiveStartDate = currentRow.getEffectiveStartDate();
        // Calculate the previous period's effective end date
        Date previousEffectiveEndDate = DateHelper.addDays(effectiveStartDate, -1);
        // Refresh the current row (the one changed by the UI) with the data it had at the beginning of the transaction
        currentRow.refresh(Row.REFRESH_UNDO_CHANGES);
        // The current row will now represent data for the the previous period set the effective end date for the previous period
        currentRow.setEffectiveEndDate(previousEffectiveEndDate);
        // Insert the newly created row that now represents the new period
        viewObject.insertRow(newRow);
        applicationModule.apply();
        return generateResult(newRow);
    PCodesVO() is based on PostalCodeEO
    below is the code from PostalCodeEOImpl
      public void create(AttributeList attributeList)
        // NOTE: This call will set attribute values if the entity object  is created with a call to vo.createAndInitRow(..)
        super.create(attributeList);
        if (getPostalCodeId() == null)
          setPostalCodeId(getOADBTransaction().getSequenceValue("XXAD_POSTAL_CODES_S"));
        if (getEffectiveStartDate() == null)
          setEffectiveStartDate(getOADBTransaction().getCurrentDBDate());
    After diagnosing the issue we found that the error is on the code of AMworker file while creating a new row PCodesVORowImpl newRow = (PCodesVORowImpl) viewObject.createAndInitRow(currentRow);
    we tried so many things such as clearing entity cache, VO cache, validating for duplicate primary key but still not able to resolved this.
    Please advice how to insert a new row on the PCodesVORowImpl without any exception.
    Thanks,
    Pallavi

    Hi ,
    One question here , if you are udating a existing record then why you are trying to create a new row
    PCodesVORowImpl newRow = (PCodesVORowImpl) viewObject.createAndInitRow(currentRow);
    Thanks
    Pratap

  • BEA-012036 Too Many Files | Weblogic Start Up for EJB deployment

    Trying to deploy EAR with EJB module inside. I am seeing the below error intermittently while deploying and now starting the weblogic server .
    There is already an EAR deployed with all the Shared Libraries under APP-INF/lib. I deployed a new EAR with all the similar common shared libraries ( APP-INF/lib jar files ) packaged inside this new file.
    <Apr 28, 2009 7:45:18 PM EDT> <Error> <EJB> <BEA-012036> <Compiling generated EJB classes produced the following Java compiler error message:
    /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.java:17: error while writing com.test.xxx.ejb.rtmschema.CreditserviceSessionEjb_f0jmmq_Impl: /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.class (Too many open files)
    (source unavailable)
    1 error
    >
    <Apr 28, 2009 7:45:19 PM EDT> <Error> <Deployer> <BEA-149205> <Failed to initialize the application 'xxx-ear-ejb4' due to error weblogic.application.ModuleException: Exception preparing module: EJBModule(xxx-ejbschema-service.jar)
    Unable to deploy EJB: xxx-ejbschema-service.jar from xxx-ejbschema-service.jar:
    There are 1 nested errors:
    java.io.IOException: Compiler failed executable.exec:
    /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.java:17: error while writing com.test.xxx.ejb.rtmschema.CreditserviceSessionEjb_f0jmmq_Impl: /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.class (Too many open files)
    (source unavailable)
    1 error
    at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:493)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:332)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:340)
    at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:343)
    at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:533)
    at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:500)
    at weblogic.ejb.container.deployer.EJBDeployer.runEJBC(EJBDeployer.java:476)
    at weblogic.ejb.container.deployer.EJBDeployer.compileJar(EJBDeployer.java:798)
    at weblogic.ejb.container.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
    at weblogic.ejb.container.deployer.EJBDeployer.prepare(EJBDeployer.java:1234)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:372)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:360)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:46)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
    at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:137)
    at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:187)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    weblogic.application.ModuleException: Exception preparing module: EJBModule(xxx-ejbschema-service.jar)
    Unable to deploy EJB: xxx-ejbschema-service.jar from xxx-ejbschema-service.jar:
    There are 1 nested errors:
    java.io.IOException: Compiler failed executable.exec:
    /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.java:17: error while writing com.test.xxx.ejb.rtmschema.CreditserviceSessionEjb_f0jmmq_Impl: /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.class (Too many open files)
    (source unavailable)
    1 error
    at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:493)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:332)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:340)
    at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:343)
    at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:533)
    at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:500)
    at weblogic.ejb.container.deployer.EJBDeployer.runEJBC(EJBDeployer.java:476)
    at weblogic.ejb.container.deployer.EJBDeployer.compileJar(EJBDeployer.java:798)
    at weblogic.ejb.container.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
    at weblogic.ejb.container.deployer.EJBDeployer.prepare(EJBDeployer.java:1234)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:372)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:360)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:46)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:147)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:61)
    at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:137)
    at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:187)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:399)
    at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
    at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:360)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
    at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
    Truncated. see log file for complete stacktrace
    java.io.IOException: Compiler failed executable.exec:
    /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.java:17: error while writing com.test.xxx.ejb.rtmschema.CreditserviceSessionEjb_f0jmmq_Impl: /prod/xxxx/prd/server/dev_xxxx/servers/mt_crd_180_15001/cache/EJBCompilerCache/f6yuykfqdn7i/com/test/xxx/ejb/rtmschema/CreditserviceSessionEjb_f0jmmq_Impl.class (Too many open files)
    (source unavailable)
    1 error
    at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:493)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:332)
    at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:340)
    at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:343)
    at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:533)
    Truncated. see log file for complete stacktrace
    Thanks
    Abhi

    Put only files which needs to be 'shared' ( e.g persistent store files for jms, jta transaction store etc) on the network drive .. put all other files including logs on the local disk.. see if that makes a difference..
    NAS is slower than other storage setups like SAN and DAS...

  • DB need too many locks in single threaded application

    Hello,
    I`m new to BDB, and search for help of gurus.
    I try to create database importing data from csv files. Import procedure is already written and works fine, but sometimes it starts to need too many locks.
    Import process read csv file line by line. Check if key is already in the database, if yes it updates data, otherwise create new record. Import procedure is using DBEnv and transaction.
    Please, look at 2 cases of data to import.
    Case 1: Data in csv files are like:
    key1, some_data_1
    key1, some_data_2
    key2, some_data_3
    key2, some_data_4
    keyN, some_data_2N-1
    keyN, some_data_2N
    (key became a key and data became the value in the database)
    Case 2: Remove each second line in the csv file, so it became:
    key1, some_data_1
    key2, some_data_3
    keyN, some_data_2N-1
    In this case for successful import of the file more locks are needed then in case 1.
    This seems very odd to me. Could somebody explain why lock system behave so? Looking forward to hearing any response.
    Thanks.
    p.s.: maybe my explanation is not very clear, but i don't know which other details are really important. I could provide more details if it could help.
    Message was edited by:
    user647892

    There is nothing wrong.
    Oracle by default locks records. In case 1, you insert a record (1 row level lock) and update that same record. Why is a mystery, but the update doesn't require a lock (by you) as you already did lock the record.
    In case 2, you have distinct keys for each line, so each line results in a row level lock as expected.
    There are as much record locks as you request it to make.
    You could consider locking the table explicitly once, prior to the transaction, by a lock table statement.
    However, your approach is fundamentally flawed an non-scalable, as it processes each line individually instead of loading the data in a staging table and transferring it to the production table using
    insert into production table
    select * from staging table
    where key not in (select key from product table)
    Sybrand Bakker
    Senior Oracle DBA

  • JBO-25013: Too many objects match the primary key oracle.jbo.Key

    hi am adding values from one viewObject to another viewObject am geting this error JBO-25013: Too many objects match the primary key oracle.jbo.Key
    i used this code
    <af:commandButton text="Add New" id="cb5"
                                            actionListener="#{pageFlowScope.addMember.addMember}"/>
        RichTable empTable;
         public void setEmpTable(RichTable empTable) {
             this.empTable = empTable;
         public RichTable getEmpTable() {
             return empTable;
    binding="#{pageFlowScope.addMember.empTable}">
    the error is pointing in this line
        public void addMember(javax.faces.event.ActionEvent actionEvent) {
            List<String> tempTable = new ArrayList<String>();
            //Code to get the bindings for TargetVO :
                 RowKeySet selectedEmps = getEmpTable().getSelectedRowKeys();   
                   Iterator selectedEmpIter = selectedEmps.iterator();
                   DCBindingContainer bindings =
                                     (DCBindingContainer)BindingContext.getCurrent().getCurrentBindingsEntry();
                   DCIteratorBinding empIter = bindings.findIteratorBinding("UserDetailsViewVO1Iterator");
                   RowSetIterator empRSIter = empIter.getRowSetIterator();
                    while(selectedEmpIter.hasNext()){
                      Key key = (Key)((List)selectedEmpIter.next()).get(0);
                      Row currentRow = empRSIter.getRow(key);
                         onRowCreate(currentRow);
        public void onRowCreate( Row currentRow ) {
            OIDOperations   oIDOperations= new  OIDOperations();
            Map<Object,String> mp=new HashMap<Object, String>();         
         BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
         //access the name of the iterator the table is bound to.
         DCIteratorBinding dciter = (DCIteratorBinding) bindings.get("DeltMember1Iterator");
         //access the underlying RowSetIterator
         RowSetIterator rsi = dciter.getRowSetIterator();
         //get handle to the last row
         Row lastRow = rsi.last();
         //obtain the index of the last row
         int lastRowIndex = rsi.getRangeIndexOf(lastRow);
         //create a new row
         Row newRow = rsi.createRow();
         String f = (String)currentRow.getAttribute("Firstname");
         String s = (String)currentRow.getAttribute("Surname");
         String u = (String)currentRow.getAttribute("Username"); 
         String n = (String)currentRow.getAttribute("Emailaddress");
            newRow.setAttribute("Firstname", f);
            newRow.setAttribute("Surname", s);
            newRow.setAttribute("Username1", u);
            newRow.setAttribute("Username", u);
            newRow.setAttribute("Emailaddress", n);
            newRow.setAttribute("Organisationid1",getorgid());
         //initialize the row
         newRow.setNewRowState(Row.STATUS_INITIALIZED);
         //add row to last index + 1 so it becomes last in the range set
         rsi.insertRowAtRangeIndex(lastRowIndex +1,  newRow);
         //make row the current row so it is displayed correctly
         rsi.setCurrentRow(newRow);   
            System.out.println("Username " + u);
            System.out.println("firstname " + f);
            System.out.println("surname " + s);
            System.out.println("email " + n);
        }Edited by: adf009 on 2013/02/14 2:44 PM
    Edited by: adf009 on 2013/02/14 2:44 PM
    Edited by: adf009 on 2013/02/14 2:46 PM
    Edited by: adf009 on 2013/02/14 2:47 PM

    how must i control my pk
    my log error is
    Caused by: oracle.jbo.TooManyObjectsException: JBO-25013: Too many objects match the primary key oracle.jbo.Key[2909 ].
         at oracle.jbo.server.EntityCache.throwTooManyObjectsException(EntityCache.java:604)
         at oracle.jbo.server.EntityCache.handleDuplicateKey(EntityCache.java:613)
         at oracle.jbo.server.EntityCache.addForAltKey(EntityCache.java:1020)
         at oracle.jbo.server.EntityCache.add(EntityCache.java:537)
         at oracle.jbo.server.EntityImpl.callCreate(EntityImpl.java:1207)
         at oracle.jbo.server.ViewRowStorage.create(ViewRowStorage.java:1152)
         at oracle.jbo.server.ViewRowImpl.create(ViewRowImpl.java:498)
         at oracle.jbo.server.ViewRowImpl.callCreate(ViewRowImpl.java:515)
         at oracle.jbo.server.ViewObjectImpl.createInstance(ViewObjectImpl.java:5714)
         at oracle.jbo.server.QueryCollection.createRowWithEntities(QueryCollection.java:1993)
         at oracle.jbo.server.ViewRowSetImpl.createRowWithEntities(ViewRowSetImpl.java:2492)
         at oracle.jbo.server.ViewRowSetImpl.doCreateAndInitRow(ViewRowSetImpl.java:2533)
         at oracle.jbo.server.ViewRowSetImpl.createRow(ViewRowSetImpl.java:2514)
         at oracle.jbo.server.ViewObjectImpl.createRow(ViewObjectImpl.java:11079)
         at uam.cadastre.gov.za.OrgDetails.onRowCreate(OrgDetails.java:1650)
         at uam.cadastre.gov.za.OrgDetails.addMember(OrgDetails.java:1624)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.sun.el.parser.AstValue.invoke(Unknown Source)
         at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
         at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
         ... 49 more
    <DCUtil> <findSpelObject> [3498] DCUtil, returning:oracle.jbo.uicli.binding.JUFormBinding, for uam_view_pageDefs_OrgDetailsPageDef_WEB_INF_Updatetaskflow_definition_xml_Updatetaskflow_definition
    <DCIteratorBinding> <releaseDataInternal> [3499] Releasing iterator binding:OfficecodeList_436
    <DCIteratorBinding> <releaseDataInternal> [3500] Releasing iterator binding:OrganisationtypecodeList_344
    <DCIteratorBinding> <releaseDataInternal> [3501] Releasing iterator binding:OrgsubtypecodeList_437
    <DCIteratorBinding> <releaseDataInternal> [3502] Releasing iterator binding:CountrycodeList_438
    <DCIteratorBinding> <releaseDataInternal> [3503] Releasing iterator binding:ProvinceList_439
    <DCIteratorBinding> <releaseDataInternal> [3504] Releasing iterator binding:CityList_440
    <DCIteratorBinding> <releaseDataInternal> [3505] Releasing iterator binding:SuburbList_441
    <JUCtrlHierNodeBinding> <release> [3506] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_45, value:UpdResPerson1Iterator
    <JUCtrlHierNodeBinding> <release> [3507] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_46, value:UpdResPerson1Iterator
    <JUCtrlHierNodeBinding> <release> [3508] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_90, value:UserDetailsViewVO1Iterator
    <JUCtrlHierNodeBinding> <release> [3509] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_203, value:DeltMember1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3510] Releasing iterator binding:UpdUamOrganisation1Iterator
    <JUCtrlHierNodeBinding> <release> [3511] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_45, value:UpdResPerson1Iterator
    <JUCtrlHierNodeBinding> <release> [3512] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_46, value:UpdResPerson1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3513] Releasing iterator binding:UpdResPerson1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3514] Releasing iterator binding:UpdPaymentOptions1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3515] Releasing iterator binding:LutPaymentmethodsView1Iterator
    <JUCtrlHierNodeBinding> <release> [3516] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_203, value:DeltMember1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3517] Releasing iterator binding:DeltMember1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3518] Releasing iterator binding:UamUserdetailsView1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3519] Releasing iterator binding:UpdOrganisationUser1Iterator
    <JUCtrlHierNodeBinding> <release> [3520] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_90, value:UserDetailsViewVO1Iterator
    <DCIteratorBinding> <releaseDataInternal> [3521] Releasing iterator binding:UserDetailsViewVO1Iterator
    <JUCtrlHierNodeBinding> <release> [3522] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_87, value:vcRowsIterator
    <DCIteratorBinding> <releaseDataInternal> [3523] Releasing iterator binding:operators_357
    <DCIteratorBinding> <releaseDataInternal> [3524] Releasing iterator binding:listIter
    <DCIteratorBinding> <releaseDataInternal> [3525] Releasing iterator binding:values_360
    <DCIteratorBinding> <releaseDataInternal> [3526] Releasing iterator binding:values_360
    <DCIteratorBinding> <releaseDataInternal> [3527] Releasing iterator binding:nestedViewCriteria_362
    <DCIteratorBinding> <releaseDataInternal> [3528] Releasing iterator binding:nestedViewCriteria_362
    <DCIteratorBinding> <releaseDataInternal> [3529] Releasing iterator binding:operators_357
    <DCIteratorBinding> <releaseDataInternal> [3530] Releasing iterator binding:operators_364
    <DCIteratorBinding> <releaseDataInternal> [3531] Releasing iterator binding:listIter
    <DCIteratorBinding> <releaseDataInternal> [3532] Releasing iterator binding:values_367
    <DCIteratorBinding> <releaseDataInternal> [3533] Releasing iterator binding:values_367
    <DCIteratorBinding> <releaseDataInternal> [3534] Releasing iterator binding:nestedViewCriteria_369
    <DCIteratorBinding> <releaseDataInternal> [3535] Releasing iterator binding:nestedViewCriteria_369
    <DCIteratorBinding> <releaseDataInternal> [3536] Releasing iterator binding:operators_364
    <DCIteratorBinding> <releaseDataInternal> [3537] Releasing iterator binding:operators_371
    <DCIteratorBinding> <releaseDataInternal> [3538] Releasing iterator binding:listIter
    <DCIteratorBinding> <releaseDataInternal> [3539] Releasing iterator binding:values_374
    <DCIteratorBinding> <releaseDataInternal> [3540] Releasing iterator binding:values_374
    <DCIteratorBinding> <releaseDataInternal> [3541] Releasing iterator binding:nestedViewCriteria_376
    <DCIteratorBinding> <releaseDataInternal> [3542] Releasing iterator binding:nestedViewCriteria_376
    <DCIteratorBinding> <releaseDataInternal> [3543] Releasing iterator binding:operators_371
    <DCIteratorBinding> <releaseDataInternal> [3544] Releasing iterator binding:operators_378
    <DCIteratorBinding> <releaseDataInternal> [3545] Releasing iterator binding:listIter
    <DCIteratorBinding> <releaseDataInternal> [3546] Releasing iterator binding:values_381
    <DCIteratorBinding> <releaseDataInternal> [3547] Releasing iterator binding:values_381
    <DCIteratorBinding> <releaseDataInternal> [3548] Releasing iterator binding:nestedViewCriteria_383
    <DCIteratorBinding> <releaseDataInternal> [3549] Releasing iterator binding:nestedViewCriteria_383
    <DCIteratorBinding> <releaseDataInternal> [3550] Releasing iterator binding:operators_378
    <DCIteratorBinding> <releaseDataInternal> [3551] Releasing iterator binding:criteriaItemsForSearch_348
    <DCIteratorBinding> <releaseDataInternal> [3552] Releasing iterator binding:viewObjectBindVars_351
    <DCIteratorBinding> <releaseDataInternal> [3553] Releasing iterator binding:viewObjectBindVars_351
    <DCIteratorBinding> <releaseDataInternal> [3554] Releasing iterator binding:properties_353
    <DCIteratorBinding> <releaseDataInternal> [3555] Releasing iterator binding:properties_353
    <DCIteratorBinding> <releaseDataInternal> [3556] Releasing iterator binding:criteriaItemsForSearch_348
    <JUCtrlHierNodeBinding> <release> [3557] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_88, value:vcRowsIterator
    <JUCtrlHierNodeBinding> <release> [3558] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_87, value:vcRowsIterator
    <JUCtrlHierNodeBinding> <release> [3559] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_88, value:vcRowsIterator
    <DCIteratorBinding> <releaseDataInternal> [3560] Releasing iterator binding:vcRowsIterator
    <DCIteratorBinding> <releaseDataInternal> [3561] Releasing iterator binding:variableIterator
    <DCIteratorBinding> <releaseDataInternal> [3562] Releasing iterator binding:UamAddress1Iterator
    <ApplicationPoolMessageHandler> <doPoolMessage> [3563] **** PoolMessage REQ ATTACH LWS
    <ApplicationPoolMessageHandler> <doPoolMessage> [3564] **** PoolMessage REQ DETACH LWS
    <ViewObjectImpl> <closeStatementsResetRowSet> [3565] ViewObject: [internal_vcival_def]Root.internal_vcival_def_385 close prepared statements...
    <ViewObjectImpl> <closeStatementsResetRowSet> [3566] ViewObject: [internal_vco_def]Root.internal_vco_def_442 close prepared statements...
    <ViewObjectImpl> <closeStatementsResetRowSet> [3567] ViewObject: [internal_vci_def]Root.internal_vci_def_355 close prepared statements...
    <ViewObjectImpl> <closeStatementsResetRowSet> [3568] ViewObject: [AppModule.UserDetailsViewVO1.data_uam_view_updateorgPageDef_Updatetaskflowdefinition1_uam_view_pageDefs_OrgDetailsPageDef_WEB_INF_Updatetaskflow_definition_xml_Updatetaskflow_definition_ImplicitViewCriteriaQuery]Root.AppModule_UserDetailsViewVO1_data_uam_view_updateorgPageDef_Updatetaskflowdefinition1_uam_view_pageDefs_OrgDetailsPageDef_WEB_INF_Updatetaskflow_definition_xml_Updatetaskflow_definition_ImplicitViewCriteriaQuery_346 close prepared statements...
    <DCUtil> <findSpelObject> [3569] DCUtil, returning:oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding, for ImplicitViewCriteriaQuery
    <JUCtrlHierNodeBinding> <release> [3570] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_87, value:vcRowsIterator
    <JUCtrlHierNodeBinding> <release> [3571] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_88, value:vcRowsIterator
    <JUCtrlHierNodeBinding> <release> [3572] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_87, value:vcRowsIterator
    <JUCtrlHierNodeBinding> <release> [3573] released: ROOT node binding:noCtrl_oracle_adfinternal_view_faces_model_binding_FacesCtrlHierNodeBinding_88, value:vcRowsIterator
    <DCIteratorBinding> <releaseDataInternal> [3574] Releasing iterator binding:vcRowsIterator
    <DCIteratorBinding> <releaseDataInternal> [3575] Releasing iterator binding:variableIterator
    <ADFLogger> <begin> Rollback transaction
    <ApplicationModuleImpl> <resetState> [3576] Resetting AM=Root
    <ApplicationPoolMessageHandler> <doPoolMessage> [3577] **** PoolMessage REQ DETACH LWS
    <ApplicationPoolMessageHandler> <doPoolMessage> [3578] **** PoolMessage REQ ATTACH LWS
    <ApplicationPoolMessageHandler> <doPoolMessage> [3579] **** PoolMessage REQ DETACH LWS
    <XmlErrorHandler> <handleError> ADF_FACES-60096:Server Exception during PPR, #1
    javax.servlet.ServletException: JBO-25013: Too many objects match the primary key oracle.jbo.Key[2909 ].
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:277)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:179)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:139)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: oracle.jbo.TooManyObjectsException: JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-25013. Error message parameters are {0=oracle.jbo.Key[2909 ]}
         at oracle.jbo.server.EntityCache.throwTooManyObjectsException(EntityCache.java:604)
         at oracle.jbo.server.EntityCache.handleDuplicateKey(EntityCache.java:613)
         at oracle.jbo.server.EntityCache.addForAltKey(EntityCache.java:1020)
         at oracle.jbo.server.EntityCache.add(EntityCache.java:537)
         at oracle.jbo.server.EntityImpl.callCreate(EntityImpl.java:1207)
         at oracle.jbo.server.ViewRowStorage.create(ViewRowStorage.java:1152)
         at oracle.jbo.server.ViewRowImpl.create(ViewRowImpl.java:498)
         at oracle.jbo.server.ViewRowImpl.callCreate(ViewRowImpl.java:515)
         at oracle.jbo.server.ViewObjectImpl.createInstance(ViewObjectImpl.java:5714)
         at oracle.jbo.server.QueryCollection.createRowWithEntities(QueryCollection.java:1993)
         at oracle.jbo.server.ViewRowSetImpl.createRowWithEntities(ViewRowSetImpl.java:2492)
         at oracle.jbo.server.ViewRowSetImpl.doCreateAndInitRow(ViewRowSetImpl.java:2533)
         at oracle.jbo.server.ViewRowSetImpl.createRow(ViewRowSetImpl.java:2514)
         at oracle.jbo.server.ViewObjectImpl.createRow(ViewObjectImpl.java:11079)
         at OrgDetails.onRowCreate(OrgDetails.java:1650)
         at OrgDetails.addMember(OrgDetails.java:1624)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.sun.el.parser.AstValue.invoke(Unknown Source)
         at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
         at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256)
         at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
         at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:148)
         at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:279)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:145)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:402)
         at oracle.adf.view.rich.component.fragment.UIXRegion.broadcast(UIXRegion.java:148)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1018)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:386)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         ... 38 more
    the error is in this like Row newRow = rsi.createRow();Edited by: adf009 on 2013/02/14 2:48 PM

  • ICloud mail "Too many connections" error

    Anyone ever gotten this error when sending to an @me.com account? This is what it looks like when I send email to myself using it. My gut says it's a Boxcar issue but I haven't used that service in months and I've now disconnected anything from it. This is the error I'm seeing back when sending email to my iCloud account:
    This report relates to a message you sent with the following header fields:
    Message-id: <[email protected]>
    Date: Wed, 07 Nov 2012 14:29:50 -0500
    From: Brad Franklin <[email protected]>
    To: Brad Franklin <[email protected]>
    Subject: Test
    Your message cannot be delivered to the following recipients:
    Recipient address: [email protected]
    Original address: [email protected]
    Reason: Rejection greeting returned by server.
    Diagnostic code: smtp;554 Transaction failed. Too many connections.
    Remote system: dns;push.boxcar.io (TCP|17.172.204.240|45227|173.192.56.11|25) (Transaction failed. Too many connections.)
    Original-envelope-id: [email protected]
    Reporting-MTA: dns;st11p01mm-asmtp005.mac.com (tcp-daemon)
    Arrival-date: Wed, 07 Nov 2012 19:29:54 +0000 (GMT)
    Original-recipient: rfc822;[email protected]
    Final-recipient: rfc822;[email protected]
    Action: failed
    Status: 5.0.0 (Rejection greeting returned by server.)
    Remote-MTA: dns;push.boxcar.io (TCP|17.172.204.240|45227|173.192.56.11|25)
    (Transaction failed. Too many connections.)
    Diagnostic-code: smtp;554 Transaction failed. Too many connections.

    I'm also having this issue with two of my accounts (the main ones I use the most!) I get this message:

  • Select from (too many) tables

    Hi all,
    I'm a proud Oracle Apex developer. We have developed an Interactive Report that is generated from many joined tables in a remote system. I've read that to improve performances we can do the following:
    1) Create a temporary table on our system that stores the app_user id and the colmun as a result of the query
    2) Create a procedure that does:
    declare
    param1:= :PXX_item
    param2:= :PXY_item.
    param3:= :V('APP_USER')
    insert into <our_table>
    (select param3, <query from remore system>)
    commit;
    3) Rediresct to a query page where IR reads from this temp table
    On "Exit" button there's a procedure that purge table data of that user (delete from temp where user=V('app_user'), so the temp table is only filled with necessary data.
    Do you see any inconvenience? Application will be used from about 500 users, about 50 concurrent users at a time.
    Thank you!

    1) We don't have a control on source syste, we can only perform query on itI was referring to a materialized view on the system where Apex is installed, not on the source database.
    2) There are many tables involvedI don't understand why this is a problem. Too much data I can see, but too many tables... not so much.
    3) Data has to be in real time, with no delayThis would a problem for MV or collections. The collections would store the data as of the initial query. Any IRs using the collection after the fact would be using stale data. If you absolutely have to have the data as of right now every time, then the full query must run on the remote system every time. Tuning that query is the only option to make it faster.
    4) There are many transactions on the source tables (they are the core of the source system) and so MV could not be refreshed so fastProbably could be with fast refresh enabled, but not necessarily practical to do so. As I indicated in 3, you have painted yourself into a corner here. You have indicated a need for a real-time query and that eliminates a number of possibilities for query-once use-many performance solutions.

Maybe you are looking for