Deadlock : objn in trace indicates index

Hi All,
There was a deadlock detected and logged and I am trying to figure out the application issue that caused it.
Version info:
Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 - Production
CORE    10.2.0.3.0      Production
TNS for HPUX: Version 10.2.0.3.0 - Production
NLSRTL Version 10.2.0.3.0 - ProductionHere is a snippet from the trace file:
Deadlock graph:
                       ---------Blocker(s)--------  ---------Waiter(s)---------
Resource Name          process session holds waits  process session holds waits
TX-0016001f-00013ae8        68     892     X            229     818           S
TX-0007001c-0002c66a       229     818     X            101     929           S
TX-0010001d-000299c5       101     929     X             68     892           S
session 892: DID 0001-0044-00002E42     session 818: DID 0001-00E5-000003FD
session 818: DID 0001-00E5-000003FD     session 929: DID 0001-0065-00001940
session 929: DID 0001-0065-00001940     session 892: DID 0001-0044-00002E42
Rows waited on:
Session 818: obj - rowid = 0003E8F1 - AAA+jxAEhAAAFeaAAA
  (dictionary objn - 256241, file - 289, block - 22426, slot - 0)
Session 929: obj - rowid = 0003E8F1 - AAA+jxAEgAAAAFnAAA
  (dictionary objn - 256241, file - 288, block - 359, slot - 0)
Session 892: obj - rowid = 0003E8F1 - AAA+jxAEgAAADIEAAAFrom the SQL listed, I see that the same update is being run by the 3 sessions.
UPDATE my_table
   SET col1 = TRIM (NVL (:b5, '5')),
       col2 = DECODE (NVL (:b5, '5'), '1', 1, '0', 1, '4', 1, 0),
       col3 = :b4
WHERE col4 = :b3 AND col5 = :b2 AND col6 = :b1;The predicates have bind variables in them. If the bind variable is set to the same value, then I would expect this issue to occur. In this case I would expect the "objn - 256241" to point to table "my_table". However, when I lookup this in dba_objects, it points to the PK index for this table:
xxxx> select object_type
  2  from dba_objects
  3  where object_id = 256241;
OBJECT_TYPE
INDEXThe questions i have are:
1. Is my assumption correct
In this case I would expect the "objn - 256241" to point to table "my_table"2. I was going to use the rowids to check what row this is occuring on. How do I do this if I only have rowids from the index instead of the table? Is there another way to get the bind variable info from the deadlock trace file?
3. Any other suggestions about looking into this.
Thanks,
Rahul

Dilip,
Sorry I missed the index info details.
It is a B-tree index. I am translating the table/index/column names from original in this post. Going by that the index would look something like this:
CREATE UNIQUE INDEX my_index ON my_table
    col4                   ASC,  --corresponds to predicate in update stmt
    col6                   ASC,
    col5                   ASC,  --corresponds to predicate in update stmt
    col7                   ASC,
    col8                   ASC,
    col9                   ASC
/Thanks,
Rahul

