JDBC Persistent Store Exceptions Table needs to be renamed

we are facing a situation almost every week in production. The only workaround is to rename the table everytime an boune the Weblogic. Oracle recommended to increase the statement timeout. Not sure if that will work.
Can anyone provide what is the reason behind this. As there is only admin server in this domain with single JMS Server and JDBC Store. So not sure how the ownership is lost. Any help is appreciated .
####<Dec 25, 2010 4:32:01 AM IST> <Error> <Store> <gnnosm21> <OSMServer> <[ACTIVE] ExecuteThread: '65' for queue: 'weblogi
c.kernel.Default (self-tuning)'> <<WLS Kernel>> <1293231721099> <BEA-280075> <JDBC store "oms_jms_store" failed to r
etain ownership of database table "OM_BEAWLStore", either due to database access problems or due to concurrent accessors o
f the table. See the linked exception for more information.
weblogic.store.io.jdbc.JDBCStoreException: [Store:280065]java.sql.SQLException: ORA-01013: user requested cancel of curren
t operation
(server="OSMServer" store="oms_jms_store" table="OM_BEAWLStore"):(Linked Cause, "java.sql.SQLException: ORA-01013: user r
equested cancel of current operation
at weblogic.store.io.jdbc.JDBCStoreIO.readTableLockRecord(JDBCStoreIO.java:2078)
at weblogic.store.io.jdbc.JDBCStoreIO.updateTableOwnership(JDBCStoreIO.java:2105)
at weblogic.store.io.jdbc.ReservedConnection.timerExpired(ReservedConnection.java:436)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
java.sql.SQLException: ORA-01013: user requested cancel of current operation
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:288)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:743)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:216)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:955)
at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1060)
at oracle.jdbc.driver.T4CPreparedStatement.executeMaybeDescribe(T4CPreparedStatement.java:839)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1124)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3316)
at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3361)
at weblogic.jdbc.wrapper.PreparedStatement.executeQuery(PreparedStatement.java:100)
at weblogic.store.io.jdbc.JDBCStoreIO.internalRead(JDBCStoreIO.java:721)
at weblogic.store.io.jdbc.JDBCStoreIO.readTableLockRecord(JDBCStoreIO.java:2066)
at weblogic.store.io.jdbc.JDBCStoreIO.updateTableOwnership(JDBCStoreIO.java:2105)
at weblogic.store.io.jdbc.ReservedConnection.timerExpired(ReservedConnection.java:436)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)

Hi,
You didnot mention what is that everytime you mean in your question....
Did you check is there any other user also using the same database table "OM_BEAWLStore" from your development environment connecting with the same JMS persistance store?