Similar Messages

  • Service Broker Activation Deadlocking

    I have implemented a (slightly) modified version of conversation recycling using conversation timers and stored procedure activation from http://rusanu.com/2007/05/03/recycling-conversations/ . However it appears that, occasionally, deadlocks  occur
    between the send and activated procedures on the conversation group/table. The main modification is that instead of having a column to represent the SPID in the table I am using an IdentifierType and Identifier value to identify the conversation. However I
    am only using the defaults (@@SPID) so I don't think that should matter in this case.
    For the send side I have:
    CREATE PROCEDURE [dbo].[usp_SendMessage]
    @endpointCode VARCHAR(255) = NULL,
    @endpointGroup VARCHAR(255) = NULL,
    @xmlPayload XML=NULL,
    @binaryPayload VARBINARY(MAX)=NULL,
    @varcharPayload VARCHAR(MAX)=NULL,
    @identifier VARCHAR(50) = @@SPID,
    @identifierType VARCHAR(50) = '@@SPID'
    AS BEGIN
    SET NOCOUNT ON
    DECLARE @fromService SYSNAME,
    @toService SYSNAME,
    @onContract SYSNAME,
    @messageType SYSNAME,
    @conversationTimeout INT
    SELECT @fromService = FromService
    , @toService = ToService
    , @onContract = OnContract
    , @messageType = MessageType
    , @conversationTimeout = ConversationTimeout
    FROM dbo.ServiceBrokerEndpointConfig
    WHERE GroupCode = @endpointGroup
    IF @fromService IS NULL OR @toService IS NULL OR @onContract IS NULL OR @messageType IS NULL OR @conversationTimeout IS NULL
    BEGIN
    RAISERROR (
    N'Failed to get endpoint config for GroupCode ''%s''.'
    , 16, 1, @endpointGroup) WITH LOG;
    RETURN;
    END
    DECLARE @SBDialog UNIQUEIDENTIFIER
    DECLARE @Message XML
    DECLARE @counter INT
    DECLARE @error INT
    DECLARE @handle UNIQUEIDENTIFIER;
    DECLARE @NotNullCount INT = ((CASE WHEN @xmlPayload IS NULL THEN 0 ELSE 1 END)
    + (CASE WHEN @binaryPayload IS NULL THEN 0 ELSE 1 END)
    + (CASE WHEN @varcharPayload IS NULL THEN 0 ELSE 1 END))
    IF @NotNullCount > 1
    BEGIN
    RAISERROR (
    N'Failed to SEND because %i payload fields are filled in when no more than 1 is expected'
    , 16, 1, @NotNullCount) WITH LOG;
    RETURN;
    END
    SET @counter = 1
    WHILE (1=1)
    BEGIN
    SET @handle = NULL
    -- Seek an eligible conversation in [ServiceBrokerConversations]
    -- We will hold an UPDLOCK on the composite primary key
    SELECT @handle = Handle
    FROM [ServiceBrokerConversations] WITH (UPDLOCK)
    WHERE Identifier = @identifier
    AND IdentifierType = @identifierType
    AND FromService = @fromService
    AND ToService = @toService
    AND OnContract = @onContract;
    IF @handle IS NULL
    BEGIN
    -- Need to start a new conversation for the current @Id
    BEGIN DIALOG CONVERSATION @handle
    FROM SERVICE @fromService
    TO SERVICE @toService
    ON CONTRACT @onContract
    WITH ENCRYPTION = OFF;
    -- Then the sender must listen on the
    -- send queue for the http://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer message type and
    -- cleanup appropriately.
    IF @conversationTimeout IS NOT NULL
    BEGIN
    BEGIN CONVERSATION TIMER (@handle) TIMEOUT = @conversationTimeout;
    END
    INSERT INTO [ServiceBrokerConversations]
    (Identifier, IdentifierType, FromService, ToService, OnContract, Handle)
    VALUES
    (@identifier, @identifierType, @fromService, @toService, @onContract, @handle);
    END;
    IF @xmlPayload IS NOT NULL
    BEGIN
    -- Attempt to SEND on the associated conversation
    ;SEND ON CONVERSATION @handle
    MESSAGE TYPE @messageType (@xmlPayload);
    END ELSE IF @binaryPayload IS NOT NULL
    BEGIN
    ;SEND ON CONVERSATION @handle
    MESSAGE TYPE @messageType (@binaryPayload);
    END ELSE BEGIN
    ;SEND ON CONVERSATION @handle
    MESSAGE TYPE @messageType (@varcharPayload);
    END
    SELECT @error = @@ERROR;
    IF @error = 0
    BEGIN
    -- Successful send, just exit the loop
    BREAK;
    END
    SELECT @counter = @counter+1;
    IF @counter > 10
    BEGIN
    -- We failed 10 times in a row, something must be broken
    RAISERROR (
    N'Failed to SEND on a conversation for more than 10 times. Error %i.'
    , 16, 1, @error) WITH LOG;
    BREAK;
    END
    -- Delete the associated conversation from the table and try again
    DELETE FROM [ServiceBrokerConversations]
    WHERE Handle = @handle;
    SET @handle = NULL;
    END
    END
    And for the activation on the initiator queue I have:
    CREATE PROCEDURE [dbo].[usp_InitiatorQueueHandler]
    AS
    BEGIN
    SET NOCOUNT ON
    DECLARE @handle UNIQUEIDENTIFIER;
    DECLARE @messageTypeName SYSNAME;
    DECLARE @messageBody VARBINARY(MAX);
    WHILE (1=1)
    BEGIN
    BEGIN TRAN;
    ;WAITFOR (RECEIVE TOP(1)
    @handle = conversation_handle,
    @messageTypeName = message_type_name,
    @messageBody = message_body
    FROM [InitiatorQueue]), TIMEOUT 5000;
    IF (@@ROWCOUNT = 0)
    BEGIN
    COMMIT TRAN;
    BREAK;
    END
    -- Call the base stored procedure to handle ending the conversation
    EXEC dbo.usp_BrokerHandleInitiator @handle, @messageTypeName, @messageBody
    COMMIT TRAN;
    END
    END
    GO
    ALTER QUEUE [InitiatorQueue]
    WITH ACTIVATION (
    STATUS=ON,
    PROCEDURE_NAME=dbo.usp_InitiatorQueueHandler,
    EXECUTE AS OWNER,
    MAX_QUEUE_READERS=10
    GO
    CREATE PROCEDURE [dbo].[usp_BrokerHandleInitiator]
    @handle UNIQUEIDENTIFIER,
    @messageTypeName SYSNAME,
    @messageBody VARBINARY(MAX)
    AS
    BEGIN
    SET NOCOUNT ON
    IF @handle IS NOT NULL
    BEGIN
    -- Delete the message from the [ServiceBrokerConversations] table
    -- before sending the [EndOfStream] message. The order is
    -- important to avoid deadlocks.
    IF @messageTypeName = N'http://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer'
    OR @messageTypeName = N'http://schemas.microsoft.com/SQL/ServiceBroker/EndDialog'
    BEGIN
    DELETE FROM [ServiceBrokerConversations]
    WHERE [Handle] = @handle;
    END
    IF @messageTypeName = N'http://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer'
    BEGIN
    ;SEND ON CONVERSATION @handle
    MESSAGE TYPE [EndOfStream];
    END
    ELSE IF @messageTypeName = N'http://schemas.microsoft.com/SQL/ServiceBroker/EndDialog'
    BEGIN
    END CONVERSATION @handle;
    END
    ELSE IF @messageTypeName = N'http://schemas.microsoft.com/SQL/ServiceBroker/Error'
    BEGIN
    END CONVERSATION @handle;
    -- We could send a notification or store the error in a table for further inspection
    DECLARE @error INT;
    DECLARE @description NVARCHAR(4000);
    WITH XMLNAMESPACES (N'http://schemas.microsoft.com/SQL/ServiceBroker/Error' AS ssb)
    SELECT
    @error = CAST(@messageBody AS XML).value(
    '(//ssb:Error/ssb:Code)[1]', 'INT'),
    @description = CAST(@messageBody AS XML).value(
    '(//ssb:Error/ssb:Description)[1]', 'NVARCHAR(4000)')
    -- Maybe log to audit log instead?
    RAISERROR(N'Received error Code:%i Description:"%s"',
    16, 1, @error, @description) WITH LOG;
    END;
    END
    END
    The deadlock XML is:
    <deadlock>
    <victim-list>
    <victimProcess id="process807dbd0c8" />
    </victim-list>
    <process-list>
    <process id="process807dbd0c8" taskpriority="0" logused="0" waitresource="METADATA: database_id = 21 CONVERSATION_GROUP($hash = 0xff26c7e1:0x478840de:0xd403bb)" waittime="2600" ownerId="8333217736" transactionname="GetDialogByHandle" lasttranstarted="2015-03-23T10:53:58.683" XDES="0x87f251c90" lockMode="X" schedulerid="2" kpid="7220" status="suspended" spid="110" sbid="0" ecid="0" priority="0" trancount="2" lastbatchstarted="2015-03-23T10:53:58.683" lastbatchcompleted="2015-03-23T10:53:58.683" lastattention="1900-01-01T00:00:00.683" clientapp=".Net SqlClient Data Provider" hostname="COLFOQA2" hostpid="1436" loginname="dev" isolationlevel="read committed (2)" xactid="8333217704" currentdb="21" lockTimeout="4294967295" clientoption1="673185824" clientoption2="128056">
    <executionStack>
    <frame procname="MYDB.dbo.usp_SendMessage" line="116" stmtstart="7540" stmtend="7696" sqlhandle="0x03001500aada77428391a0005da4000001000000000000000000000000000000000000000000000000000000">
    SEND ON CONVERSATION @handle
    MESSAGE TYPE @messageType (@xmlPayload); </frame>
    </executionStack>
    <inputbuf>
    Proc [Database Id = 21 Object Id = 1115151018] </inputbuf>
    </process>
    <process id="process869a5e558" taskpriority="0" logused="588" waitresource="KEY: 21:72057594039959552 (1f1ae6770d1b)" waittime="2600" ownerId="8333217730" transactionname="user_transaction" lasttranstarted="2015-03-23T10:53:58.683" XDES="0x3e28456a8" lockMode="U" schedulerid="4" kpid="6720" status="background" spid="22" sbid="0" ecid="0" priority="0" trancount="2">
    <executionStack>
    <frame procname="MYDB.dbo.usp_BrokerHandleInitiator" line="28" stmtstart="1996" stmtend="2144" sqlhandle="0x03001500f704cd06e691a0005da4000001000000000000000000000000000000000000000000000000000000">
    DELETE FROM [ServiceBrokerConversations]
    WHERE [Handle] = @handle; </frame>
    <frame procname="MYDB.dbo.usp_InitiatorQueueHandler" line="29" stmtstart="1014" stmtend="1172" sqlhandle="0x03001500316f56101694a0005da4000001000000000000000000000000000000000000000000000000000000">
    EXEC dbo.usp_BrokerHandleInitiator @handle, @messageTypeName, @messageBody </frame>
    </executionStack>
    <inputbuf>
    </inputbuf>
    </process>
    </process-list>
    <resource-list>
    <metadatalock subresource="CONVERSATION_GROUP" classid="$hash = 0xff26c7e1:0x478840de:0xd403bb" dbid="21" id="lock54fdb1800" mode="X">
    <owner-list>
    <owner id="process869a5e558" mode="X" />
    </owner-list>
    <waiter-list>
    <waiter id="process807dbd0c8" mode="X" requestType="wait" />
    </waiter-list>
    </metadatalock>
    <keylock hobtid="72057594039959552" dbid="21" objectname="MYDB.dbo.ServiceBrokerConversations" indexname="PK__ServiceB__877FDFD18DF079BD" id="lock6c65b1a00" mode="U" associatedObjectId="72057594039959552">
    <owner-list>
    <owner id="process807dbd0c8" mode="U" />
    </owner-list>
    <waiter-list>
    <waiter id="process869a5e558" mode="U" requestType="wait" />
    </waiter-list>
    </keylock>
    </resource-list>
    </deadlock>
    I have a clustered index on the fields I am SELECTing by and a UNIQUE index on the Handle (for the DELETE). When running the SELECT/DELETE statements against the table the query plan reports index seeks are being used:
    CREATE TABLE [dbo].[ServiceBrokerConversations] (
    [Identifier] VARCHAR (50) NOT NULL,
    [IdentifierType] VARCHAR (50) NOT NULL,
    [FromService] [sysname] NOT NULL,
    [ToService] [sysname] NOT NULL,
    [OnContract] [sysname] NOT NULL,
    [Handle] UNIQUEIDENTIFIER NOT NULL,
    [CreateDate] DATETIME2 (7) NULL,
    PRIMARY KEY CLUSTERED ([Identifier] ASC, [IdentifierType] ASC, [FromService] ASC, [ToService] ASC, [OnContract] ASC) ON [PRIMARY],
    UNIQUE NONCLUSTERED ([Handle] ASC) ON [PRIMARY]
    ) ON [PRIMARY];
    What appears to be happening is the DELETE is somehow deadlocking with the SEND but I am not sure how since I am using them in the same order in both the send procedure and the activated procedure. Also, RCSI is enabled on the database I am receiving the
    deadlocks on.
    EDIT:
    I think I have found the culprit with lock acquisition order:
    - In the usp_SendMessage proc:
    The SELECT locks the conversation record
    The SEND locks the conversation group
    - In the timer activated proc on the initiator queue:
    The RECEIVE locks the conversation group
    The DELETE locks the conversation record
    Given that I think there may be a few solutions:
    There is some subtle difference between my code and the code from the article that I am not noticing that when fixed will resolve the deadlocking. I am hoping this is the case since it seems that others have used this pattern without issues as far as I
    know.
    Or...The deadlocking is inherent to the pattern the code is using and I can either:
    Deal with the deadlocking by adjusting the deadlock priority on the activated stored procedure so that it becomes the victim, and I can implement retry logic.
    Remove conversation timers and activation all together and resort to some sort of job that expires the conversation by polling it, where I can control the ordering.
    My ultimate goal is to eliminate any deadlocking on usp_SendMessage so that it "never" fails.
    I appreciate any feedback!
    Thanks

    I can understand why the deadlock happens. As you point out the activation procedure and the send SP acquire locks on the resources in reverse order.
    Really why Remus does not consider this in his blog post, I don't know. But may I ask, since you have replaced @@spid as a key with two other columns, does this also mean that multiple processes can use the same conversation? I'm not so sure that
    this is a good idea. I worked with an SB implementation which reuses conversations some months ago, and I recall that considered channing the pattern, but that I decided against it the end although I don't remember the exact details.
    But so much is clear, if multiple processes can use the same handle, they will serialise on the SELECT with UPDLOCK. That will not happen if you change to REPEATABLEREAD, but I guess they will serialiase on the SEND instead.
    The best way to address the problem appears to use SET LOCK_TIMEOUT 0 in the activation procedure and trap the the timeout error in a CATCH block, and let the message go back to the queue. This should be better than SET DEADLOCK_PRIORITY, since the there
    will never be a deadlock that upholds the the sender.
    Erland Sommarskog, SQL Server MVP, [email protected]

  • Call Bapi_Material_Availability Error : Index was outside the bounds ...

    I am coding .net 2003 (VB)  and  .NET connector 2.0  Call Bapi_Material_Availability . It Error  Exception Details: System.IndexOutOfRangeException: Index was outside the bounds of the array.
    This my code:
       Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim Batch As String
            Dim Check_Rule As String
            Dim Customer As String
            Dim Dec_For_Rounding As Short
            Dim Dec_For_Rounding_X As String
            Dim Doc_Number As String
            Dim Itm_Number As String
            Dim Material As String
            Dim Material_Evg As Test6.BAPIMGVMATNR
            Dim Plant As String
            Dim Read_Atp_Lock As String
            Dim Read_Atp_Lock_X As String
            Dim Stge_Loc As String
            Dim Stock_Ind As String
            Dim Unit As String
            Dim Wbs_Elem As String
            Dim Av_Qty_Plt As Decimal
            Dim Dialogflag As String
            Dim Endleadtme As String
            Dim Return0 As Test6.BAPIRETURN
            Dim Wmdvex As Test6.BAPIWMDVETable
            Dim Wmdvsx As Test6.BAPIWMDVSTable
            Material = "100-400"
            Plant = "1000"
            Unit = "ST"
            Try
                SapProxy11.Bapi_Material_Availability(Batch, _
                Check_Rule, _
                Customer, _
                Dec_For_Rounding, _
                Dec_For_Rounding_X, _
                Doc_Number, _
                Itm_Number, _
                Material, _
                Material_Evg, _
                Plant, _
                Read_Atp_Lock, _
                Read_Atp_Lock_X, _
                Stge_Loc, _
                Stock_Ind, _
                Unit, _
                Wbs_Elem, _
                Av_Qty_Plt, _
                Dialogflag, _
                Endleadtme, _
                Return0, _
                Wmdvex, _
                Wmdvsx)
                Me.TextBox1.Text = Av_Qty_Plt.ToString()
            Catch ex As SAP.Connector.RfcAbapException
                MsgBox(ex.Message.ToString)
            End Try
        End Sub
    ========
    <i>Source Error:
    Line 157:     ByRef Wmdvsx As BAPIWMDVSTable)
    Line 158:        Dim results As Object()
    Line 159:        results = SAPInvoke("Bapi_Material_Availability", new Object() { _
    Line 160:                            Batch,Check_Rule,Customer,Dec_For_Rounding,Dec_For_Rounding_X,Doc_Number,Itm_Number,Material,Material_Evg,Plant,Read_Atp_Lock,Read_Atp_Lock_X,Stge_Loc,Stock_Ind,Unit,Wbs_Elem,Wmdvex,Wmdvsx })
    Line 161:        Av_Qty_Plt = CType(results(0), Decimal)
    Source File: E:\SAP\BAPI\Test6\SAPProxy1.vb    Line: 159
    Stack Trace:
    [IndexOutOfRangeException: Index was outside the bounds of the array.]
       SAP.Connector.Rfc.RfcClient.RfcInvoke(SAPClient proxy, String method, Object[] methodParamsIn) +1229
       SAP.Connector.SAPClient.SAPInvoke(String method, Object[] methodParamsIn) +70
       Test6.SAPProxy1.Bapi_Material_Availability(String Batch, String Check_Rule, String Customer, Int16 Dec_For_Rounding, String Dec_For_Rounding_X, String Doc_Number, String Itm_Number, String Material, BAPIMGVMATNR Material_Evg, String Plant, String Read_Atp_Lock, String Read_Atp_Lock_X, String Stge_Loc, String Stock_Ind, String Unit, String Wbs_Elem, Decimal& Av_Qty_Plt, String& Dialogflag, String& Endleadtme, BAPIRETURN& Return0, BAPIWMDVETable& Wmdvex, BAPIWMDVSTable& Wmdvsx) in E:\SAP\BAPI\Test6\SAPProxy1.vb:159
       Test6.WebForm1.Button1_Click(Object sender, EventArgs e) in E:\SAP\BAPI\Test6\Default.aspx.vb:64
       System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
       System.Web.UI.Page.ProcessRequestMain() +1292
    </i>
    Pls. help me.
    Thank you.

    Hi Kreangsak,
    It seems that you need to initialize you tables, parameters for rfc function
    Dim Wmdvex As Test6.BAPIWMDVETable
    Dim Wmdvsx As Test6.BAPIWMDVSTable
    Wmdvex = new Test6.BAPIWMDVETable()
    Wmdvsx = new Test6.BAPIWMDVSTable()
    If there is other table, you need to initialize them with new operator. Null tables does not accepted.
    If you problem goes set the call stack's "show non-user code" property and send the stack.
    Best Regards,
    Huseyin Akturk
    SW Engineer & SAP ABAP Consultant
    www.huseyinakturk.net

  • Secondary index not getting picked

    Hello All,
    I am seeing stange behaviour of picking of secondary indexes.
    Example:
    Index - I1 is having two fields and the same two fields in giving in where clause of the select and this fields are unque and not used in any other secondary index.
    Result in trace(ST05) -- Index I1 is not picked and it extraction went for 'Full table scan'.
    But in other system for the same inputs index I1 is picked and it can be seen trace(ST05).
    Before posting this query, i have gone through many posts related secondary index and not found helpful.
    Any inputs will be appreciated.
    Thanks.
    Adnan.

    Hi,
    In the select query have you Called the Secondary Index in the WHERE clause.
    Please try with this option it will surely work.
    More Information About Index:
    Inclusions Index: The index is only created automatically during activation for the database systems specified in the list. The index is not created on the database for the other database systems.
    Exclusions Index: The index is not created automatically on the database during activation for the specified database systems. The index is automatically created on the database for the other database systems.
    Thanks & Regards,
    Saravanan Sambandam

  • Indexing on associated objects

    Greetings,
    I've been doing some performance testing of a cache based query vs vanilla sql queries. In order to accurately compare a cache query to an indexed sql query, I've been attempting to create an index... For example, a Vehicle with an associated Account with an associated Address. I would like to be able to index the Vehicle so that I can find all Vehicles in a given state. In the process of creating this index (which may need to load an Account and/or Address from the database for each Vehicle) I've managed to deadlock the cluster before the indexing operation completes. This happens whether or not I try to index as I'm loading Vehicles or by applying the index after the cache is already loaded.
    I assume I am probably doing something wrong in my ValueExtractor which results in the deadlock. More generally, is there a recommended approach to indexing fields on associated objects?

    Thanks for your quick response Jon.
    Yes, my ValueExtractor does make a call back into the cache service... either realizing the account out of the cache or loading it from the database. I bet that's why I'm deadlocking..
    As far as the two patterns go...
    1.) is a little scary to me with stale data, plus the amount of storage overhead it would impose on the cluster.
    2.) is interesting, I'll have to work up a test with something like this. One issue is that I intentionally didn't preload the other caches. We would probably overflow our heap if we loaded all of the Addresses in our db. So I would have to be doing a combination of sql and cache queries.
    Thanks for the pointers, I'll try it out.

  • MtxLock DeadLock problem

    Hello all,
        In one of our ECC system when a user executing one transaction work process is taking more time for execution. When i checked the trace file of the work process i found following error/warning:
    I  WARNING: MtxLock 0xc000000017e340f0 rrol0003 owner=2 deadlock ?
    I Fri Mar 11 16:18:43 2011
    I  WARNING: MtxLock 0xc000000017e340f0 rrol0003 owner=2 deadlock ?
    I Fri Mar 11 16:19:44 2011
    I  WARNING: MtxLock 0xc000000017e340f0 rrol0003 owner=2 deadlock ?
    I searched on google but could not find anything. On SDN i found only one forum and some one has told to check if note 1309072 - System standstill: MtxLock EMADM helps to resolve the issue. But this note also could not help.
    Can anyone please answer this what this is exactly and why this occurs in system???
    Regards,
    Nirav

    I'm facing the same problem too and it occurred several times before, especially when someone was running programs which cost too much time and decided to ternimate the session but for some unknown reason failed, then the GUI crashed and after that, the work process began deadlock.
    The trace log is like below:
    C Thu Apr 14 15:50:56 2011
    C  build_stmt: reallocating stmt buffer: 3801 -> 4807 characters
    C  build_stmt: reallocating stmt buffer: 4807 -> 5808 characters
    C  build_stmt: reallocating stmt buffer: 2304 -> 3308 characters
    C  build_stmt: reallocating stmt buffer: 3308 -> 4318 characters
    C  build_stmt: reallocating stmt buffer: 512 -> 2000 characters
    C  build_stmt: reallocating stmt buffer: 3072 -> 4078 characters
    C  build_stmt: reallocating stmt buffer: 4078 -> 5090 characters
    C  build_stmt: reallocating stmt buffer: 256 -> 2000 characters
    I
    I Thu Apr 14 16:09:07 2011
    I  WARNING: MtxLock 0x7000000063626e4 rrol0112 owner=0 deadlock ?
    I
    I Thu Apr 14 16:10:08 2011
    I  WARNING: MtxLock 0x7000000063626e4 rrol0112 owner=0 deadlock ?
    I
    I Thu Apr 14 16:11:08 2011
    I  WARNING: MtxLock 0x7000000063626e4 rrol0112 owner=0 deadlock ?
    We are using ECC6 with kernal SAPKB70103 on AIX system with oracle database. I also noticed sap notes 1309072, but i don't know what EMADM stands for in the note as we have 'rrol0112' instead of 'EMADM' in the log, and whether we should apply the patch SP199 before let it work or we can just set parameters as mentioned in the notes.
    Could anybody please help to explain it or tell me how to do with the deadlock?
    Thank you very much!
    Best Regards,
    Jeff

  • Odd stack trace

    I'm not expecting anybody to solve my problem (though it'd be nice if you could) - I just found this a bit wierd and thought I'd get a sanity check - its Friday, so maybe I'm going slightly crazy.
    I've had a few occurances lately of the same stack trace on a live system; Although it always occurs in exactly the same piece of code, I haven't been able to systematically reproduce it, either in a development environment or on the live system.
    It looks like this:
    java.lang.NullPointerException
          at com.mycompany.mypackage.MyClass.myMethod(Compiled Code)
          at com.mycompany.mypackage.MyOtherClass.myOtherMethod(Compiled Code)
          at ...etc...Now, as far as I'm aware, that stack trace indicates that a NullPointerException occured somewhere inside a method called myMethod in the class com.mycompany.mypackage.MyClass
    But (and here's the wierd bit), the relevant code in MyClass looks like this:
    private Integer myInteger;
    public Integer myMethod() {
      return myInteger;
    }How can that possibly throw a NullPointerException ???
    Am I wrong on what the stack trace is indicating? - I'm not aware of any formal specification of what exactly a stack trace means - in fact, the API docs say "The format of this information depends on the implementation", so I'm just going off experience...
    Does anybody else find this a little wierd? Has anybody else seen it before?

    The real location causing the thrown exception can be muddied by the JIT compiler. Try to run your program with Java in interpreted mode and see what it does...
    java -Xint <usual arguments> YourProgram <its arguments>
    Chuck

  • How can I prevent filter from getting applies to .html page?

    Hi,
    I have a MyFaces filter that I don't want applied to pages ending in ".html". However, upon visiting the "/myapp/index.html" page of my application, I get an internal server error, and the stack trace indicates that the filter is being invoked. How can I prevent such a filter from being applied to ".html" pages? The stack trace and the web.xml file are below.
    Thanks, - Dave
    Error I get when visiting index.html page
    ####<Oct 30, 2008 8:46:44 AM MDT> <Error> <HTTP> <rhonti> <nps-supp-gui-ms-1> <[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1225378004500> <BEA-101020> <[weblogic.servlet.internal.WebAppServletContext@4f2189 - appName: 'nps_history_gui', name: 'nps_history_gui.war', context-path: '/nps_history_gui'] Servlet failed with Exception
    java.lang.IllegalStateException: ExtensionsFilter not correctly configured. JSF mapping missing. JSF pages not covered. Please see: http://myfaces.apache.org/tomahawk/extensionsFilter.html
    at org.apache.myfaces.renderkit.html.util.AddResourceFactory.throwExtensionsFilterMissing(AddResourceFactory.java:389)
    at org.apache.myfaces.renderkit.html.util.AddResourceFactory.checkEnvironment(AddResourceFactory.java:349)
    at org.apache.myfaces.renderkit.html.util.AddResourceFactory.getInstance(AddResourceFactory.java:279)
    at org.apache.myfaces.webapp.filter.TomahawkFacesContextWrapper.<init>(TomahawkFacesContextWrapper.java:115)
    at org.apache.myfaces.webapp.filter.TomahawkFacesContextFactory.getFacesContext(TomahawkFacesContextFactory.java:85)
    at javax.faces.webapp.FacesServlet.prepareFacesContext(FacesServlet.java:307)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:141)
    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:283)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:525)
    at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:261)
    at com.myco.nps.im.plugin.NPSIMIntercepter.doFilter(NPSIMIntercepter.java:101)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at com.myco.nps_history.filters.NoCachingFilter.doFilter(NoCachingFilter.java:30)
    at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3229)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2002)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1908)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1362)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    =================Begin web.xml=======================
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4">
    <display-name>
    nps_history_gui</display-name>
    <filter>
    <filter-name>extensionsFilter</filter-name>
    <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class>
    <init-param>
    <description>Set the size limit for uploaded files.
    Format: 10 - 10 bytes
    10k - 10 KB
    10m - 10 MB
    1g - 1 GB</description>
    <param-name>uploadMaxFileSize</param-name>
    <param-value>100m</param-value>
    </init-param>
    <init-param>
    <description>Set the threshold size - files
    below this limit are stored in memory, files above
    this limit are stored on disk.
    Format: 10 - 10 bytes
    10k - 10 KB
    10m - 10 MB
    1g - 1 GB</description>
    <param-name>uploadThresholdSize</param-name>
    <param-value>100k</param-value>
    </init-param>
    </filter>
    <filter>
    <filter-name>No Caching Filter</filter-name>
    <filter-class>com.myco.nps_history.filters.NoCachingFilter</filter-class>
    </filter>
    <filter>
    <filter-name>SSOFilter</filter-name>
    <filter-class>com.myco.nps.im.plugin.NPSIMIntercepter</filter-class>
    <init-param>
    <param-name>filter_conf_file</param-name>
    <param-value>/export/third-party/etsbea/application_conf/wls_9.2.2/nps_history_gui_conf/nps_im_plugIn.properties</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>extensionsFilter</filter-name>
    <url-pattern>*.jsf</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>extensionsFilter</filter-name>
    <url-pattern>/faces/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>No Caching Filter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>SSOFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <description>Sets properties of History UI app</description>
    <display-name>HistoryInitServlet</display-name>
    <servlet-name>HistoryInitServlet</servlet-name>
    <servlet-class>com.myco.nps_history.servlets.HistoryInitServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.jsf</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>HistoryInitServlet</servlet-name>
    <url-pattern>/HistoryInitServlet</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>HistoryInitServlet</servlet-name>
    <url-pattern>/refresh</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
    </welcome-file-list>
    </web-app>
    ==================End web.xml=======================

    I got that error when using the request URL /myapp/ or /myapp/index.html.
    Regarding,
    At any way, you should map the ExtensionsFilter on the FacesServlet rather than on any url-pattern. Could you elaborate on what you mean? Maybe with an example?
    Thanks, - Dave

  • How to change  the Timestamp In  a program

    Hi,
    We faced a problem today, Some of the critical jobs from a source system are going to short Dump. Unfortunately we couldn't find any lockwaits, deadlocks and any delay in SM37. After analyzing, we came to know that, SAP trace indicates failure occured during program /GLB/RGTCSR_RC_INV execution :
    B  *** ERROR => DISTRIBUTED_TA_FAILED:
    The timestamp for the execution of the program has been set as "20.070.801.000.000", that does mean it will try to retrieve all values after the date 01.08.2007 and the time 00:00:00. Now checking on the code we can see there is a logic written which retrieves the values from the table /GLB/RGTT_CS_RC, checking on the Goods Movement status (wbsta) , timestamp and document number (VBELN_SO) if any. For this case VBELN_SO is blank and vbsta is equal to space (Not Relevant). This retrieval helped to logic to retrieve 706706 document and items from the table. This amount of data is huge and we would like to request BW team to run the program with a smaller timestamp to avoid any inconsistencies and also to avoid the dumps which can occur when we try to play with this huge entries.
    Checking on the code, two similar selects have been written on the same table /GLB/RGTT_CS_RC, firstly to select all the document numbers relevant to the timestamp and wbsta value and secondly to check "Get records that may have already been used", depending on the document number and item numbers. But as we are doing a select * it will automatically select VBELN_SO as well as POSNR_SO.  Hence, the second select from the same table is irrelevant and it will only effect the performance of the system, in the worst case it will terminate the program with this huge amount of entries. Hence, this logic has to be combined to one single select for which the first select statement is enough. Playing with a huge amount of data 706706, and retrieving from the same table twice can surely result in a short dump. Also there are couple of loops has been done on the same table which reduces the performance too.
    Possible solution looks like we need to reduce the time stamp and run it,
    can some one tell me how to change the time stamp in a program???

    First check the connection with the source system. If its ok then replicate the datasource and activate. Then try with running job.
    Time stamp error usually happens when source system in BI and r/3 side differs.

  • Trouble with RMI?

    We have during the last month started to get problems where the Vadis application
    stops working. We can't figure out the cause of this.
    Recent additions to the application is that we have started to use RMI for our
    client communication - currently we are both using CORBA (OrbixWeb 3.1c) and RMI
    - planning to get rid of CORBA. We have also some new features that increases
    the amount of tasks to perform.
    The system can hang both under heavy load and under off peak hours, when many
    clients are connected or when nobody is using it!?! Strange...
    This happens approximately once a week.
    Today we managed to get a JRockit dump (with Ctrl-Break) - see attached file.
    The main thread that should run all real tasks is Schemaläggare, but the stack
    trace indicates a really weird place to stop. When looking at the code we can't
    see how this could be either a deadlock or an infinite loop. Maybe you can make
    some more out of the printout?
    For example, we wonder what the timestamp row means. Almost all threads have a
    timestamp of around 2200. But one thread has 1 and the other 346. What does this
    mean?
    We are using the following version of JRockit:
    java version 1.3
    Java(TM) 2 Runtime Environment, Standard Edition (build "1.3.1_CROSIS_20011213-1316")
    JRockit Virtual Machine (build 3.0.1-CROSIS-2001213-1317)
    with nativeThreads activated.
    Do you know of any troubles with using RMI for this version. Or the combination
    of RMI and CORBA/OrbixWeb?
    Best regards,
    Tomas L
    [ProblemReport_JRockit.txt]

    Really don't know the answer to that question. I haven't analyzed the
    problem in detail. I know that a lot of issues has been fixed since
    3.0.1, and if the problem is with the VM it is likely to have been fixed.
    Regards,
    /Staffan
    TomasLiden wrote:
    Alright,
    However, before taking on the job of upgrading JRockit it would be nice to know
    whether the problem is likely to be solved. Or put in other words: Do you think
    the problem is in the JVM or in our application?
    All the best,
    /Tomas
    Staffan Larsen <[email protected]> wrote:
    Well, as you noted, NT4 isn't a supported platform for 7.0sp4, but we
    are not aware of anything that would not work. Then again, 3.0.1 isn't
    supported either...
    You have two choices the way I see it: 1) Use 7.0sp4 on NT4 and
    hopefully it solves your problem. 2) Upgrade to W2K (but I guess that
    is
    hard).
    Regards,
    /Staffan
    TomasLiden wrote:
    Hi,
    I guessed you would answer something like that ;-) However, our serveris running
    Windows NT4 (don't remember the service pack) and on your downloadsite it says
    W2K for 7.0sp4. Will that work?
    /T
    Staffan Larsen <[email protected]> wrote:
    Hi Tomas,
    JRockit 3.0.1 is pretty old at this time, so I would strongly suggest
    that you upgrade to JRockit 7.0sp4 (if you need 1.3.1 compatibility),
    or
    JRockit 1.4.2 (if you are ok with 1.4.2 compatibility). Both version
    are
    available for download at
    http://commerce.bea.com/showallversions.jsp?family=WLJR
    Regards,
    /Staffan
    TomasLiden wrote:
    We have during the last month started to get problems where the Vadisapplication
    stops working. We can't figure out the cause of this.
    Recent additions to the application is that we have started to useRMI for our
    client communication - currently we are both using CORBA (OrbixWeb3.1c) and RMI
    - planning to get rid of CORBA. We have also some new features thatincreases
    the amount of tasks to perform.
    The system can hang both under heavy load and under off peak hours,when many
    clients are connected or when nobody is using it!?! Strange...
    This happens approximately once a week.
    Today we managed to get a JRockit dump (with Ctrl-Break) - see attachedfile.
    The main thread that should run all real tasks is Schemaläggare, butthe stack
    trace indicates a really weird place to stop. When looking at the
    code
    we can't
    see how this could be either a deadlock or an infinite loop. Maybeyou can make
    some more out of the printout?
    For example, we wonder what the timestamp row means. Almost all threadshave a
    timestamp of around 2200. But one thread has 1 and the other 346.
    What
    does this
    mean?
    We are using the following version of JRockit:
    java version 1.3
    Java(TM) 2 Runtime Environment, Standard Edition (build "1.3.1_CROSIS_20011213-1316")
    JRockit Virtual Machine (build 3.0.1-CROSIS-2001213-1317)
    with nativeThreads activated.
    Do you know of any troubles with using RMI for this version. Or thecombination
    of RMI and CORBA/OrbixWeb?
    Best regards,
    Tomas L
    Problem report.
    Application hangs - deadlock or loop?
    We have during the last month started to get problems where the Vadisapplication stops working. We can't figure out the cause of this.
    Recent additions to the application is that we have started to useRMI for our client communication - currently we are both using CORBA
    (OrbixWeb 3.1c) and RMI - planning to get rid of CORBA. We have also
    some new features that increases the amount of tasks to perform.
    The system can hang both under heavy load and under off peak hours,when many clients are connected or when nobody is using it!?! Strange...
    This happens approximately once a week.
    Today we managed to get a JRockit dump (with Ctrl-Break) - see below.The main thread that should run all real tasks is Schemaläggare, but
    the stack trace indicates a really weird place to stop. When looking
    at the code we can't see how this could be either a deadlock or aninfinite
    loop. Maybe you can make some more out of the printout?
    For example, we wonder what the timestamp row means. Almost all threadshave a timestamp of around 2200. But one thread has 1 and the other
    346. What does this mean?
    We are using the following version of JRockit:
    java version 1.3
    Java(TM) 2 Runtime Environment, Standard Edition (build "1.3.1_CROSIS_20011213-1316")
    JRockit Virtual Machine (build 3.0.1-CROSIS-2001213-1317)
    with nativeThreads activated.
    Do you know of any troubles with using RMI for this version. Or thecombination of RMI and CORBA/OrbixWeb?
    Best regards,
    Tomas L
    ================== Ctrl-Break printout ====================
    ====== THREAD 00000080 == Noname
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2232 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FF8FF08
    ThreadID: 0x00000E7B
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000100 == RMI TCP Connection(2191)-10.40.105.193
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 1 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FF4FC44
    ThreadID: 0x000006F4
    ### Stacktrace:
    at se.sj.otm.tillampning.systemProvider.gen.RVadisClientProviderImpl.doT
    illgangligaVagnar(Compiled Code)@5f5f4fee
    at se.sj.otm.tillampning.systemProvider.gen.RVadisClientProviderImpl_Ske
    l.dispatch(Compiled Code)@5f5f5ad1
    at sun.rmi.server.UnicastServerRef.oldDispatch(Compiled Code)@5d32d44c
    at sun.rmi.server.UnicastServerRef.dispatch(Compiled Code)@5d32cfc8
    at sun.rmi.transport.Transport$1.run(Compiled Code)@5d32cb3f
    at java.security.AccessController.doPrivileged(Native Method)@5a091990
    at sun.rmi.transport.Transport.serviceCall(Compiled Code)@5d32b02d
    at sun.rmi.transport.tcp.TCPTransport.handleMessages(CompiledCode)@5d32
    a9c8
    at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(CompiledCod
    e)@5d3296db
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000180 == ObjyThread
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2226 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FF3FED8
    ThreadID: 0x00000B2F
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000200 == Finalizer
    State: WAITING, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2231 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FF2FEB8
    ThreadID: 0x00000B7A
    ### Stacktrace:
    at java.lang.Object.wait0(Compiled Code)@59e35860
    at java.lang.ref.ReferenceQueue.remove(Optimized Code)@5f7742fe
    at java.lang.ref.Finalizer$FinalizerThread.run(Compiled Code)@59e35379
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000280 == SignalHandler
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2230 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FEFFEF0
    ThreadID: 0x00000B3C
    ### Stacktrace:
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000300 == Hotspot Detector
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2229 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FEEFEE0
    ThreadID: 0x0000096C
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000380 == Reference Handler
    State: WAITING, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2228 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FEDFEE4
    ThreadID: 0x00000E30
    ### Stacktrace:
    at java.lang.ref.Reference$ReferenceHandler.run(Compiled Code)@5a090526
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000400 == Thread-0
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2232 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x00A5B1E0
    ThreadID: 0x00000D2A
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000480 == RMI TCP Accept-1
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2225 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE8FEA4
    ThreadID: 0x00000EA0
    ### Stacktrace:
    at java.net.ServerSocket.implAccept(Compiled Code)@5a23b775
    at java.net.ServerSocket.accept(Compiled Code)@5a23b57c
    at sun.rmi.transport.tcp.TCPTransport.run(Compiled Code)@5a23a9f8
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000500 == OrbixWeb Server Listener thread
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2224 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE7FEA0
    ThreadID: 0x0000008E
    ### Stacktrace:
    at java.net.ServerSocket.implAccept(Compiled Code)@5a23b775
    at java.net.ServerSocket.accept(Compiled Code)@5a23b57c
    at IE.Iona.OrbixWeb.CORBA.Listener.acceptNewConnection(CompiledCode)@5a
    2f429e
    at IE.Iona.OrbixWeb.CORBA.Listener.run(Compiled Code)@5a2f3e37
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000580 == Request Processor
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2223 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE6FEA0
    ThreadID: 0x00000E0E
    ### Stacktrace:
    at IE.Iona.OrbixWeb.CORBA.EventHandler.nextRequest(CompiledCode)@5a2f78
    fc
    at IE.Iona.OrbixWeb.CORBA.BOAImpl.processOneEvent(CompiledCode)@5a2f763
    b
    at IE.Iona.OrbixWeb.CORBA.BOAImpl.processEvents(Compiled Code)@5a2f418b
    at IE.Iona.OrbixWeb.CORBA.EventHandler.run(Compiled Code)@5a2f3c8d
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000600 == RMI TCP Accept-2
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2222 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE5FEA4
    ThreadID: 0x00000680
    ### Stacktrace:
    at java.net.ServerSocket.implAccept(Compiled Code)@5a23b775
    at java.net.ServerSocket.accept(Compiled Code)@5a23b57c
    at sun.rmi.transport.tcp.TCPTransport.run(Compiled Code)@5a23a9f8
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000680 == RMI Reaper
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2221 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE4FEA0
    ThreadID: 0x000008FB
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000700 == GC Daemon
    State: WAITING, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2220 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE3FEC4
    ThreadID: 0x00000927
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000780 == Thread-11
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2213 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE2FEC8
    ThreadID: 0x00000CF1
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000800 == Gtpl
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2204 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE1FDC8
    ThreadID: 0x00000B01
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000880 == Pbok
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2203 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FE0FDC8
    ThreadID: 0x00000A27
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000900 == Beval
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2202 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FDFFDC8
    ThreadID: 0x00000C27
    ### Stacktrace:
    at java.net.SocketInputStream.read0(Optimized Code)@5f776df9
    at java.net.SocketInputStream.read(Optimized Code)@5f776e42
    at java.io.DataInputStream.readInt(Optimized Code)@5f58a2df
    at com.ibm.mq.MQInternalCommunications.receive(Optimized Code)@5f762c43
    at com.ibm.mq.MQSESSIONClient.MQGET(Optimized Code)@5f74a056
    at com.ibm.mq.MQQueue.get(Optimized Code)@5f76e931
    at se.sj.otm.ramverk.hostConnection.communication.MQPoll.execute(Optimiz
    ed Code)@5f8fc96f
    at se.sj.otm.basobjekt.Poll.run(Compiled Code)@5a35db6f
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000980 == Kal
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2201 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FDEFDC8
    ThreadID: 0x0000064A
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000a00 == OrbixWeb Connection Monitor thread
    State: WAITING, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2218 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FDDFEC8
    ThreadID: 0x00000968
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000a80 == Connection[IIOP, Socket[addr=nttmd51.sj.se/10.54.132.9
    5,port=1574,localport=1977], is_daemon]
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2217 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FDCFEA4
    ThreadID: 0x000007AA
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000b80 == Thread-9
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2215 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FDAFEC8
    ThreadID: 0x00000F58
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000c00 == Thread-10
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2214 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD9FEC8
    ThreadID: 0x00000302
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000c80 == Thread-12
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2212 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD8FEC8
    ThreadID: 0x00000D52
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000d00 == Thread-13
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2211 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD7FEC8
    ThreadID: 0x00000ABC
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000d80 == Thread-14
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2210 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD6FEC8
    ThreadID: 0x000008F5
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000e00 == Thread-15
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2209 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD5FEC8
    ThreadID: 0x000001C2
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000e80 == Thread-16
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2208 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD4FEC8
    ThreadID: 0x0000078E
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000f00 == Schemalõggare
    State: ACTIVE, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2207 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD3FA0C
    ThreadID: 0x00000AC0
    ### Stacktrace:
    at se.sj.otm.vagnstyrningsplanering.optimeringsmodell.AggregeradTomvagns
    fordelningsmodell.minskaReservationerUtanBehovspaverkan(Compiled Code)@5f5e6678
    at se.sj.otm.vagnstyrningsplanering.optimeringsmodell.AggregeradTomvagns
    fordelningsmodell.anpassaReservationerTillKapacitetsminskning(CompiledCode)@5f5
    e6945
    at se.sj.otm.vagnstyrningsplanering.tomvagnstyrning.impl.Godsvagnstyrnin
    gsplanImpl.forandradTillgangligKapacitetITaglagen(Compiled Code)@5d33750a
    at java.lang.reflect.Method.invoke(Native Method)@5a0c225e
    at se.sj.otm.verksamhetsobjekt.trafikoperator.impl.ArgumentFormedlareImp
    l.invokeMethod(Compiled Code)@5a5f545e
    at se.sj.otm.vagnstyrningsplanering.tomvagnstyrning.impl.Godsvagnstyrnin
    gsplanImpl.anropaVagnstyrningsplanerare(Optimized Code)@5f8fdba5
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.anropaVagnst
    yrningsplanerare(Compiled Code)@5a5f511f
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.forandradTil
    lgangligKapacitetITaglagen(Compiled Code)@5d337101
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.genomforRese
    rvationslistor(Optimized Code)@5f8fee98
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.genomforOnsk
    adeReservationer(Optimized Code)@5f7a4c4a
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.hanteraSvarF
    ranPlaneraren(Compiled Code)@5d330a01
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.forberedFixe
    raTomtransporter(Optimized Code)@5f799aab
    at se.sj.otm.verksamhetsobjekt.fordon.impl.GodsvagnparkImpl.fixeraTomtra
    nsporter(Compiled Code)@5f5c81d1
    at se.sj.otm.verksamhetsobjekt.tidtabell.impl.TidtabellImpl.utforFortida
    Fixering(Compiled Code)@5f74b166
    at java.lang.reflect.Method.invoke(Native Method)@5a0c225e
    at se.sj.otm.ramverk.scheduler.OTAssignment.perform(OptimizedCode)@5f76
    b227
    at se.sj.otm.ramverk.scheduler.OTScheduler.performNextAssignment(Optimiz
    ed Code)@5f900796
    at se.sj.otm.ramverk.scheduler.OTScheduler.execute(OptimizedCode)@5f904
    b9d
    at se.sj.otm.basobjekt.Poll.run(Compiled Code)@5a35db6f
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00000f80 == TidsstyrdUppdragsk÷
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2206 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD2FEC0
    ThreadID: 0x00000B34
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00001000 == TidsstyrdUppdragsk÷
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2205 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD1FEC0
    ThreadID: 0x00000AC2
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00001080 == AWT-EventQueue-0
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2200 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FD0FEA0
    ThreadID: 0x000001B1
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00001100 == SunToolkit.PostEventQueue-0
    State: WAITING, NONDAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 2199 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FCFFED4
    ThreadID: 0x00000E2E
    ### Stacktrace:
    at sun.awt.PostEventQueue.run(Compiled Code)@5a3bde4e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00001180 == Thread-20
    State: CREATED, DAEMON, GCABLE
    Prio: 0 (6)
    Timestamp: 2232 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FCEFF58
    ThreadID: 0x000000A2
    ### Stacktrace:
    No stack trace for unstarted threads.
    ### End of stacktrace.
    =====================
    ====== THREAD 00001200 == AWT-Windows
    State: ACTIVE, DAEMON, GCABLE
    Prio: 0 (6)
    Timestamp: 2197 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FCDFEBC
    ThreadID: 0x00000D0A
    ### Stacktrace:
    at COM.jrockit.awt.WToolkit.run(Compiled Code)@5a3bdfe9
    at java.lang.Thread.run(Compiled Code)@59e3328e
    at java.lang.Thread.startThreadFromVM(Compiled Code)@59e33134
    --- End of stack trace
    ### End of stacktrace.
    =====================
    ====== THREAD 00001280 == RMI LeaseChecker
    State: WAITING, DAEMON, GCABLE
    Prio: 0 (5)
    Timestamp: 346 before current stamp
    Stack: 0x00000000
    Code: 0x00000000
    LastJava: 0x7FCCFEBC
    ThreadID: 0x000007C0
    ### Stacktrace:
    --- End of stack trace
    ### End of stacktrace.
    =====================

  • "xdo" failed to preload on startup in Web application: "xmlpserver".

    I have been able to deploy OBIEE onto Weblogic 10.3 however no success in BI publisher 10.1.3.4.0. I'm using JDK 6.14, not JRockIt.
    I have tried expanding the xmplserver.ear -> xmlpserver.war -> expanded files
    i have used the following link to deploy
    http://bipconsulting.blogspot.com/2009/04/installation-for-oracle-weblogic-server.html
    the error i get is
    [HTTP:101216]Servlet: "xdo" failed to preload on startup in Web application: "xmlpserver.war".
    java.lang.NoClassDefFoundError: com/phaos/crypto/CipherException at
    oracle.apps.xdo.servlet.security.SecurityHandler.getHandler(SecurityHandler.java:78) at
    oracle.apps.xdo.servlet.GlobalContext.initSecurity(GlobalContext.java:129) at
    oracle.apps.xdo.servlet.GlobalContext.init(GlobalContext.java:97) at
    oracle.apps.xdo.servlet.XDOServlet.init(XDOServlet.java:67) at
    weblogic.servlet.internal.StubSecurityHelper$ServletInitAction.run(StubSecurityHelper.java:283) at
    weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at
    weblogic.security.service.SecurityManager.runAs(Unknown Source) at
    weblogic.servlet.internal.StubSecurityHelper.createServlet(StubSecurityHelper.java:64) at
    weblogic.servlet.internal.StubLifecycleHelper.createOneInstance(StubLifecycleHelper.java:58) at
    weblogic.servlet.internal.StubLifecycleHelper.<init>(StubLifecycleHelper.java:48) at
    weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubImpl.java:521) at
    weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppServletContext.java:1893) at
    weblogic.servlet.internal.WebAppServletContext.loadServletsOnStartup(WebAppServletContext.java:1870) at
    weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1790) at
    weblogic.servlet.internal.WebAppServletContext.start(WebAppServletContext.java:3000) at
    weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1371) at
    weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:471) at
    weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:205) at
    weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at
    weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60) at
    weblogic.application.internal.flow.ScopedModuleDriver.start(ScopedModuleDriver.java:201) at
    weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:118) at
    weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:205) at
    weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at
    weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:60) at
    weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:28) at
    weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:636) at
    weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37) at
    weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212) at
    weblogic.application.internal.SingleModuleDeployment.activate(SingleModuleDeployment.java:16) at
    weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:162) at
    weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79) at
    weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569) at
    weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:140) at
    weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:106) at
    weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323) at
    weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:820) at
    weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1227) at
    weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:436) at
    weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:164) at
    weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181) at
    weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12) at
    weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:68) at
    weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516) at
    weblogic.work.ExecuteThread.execute(ExecuteThread.java:201) at
    weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Any hints?
    Thanks

    The stack trace indicates - some libraries can't be found:
    java.lang.NoClassDefFoundError: com/phaos/crypto/CipherExceptionThe missing above library comes from ojpse.jar ( which is located by default installation in $OracleBI_home/oc4j_bi/jlib/ojpse.jar ) - that let me suggest, you took your xmlpserver.war from oc4j distribution. So, in that case, a workaround could be to include this jar into classpath before starting WebLogic server. The proper solution ( i think ) - you should deploy a standalone version of xmlpserver ( if you download bi publisher and unzip this archive from http://www.oracle.com/technology/software/products/publishing/index.html - you will find in the folder Oracle_Business_Intelligence_Publisher_Standalone/manual/generic a little differently packaged xmlpserver.war - which does include the mentioned library - under WEB-INF/lib, among some other additional libraries ). If i remember correctly, i've read it somewhere in documentation as well - about deployment bi publisher under 3rd party application server - the fully packaged version ( also not from the oc4j deployment) should be used.
    Best regards
    Maxim

  • Internal error ora-00600

    Dear Friends,
    I am running a report when company = 'abc' then this report gives no error.
    but when company='xyz' then gives error ( for xyz company's data is four times of the data of 'abc' company)
    the error is "
    ORA-00600 :Invaild error code arguments:[12700}[4698343535]
    => select .................."
    in genaral this query takes 15-20 minutes to comes output.
    before today it gives no error.
    pls help me
    With Regards
    Siddharth Singh([email protected])

    As it turns out, ORA-600[12700] is very unspecific. Across database versions 7-9i it indicates index corruption. It will have dumped a trace file: what does that say?
    Cheers, APC

  • Intermittent REP501: Unable to Connect to Database Errors

    Hi,
    This problem is occuring on a Oracle Application Server 10g (9.0.4.2) configured to run Forms and Reports.
    Operating system is Windows 2003 Server.
    Reports are called from Forms using the RUN_REPORT_OBJECT.
    Any user at any time running any report may receive a REP501: Unable to connect database error. Usually closing the Forms application and re-starting it clears the error.
    Reports trace indicates the database has returned either an "invalid username/password" or "account locked" error. This cannot be true because our Forms app logs each individual user into their own database account. The Reports server logs in to the database as the user when it makes its connection.
    This error clears itself without restarting the Reports server.
    We have also seen information in the Reports trace that indicates a possible crash of the VisiBroker osagent.
    The Windows event viewer does not show any errors or warnings.
    Is it possible a crashed osagent could cause the Reports server to return the invalid username/pasword and account locked errors?
    Any ideas on how to troubleshoot this further?
    TIA,
    Jim

    Hi,
    To know about the Action to be taken when REP-501 is encountered, you may want to refer to Oracle Reports Online Help available on OTN:
    http://www.oracle.com/technology/products/reports/index.html

  • Ensuring a static var stays updated

    Sorry for spamming the boards but I have another question...
    I want to get the index of the image currently in the center of the carousel and then I want to use this index number in other classes but it has to stay updated each time. I successfully managed to get the index of the image that is currently being clicked on (this image will then be moved to the center of the carousel so as long as one always clicks on an image at the start, my method will work ) but I dont know how to allow other classes to access this. I tried saving it as a static var and then trying to access it by using the following:
    private var coverIndex : int = CoverFlow.selectedCoverIndex;
    But I receive the error msg that selectedCoverIndex is not available to static class CoverFlow or something of that sort. This is what my CoverFlow code looks like (i.e. where I determine which image I want to position in the center):
    public class CoverFlow extends Sprite {
      public var covers : Vector.<DisplayObject>;
      private var cover : DisplayObject;
      private var coverIndex : int;
      private static var selectedCoverIndex : int; // Create a static coverIndex so I can easily use this data for external classes
      private function show(id : uint) : void // e : Event
       for (var i : Number = 0;i < covers.length; i++)
        cover = covers[i];
        // Tried putting if i == id as last statment to stop website coming up automatically but it still does since it then loops through again.
        if (i < id)
         setChildIndex(cover, i);
         TweenLite.to(cover, tweenDuration, {x: (id - i + 1) * -coverDistance, z: coverZ, rotationY: -coverRotationY, ease:easing });
        } else if (i > id)
         setChildIndex(cover, covers.length - 1 - i);
         TweenLite.to(cover, tweenDuration, {x: ((i - id + 1) * coverDistance), z: coverZ, rotationY: coverRotationY, ease:easing });
        } else if(i == id)
         setChildIndex(cover, covers.length - 1);
         TweenLite.to(cover, tweenDuration, {x: 0, z: selectedCoverZ, rotationY: 0, ease:easing });
      //____________________________________________________________________________Mouse functions on CoverFlow
      private function onClick(event : MouseEvent) : void
       // Always display product clicked on as center image
       cover = event.target as DisplayObject;
       coverIndex = covers.indexOf(cover);
       show(coverIndex); // Show the index number of the current displayed object
       selectedCoverIndex = getCoverIndex();
       trace("Index of Selected Cover : " + selectedCoverIndex);
      //____________________________________________________________________________Getters
      public function getCoverIndex() : int
       trace("Cover Index: " + coverIndex);
       return coverIndex;
    Hope you understand what I mean!!

    How stupid of me!!!
    I am not 100% sure it worked though... To start off it returns the current value (null) but then once I have clicked on one of the images, the coverIndex should change to the corresponding value. In the CoverFlow class it changes to a different value but I am not sure it does in the ProductSummaryLabel class (the latter is the class that imports the value from the CoverFlow class). The reason I believe this is that when in the CoverFlow I call the method setLabel from the ProductSummaryLabel class, which in turn is supposed to find the text in an array of texts which corresponds to the same index as that of the coverIndex, I receive athe following error message: "cannot reach a property or method with a null object reference". This seems to indicate that this variable in the ProductSummaryLabel class still contains the original null value and does not update itself.
    This is what my setLabel method in ProductSummaryLabel class looks like:
    public function setLabel() : void
       // Summary text depends on coverIndex, i.e. which image is currently in the center
       coverIndex = CoverFlow.selectedCoverIndex; // This should update itself each time I call the setLabel method!
       trace("Cover Index (Product Summary Label class setLabel()): " + coverIndex);
       var desiredSummaryString : String = uebersicht[coverIndex];
       trace("Product summary text: " + desiredSummaryString);
       productSummaryLabel.text = desiredSummaryString;
       productSummaryLabel.visible = true;
       trace("Step 10: Summary loaded");
    Below is the method in the CoverFlow class which gets the current coverIndex value and below that is the method which calls the setLabel method from the ProductSummaryLabel class (where pl is declared above as  private var pl : ProductSummaryLabel;).
    public function getCoverIndex() : int
       return coverIndex;
    private function onClick(event : MouseEvent) : void
       // Always display product clicked on as center image
       cover = event.target as DisplayObject;
       coverIndex = covers.indexOf(cover);
       show(coverIndex); // Show the index number of the current displayed object
       selectedCoverIndex = getCoverIndex();
       trace("Index of Selected Cover : " + selectedCoverIndex);
       // Ensures the text of prodctSummaryLabel is updated
       pl.setLabel();

  • SBWP  transaction - viewing folders/sending documents Long response times

    Hi all,
    I have some complains from some users (about 3-4 out of ~3000 user in my ECC 6.0 system) within my company about their response times on the Business Workplace. In particulat they started complaining about the response time of calling the TCOD SBWP . For 1-2 of them up to 4-5 minutes when myself as well as my other 2 colleagues were getting response of 500ms.
    Then they wanted also to view some folders on the Workplace and they had also response times of minutes instead of seconds.
    I checked that some of their shared folders as well as the Trash Bin had thousands of PDFs. I told to delete them and they deleted most of them. Stil when they want to open a folder it takes >2 minutes while for me to open the same shared folder takes 1-2 seconds.
    I checked in ST03N (user profiles, single records) and 1 of them had long database calls and request time in the Analysis of ABAP/4 database requests (Single Statistical Records).
    I am running out of ideas as I cannot explain why only for those 2-3 users happens to have long response times.
    Is it related to their folders in the Workplace? Where should I focus my investigation for the SBWP like transactions? Is it the case that some Oracle parameters might need to be checked?
    I run the automatic Oracle parameters check (O/S AIX 5.3 , Oracle 10.2 , ECC 6.0) and here are some recommandations:
    fixcontrol (5705630)                   add with value "5705630:ON"                                                                                use optimal OR concatenation; note 176754                    NO                                                          5705630:ON                                         B          1             
    fixcontrol (5765456)                   add with value "5765456:3"                                                                                no further information available                             NO                                                          5765456:3                                          B          1             
    optimpeek_user_binds                   add with value "FALSE"                                                                                avoid bind value peaking                                     NO                                                          FALSE                                              B          1             
    optimizerbetter_inlist_costing         add with value "OFF"                                                                                avoid preference of index supporting inlist                  NO                                                          OFF                                                B          1             
    optimizermjc_enabled                   add with value "FALSE"                                                                                avoid cartesean merge joins in general                       NO                                                          FALSE                                              B          1             
    sortelimination_cost_ratio             add with value "10"                                                                                use non-order-by-sorted indexes (first_rows)                 NO                                                          10                                                 B          1             
    event (10027)                            add with value "10027 trace name context forever, level 1"                                                               avoid process state dump at deadlock                         NO                                                          10027 trace name context forever, level 1          B          1             
    event (10028)                            add with value "10028 trace name context forever, level 1"                                                               do not wait while writing deadlock trace                     NO                                                          10028 trace name context forever, level 1          B          1             
    event (10091)                            add with value "10091 trace name context forever, level 1"                                                               avoid CU Enqueue during parsing                              NO                                                          10091 trace name context forever, level 1          B          1             
    event (10142)                            add with value "10142 trace name context forever, level 1"                                                               avoid Btree Bitmap Conversion plans                          NO                                                          10142 trace name context forever, level 1          B          1             
    event (10183)                            add with value "10183 trace name context forever, level 1"                                                               avoid rounding during cost calculation                       NO                                                          10183 trace name context forever, level 1          B          1             
    event (10191)                            add with value "10191 trace name context forever, level 1"                                                               avoid high CBO memory consumption                            NO                                                          10191 trace name context forever, level 1          B          1             
    event (10411)                            add with value "10411 trace name context forever, level 1"                                                               fixes int-does-not-correspond-to-number bug                  NO                                                          10411 trace name context forever, level 1          B          1             
    event (10629)                            add with value "10629 trace name context forever, level 32"                                                              influence rebuild online error handling                      NO                                                          10629 trace name context forever, level 32         B          1             
    event (10753)                            add with value "10753 trace name context forever, level 2"                                                               avoid wrong values caused by prefetch; note 1351737          NO                                                          10753 trace name context forever, level 2          B          1             
    event (10891)                            add with value "10891 trace name context forever, level 1"                                                               avoid high parsing times joining many tables                 NO                                                          10891 trace name context forever, level 1          B          1             
    event (14532)                            add with value "14532 trace name context forever, level 1"                                                               avoid massive shared pool consumption                        NO                                                          14532 trace name context forever, level 1          B          1             
    event (38068)                            add with value "38068 trace name context forever, level 100"                                                             long raw statistic; implement note 948197                    NO                                                          38068 trace name context forever, level 100        B          1             
    event (38085)                            add with value "38085 trace name context forever, level 1"                                                               consider cost adjust for index fast full scan                NO                                                          38085 trace name context forever, level 1          B          1             
    event (38087)                            add with value "38087 trace name context forever, level 1"                                                               avoid ora-600 at star transformation                         NO                                                          38087 trace name context forever, level 1          B          1             
    event (44951)                            add with value "44951 trace name context forever, level 1024"                                                            avoid HW enqueues during LOB inserts                         NO

    Hi Loukas,
    Your message is not well formatted so you are making it harder for people to read. However your problem is that you have 3-4 users of SBWP with slow runtimes when accessing folders. Correct ?
    You mentioned that there is a large number of documents in the users folders so usually these type of problems are caused by a large number of table joins on the SAPoffice tables specific to your users.
    Firstly please refer to SAP Note 988057 Reorganization - Information.
    To help with this issue you can use report RSBCS_REORG in SE38 to remove any deleted documents from the SAPoffice folders. This should speed up the access to your users documents in folders as it removes unnecessary documents from the SAPoffice tables.
    If your users do not show a significant speed up of access to their SAPoffice folders please refer to SAP Note 904711 - SAPoffice: Where are documents physically stored and verify that your statistics and indexes mentioned in this note are up to date.
    If neither of these help with the issue you can trace these users in ST12 and find out which table is cauing the longest runtime and see if there is a solution to either reduce this table or improve the access method on the DB level.
    Hope this helps
    Michael

Maybe you are looking for

  • DP Problem

    Hi guys, I have a little problem, and I don't have a clue what is wrong. In DP when trying to load two materials from the selection into the table I get an error message saying that it can't be done because there are no plannable combinations of char

  • How do I update my blog on my site?

    So I recently downloaded Wordpress and I got it all set up and I can open it in dreamweaver and everything.  but now I just need to understand the correct process of putting my wordpress blog onto my site. I know how to edit and post new posts in wor

  • Purchase Order - Rejected Status

    Hi All, Is there any Bapi or function module for Purchase Order Rejection. I have created a custom WF template for Purchase Order release. Once the approver cilcks the reject button, then the Purchase Order Status should be changed into Rejected stat

  • HT1212 how do I disabled my iphone  i have a message say iphone is disabled connet to itunes

    what can I do to disabled my iphone

  • Thumbnail or "Icon View" on Retina not rendered correctly.

    The Icon View in the Finder does not render the icon images correctly on Retina Macs. You can tell best when setting the viewing size to 32x32 or 16x16, especially when you compare the same viewing size while in List View. I was hoping that Yosemite