Similar Messages

  • Unable to connect to JDBC Persistent Store

    - There are two managed server in a cluster on a WLS 9.2 MP2 and the version of database is 9..2.0.8
    - Trying to start managed server but getting java.lang.Assertion error.
    - Application also does not work.
    - Managed server 1 is not starting and throwing the java.lang.Assertion error.
    - It connects to a JDBC persistent store.
    - Managed server 2 starts perfectly and connects to it's own JDBC persistent store.
    - Both managed servers use the same Oracle Database 9.2.0.8.
    - There is different JDBC store for both the managed servers.
    - Each persistent store has its own separate table in the database
    ####<Jun 6, 2010 10:40:45 AM PDT> <Error> <Deployer> <emfd2> <WLISMMS1> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1275846045224> <BEA-149260> <A failure occurred during application startup.
    >
    Need Help!!
    >
    Edited by: user12941236 on Jun 10, 2010 7:10 AM
    Edited by: user12941236 on Jun 10, 2010 7:11 AM

    weblogic.application.ModuleException: ERROR: Could not activate EIJMSModule!ApplicationErrorQueue01
         at weblogic.jms.backend.BEDestinationRuntimeDelegate.activate(BEDestinationRuntimeDelegate.java:238)
         at weblogic.jms.module.JMSModule$EntityState.setState(JMSModule.java:1717)
         at weblogic.jms.module.JMSModule$EntityState.setState(JMSModule.java:1667)
         at weblogic.jms.module.JMSModule$EntityState.access$100(JMSModule.java:1608)
         at weblogic.jms.module.JMSModule.activate(JMSModule.java:332)
         at weblogic.jms.module.ModuleCoordinator.activate(ModuleCoordinator.java:179)
         at weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:107)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$2.next(DeploymentCallbackFlow.java:381)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:71)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:63)
         at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
         at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
         at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:154)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:181)
         at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:358)
         at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:42)
         at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:177)
         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.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
    weblogic.messaging.kernel.KernelException: The Messaging Kernel EIJMSServer01 has not yet been opened
         at weblogic.messaging.kernel.internal.KernelImpl.checkOpened(KernelImpl.java:191)
         at weblogic.messaging.kernel.internal.DestinationImpl.activate(DestinationImpl.java:279)
         at weblogic.messaging.kernel.internal.QueueImpl.activate(QueueImpl.java:1629)
         at weblogic.messaging.kernel.internal.DestinationImpl.resume(DestinationImpl.java:263)
         at weblogic.messaging.kernel.internal.QueueImpl.resume(QueueImpl.java:1805)
         at weblogic.jms.backend.BEDestinationImpl.start(BEDestinationImpl.java:604)
         at weblogic.jms.backend.BEDestinationRuntimeDelegate.activate(BEDestinationRuntimeDelegate.java:235)
         at weblogic.jms.module.JMSModule$EntityState.setState(JMSModule.java:1717)
         at weblogic.jms.module.JMSModule$EntityState.setState(JMSModule.java:1667)

  • Sybase - JDBC Persistent Store

    Hi
    I'm trying to setup Glassfish JMS to utilise a JDBC store (using Sybase)
    I have set the required parameters in config.properties for the imqBroker instance. (including creating the Sybase DDL)
    When I invoke imqdbmgr create tbl - all tables and indexes are created - but the process exits with an error. No details are displayed (even when using the -debug option) as to what the reason for failure is.
    [11/Sep/2008:12:07:52 BST] Using plugged-in persistent store:
         version=410
         brokerid=imqBroker
         database connection url=jdbc:sybase:Tds:localhost:5000/openmq_store
         database user=jms_user
    [11/Sep/2008:12:07:52 BST] Creating database table MQVER41SimqBroker ...
    [11/Sep/2008:12:07:52 BST] Creating database table MQBKR41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQSES41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQPROP41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQCREC41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQCON41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQCONSTATE41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table index MQCONSTATE41SimqBrokerIDX1 ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQDST41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table index MQDST41SimqBrokerIDX1 ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQMSG41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table index MQMSG41SimqBrokerIDX1 ...
    [11/Sep/2008:12:07:53 BST] Creating database table MQTXN41SimqBroker ...
    [11/Sep/2008:12:07:53 BST] Creating database table index MQTXN41SimqBrokerIDX1 ...
    [11/Sep/2008:12:07:53 BST] ERROR [B3073]: Failed to create database tables - jdbc:sybase:Tds:localhost:5000/openmq_store
    com.sun.messaging.jmq.jmsserver.util.BrokerException: [B3073]: Failed to create
    database tables - jdbc:sybase:Tds:localhost:5000/openmq_store
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.DBTool.doCreate(DBTool.j
    ava:200)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.DBTool.doCommand(DBTool.
    java:1700)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.DBTool.main(DBTool.java:
    1749)
    Any ideas on how I can troubleshoot further?
    Thanks
    Edited by: chivz on Sep 11, 2008 4:12 AM

    Are there any errors in Sybase log ? From the error looks like it's failing while creating txn table which I think is using blobs.
    Tom

  • No persistent store with the logical name could be found on the server

    Weblogic 10.3.6 standalone server (no cluster).
    I want to move ejb timers persistence from the default store to DB.
    I created a new data source, non-XA, global transactions not supported, targeted to my managed server. Tested configuratiion against DB: OK.
    I created a JDBC persistent store (type JDBCStore), attached it to data source, targeted to my managed server, committed changes OK.
    In my application, TimedObject is implemented by a Stateless Session bean.
    I modified the weblogic-ejb-jar.xml descriptor for my SLSB specifying the persistence store name:
    <stateless-session-descriptor>
                <timer-descriptor>
                    <persistent-store-logical-name>MyStore</persistent-store-logical-name>
                </timer-descriptor>
    When I deploy my application, I get the following error
    [EJB:011112]Error initializing the EJB Timer store for the EJB '...' The weblogic-ejb-jar.xml deployment descriptor or annotation for this EJB contains a persistent-store-logical-name setting but no persistent store with the logical name 'MyStore' could be found on the server 'yyyy'.
    Why ?

    Hi JB,
    The OTM schema has been created on an external database and not on the embedded XE database. Using 'Oracle Application Testing Database Configuration' we were able to successfully configure the said DB. We are able to use OTM through the 'Oracle Test Manager - Win32 Client' also. We are being held up by the above error when we attempt to deploy and use the server based OTM application.
    Do we need to configure the above Schema under the Weblogic console also?
    Regards,
    Aniket.

  • EJB timer info in persistent store

    Is it possiblle to configure WL 10.3.5 so that ejb timer information is stored into JDBC persistent store instead of the default file store?
    Where can I find documentation about that ?
    Or is it allowed in cluster configurations only ?
    Thanks

    Is it possiblle to configure WL 10.3.5 so that ejb timer information is stored into JDBC persistent store instead of the default file store?
    Where can I find documentation about that ?
    Or is it allowed in cluster configurations only ?
    Thanks

  • Metrics vs plugged-in persistent store

    Hello. I'm running IMQ3.5sp1 on Linux with java 1.4.2_04.
    I'm using the plugged-in persistent store.
    I get this error in the broker log when I try to run the default metrics (ttl) on a Topic: I'm concerned it may point to a bug:ERROR [B3100]: Unexpected Broker Internal Error : [unable to disk usage for destinationFlowEvent [Topic]] :
    com.sun.messaging.jmq.jmsserver.util.BrokerException: The operation does not apply to plugged-in persistent store.

    I guess, it is a known bug in 3.5 SP1
    The bug given below is in the 3.5SP1 release notes.
    =====================
    4950601
    imqcmd metrics dst triggers broker internal error to be printed when using the JDBC persistent store.
    Disk usage metrics information applies to file store only. However, when metrics information is retrieved, the broker will try to get the disk usage information regardless of the store type. If a database is used instead of the file store, the following error message will be printed by the broker:
    06/Nov/2003:22:57:36 PST] ERROR [B3100]: Unexpected Broker Internal
    Error : [unable to disk usage for destinationT:topic1] :
    com.sun.messaging.jmq.jmsserver.util.BrokerException:
    The operation does not apply to plugged-in persistent store.
    Workaround: None
    ============
    Sagar

  • Need Store DB tables to query to get the latest scanned price at register

    Need Store DB tables to query to get the latest scanned price at register.
    Please provide a sample sql script that will help me do this. I need to have this informatino for several items at a time.
    Thanks,
    Edited by: user10133807 on Jan 13, 2012 9:22 AM
    Edited by: user10133807 on Jan 13, 2012 9:23 AM

    Hi,
    You can find multiple items saled price at the register by running below quary
    select distinct DC_DY_BSN,ID_ITM_POS,MO_PRN_PRC from TR_LTM_SLS_RTN;
    Thanks,
    MG

  • JDBC Persistence Store: How to

    I need to create a JMS JDBC Store in WLS9.1 which will enable me to store XML SOAP messages in SQL Server table. At the moment I intend to persist the messages as is into the JDBC store. I thinking of having the DBA to create a table with single attribute (that will hold more than 5000 bytes). Please advice if there is better startegy storing these WebService messages. I do not want store the messages in the FileStore.
              Sample Message
              <?xml version="1.0" encoding="UTF-8"?>
              <m:SubmitRequest xmlns:m="http://usgs.med.eai.eds.com/provenroll" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><eds:Provider transactionID="399" transactionCode="A" providerID="3753136" partyName="Lyle" firstName="Theodore" middleName="d" xmlns:eds="http://EDS.USGS.MED.EAI.PE.InitEnrolSchemas.PE_InboundEnrolRequest_XML_V1"><reviewType beginDate="20060906" endDate="20060921"><reviewTypeCode/></reviewType><demographic SSN="4553325554" DOB="19760000" gender="M"/><addressPhone handicapAccessible="Yes" fax="8405612315" emailAddress="[email protected]"><address street1="23978 Hospice Way" city="Richmond" stateCode="VA" zipCode="23448" zipCodePlus4="23228"/><phone phone="8059551531" phoneExt="8055551531"/></addressPhone><license licenseNumber="123344" beginDate="20060905" endDate="20070906" stateissue="VA"/><license licenseNumber="2355231" beginDate="20060912" taxonomyCode="745226" beginDate="0"/></eds:Provider><AuditTrialStatus>Prov Enroll Request Submitted to Business Service </AuditTrialStatus><AuditTrialTime>09:57:16.640-07:00</AuditTrialTime><AuditTrialDate>2006-10-26-07:00</AuditTrialDate><AuditTrialCorrelationID providerID="3654436"/></m:SubmitRequest>
              Please advice on how I can specify the required table.
              Krishna
              Krish

    Tom
              Let me briefly what I did:
              1. Created X_DataSource and connection test was successful.
              2. Created JDBCStore and targeted to X_DataSource
              3. Prefix Name : [[PM.]dbo.]PMStore or [[[PM.]dbo.]PMStore], as per documentation [[[catalog.]schema.]prefix] no prefix part is provided in this case. PMStore is the table predefined on the database.
              I tried all permutation and the error I am getting is failed to open the database table. Please advise.
              <Nov 17, 2006 10:26:17 AM EST> <Error> <Store> <BEA-280072> <JDBC store "PM-JDBCStore" failed to open table "[[[PM.]dbo.]PMStoreWLStore".
              weblogic.store.io.jdbc.JDBCStoreException: [Store:280065][Store:280068]JDBC store failed to initiali
              ze. It did not find its database table and failed trying to create a new empty table using the comma
              nds in file "/weblogic/store/io/jdbc/ddl/mssql.ddl". (server="AdminServer" store="PM-JDBCStore" tabl
              e="[[[PM.]dbo.]PMStoreWLStore"):(Linked Cause, "java.sql.SQLException: [BEA][SQLSer
              ver JDBC Driver][SQLServer]Incorrect syntax near 'dbo'.")
              Krish

  • JMS Server and MySQL Persistent Store

              I set up a JDBC connection pool in Weblogic 8.1 with MySQL dbms. When I tried to
              create a JMS server and use the connection pool as the Persistent Store, then
              try to target the JMS to a managed server. I got the following error, any idea
              what the problem is?
              weblogic.management.DistributedManagementException: Distributed Management [1
              exceptions]
              JMS JDBC store, connection pool = , prefix = : unsupported DBMS
                   at weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:1133)
                   at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:462)
                   at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
                   at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
                   at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:765)
                   at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:946)
                   at weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:481)
                   at weblogic.management.configuration.ServerMBean_Stub.addDeployment(ServerMBean_Stub.java:7929)
                   at weblogic.management.internal.DynamicMBeanImpl.unprotectedUpdateDeployments(DynamicMBeanImpl.java:1795)
                   at weblogic.management.internal.DynamicMBeanImpl.access$100(DynamicMBeanImpl.java:95)
                   at weblogic.management.internal.DynamicMBeanImpl$2.run(DynamicMBeanImpl.java:1708)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
                   at weblogic.management.internal.DynamicMBeanImpl.updateDeployments(DynamicMBeanImpl.java:1704)
                   at weblogic.management.internal.DynamicMBeanImpl.setAttribute(DynamicMBeanImpl.java:1128)
                   at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:311)
                   at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1358)
                   at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1333)
                   at weblogic.management.internal.RemoteMBeanServerImpl.setAttribute(RemoteMBeanServerImpl.java:367)
                   at weblogic.management.internal.MBeanProxy.setAttribute(MBeanProxy.java:741)
                   at weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:475)
                   at weblogic.management.configuration.JMSServerMBean_Stub.setTargets(JMSServerMBean_Stub.java:1247)
                   at weblogic.management.console.webapp._domain.__jmsserver$ServerAndMigratableTargetAttribute.doSet(__jmsserver.java:109)
                   at weblogic.management.console.actions.mbean.DoEditMBeanAction.perform(DoEditMBeanAction.java:256)
                   at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:173)
                   at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                   at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
                   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
                   at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
                   at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              java.io.IOException: JMS JDBC store, connection pool = , prefix = : unsupported
              DBMS
                   at weblogic.jms.store.JDBCIOStream.throwIOException(JDBCIOStream.java:359)
                   at weblogic.jms.store.JDBCIOStream.rebuildTables(JDBCIOStream.java:1613)
                   at weblogic.jms.store.JDBCIOStream.open(JDBCIOStream.java:426)
                   at weblogic.jms.store.JMSStore.open(JMSStore.java:224)
                   at weblogic.jms.backend.BEStore.open(BEStore.java:262)
                   at weblogic.jms.backend.BEStore.start(BEStore.java:151)
                   at weblogic.jms.backend.BackEnd.openStores(BackEnd.java:1171)
                   at weblogic.jms.backend.BackEnd.resume(BackEnd.java:1287)
                   at weblogic.jms.JMSService.addJMSServer(JMSService.java:2167)
                   at weblogic.jms.JMSService.addDeployment(JMSService.java:1938)
                   at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:330)
                   at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:201)
                   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:324)
                   at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:747)
                   at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:726)
                   at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:458)
                   at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
                   at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
                   at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:765)
                   at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
                   at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:466)
                   at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:409)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:353)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
                   at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:404)
                   at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              --------------- nested within: ------------------
              weblogic.management.console.utils.SetException: An error occurred while updating
              MigratableTarget on [Caching Stub]Proxy for dotnet:Name=CSJMSServer,Type=JMSServer
              - with nested exception:
              [weblogic.management.DistributedManagementException: Distributed Management [1
              exceptions]
              JMS JDBC store, connection pool = , prefix = : unsupported DBMS]
                   at weblogic.management.console.actions.mbean.DoEditMBeanAction.perform(DoEditMBeanAction.java:311)
                   at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:173)
                   at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
                   at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
                   at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
                   at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
                   at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
                   at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
                   at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
                   at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
                   at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
                   at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
                   at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              Console Release Build8.1.1.0Server Release Build8.1.1.0Server BuildWebLogic Server
              8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 All Server Product VersionsWebLogic
              Server 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic XMLX Module 8.1 SP1
              Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic Server 8.1 SP1 Fri Jun 20 23:06:40
              PDT 2003 271009 WebLogic Server 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic
              Portal 8.1 Thu Jul 10 20:09:22 PDT 2003 84868
              

    Exactly what it says: unsupported DBMS.
              But but but...
              OK, I'll be nice (just couldn't resist).
              The next 8.1 SP will contain the DDL for MySQL, but for
              now you can run it manually. Prepend your catalog,
              schema, and prefix before JMSState and JMSStore to
              match what you configured as a prefix in your
              JMS JDBC store, and run the commands:
              CREATE TABLE JMSState (recordHandle int, recordState int,
              recordGeneration int);
              CREATE TABLE JMSStore (recordHandle int, recordState int, record longblob);
              CREATE INDEX JMSMSG_X ON JMSState (recordHandle);
              CREATE INDEX JMSMSGQ_X ON JMSStore (recordHandle);
              COMMIT;
              Note that a file store may be preferable instead
              of using a database store, there is
              likely no performance advantage to MySQL (in fact
              there is likely a significant performance penalty), and a file
              store is just as transactionally safe as a database
              store.
              Tom
              dahan wrote:
              > I set up a JDBC connection pool in Weblogic 8.1 with MySQL dbms. When I tried to
              > create a JMS server and use the connection pool as the Persistent Store, then
              > try to target the JMS to a managed server. I got the following error, any idea
              > what the problem is?
              >
              > weblogic.management.DistributedManagementException: Distributed Management [1
              > exceptions]
              > JMS JDBC store, connection pool = , prefix = : unsupported DBMS
              >      at weblogic.management.internal.ConfigurationMBeanImpl.updateConfigMBeans(ConfigurationMBeanImpl.java:1133)
              >      at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:462)
              >      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              >      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              >      at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:765)
              >      at weblogic.management.internal.MBeanProxy.invoke(MBeanProxy.java:946)
              >      at weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:481)
              >      at weblogic.management.configuration.ServerMBean_Stub.addDeployment(ServerMBean_Stub.java:7929)
              >      at weblogic.management.internal.DynamicMBeanImpl.unprotectedUpdateDeployments(DynamicMBeanImpl.java:1795)
              >      at weblogic.management.internal.DynamicMBeanImpl.access$100(DynamicMBeanImpl.java:95)
              >      at weblogic.management.internal.DynamicMBeanImpl$2.run(DynamicMBeanImpl.java:1708)
              >      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              >      at weblogic.management.internal.DynamicMBeanImpl.updateDeployments(DynamicMBeanImpl.java:1704)
              >      at weblogic.management.internal.DynamicMBeanImpl.setAttribute(DynamicMBeanImpl.java:1128)
              >      at weblogic.management.internal.ConfigurationMBeanImpl.setAttribute(ConfigurationMBeanImpl.java:311)
              >      at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1358)
              >      at com.sun.management.jmx.MBeanServerImpl.setAttribute(MBeanServerImpl.java:1333)
              >      at weblogic.management.internal.RemoteMBeanServerImpl.setAttribute(RemoteMBeanServerImpl.java:367)
              >      at weblogic.management.internal.MBeanProxy.setAttribute(MBeanProxy.java:741)
              >      at weblogic.management.internal.MBeanProxy.invokeForCachingStub(MBeanProxy.java:475)
              >      at weblogic.management.configuration.JMSServerMBean_Stub.setTargets(JMSServerMBean_Stub.java:1247)
              >      at weblogic.management.console.webapp._domain.__jmsserver$ServerAndMigratableTargetAttribute.doSet(__jmsserver.java:109)
              >      at weblogic.management.console.actions.mbean.DoEditMBeanAction.perform(DoEditMBeanAction.java:256)
              >      at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:173)
              >      at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
              >      at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
              >      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
              >      at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
              >      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
              >      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
              >      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
              >      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              >      at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
              >      at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
              >      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              >      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              > java.io.IOException: JMS JDBC store, connection pool = , prefix = : unsupported
              > DBMS
              >      at weblogic.jms.store.JDBCIOStream.throwIOException(JDBCIOStream.java:359)
              >      at weblogic.jms.store.JDBCIOStream.rebuildTables(JDBCIOStream.java:1613)
              >      at weblogic.jms.store.JDBCIOStream.open(JDBCIOStream.java:426)
              >      at weblogic.jms.store.JMSStore.open(JMSStore.java:224)
              >      at weblogic.jms.backend.BEStore.open(BEStore.java:262)
              >      at weblogic.jms.backend.BEStore.start(BEStore.java:151)
              >      at weblogic.jms.backend.BackEnd.openStores(BackEnd.java:1171)
              >      at weblogic.jms.backend.BackEnd.resume(BackEnd.java:1287)
              >      at weblogic.jms.JMSService.addJMSServer(JMSService.java:2167)
              >      at weblogic.jms.JMSService.addDeployment(JMSService.java:1938)
              >      at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:330)
              >      at weblogic.management.mbeans.custom.DeploymentTarget.addDeployment(DeploymentTarget.java:201)
              >      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:324)
              >      at weblogic.management.internal.DynamicMBeanImpl.invokeLocally(DynamicMBeanImpl.java:747)
              >      at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:726)
              >      at weblogic.management.internal.ConfigurationMBeanImpl.invoke(ConfigurationMBeanImpl.java:458)
              >      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1557)
              >      at com.sun.management.jmx.MBeanServerImpl.invoke(MBeanServerImpl.java:1525)
              >      at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:765)
              >      at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
              >      at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:466)
              >      at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:409)
              >      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:353)
              >      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
              >      at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:404)
              >      at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
              >      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              >      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              > --------------- nested within: ------------------
              > weblogic.management.console.utils.SetException: An error occurred while updating
              > MigratableTarget on [Caching Stub]Proxy for dotnet:Name=CSJMSServer,Type=JMSServer
              > - with nested exception:
              > [weblogic.management.DistributedManagementException: Distributed Management [1
              > exceptions]
              > JMS JDBC store, connection pool = , prefix = : unsupported DBMS]
              >      at weblogic.management.console.actions.mbean.DoEditMBeanAction.perform(DoEditMBeanAction.java:311)
              >      at weblogic.management.console.actions.internal.ActionServlet.doAction(ActionServlet.java:173)
              >      at weblogic.management.console.actions.internal.ActionServlet.doPost(ActionServlet.java:85)
              >      at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
              >      at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
              >      at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
              >      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
              >      at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
              >      at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
              >      at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
              >      at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
              >      at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
              >      at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
              >      at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              >      at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              >
              >
              >
              > --------------------------------------------------------------------------------
              >
              > Console Release Build8.1.1.0Server Release Build8.1.1.0Server BuildWebLogic Server
              > 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 All Server Product VersionsWebLogic
              > Server 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic XMLX Module 8.1 SP1
              > Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic Server 8.1 SP1 Fri Jun 20 23:06:40
              > PDT 2003 271009 WebLogic Server 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 WebLogic
              > Portal 8.1 Thu Jul 10 20:09:22 PDT 2003 84868
              >
              

  • Persistent Store Problems for MYSQL Enhanced Cluster With OpenMQ 4.4

    I am trying to implement an enhanced cluster with failover. I have edited the config files for each broker instance for a persistent store. I have appended the following to each of the config.properties files:
    imq.brokerid=myclusterinstanceINSTANCE1 # I substitute INSTANCE2 for INSTANCE1 for broker #2
    imq.persist.store=jdbc
    imq.persist.jdbc.dbVendor=mysql
    imq.persist.jdbc.mysql.property.url=jdbc:mysql://xxx.xxx.xxx.xx:3306/test
    imq.persist.jdbc.mysql.user=user1
    imq.persist.jdbc.mysql.needpassword=true
    imq.persist.jdbc.mysql.password=mypass
    imq.cluster.ha=true
    imq.cluster.clusterid=mycluster
    imq.cluster.brokerlist=xxx.xxx.xxx.x:37676,yyy.yyy.yyy.y:37676
    I then create the persistence storage with "imqdbmgr create tbl". When I view the data in the tables it creates, I have one row. Under Store_Version, I have 410. Under LOCK_ID, it has NULL. When I go to start the brokers with imqbrokerd, I get the following error:
    ERROR [B3198]: Error initializing cluster manager:
    com.sun.messaging.jmq.jmsserver.util.BrokerException: [B4239]: Failed to load persistent store version from database table MQVER41Cmycluster
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.VersionDAOImpl.getStoreVersion(VersionDAOImpl.java:310)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.DBTool.updateStoreVersion410IfNecessary(DBTool.java:350)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.JDBCStore.checkStore(JDBCStore.java:3599)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.JDBCStore.<init>(JDBCStore.java:127)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at java.lang.Class.newInstance0(Class.java:355)
    at java.lang.Class.newInstance(Class.java:308)
    at com.sun.messaging.jmq.jmsserver.persist.StoreManager.getStore(StoreManager.java:157)
    at com.sun.messaging.jmq.jmsserver.Globals.getStore(Globals.java:967)
    at com.sun.messaging.jmq.jmsserver.cluster.ha.HAClusterManagerImpl.initialize(HAClusterManagerImpl.java:181)
    at com.sun.messaging.jmq.jmsserver.Globals.initClusterManager(Globals.java:903)
    at com.sun.messaging.jmq.jmsserver.Broker._start(Broker.java:777)
    at com.sun.messaging.jmq.jmsserver.Broker.start(Broker.java:410)
    at com.sun.messaging.jmq.jmsserver.Broker.main(Broker.java:1971)
    Caused by: java.lang.NullPointerException
    at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1103)
    at com.mysql.jdbc.ResultSetImpl.getInt(ResultSetImpl.java:2777)
    at com.sun.messaging.jmq.jmsserver.persist.jdbc.VersionDAOImpl.getStoreVersion(VersionDAOImpl.java:298)
    ... 16 more
    I believe this error is attributed to the NULL value under LOCK_ID. I think that the value under LOCK_ID should be the name of the broker from the config file (even though I specified them in the config files). Any ideas?? THANKS!

    Just some pointers -- maybe this will be of use:
    If you haven't already read it, please take a look at the [ MySQL setup guide|https://mq.dev.java.net/OpenMQ_MySQLCluster_Setup_Guide.html] .
    We recommend using NDB Data-store of MySQL Cluster, though this isn't an absolute requirement. Due to some issues we have found with earlier versions, we recommend using MySQL Cluster, 7.0.9 or better (the current version is 7.0.16, or 7.1.5). Either of these would contain Connector/J.
    I'd also recommend using the latest version -- MQ 4.4update2 (just in case you happen to have an older copy). There were many minor improvements in the integration with MySQL from the original 4.4 release, to update 2. This is linked at the MQ download page: [https://mq.dev.java.net/downloads.html]

  • The persistent store record 6,810 could not be found

    Under heavy load, we get an exception stack trace in the log, that says that an expired message could not be deleted. This message is repeated every 15-30 minutes for other records. 5 hours later, it says that a thread is stuck and the server is blocked.
              What to do?
              We use Weblogic 9.2 MP2
              Thanks, Peter
              <Dec 17, 2007 7:19:48 PM MET> <Warning> <Messaging> <BEA-282006> <An error occurred while deleting an expired message for the messaging kernel datadispatcher-2/WeblogicJmsDistributedTopic@Remote@DataDispatc
              her JMS Module!datadispatcher-3@HandlerTopic@Local@DataDispatcher JMS Module!datadispatcher-2@HandlerTopic: weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not
              be found
              weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not be found
              at weblogic.store.internal.DeleteRequest.coalesce(DeleteRequest.java:55)
              at weblogic.store.internal.PersistentStoreImpl.coalesceRequests(PersistentStoreImpl.java:510)
              at weblogic.store.internal.PersistentStoreImpl.getOutstandingWork(PersistentStoreImpl.java:613)
              at weblogic.store.internal.PersistentStoreImpl.run(PersistentStoreImpl.java:621)
              at java.lang.Thread.run(Thread.java:595)
              >
              <Dec 17, 2007 7:19:48 PM MET> <Warning> <Messaging> <BEA-282006> <An error occurred while deleting an expired message for the messaging kernel datadispatcher-2/WeblogicJmsDistributedTopic@Remote@DataDispatc
              her JMS Module!datadispatcher-4@HandlerTopic@Local@DataDispatcher JMS Module!datadispatcher-2@HandlerTopic: weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not
              be found
              weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not be found
              at weblogic.store.internal.DeleteRequest.coalesce(DeleteRequest.java:55)
              at weblogic.store.internal.PersistentStoreImpl.coalesceRequests(PersistentStoreImpl.java:510)
              at weblogic.store.internal.PersistentStoreImpl.getOutstandingWork(PersistentStoreImpl.java:613)
              at weblogic.store.internal.PersistentStoreImpl.run(PersistentStoreImpl.java:621)
              at java.lang.Thread.run(Thread.java:595)
              >
              <Dec 17, 2007 7:19:48 PM MET> <Error> <Store> <BEA-280074> <The persistent store "datadispatcher-fs-2" encountered an unresolvable failure while processing transaction "BEA1-0A0CD965B4DAECF2346C". Shutdown
              and restart to resolve this transaction. weblogic.store.gxa.GXAException: weblogic.store.PersistentStoreException: weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 co
              uld not be found
              weblogic.store.gxa.GXAException: weblogic.store.PersistentStoreException: weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not be found
              at weblogic.store.gxa.internal.GXAResourceImpl.registerFailedTransaction(GXAResourceImpl.java:597)
              at weblogic.store.gxa.internal.GXATransactionImpl.doOperationCallbacks(GXATransactionImpl.java:243)
              at weblogic.store.gxa.internal.GXAResourceImpl.commit(GXAResourceImpl.java:1451)
              at weblogic.transaction.internal.XAServerResourceInfo.commit(XAServerResourceInfo.java:1333)
              at weblogic.transaction.internal.XAServerResourceInfo.commit(XAServerResourceInfo.java:577)
              at weblogic.transaction.internal.ServerSCInfo.startCommit(ServerSCInfo.java:486)
              at weblogic.transaction.internal.ServerTransactionImpl.localCommit(ServerTransactionImpl.java:1993)
              at weblogic.transaction.internal.ServerTransactionImpl.globalRetryCommit(ServerTransactionImpl.java:2658)
              at weblogic.transaction.internal.ServerTransactionImpl.globalCommit(ServerTransactionImpl.java:2580)
              at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:278)
              at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:227)
              at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:463)
              at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
              at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
              at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
              at weblogic.jms.client.JMSSession.execute(JMSSession.java:3962)
              at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
              at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
              at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
              at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
              weblogic.store.PersistentStoreException: weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not be found
              at weblogic.store.gxa.internal.GXATransactionImpl.commitStoreIO(GXATransactionImpl.java:103)
              at weblogic.store.gxa.internal.GXATransactionImpl.doOperationCallbacks(GXATransactionImpl.java:215)
              at weblogic.store.gxa.internal.GXAResourceImpl.commit(GXAResourceImpl.java:1451)
              at weblogic.transaction.internal.XAServerResourceInfo.commit(XAServerResourceInfo.java:1333)
              at weblogic.transaction.internal.XAServerResourceInfo.commit(XAServerResourceInfo.java:577)
              at weblogic.transaction.internal.ServerSCInfo.startCommit(ServerSCInfo.java:486)
              at weblogic.transaction.internal.ServerTransactionImpl.localCommit(ServerTransactionImpl.java:1993)
              at weblogic.transaction.internal.ServerTransactionImpl.globalRetryCommit(ServerTransactionImpl.java:2658)
              at weblogic.transaction.internal.ServerTransactionImpl.globalCommit(ServerTransactionImpl.java:2580)
              at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:278)
              at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:227)
              at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:463)
              at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
              at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
              at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
              at weblogic.jms.client.JMSSession.execute(JMSSession.java:3962)
              at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
              at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
              at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
              at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
              weblogic.store.PersistentStoreException: [Store:280029]The persistent store record 6,810 could not be found
              at weblogic.store.internal.DeleteRequest.coalesce(DeleteRequest.java:55)
              at weblogic.store.internal.PersistentStoreImpl.coalesceRequests(PersistentStoreImpl.java:510)
              at weblogic.store.internal.PersistentStoreImpl.getOutstandingWork(PersistentStoreImpl.java:613)
              at weblogic.store.internal.PersistentStoreImpl.run(PersistentStoreImpl.java:621)
              at java.lang.Thread.run(Thread.java:595)
              >
              <Dec 17, 2007 7:19:48 PM MET> <Error> <EJB> <BEA-010026> <Exception occurred during commit of transaction Xid=BEA1-0A0DD965B4DAECF2346C(14187897),Status=Rolled back. [Reason=javax.transaction.xa.XAException
              ],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds since begin=0,seconds left=60,XAServerResourceInfo[WLStore_deplDomain_datadispatcher-fs-2]=(ServerResourceInfo[WLStore_deplDomain_datadispatcher-fs-2]=(st
              ate=rolledback,assigned=deplMan2),xar=WLStore_deplDomain_datadispatcher-fs-25927290,re-Registered = false),XAServerResourceInfo[datadispatcher-multipool]=(ServerResourceInfo[datadispatcher-multipool]=(state
              =rolledback,assigned=deplMan2),xar=datadispatcher-multipool,re-Registered = false),SCInfo[deplDomain+deplMan2]=(state=rolledback),local properties=({weblogic.jdbc.jta.datadispatcher-multipool=[ No XAConnect
              ion is attached to this TxInfo ]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=deplMan2+141.249.2.220:28200+deplDomain+t3+, XAResources={NetworkControl, WeblogicTimerService
              , datadispatcher-xa-standby, datadispatcher-multipool, WLStore_deplDomain_datadispatcher-fs-2, datadispatcher-xa-active},NonXAResources={})],CoordinatorURL=deplMan2+141.249.2.220:28200+deplDomain+t3+): webl
              ogic.transaction.RollbackException: Could not prepare resource 'WLStore_deplDomain_datadispatcher-fs-2
              at weblogic.transaction.internal.TransactionImpl.throwRollbackException(TransactionImpl.java:1809)
              at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:331)
              at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:227)
              at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:463)
              at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:335)
              at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:291)
              at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4072)
              at weblogic.jms.client.JMSSession.execute(JMSSession.java:3962)
              at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:4490)
              at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
              at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
              at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
              <Dec 18, 2007 12:33:44 AM MET> <Error> <WebLogicServer> <BEA-000337> <[STUCK] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)' has been busy for "643" seconds working on the request "we
              blogic.work.ServerWorkManagerImpl$WorkAdapterImpl@7aca93", which is more than the configured time (StuckThreadMaxTime) of "600" seconds. Stack trace:
              sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
              java.lang.reflect.Method.invoke(Method.java:585)
              net.sf.hibernate.property.BasicPropertyAccessor$BasicGetter.get(BasicPropertyAccessor.java:96)
              net.sf.hibernate.persister.AbstractEntityPersister.getIdentifier(AbstractEntityPersister.java:306)
              net.sf.hibernate.impl.SessionImpl.checkId(SessionImpl.java:2636)
              net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2461)
              net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2454)
              net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2256)
              net.sf.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1801)
              net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1567)
              net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1532)
              net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:39)
              ch.meteoswiss.datadispatcher.model.dao.TimedMessageDAO.findByMeteodata(TimedMessageDAO.java:232)
              ch.meteoswiss.datadispatcher.model.dao.TimedMessageDAO.deleteByMeteodata(TimedMessageDAO.java:263)
              ch.meteoswiss.datadispatcher.model.dao.MeteodataDAO.delete(MeteodataDAO.java:482)
              ch.meteoswiss.datadispatcher.model.base.BaseMeteodataDAO.delete(BaseMeteodataDAO.java:194)
              ch.meteoswiss.datadispatcher.model.dao.MeteodataDAO.deleteOutdated(MeteodataDAO.java:432)
              ch.meteoswiss.datadispatcher.timed.CleanUpListener.deleteOutdatedMeteodataEntries(CleanUpListener.java:88)
              ch.meteoswiss.datadispatcher.timed.CleanUpListener.handleNotification(CleanUpListener.java:141)
              weblogic.management.timer.TimerListener$1.run(TimerListener.java:48)
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
              weblogic.management.timer.TimerListener.deliverNotification(TimerListener.java:44)
              weblogic.management.timer.Timer.deliverNotifications(Timer.java:440)
              weblogic.management.timer.TimerNotification$1.run(TimerNotification.java:124)
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
              weblogic.management.timer.TimerNotification.timerExpired(TimerNotification.java:121)
              weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
              weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
              weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
              weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
              >

    Please find below an extract of the Java trace (kill -3 on Unix):
              "[STUCK] ExecuteThread: '12' for queue: 'weblogic.kernel.Default (self-tuning)'" daemon prio=1 tid=0x00440ef8 nid=0x34 in Object.wait() [0x85800000..0x85801808]
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:474)
              at weblogic.messaging.dispatcher.Request.sleepTillNotified(Request.java:324)
              at weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:801)
              - locked <0xb3288670> (a weblogic.jms.backend.BEProducerSendRequest)
              at weblogic.messaging.dispatcher.DispatcherImpl.dispatchAsyncInternal(DispatcherImpl.java:129)
              at weblogic.messaging.dispatcher.DispatcherImpl.dispatchAsync(DispatcherImpl.java:112)
              at weblogic.messaging.dispatcher.Request.dispatchAsync(Request.java:1046)
              at weblogic.jms.dispatcher.Request.dispatchAsync(Request.java:72)
              at weblogic.jms.frontend.FEProducer.doDispatch(FEProducer.java:880)
              at weblogic.jms.frontend.FEProducer.sendRetryDestination(FEProducer.java:1010)
              at weblogic.jms.frontend.FEProducer.send(FEProducer.java:1383)
              at weblogic.jms.frontend.FEProducer.invoke(FEProducer.java:1444)
              at weblogic.messaging.dispatcher.Request.wrappedFiniteStateMachine(Request.java:759)
              at weblogic.messaging.dispatcher.DispatcherImpl.dispatchSyncNoTran(DispatcherImpl.java:246)
              at weblogic.jms.dispatcher.DispatcherAdapter.dispatchSyncNoTran(DispatcherAdapter.java:59)
              at weblogic.jms.client.JMSProducer.toFEProducer(JMSProducer.java:1061)
              at weblogic.jms.client.JMSProducer.deliveryInternal(JMSProducer.java:670)
              at weblogic.jms.client.JMSProducer.sendInternal(JMSProducer.java:455)
              at weblogic.jms.client.JMSProducer.send(JMSProducer.java:337)
              at weblogic.jms.client.WLProducerImpl.send(WLProducerImpl.java:966)
              at ch.meteoswiss.datadispatcher.receiver.ReceiverServlet.sendJMSMessage(ReceiverServlet.java:255)
              at ch.meteoswiss.datadispatcher.receiver.ReceiverServlet.doProcess(ReceiverServlet.java:320)
              at ch.meteoswiss.datadispatcher.receiver.ReceiverServlet.doPost(ReceiverServlet.java:297)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
              at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
              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.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3231)
              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)
              The method in ReceiverServlet:
                        private static void sendJMSMessage(MeteodataTransfer data) throws NamingException, JMSException {
                      QueueConnection queueConnection = null;
                      QueueSession jmsSession = null;
                      QueueSender jmsSender = null;
                      try {
                          final ServiceLocator initial = ServiceLocator.getInstance();
                          final QueueConnectionFactory factory = (QueueConnectionFactory)initial.lookup(ServiceLocator.CONNECTION_FACTORY); //"java:comp/env/jms/QUEUEFACTORY");
                          final Queue queue = (Queue)initial.lookup("java:comp/env/jms/"+data.getSubscriber().getOutputQueueTx().toUpperCase());
                          queueConnection = factory.createQueueConnection();
                          jmsSession = queueConnection.createQueueSession(false,Session.AUTO_ACKNOWLEDGE);
                          jmsSender = jmsSession.createSender(queue);
                          final ObjectMessage msg = jmsSession.createObjectMessage();
                          msg.setJMSExpiration(...);
                          msg.setObject(data);
                          jmsSender.send(msg); // LINE 255!!! STUCK!!!
                      } finally {
                          JmsUtil.closeQuietly(jmsSender);
                          JmsUtil.closeQuietly(jmsSession);
                          JmsUtil.closeQuietly(queueConnection);
              

  • Saving a JMS Message in a Persistent Store

    Hello Friends,
    I am going to store a JMS message in a persistent store like a database and then recreate it when needed. What I will be doing is storing the JMS headers individually. Then storing all the properties and then the message body. I just wanted to confirm that with this data I would be able to recreate the entire message.

    Not sure of the answer to this (I suspect re-creating the message with exactly the same values as it started with will be a bit more tricky than you would imaging). Why don't you try creating a blank message and setting every single header / property? You'll probably get some exceptions / values being over written when you send.
    The real question is are you 100% sure you need to do this? The whole idea smells fishy. Why do you need the JMS Headers? Things would be far easier if the body of the message contained everything you needed. Why do you have to store the message in a database rather than leave it on a persistent queue?

  • Invalid reference in persistent store

    Scenario: an object in the persistent store holds an invalid reference
    (either an object with the referenced id does not exist or it can't be
    instantiated for some other reason). When the object is loaded in
    memory, an attempt to navigate the invalid reference does not generate
    an exception, but instead returns a null. This doesn't seem correct.
    I've attached a simple test case that demonstrates the problem.
    Alex Albu
    Commerce Technologies, Inc.
    21 Corporate Drive
    Clifton Park, NY 12065

    I might be subjective here, but I don't agree, Abe. I don't think that
    checking the return value of each method call is the norm in Java. It
    is in C, but Java's exceptions are meant to relieve you from this
    burden. After all, inconsistent data really is an exceptional
    circumstance. Obviously, the granularity of your try/catch blocks,
    won't be at the line level. To me, navigating a reference is very
    similar with PersistenceManger.getObjectById(). It won't return a null
    if the object isn't present in the data store.
    Nulls are many times legal values and substituting them for invalid
    references takes away the possibility to distinguish between good and
    bad data. Code handling invalid references just like it handles nulls
    is most likely going to produce wrong results whose cause is going to be
    hard to determine.
    We have gone to great lengths to ensure that our object model stays
    consistent. For example, if A's bField is required by business rules to
    be non-null, then our object model offers no way to construct an A
    object with a null bField. So if there ise no circumstance under which
    bField's getter would return null, why check? If the model has become
    inconsistent, that's a serious issue (at least for us) and it is
    critical for the application to signal that right away in a clear
    fashion (NPE's don't mean anything to production support).
    Anyway, as I said, this is just my opinion and I can see how other users
    might find your decision suited for their applications. Offering an
    option that allows users to control this behavior seems appropriate.
    Abe White wrote:
    And I'm not sure this behavior is helpful anyway. If you're
    trying to dereference an invalid reference, you'll get a NPE,At least it's possible to check for nulls and avoid NPEs. If we threw
    an execption on any attempt to load an invalid reference, it would be
    impossible for users to avoid the exception.
    Consider the following extremely common case:
    * Object A has a field bField with a reference to object B.
    * Object B is deleted, but the user does not null object A's bField reference.
    * Later, the user finds object A and calls A.getBField () to do some operation
    on the related B if it exists.
    The vast majority of users just want a null to be returned if no related object
    exists. Users almost always check for null when dealing with returned objects
    in Java; it doesn't get in the way of their programming. Having the
    possibility of any getter method for a relation throw an exception, though --
    that would force users to build in a lot of exception handling code that
    they wouldn't normally include. It breaks the transparency of JDO.
    anyway. I guess the only way you can take advantage of this
    feature (?) is to test references for null before accessing
    them, which doesn't seem reasonable.As stated above, code like this:
    B b = a.getBField ();
    if (b != null)
    is the norm in Java. Code like this:
    B b;
    try
    b = a.getBField ();
    catch (JDOUserException jue)
    ... what could I possibly do to recover here? ...
    is not. Additionally, you would still need to do the null check in most
    situations, because bField could simply have been set to null.
    You can avoid either situation by keeping your object model consistent. This
    feature is for careless users. If they're so careless that they also don't
    check for null objects, then yes, they'll get a NPE. But with your solution,
    they'd get an exception anyway, just a different kind... and an unavoidable
    one at that.
    I'm interested, though: how would throwing a JDOUserException immediately
    help your code? If you can make a compelling enough case, we could offer
    this as an option...

  • Exceptions Table query help?

    I ahve two exceptions tables cust_day_of_week and cust_date
    Cust_day_of the week has following fields:
    Key_Id,Day_week,begintime,endtime
    1,1,8,20 1--is oracle number for sunday
    cust_date has following fields
    Key_Id, exception_date,begintime,endtime
    2,08/24/2011,8,20
    i am writing a function to get the key_id to use for some purpose by checking if the sysdate falls in any of the exception
    say sysdate is sunday then profile ID =1 shud be returned
    if date exception is to be checked then the Cust_day table shud be checked...
    is there a way to get the profileid from both tables in one function by chekcing which exception is fullfilled....Hope i am clear...
    say i wnat to check if the sysdate day is sunday or not..if yes then return profileid =1
    else if i want check if tuday =08/24/2011 the retrun profile id =2 but this shud be done in one function if possible...is it possible...
    This is the function i planning to create....
    how to check the for the Cust_date table date exception in the same query...
    FUNCTION key_ID
    ( v_date     IN          DATE     DEFAULT SYSDATE
    RETURN     Number IS
    ret_value number:=0
    select Key_ID into ret_value from cust_day_of_week
    where (to_char( v_date,'D') in (select day_week from cust_day_of_week ))
    retun ret_value;
    EXCEPTION
    WHEN OTHERS THEN
    dbms_output.put_line('Error:'||SQLERRM);
    RETURN 0;
    END ;
    Edited by: 874167 on Aug 25, 2011 1:43 PM

    Does this help?
    It's not a function, but I don't see a need for one.
    drop table cust_date purge;
    drop table cust_day_of_week purge;
    create table cust_day_of_week (key_id number,Day_week number,begintime number,endtime number);
    insert into cust_day_of_week values (1,1,8,20);
    insert into cust_day_of_week values (2,2,8,20);
    insert into cust_day_of_week values (3,3,8,20);
    insert into cust_day_of_week values (4,4,8,20);
    insert into cust_day_of_week values (5,5,8,20);
    insert into cust_day_of_week values (6,6,8,20);
    insert into cust_day_of_week values (7,7,8,20);
    create table cust_date (key_id number,exception_date date,begintime number,endtime number, constraint edunique unique(exception_date));
    insert into cust_date values (8,to_date('08/24/2011','MM/DD/YYYY'),8,20);
    insert into cust_date values (9,to_date('08/25/2011','MM/DD/YYYY'),8,20);
    commit;
    select key_id from (
    SELECT key_id from cust_date where exception_date = trunc(sysdate)
    union all
    SELECT key_id from cust_day_of_week where day_week = to_number(to_char(sysdate,'D','nls_date_language = AMERICAN')))
    where rownum =1;I am not 100% sure that you are allowed to rely on union all preserving the order. I have not seen otherwise, but I am not sure whether it's guaranteed.
    As documentation doesn't say it's guaranteed, it probably isn't.
    to be sure, this is a safe way of doing it. Maybe someone else can say whether there is a shorter way of doing that:
    select key_id from (
    select key_id ,rank() over (order by sorted) rnk from (
    SELECT key_id, 1 sorted from cust_date where exception_date = trunc(sysdate)
    union all
    SELECT key_id, 2 sorted from cust_day_of_week where day_week = to_number(to_char(sysdate,'D','nls_date_language = AMERICAN')))
    ) where rnk = 1;

  • Unable to get the dataSources while creating the persistent stores.

    Hi, While I am trying to create a persistent store (JDBC Store) I am unable to see the already created DataSources in the dropdown menu. I also tried creating new DataSource from Persistent Store creating screen but still could not see.
    Following steps followed while creating DataSource.
    Fill in the values for
    Name, E.g.: JD-JDBC-Store.
    JNDI Name – jdbc/JobDispatcherDS.
    DatabaseType – Oracle
    Database Driver - Retain the default selection
    Click on ‘Next’
    Click on ‘Next’
    Fill in values for:
    Database Name – SID of the Database
    Host Name – The hostname/IP on which the Database is running
    Port – DB Port
    Database User Name - JOBUSER.
    Password – JOBUSER
    Click on ‘Next’
    Click on ‘Test Configuration’ to ensure the correctness of the values. Got a success message on the screen.
    Click on ‘Next’
    Select your target server. E.g.: AdminServer
    Click on ‘Finish’
    Following steps while creating the Persistent Store
    Clicked on New button. Select ‘Create New JDBC Store’ Option
    Fill in the values.
    name – E.g.: JD-JDBC-Store
    Target server - admin Server.
    data source - not able to get any to select from the DropDown.
    Thank You,
    Naresh.

    Dear Rajesh ,
    I am assuming your server is on Windows  :
    For Eg.
    My SID is PRD and system number 02 and hostname prdserver then command should be execute like : 
    E:\usr\sap\PRD\DVEBMGS02\exe>jcmon pf=E:\usr\sap\PRD\SYS\profile\PRD_DVEBMGS02_prdserver
    Rest all are same :
    In JControl Monitor Program - Main Menu :
    Select : 20 : Local Administration Menu
    And check the status of server0 process it shoud be up and running .
    Regards ,
    Santosh

Maybe you are looking for