Connection pool fail
Hi, guys
I use instant client 11.2.0.3.0 OCCI to create a connection pool, when create a connection from pool, it supposed using the existing connection, but the code created anohter new connection to database, any ideas? appreciate your help.
client side is running on Windows 7 32 bit, Database server is 10.2.05 on Solaris 10, development tool is MS VS 2010
here is the code:
Environment *env;
Connection *conn;
Statement *stmt;
string sqlStmt;
env = Environment::createEnvironment (Environment::THREADED_MUTEXED);
const string poolUserName = "scott";
const string poolPassword = "1234";
const string connectString = "192.168.0.70/orcl";
const string username = "scott";
const string passWord = "1234";
unsigned int maxConn =5;
unsigned int minConn = 2;
unsigned int incrConn = 1;
ConnectionPool *connPool = env->createConnectionPool(poolUserName, poolPassword, connectString, minConn, maxConn, incrConn);
try{
if (connPool)
cout << "SUCCESS - createConnectionPool" << endl;
else
cout << "FAILURE - createConnectionPool" << endl;
conn = connPool->createConnection (username, passWord); _// after this code, connection increase to 3 from 2._*
if (conn)
cout << "SUCCESS - createConnection" << endl;
else
cout << "FAILURE - createConnection" << endl;
}catch(SQLException ex)
cout<<"Exception thrown for createConnectionPool"<<endl;
cout<<"Error number: "<< ex.getErrorCode() << endl;
cout<<ex.getMessage() << endl;
......
Hi Nicolas,
Have you tried to turn on testOnReserve setting of the coneection pool?
Regards,
"Nicolas Devos" <[email protected]> wrote in message
news:3c5fa916$[email protected]..
>
Hi,
I am using weblogic 6.1 and oracle 8.1.6, and experiences
problems with connections pools and database crash.
When the database server crashes during an EJB transactions,
the connection used by that transaction seems to be lost and
is never rebuilt when the database server restarts, therefore
the number of connections within the pool shrinks thoroughly
if I have several connections used while the database crashes
or is shutdown for maintenance.
If this db crash takes time to recover, all connections
are destroyed and the pool become unusable.
As soon as all connections have been 'destroyed' I have
the following exception:
'connection pool - none available' when trying to get
a connection.
When I restart the database server, the pool does not rebuilt
itself.
(I am using a test table to test the presence of the database
with a frequency set to 60s)
I did the same operation without EJB transactions and the pool
could rebuilt itself after the database has been restarted.
I had that problem with weblogic 6.0 already and in the
release notes of 6.0_sp2, 2 issues are fixed concerning
the pool fail-over: 044223 and 041793.
I would like to know if these issues are fixed in 6.1 as well,
and if they are related to my problem (Their description is
quite short).
Thank you
Nicolas
Similar Messages
-
Dynamic Connection Pool fails in WLS 6.1
Hi all,
I am trying to create the connection pool dynamically but it fails saying " Error
to load the Driver"
Snippet Code --
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
// URL for the WebLogic Server
env.put(Context.PROVIDER_URL, "t3://localhost:7001");
env.put(Context.SECURITY_PRINCIPAL, "Fred");
env.put(Context.SECURITY_CREDENTIALS, "secret");
Context ctx = new InitialContext(env);
// Look up weblogic.jdbc.JdbcServices
weblogic.jdbc.common.JdbcServices jdbc =
(weblogic.jdbc.common.JdbcServices)
ctx.lookup("weblogic.jdbc.JdbcServices");
String thePoolName = "eng2";
Properties poolProps = null;
Pool myPool = null;
weblogic.jdbc.common.Pool pool = null
poolProps = new Properties();
// Set properties for the ConnectionPool.
poolProps.put("poolName", thePoolName);
poolProps.put("url", "jdbc:weblogic:demo");
poolProps.put("driver", "COM.cloudscape.core.JDBCDriver");
poolProps.put("props", "user=scott;password=tiger;server=demo");
poolProps.put("initialCapacity", "1");
poolProps.put("maxCapacity", "10");
poolProps.put("capacityIncrement", "1");
poolProps.put("aclName", "dynapool");
poolProps.put("allowShrinking", "true");
poolProps.put("shrinkPeriodMins", "5");
poolProps.put("refreshPeriod", "10");
poolProps.put("testConnOnReserve", "true");
poolProps.put("testConnOnRelease", "false");
poolProps.put("testTableName", "dual");
poolProps.put("loginDelaySecs", "1");
// create our pool
try {
myJdbc.createPool(poolProps);
} catch (Exception e) {
System.out.println(thePoolName
+ " can't be created ..");
System.exit(666);
Any Help will be appreciated in creating the dynamic connection pool in WLS 6.1 SP2
Regards,
BalaBala wrote:
Hi joe,
Any how let me want to create the Connections Pool Dynamically in WLS 6.1 .Pls
give some ideas / ways to proceeed further
Thx
BalaFirst I need the answer to my question:
Hi. Can the same pool be created as a startup pool?
(Ie: does it succeed?)
Joelet me know...
Joe
>
>>
Bala wrote:
Hi all,
I am trying to create the connection pool dynamically but it fails saying" Error
to load the Driver"
Snippet Code --
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
"weblogic.jndi.WLInitialContextFactory");
// URL for the WebLogic Server
env.put(Context.PROVIDER_URL, "t3://localhost:7001");
env.put(Context.SECURITY_PRINCIPAL, "Fred");
env.put(Context.SECURITY_CREDENTIALS, "secret");
Context ctx = new InitialContext(env);
// Look up weblogic.jdbc.JdbcServices
weblogic.jdbc.common.JdbcServices jdbc =
(weblogic.jdbc.common.JdbcServices)
ctx.lookup("weblogic.jdbc.JdbcServices");
String thePoolName = "eng2";
Properties poolProps = null;
Pool myPool = null;
weblogic.jdbc.common.Pool pool = null
poolProps = new Properties();
// Set properties for the ConnectionPool.
poolProps.put("poolName", thePoolName);
poolProps.put("url", "jdbc:weblogic:demo");
poolProps.put("driver", "COM.cloudscape.core.JDBCDriver");
poolProps.put("props", "user=scott;password=tiger;server=demo");
poolProps.put("initialCapacity", "1");
poolProps.put("maxCapacity", "10");
poolProps.put("capacityIncrement", "1");
poolProps.put("aclName", "dynapool");
poolProps.put("allowShrinking", "true");
poolProps.put("shrinkPeriodMins", "5");
poolProps.put("refreshPeriod", "10");
poolProps.put("testConnOnReserve", "true");
poolProps.put("testConnOnRelease", "false");
poolProps.put("testTableName", "dual");
poolProps.put("loginDelaySecs", "1");
// create our pool
try {
myJdbc.createPool(poolProps);
} catch (Exception e) {
System.out.println(thePoolName
+ " can't be created ..");
System.exit(666);
Any Help will be appreciated in creating the dynamic connection pool inWLS 6.1 SP2
Regards,
Bala -
Weblogic connection pool fails
Hi
I am trying to connect to sqlserver using the weblogic connection pool from the
console.It throws me the following error inspite of adding the appropriate drivers
in the classpath.It works out really fine when connection to oracle database when
connecting to oracle it gives out :connection pool created, BUT WHEN TRYING TO
ACCESS THE SQLSERVER ..OOOhh.
anybody please immediate help is very much required and would be highly appreciated.
Thanks
Nov 1, 2001 9:18:40 AM EST> <Error> <JDBC> <Cannot startup connection pool "MessageLoggerDB"
weblogic.com
on.ResourceException:
ould not create pool connection. The DBMS driver exception was:
ava.sql.SQLException: I/O exception while talking to the server, java.io.EOFException:
TdsInputStream.rea
Fully - len 149 Unable to connect, please check your server's version and availability.
at weblogic.jdbc.mssqlserver4.TdsStatement.microsoftLogin(TdsStatement.java:2872)
at weblogic.jdbc.mssqlserver4.MicrosoftConnection.beginLogin(MicrosoftConnection.java:42)
at weblogic.jdbc.mssqlserver4.TdsConnection.login(TdsConnection.java:57)
at weblogic.jdbc.mssqlserver4.MicrosoftConnection.login(MicrosoftConnection.java:53)
at weblogic.jdbc.mssqlserver4.BaseConnection.prepareConnection(BaseConnection.java:187)
at weblogic.jdbc.mssqlserver4.Driver.newConnection(Driver.java:34)
at weblogic.jdbc.mssqlserver4.ConnectDriver.connect(ConnectDriver.java:151)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:192This looks like you're using the mssqlserver4v70 driver to connect to
an MS SQLServer 6.5. Is that the case?
Joe
Srini wrote:
>
Hi
I am trying to connect to sqlserver using the weblogic connection pool from the
console.It throws me the following error inspite of adding the appropriate drivers
in the classpath.It works out really fine when connection to oracle database when
connecting to oracle it gives out :connection pool created, BUT WHEN TRYING TO
ACCESS THE SQLSERVER ..OOOhh.
anybody please immediate help is very much required and would be highly appreciated.
Thanks
Nov 1, 2001 9:18:40 AM EST> <Error> <JDBC> <Cannot startup connection pool "MessageLoggerDB"
weblogic.com
on.ResourceException:
ould not create pool connection. The DBMS driver exception was:
ava.sql.SQLException: I/O exception while talking to the server, java.io.EOFException:
TdsInputStream.rea
Fully - len 149 Unable to connect, please check your server's version and availability.
at weblogic.jdbc.mssqlserver4.TdsStatement.microsoftLogin(TdsStatement.java:2872)
at weblogic.jdbc.mssqlserver4.MicrosoftConnection.beginLogin(MicrosoftConnection.java:42)
at weblogic.jdbc.mssqlserver4.TdsConnection.login(TdsConnection.java:57)
at weblogic.jdbc.mssqlserver4.MicrosoftConnection.login(MicrosoftConnection.java:53)
at weblogic.jdbc.mssqlserver4.BaseConnection.prepareConnection(BaseConnection.java:187)
at weblogic.jdbc.mssqlserver4.Driver.newConnection(Driver.java:34)
at weblogic.jdbc.mssqlserver4.ConnectDriver.connect(ConnectDriver.java:151)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:192 -
WebLogic 11g data source connection pooling failed with IO error:socket read timed out.
Hi all,
We encountered IO Error: Socket read timed out( <Received exception while creating connection for pool "DS_1": IO Error: Socket read timed out> ) during the creation of data sources in WebLogic 11g. Manual data source testing seems to indicate intermittent connection and the server seems to take a long time to start up with multiple IO errors. We increased the timeout at the database side but it does not seems to help. The database is 11g (11.2.0.3). The database services and listener are up which does not indicate that the database instance is down.This particular error means your database is down and socket is timedout. Or the query takes so long that the reader timedout -- unlikely.
Also, the general weblogic socket write errors, which you might see sometimes means that the client got disconnected before the server wrote results back. This is harmless -
Connection pool / db failure
WLS6.0 sp2 / Win2k
Oracle 8.1.7 / Solaris 8
problem is if DB fails, the connection pool fails, and will not restart. If I run a java weblogic.Admin EXISTS_POOL command, it says the pool doesnt exist.
If i run a RESET_POOL, using the system user password, it comes back with:
Exception in thread "main" javax.naming.AuthenticationException. Root exception is java.lang.Securi
tyException: Authentication for user guest denied in realm weblogic
<<no stack trace available>>
I have test on reserved set (and dual as the table).
Anyone shed any light on what could be going wrong, because right now, every time the DB fails, we have to restart the **&$"&^ server.... (and that takes around 20mins for all the apps to init)
tks
willHi Will,
When you bring up the server, if the database is down, your connection pools
will not come up if you have an initial capacity greater than 0. This is a
known issue and the workaround for this is to set the initial capacity to
zero so the pool comes up even when the database is down, then make sure you
set the capacity increment to the value that you like your initial capacity
to be and have the TestConnectionOnReserve to true.
hth
sree
"Will" <[email protected]> wrote in message
news:3d13111f$[email protected]..
WLS6.0 sp2 / Win2k
Oracle 8.1.7 / Solaris 8
problem is if DB fails, the connection pool fails, and will not restart.If I run a java weblogic.Admin EXISTS_POOL command, it says the pool doesnt
exist.
If i run a RESET_POOL, using the system user password, it comes back with:
Exception in thread "main" javax.naming.AuthenticationException. Rootexception is java.lang.Securi
tyException: Authentication for user guest denied in realm weblogic
<<no stack trace available>>
I have test on reserved set (and dual as the table).
Anyone shed any light on what could be going wrong, because right now,every time the DB fails, we have to restart the **&$"&^ server.... (and that
takes around 20mins for all the apps to init)
>
tks
will -
Recognizing alternate connection pool
hi..
Currently, If a connection pool fails due to a TNS failure, application instance also fails, it has lost connectivity.
But I need, my application to recognize an alternate connection pool, such that if transactions time out on one connection, application would recognize that the primary pool is not responding and retry the transactions on a secondary data connection pool via the alternate DB instance.
If I get the solution for this, it will be appreciable
Thanks in advance
SureshHi. Look at our documentation on multipools.
Joe
Suresh Kumar wrote:
hi..
Currently, If a connection pool fails due to a TNS failure, application instance also fails, it has lost connectivity.
But I need, my application to recognize an alternate connection pool, such that if transactions time out on one connection, application would recognize that the primary pool is not responding and retry the transactions on a secondary data connection pool via the alternate DB instance.
If I get the solution for this, it will be appreciable
Thanks in advance
Suresh -
Obiee 11g connection pool error
Hai Experts,
Gudmorning.I'm trying to migrate my 10g rpd to 11g.i have given the connection pool details.but it is showing the connection pool failed.
can anyone help me regarding this.??
Thanks in advance,
Chaitanya.Hi,
Check this..http://siebel-essentials.blogspot.com/2010/09/11-obiee-11g-tips-4-connecting-to.html
http://download.oracle.com/docs/cd/E14571_01/bi.1111/e10540/conn_pool.htm#insertedID0
Even go through the link Saichand gave.
Regards,
Srikanth
Edited by: Srikanth Mandadi on Nov 19, 2010 11:12 PM -
Dynamic Connection Pool Creation Failing in a cluster
Hi,
I am trying to create a connection pool in a clustered environment. This connection
pool is created lazily behind a Stateless Session Bean. We first attempt to determine
whether, the connection pool exists using JdbcServices.poolExists(someName), and
create it if it does not exist. A failure occurs on creation because it looks
like the connection pool might have been created by a bean on a different weblogic
VM instance. Is there any way to dynamically create a connection pool and make
it visible to the whole cluster? Thanks in advance for any help. Michael Dolbear
Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence of connection pool
Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection pool ContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException: weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
at weblogic.management.internal.Helper.createMBean(Helper.java:383)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.java:47
2)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:727
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:709
at com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.createConne
ctionPool(ConnectionPoolCreator.java:82)
at com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnectionPoo
lIfNonExistent(DataStoreRepository.java:211)
at com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createConnec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.create
ConnectionPoolIfNeeded(Unknown Source)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.getIma
ge(Unknown Source)
at com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unknown
Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescriptio
n.java:181)
at com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.java:7
9)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.java:
186)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invoke(Ser
viceBean_bjedmi_EOImpl.java:37)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSkel.inv
oke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence of connection
pool Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection pool ContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException: weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
at weblogic.management.internal.Helper.createMBean(Helper.java:383)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException: domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:134)
at com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.java:
2352)
at com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:874)
at weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBeanSer
verImpl.java:181)
at weblogic.management.internal.Helper.createMBean(Helper.java:376)
at weblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(RemoteMBean
ServerImpl.java:278)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
635)
at weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.java:
621)
at weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBeanHome
Impl.java:397)
at weblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.java:47
2)
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:727
at weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.java:709
at com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.createConne
ctionPool(ConnectionPoolCreator.java:82)
at com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnectionPoo
lIfNonExistent(DataStoreRepository.java:211)
at com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createConnec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.create
ConnectionPoolIfNeeded(Unknown Source)
at com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.getIma
ge(Unknown Source)
at com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unknown
Source)
at java.lang.reflect.Method.invoke(Native Method)
at com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescriptio
n.java:181)
at com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.java:7
9)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.java:
186)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invoke(Ser
viceBean_bjedmi_EOImpl.java:37)
at com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSkel.inv
oke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)The only way to do it is using MBeans. You could search this newsgroup
for "JDBCConnectionPoolMBean" to get an idea of how it could be done.
Slava
P.S. http://search.bea.com/weblogic/gonews
"Mark Mortensen" <[email protected]> wrote in message
news:[email protected]...
>
Slava,
I am working with Mike on this issue and wanted to add some moreclarifications.
We have a two server cluster where one of the EJB's on one of the Managedservers
creates the connection pool. The problem comes in when a request comes tothe
second server in the cluster. The connection pool is created by the firstserver
but it is only assigned to the first server in the targets section on theconsole.
It isn't assigned to the cluster. Is there a way to programmaticallyassign the
pool to the cluster instead of just the server that created the pool?
-Mark
"Michael Dolear" <[email protected]> wrote:
Hi Slava,
Here is what I am doing. The code is spread across a couple of classes.
I am using
what was described in BEA's doc on dynamic connection pool creation.
I didn't
see anything about MBean apis required:
* Dynamically create a connection pool using
aConnectionPoolProperties.
Please
see ConnectionPoolCreator
* for the required properties that must be sent in.
* @param aConnectionPoolProperties
public synchronized void createConnectionPoolIfNonExistent(Properties
aConnectionPoolProperties)
throwsPersistenceFrameworkInitializationException
ConnectionPoolCreator tempPoolCreator;
Pool tempPool;
tempPoolCreator = new ConnectionPoolCreator();
tempPool =tempPoolCreator.getConnectionPool(aConnectionPoolProperties);
if (tempPool == null)
tempPoolCreator.createConnectionPool(aConnectionPoolProperties);
>>
* Create Connection pool given the properties that I have beenconfigured
with
* @return Pool
public Pool createConnectionPool(Properties aConnectionProperties)
throwsPersistenceFrameworkInitializationException
JdbcServices tempServices;
try
tempServices = this.lookupJdbcServices();
tempServices.createPool(aConnectionProperties);
returntempServices.getPool(aConnectionProperties.getProperty(CONNECTION_POOL_NAME)
catch (Exception e)
PersistenceFrameworkUtils.logException(e);
throw newPersistenceFrameworkInitializationException(e.getMessage());
* Answer a connectionPool or null.
* @return Pool
public Pool getConnectionPool(Properties aConnectionProperties)
throwsPersistenceFrameworkInitializationException
JdbcServices tempServices;
try
tempServices = this.lookupJdbcServices();
if (tempServices.poolExists(
aConnectionProperties.getProperty(CONNECTION_POOL_NAME)))
return tempServices.getPool(
aConnectionProperties.getProperty(CONNECTION_POOL_NAME));
else
return null;
catch (Exception e)
PersistenceFrameworkUtils.logException(e);
throw
newPersistenceFrameworkInitializationException(e.getMessage());
"Slava Imeshev" <[email protected]> wrote:
Hi Michael,
Could you show us the code? Without looking at the code
I can only say that JdbcServices.poolExists(someName)
returns true only in case the pool is up and running.
If the connection pool MBean was created but not assigned
a target, subsequent tries to create it would fail.
Regards,
Slava Imeshev
"Michael Dolbear" <[email protected]> wrote in message
news:[email protected]...
Hi,
I am trying to create a connection pool in a clustered environment.This
connection
pool is created lazily behind a Stateless Session Bean. We first
attempt
to determine
whether, the connection pool exists usingJdbcServices.poolExists(someName), and
create it if it does not exist. A failure occurs on creation becauseit
looks
like the connection pool might have been created by a bean on a
different
weblogic
VM instance. Is there any way to dynamically create a connection pooland
make
it visible to the whole cluster? Thanks in advance for any help.
Michael
Dolbear
Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence ofconnection pool
Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection poolContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException:weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
atweblogic.management.internal.Helper.createMBean(Helper.java:383)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at
weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.ja
va
:47
2)
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
727
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
709
at
com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.create
Co
nne
ctionPool(ConnectionPoolCreator.java:82)
at
com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnecti
on
Poo
lIfNonExistent(DataStoreRepository.java:211)
at
com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createC
on
nec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.c
re
ate
ConnectionPoolIfNeeded(Unknown Source)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.g
et
Ima
ge(Unknown Source)
at
com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unk
no
wn
Source)
at java.lang.reflect.Method.invoke(Native Method)
at
com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescr
ip
tio
n.java:181)
at
com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.j
av
a:7
9)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.
ja
va:
186)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invok
e(
Ser
viceBean_bjedmi_EOImpl.java:37)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSke
l.
inv
oke(Unknown Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.ja
va
:93
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Checking existence ofconnection
pool Content
ConnectionPool requested by user guest>
<Mar 28, 2002 5:35:08 PM MST> <Info> <JDBC> <Creating connection poolContentConnectionPoo
l requested by user guest>
weblogic.common.ResourceException:weblogic.management.MBeanCreationException:
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
--------------- nested within: ------------------
weblogic.management.MBeanCreationException: - with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool]
atweblogic.management.internal.Helper.createMBean(Helper.java:383)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
- with nested exception:
[javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=J
DBCConnectionPool
Start server side stack trace:
javax.management.InstanceAlreadyExistsException:domain:Name=ContentConnectionPool,Type=JD
BCConnectionPool
at
com.sun.management.jmx.RepositorySupport.addMBean(RepositorySupport.java:1
34
at
com.sun.management.jmx.MBeanServerImpl.internal_addObject(MBeanServerImpl.
ja
va:
2352)
at
com.sun.management.jmx.MBeanServerImpl.registerMBean(MBeanServerImpl.java:
87
4)
at
weblogic.management.internal.RemoteMBeanServerImpl.registerMBean(RemoteMBe
an
Ser
verImpl.java:181)
atweblogic.management.internal.Helper.createMBean(Helper.java:376)
atweblogic.management.internal.Helper.createAdminMBean(Helper.java:291)
at
weblogic.management.internal.RemoteMBeanServerImpl.createAdminMBean(Remote
MB
ean
ServerImpl.java:278)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
635)
at
weblogic.management.internal.MBeanHomeImpl.createAdminMBean(MBeanHomeImpl.
ja
va:
621)
at
weblogic.management.internal.AdminMBeanHomeImpl.createAdminMBean(AdminMBea
nH
ome
Impl.java:397)
atweblogic.management.internal.AdminMBeanHomeImpl_WLSkel.invoke(Unknown
Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
at
weblogic.jdbc.common.internal.ConnectionPool.dynaStartup(ConnectionPool.ja
va
:47
2)
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
727
at
weblogic.jdbc.common.internal.ConnectionPool.createPool(ConnectionPool.jav
a:
709
at
com.thc.ids.inf.framework.opf.rdbms.datastore.ConnectionPoolCreator.create
Co
nne
ctionPool(ConnectionPoolCreator.java:82)
at
com.thc.ids.inf.framework.opf.datastore.DataStoreRepository.createConnecti
on
Poo
lIfNonExistent(DataStoreRepository.java:211)
at
com.thc.ids.inf.util.persistence.content.ConnectionPoolInitializer.createC
on
nec
tionPoolIfNeeded(ConnectionPoolInitializer.java:48)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.c
re
ate
ConnectionPoolIfNeeded(Unknown Source)
at
com.thc.ids.inf.services.business.crs.spi.oracle.OracleRetrievalProvider.g
et
Ima
ge(Unknown Source)
at
com.thc.ids.inf.services.business.crs.ContentRetrievalService.getImage(Unk
no
wn
Source)
at java.lang.reflect.Method.invoke(Native Method)
at
com.thc.ids.inf.util.reflection.MethodDescription.invokeMethod(MethodDescr
ip
tio
n.java:181)
at
com.thc.ids.inf.util.reflection.MethodInvocation.invoke(MethodInvocation.j
av
a:7
9)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean.invoke(ServiceBean.
ja
va:
186)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl.invok
e(
Ser
viceBean_bjedmi_EOImpl.java:37)
at
com.thc.ids.inf.framework.service.J2EE.ejb.ServiceBean_bjedmi_EOImpl_WLSke
l.
inv
oke(Unknown Source)
atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.ja
va
:93
at
weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267
at
weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java
:2
2)
at
weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120) -
Failed to obtain/create connection from connection pool after redeploy
I have a web application (.war) that uses a jdbc connection pool. The application works fine, however after I redeploy it using the administration console I get "Failed to obtain/create connection from connection pool [ Datavision_Pool ]. Reason : null" followed by "Error allocating connection : [Error in allocating a connection. Cause: null]" from javax.enterprise.resource.resourceadapter and I am forced to restart the instance. I am running Sun Java System Application Server 9.1 (build b58g-fcs)
using a connection pool to a Microsoft SQL 2000 database using inet software's JDBC drivers. I need to be able to redeploy applications without having to restart the instance. Any help is appreciated.I have turned on some additional diagnostics and found out some answers and a work-around, but I think that there may be a bug in the way JDBC connection pool classes are loaded. The actual error was a null pointer in the JDBC driver class in the perpareStatement method. The only line in this method is "return factory.createPreparedStatement( this , sql );" and the only possible NPE would be if the factory was null, which should be impossible because it is a static variable and it is initialized when the class is loaded. The problem occurs because we deploy the JDBC driver .jar file within our .war file, for use when a client doesn't have or want to use connection pooling. Apparently, the connection pool must have picked up some of these classes and when the .war was redeployed, the reference to the factory was lost for existing connections (not sure how). If I remove the JDBC .jar file from the .war, it works, but that wasn't an ideal solution, the other way to get it to work was to change the sun-web.xml file to have <class-loader delegate="true">. We previously had it set to false in version 8.1 because of interference with a different version of the apache Tiles classes, which has now been addressed in version 9.1.
I still think there is an issue, because the connection pool should never use the application specific classloaders. Am I wrong to believe this? -
EP 6.0 SP2 PL28 - connection pool for principal type UACC fails
Hello,
does anybody have the same problem? - We always lose the LDAP-Connection after restart of the j2ee-Services on our Enterprise Portal. We get then this error-message:
->
<b>connection pool for principal type UACC fails</b>
Loading application: com.sap.portal.usermanagement
Loading services:
Loading service: com.sap.portal.license.runtime|license
Jul 2, 2005 4:27:09 AM # System_Thread_32 Fatal [class=com.sap.security.core.persistence.datasource.imp.LDAPConnectionManager][method=initConnectionPool()][cl=13324]connection pool for principal type UACC fails
Thanks in advance.
Regards,
RalfDoes anybody can help me? - It´s important.
Thanks in advance.
Regards,
Ralf -
BEA-001156 - connection pool reset failed on WLS 8.1.6
Hi,
I run WLS 8.1.6 on Linux and JRockit 1.4.2_12. I got the following error when I tried to reset a connection pool manually from the console. This does not happen all the time, so it is hard to reproduce. There is no change to database login credential. Any suggestions are appreciated. Thanks in advance.
BEA-141132
Dynamic invocation while executing action reset on etg:Locat
ion=nyclrwp_14654_2,Name=testPool,ServerRuntime=mycluster,
Type=JDBCConnectionPoolRuntime MBean instance
failed. The method reset with signature [] was invoked with
parameters as [].
weblogic.common.ResourceException: Refresh operation was partially successful, (1)
out of (1) resources could not be refreshed.
at weblogic.common.resourcepool.ResourcePoolImpl.refresh(ResourcePoolImpl.java:669)
at weblogic.jdbc.common.internal.ConnectionPool.reset(ConnectionPool.java:789)
at weblogic.jdbc.common.internal.ConnectionPoolRuntimeMBeanImpl.reset(ConnectionPoolRuntimeMBeanImpl.java:420)
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:755)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:734)
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.private_invoke(RemoteMBeanServerImpl.java:990)
at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:948)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:491)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:434)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:429)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
BEA-001156
Stack trace associated with message 001129 follows:
java.sql.SQLException: JZ00L: Login failed. Examine the SQLWarnings chained to
this exception for the reason(s).
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseError(ErrorMessage.java:506)
at com.sybase.jdbc2.tds.Tds.processLoginAckToken(Tds.java:3224)
at com.sybase.jdbc2.tds.Tds.doLogin(Tds.java:483)
at com.sybase.jdbc2.tds.Tds.login(Tds.java:405)
at com.sybase.jdbc2.jdbc.SybConnection.tryLogin(SybConnection.java:218)
at com.sybase.jdbc2.jdbc.SybConnection.regularConnect(SybConnection.java:195)
at com.sybase.jdbc2.jdbc.SybConnection.<init>(SybConnection.java:174)
at com.sybase.jdbc2.jdbc.SybConnection.<init>(SybConnection.java:126)
at com.sybase.jdbc2.jdbc.SybDriver.connect(SybDriver.java:179)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:251)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.refreshResource(ConnectionEnvFactory.java:330)
at weblogic.common.resourcepool.ResourcePoolImpl.refreshResource(ResourcePoolImpl.java:1694)
at weblogic.common.resourcepool.ResourcePoolImpl.refreshAvlResources(ResourcePoolImpl.java:1982)
at weblogic.common.resourcepool.ResourcePoolImpl.refresh(ResourcePoolImpl.java:664)
at weblogic.jdbc.common.internal.ConnectionPool.reset(ConnectionPool.java:789)
at weblogic.jdbc.common.internal.ConnectionPoolRuntimeMBeanImpl.reset(ConnectionPoolRuntimeMBeanImpl.java:420)
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:755)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:734)
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.private_invoke(RemoteMBeanServerImpl.java:990)
BEA-001129
Received exception while creating connection for pool "cpl1C
onnectionPool": JZ00L: Login failed. Examine the SQLWarnings
chained to this exception for the reason(s).
BEA-001128 Connection for pool "testPool" closed.
BEA-001099 Connection pool "testPool" reset by "system"lei wang wrote:
Hi,
I run WLS 8.1.6 on Linux and JRockit 1.4.2_12. I got the following error when I tried to reset a connection pool manually from the console. This does not happen all the time, so it is hard to reproduce. There is no change to database login credential. Any suggestions are appreciated. Thanks in advance.
Please tell me why you are resetting the pool. The reason may have something
to do with the failure messages below. The root cause of these messages is
that the pool is trying to make a new JDBC connection to Sybase, in exactly
the same way it does all the time, but for whatever reason, the DBMS is
refusing the connection request. The pool should be OK anyway, ongoing,
as long as/when the DBMS is back up and accepting connection requests.
Joe
>
BEA-141132
Dynamic invocation while executing action reset on etg:Locat
ion=nyclrwp_14654_2,Name=testPool,ServerRuntime=mycluster,
Type=JDBCConnectionPoolRuntime MBean instance
failed. The method reset with signature [] was invoked with
parameters as [].
weblogic.common.ResourceException: Refresh operation was partially successful, (1)
out of (1) resources could not be refreshed.
at weblogic.common.resourcepool.ResourcePoolImpl.refresh(ResourcePoolImpl.java:669)
at weblogic.jdbc.common.internal.ConnectionPool.reset(ConnectionPool.java:789)
at weblogic.jdbc.common.internal.ConnectionPoolRuntimeMBeanImpl.reset(ConnectionPoolRuntimeMBeanImpl.java:420)
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:755)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:734)
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.private_invoke(RemoteMBeanServerImpl.java:990)
at weblogic.management.internal.RemoteMBeanServerImpl.invoke(RemoteMBeanServerImpl.java:948)
at weblogic.management.internal.RemoteMBeanServerImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:491)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:434)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:147)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:429)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:35)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
BEA-001156
Stack trace associated with message 001129 follows:
java.sql.SQLException: JZ00L: Login failed. Examine the SQLWarnings chained to
this exception for the reason(s).
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseError(ErrorMessage.java:506)
at com.sybase.jdbc2.tds.Tds.processLoginAckToken(Tds.java:3224)
at com.sybase.jdbc2.tds.Tds.doLogin(Tds.java:483)
at com.sybase.jdbc2.tds.Tds.login(Tds.java:405)
at com.sybase.jdbc2.jdbc.SybConnection.tryLogin(SybConnection.java:218)
at com.sybase.jdbc2.jdbc.SybConnection.regularConnect(SybConnection.java:195)
at com.sybase.jdbc2.jdbc.SybConnection.<init>(SybConnection.java:174)
at com.sybase.jdbc2.jdbc.SybConnection.<init>(SybConnection.java:126)
at com.sybase.jdbc2.jdbc.SybDriver.connect(SybDriver.java:179)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:251)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.refreshResource(ConnectionEnvFactory.java:330)
at weblogic.common.resourcepool.ResourcePoolImpl.refreshResource(ResourcePoolImpl.java:1694)
at weblogic.common.resourcepool.ResourcePoolImpl.refreshAvlResources(ResourcePoolImpl.java:1982)
at weblogic.common.resourcepool.ResourcePoolImpl.refresh(ResourcePoolImpl.java:664)
at weblogic.jdbc.common.internal.ConnectionPool.reset(ConnectionPool.java:789)
at weblogic.jdbc.common.internal.ConnectionPoolRuntimeMBeanImpl.reset(ConnectionPoolRuntimeMBeanImpl.java:420)
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:755)
at weblogic.management.internal.DynamicMBeanImpl.invoke(DynamicMBeanImpl.java:734)
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.private_invoke(RemoteMBeanServerImpl.java:990)
BEA-001129
Received exception while creating connection for pool "cpl1C
onnectionPool": JZ00L: Login failed. Examine the SQLWarnings
chained to this exception for the reason(s).
BEA-001128 Connection for pool "testPool" closed.
BEA-001099 Connection pool "testPool" reset by "system" -
Connection attempt to at least one service in a pool failed (Event ID 14584)
I see a number of these errors on my Lync 2010 Server. I don't have federations or any other connections to these domains listed in the details (see bolded text). Why is my server attempting to contact them?
Log Name: Lync Server
Source: LS Protocol Stack
Date: 3/16/2014 2:27:12 AM
Event ID: 14584
Task Category: (1001)
Level: Warning
Keywords: Classic
User: N/A
Computer: EdgeServer.mydomain.com
Description:
Connection attempt to at least one service in a pool failed.
Connection attempts to the following services have failed. Another attempt will be made for each service every 10 minutes.
Service Address: 128.229.5.30:5061; Pool FQDN: lcs.bah.com; Down Time: 65:25
Service Address: 128.229.5.39:5061; Pool FQDN: lcs.bah.com; Down Time: 65:55
Service Address: 151.151.42.145:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 66:14
Service Address: 151.151.42.148:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 151.151.42.151:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 151.151.42.154:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 170.12.17.4:5061; Pool FQDN: lync-edge.raymondjames.com; Down Time: 0:36
Cause: The specified service(s) are unavailable.
Resolution:
Check the servers in the pool(s) on which the service(s) are installed.
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="LS Protocol Stack" />
<EventID Qualifiers="50153">14584</EventID>
<Level>3</Level>
<Task>1001</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2014-03-16T07:27:12.000000000Z" />
<EventRecordID>32162</EventRecordID>
<Channel>Lync Server</Channel>
<Computer>EdgeServer.mydomain.com</Computer>
<Security />
</System>
<EventData>
<Data>10</Data>
<Data>Service Address: 128.229.5.30:5061; Pool FQDN: lcs.bah.com; Down Time: 65:25
Service Address: 128.229.5.39:5061; Pool FQDN: lcs.bah.com; Down Time: 65:55
Service Address: 151.151.42.145:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 66:14
Service Address: 151.151.42.148:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 151.151.42.151:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 151.151.42.154:5061; Pool FQDN: sip.wellsfargo.com; Down Time: 71:17
Service Address: 170.12.17.4:5061; Pool FQDN: lync-edge.raymondjames.com; Down Time: 0:36
</Data>
</EventData>
</Event>
Blog /
Facebook / TwitterTo remove federation, verify from Topology builder that you disable lync federation.
To get round above issue. On the Edge open a remote certificate snap-in on a 2008 machine. Open another certificate snap-in of the local Edge. Copy the missing Trusted Root Certificate Authorities from the remote
machine to the Edge. This will hopefully include all the certificates relevant to your federated organizations, if not you'll need to acquire the root cert direct from the vendor.
Please remember, if you see a post that helped you please click "Vote As Helpful" and if it answered your question, please click "Mark As Answer" -
RFC_FAILURE affects Connection Pool
Using VB.NET (2003) with .Net Connector 2.0.
An intermittent problem causes a RFC Call to fail, and an exception is raised in the .NET code. The Exception message is:
See RFC trace file or SAP system log for more details
The Trace file shows:
ERROR file opened at 20051115 131423 GMT Standard
T, SAP-REL 640,0,78 RFC-VER 3 759904 MT-SL
<b>T:2844 Could not send rfc container 0x130
T:2844 <* RfcCall [1] : returns 1:RFC_FAILURE
T:2844 <* RfcCallReceive [1] : returns 1:RFC_FAILURE
>TS> Tue Nov 15 13:14:24 2005
T:2844 <* RfcCleanupContext [1] : returns
18:RFC_INVALID_HANDLE
T:2844 <* RfcCleanupContext [1] : returns
18:RFC_INVALID_HANDLE</b>
This error adversely affects the Connection Pool as calls to other RFCs are now prone to similar intermittent errors
Is there any way to prevent the problem causing problems with Connection Pool ?
Is there any way of removing a faulty connection from the pool ? (NB Close and Dispose on the connection does not help)The application is a Windows service - so I don't want to lose any connections. I assume that closing the connection (and not returning it) will affect the number of available connections in the pool(?).
I'm using async. RFC call, and the problem is detected in the callback function when the EndRFCCall is performed.
Original code:
Public Sub Execute_RFC(ByVal parameters as string())
' Assign SAP Connection to RFC Proxy
sapRFCProxy.Connection = SAPConnectionPool.GetConnectionFromPool(<i>ConnectString</i>)
Call the SAP RFC - Asynchronously
arAsyncResult = m_sapRFCProxy.BeginRFCCall( params..., AddressOf RFC_CallBack, objAsyncState)
End Sub
Private Sub RFC_CallBack(ByVal ar As IAsyncResult)
Try
' Retrieve the SAP RFC Response...
Call sapRFCProxy.EndRFCCall(ar, <i>param1, param2, etc...</i>)
Catch ex As Exception
' Log the Error...
End Try
' Return the Connection
Call SAPConnections.ReturnConnection(sapRFCProxy.Connection)
End Sub
I have changed the code as suggest so that the connection is closed, disposed but <u>not</u> returned. This cleared the RFC_INVALID_HANDLE errors, but the main problem of a corrupted connection persists.
Diagnostics produced by the amended code:
<u>Trace File (Info):</u>
2005-11-16 11:55:46Z Warning: RfcCleanupContext failed. Closing connection
<u>dev_RFC.trc</u>
ERROR file opened at 20051116 115546 GMT Standard T, SAP-REL 640,0,78 RFC-VER 3 759904 MT-SL
T:3068 ======> CPIC-CALL: 'CMSEND'
ERROR program state check for conversation 99610798
TIME Wed Nov 16 11:55:46 2005
RELEASE 640
COMPONENT CPIC (TCP/IP)
VERSION 3
RC 471
MODULE r3cpic.c
LINE 2576
DETAIL called function STSEND in state state=BUFFER_DATA2
COUNTER 1
T:3068 <* RfcCall [20] : returns 1:RFC_FAILURE
T:3068 <* RfcCallReceive [20] : returns 1:RFC_FAILURE
T:3068 <* RfcCleanupContext [20] : returns 1:RFC_FAILURE
Even with the change to the code, a call to a reliable RFC will now fail <u>intermittently</u> with:
T:2876 Could not send rfc container 0x130
T:2876 <* RfcCall [24] : returns 1:RFC_FAILURE
T:2876 <* RfcCallReceive [24] : returns 1:RFC_FAILURE
Thanks -
RCA Connection Pool idle Time-Out takes no effect !
My question description goes here.
According to JCA specification, I developed my 'ManagedConnectionImpl' class from the interface 'ManagedConnection'. I realize the 'destroy()' function to send out logout request to the EIS.
Then I deployed the connector in Sun Java System Application Server, I noticed there are two parameters in Connection Pool part, they are:
1. Idle Timeout. It said it's the maximum time that a connection can remain idle in the pool. I assume the connection will be removed after the specific time expired and before it's removed it will call the recallable function, 'destroy()', in my concrete class, 'ManagedConnectionImpl'.
2. Pool Resize Quantity. it said it's number of connections to be removed when pool idle time expired.
I am weird about it. I think EIS had itself session control strategy, if the specific session time-out expired, it will invalidate this session. So I think we will set 'Idle Timeout' in application server to be shorter than the EIS session time-out. If the 'Idle Timeout' in application server expired, it should remove all connections inside otherwise maybe the connection with invalid session will exist! (the background knowledge is our system will return back soap fault when it meets invalid session, so the invalid connections will not be removed by switching on your configuration item, 'On Any Failure')
So I set "inital and minimum pool size" to 8, "maximum pool size" to 32 and "Pool Resize Quantity" to 32. (I expect AS to remove all when pool idle time expired)
After deploying, I send out requests at the first round and wait for the time expired but I can't see the desired logout requests from pool automatically even one. Firstly I guess if my recallable function definition is wrong but when I shut down the Application Server, the desired logout requests are sent out from pool automatically. So I think my recallable function definition is workable.
What's your comments on it?
P.S.
I am using Sun Java System Application Server 8.1.
Thanks in advance!
BRs
/LeoI have had following test to ensure I sent out notification to listener.
[#|2005-08-23T16:14:25.061+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
It's in managed env!|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
enter matchManagedConnections() !|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
try to find a matching and existing one, reuse it!|#]
[#|2005-08-23T16:14:25.062+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
Found a matching and existing one, reuse it!|#]
[#|2005-08-23T16:14:25.495+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
tearDown() is called, the application-level connection is released!|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
enter calling close() of managed connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
Start calling close() of managed connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
start to notify the listener the completeness of connection.|#]
[#|2005-08-23T16:14:25.496+0800|INFO|sun-appserver-pe8.1_01|javax.enterprise.system.stream.out|_ThreadID=12;|
notify the listener the completeness of connection successfully.|#]
Whether it's related with the initial and minimum number parameter? Although I found it will not be created during AS start-up and will be created at the first request.
Whether it shall be kept to meet the minimum requirement? I have failed to set it to 0. -
JDBC connection pool failures when used by JMS stores
We are using WebLogic 6.1 sp2. We defined a separate connection pool for use by
a JMS Store.
<JDBCConnectionPool Name="sybaseJMSPool"
Targets="cluster00"
InitialCapacity="2"
MaxCapacity="10"
DriverName="com.sybase.jdbc2.jdbc.SybDriver"
Properties="[email protected]@;[email protected]@;charset=utf8"
URL="jdbc:sybase:Tds:@jms.db.host@/@jms.db.name@"/>
(note that the @xxx@ string are replaced by actual values).
We are using Sybase Jconnect 5.5 to a Sybase ASE 12.5 database.
We deployed this configuration on a number of environments (testing, staging,
..). The actual hardware and network configuration is different for the different
system, but the WebLogic domain stays the same regarding this issue.
On the test system we frequently get the following exceptions:
<Aug 13, 2002 1:56:04 PM CEST> <Alert> <JMS> <www00-test> <node00>
<ExecuteThread: '6' for queue: 'JMS.TimerClientPool'> <> <> <040048>
<JMSServer "JMSServer00", store failure while writing message for topic
OrderChangeTopic, java.io.IOException: JMS JDBC store, connection pool =
<sybaseJMSPool>, prefix = <JMS00>: write failed
java.sql.SQLException: JZ006: Caught IOException:
com.sybase.jdbc2.jdbc.SybConnectionDeadException: JZ0C0: Connection is already
closed.
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseErrorCheckDead
(ErrorMessage.java:715)
at com.sybase.jdbc2.tds.Tds.handleIOE(Tds.java:3124)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1412)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1341)
at com.sybase.jdbc2.jdbc.SybStatement.doCancel(SybStatement.java:564)
at com.sybase.jdbc2.jdbc.SybStatement.updateLoop(SybStatement.java:1672)
at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate
(SybStatement.java:1625)
at com.sybase.jdbc2.jdbc.SybPreparedStatement.executeUpdate
(SybPreparedStatement.java:91)
at com.p6spy.engine.logging.P6LogPreparedStatement.executeUpdate
(P6LogPreparedStatement.java:179)
at weblogic.jdbc.pool.Statement.executeUpdate(Statement.java:293)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1246)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
.>
java.io.IOException: JMS JDBC store, connection pool = <sybaseJMSPool>, prefix
= <JMS00>: write failed
java.sql.SQLException: JZ006: Caught IOException:
com.sybase.jdbc2.jdbc.SybConnectionDeadException: JZ0C0: Connection is already
closed.
at com.sybase.jdbc2.jdbc.ErrorMessage.raiseErrorCheckDead
(ErrorMessage.java:715)
at com.sybase.jdbc2.tds.Tds.handleIOE(Tds.java:3124)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1412)
at com.sybase.jdbc2.tds.Tds.cancel(Tds.java:1341)
at com.sybase.jdbc2.jdbc.SybStatement.doCancel(SybStatement.java:564)
at com.sybase.jdbc2.jdbc.SybStatement.updateLoop(SybStatement.java:1672)
at com.sybase.jdbc2.jdbc.SybStatement.executeUpdate
(SybStatement.java:1625)
at com.sybase.jdbc2.jdbc.SybPreparedStatement.executeUpdate
(SybPreparedStatement.java:91)
at com.p6spy.engine.logging.P6LogPreparedStatement.executeUpdate
(P6LogPreparedStatement.java:179)
at weblogic.jdbc.pool.Statement.executeUpdate(Statement.java:293)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1246)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
at weblogic.jms.store.JDBCIOStream.throwIOException
(JDBCIOStream.java:1213)
at weblogic.jms.store.JDBCIOStream.write(JDBCIOStream.java:1256)
at weblogic.jms.store.StoreRequest.doTheIO(StoreRequest.java:250)
at weblogic.jms.store.JMSStore.execute(JMSStore.java:182)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
Before that this message appeared:
<Aug 13, 2002 11:31:16 AM CEST> <Error> <ConnectionManager> <www00-test>
<node00> <ExecuteThread: '26' for queue: 'default'> <> <> <000000>
<Closing: 'weblogic.rjvm.t3.T3JVMConnection@795af6' because of: 'Server
received a message over an uninitialized connection: 'JVMMessage from: 'null'
to: '-4555218188801970213S:192.168.13.1:[7001,7001,7002,7002,7001,7002,-
1]:ADIS:node00' cmd: 'CMD_REQUEST', QOS: '101', responseId: '1',
invokableId: '287', flags: 'JVMIDs Not Sent, TX Context Not Sent', abbrev
offset: '34'''>
This problem did not occur on another system which was used during a 2 day stress
testing session.
It seems that the problem occurs after a period in which no user request where
made. The user requests trigger EJB's that start sending JMS messages.
When the problem occurs, the JMS messaging systems seems to lock up as no messages
are received anymore by the different listeners (MDBs).
Undeploying and redeploying the JBDC connection pool solves the problem. This
solution is unacceptable in case of a production system.
A similarly defined connection pool, which is used by the EJBs to make database
connection, does not manifest this problem.
<JDBCConnectionPool Name="sybasePool"
Targets="cluster00"
InitialCapacity="10"
CapacityIncrement="5"
MaxCapacity="50"
PreparedStatementCacheSize="150"
DriverName="com.sybase.jdbc2.jdbc.SybDriver"
Properties="[email protected]@;[email protected]@;JCONNECT_VERSION=6;charset=utf8"
URL="jdbc:sybase:Tds:@db.host@/@db.name@"/>
The JDBC connection pool is used as follows by the JDBC store
<JMSJDBCStore ConnectionPool="sybaseJMSPool" Name="JDBCStore00" PrefixName="JMS00"/>
<JMSServer Name="JMSServer00" Store="JDBCStore00" Targets="node00">
<JMSTopic JNDIName="ADIS.JMSError" JNDINameReplicated="false" Name="ErrorTopic"/>
<JMSTopic JNDIName="ADIS.Status"
Name="StatusTopic" RedeliveryDelayOverride="300000"/>
<JMSTopic JNDIName="ADIS.OrderChange" JNDINameReplicated="false"
Name="OrderChangeTopic" RedeliveryLimit="3"/>
</JMSServer>
Turning on the "Test Reserved Connection" with a appropriate test table does not
help.
Some sources on the internet tell us that JZ0C0 errors in the Jconnect driver
can be related to network problems. Nevertheless the connection pool should be
able to cope with this.
Can you provide any solution for this ? Or give us hints what can cause the problem
Zhenhao Qi wrote:
thanks! Joe.
The SQL statement itself can no longer be simplified, the long excuation time is due to the database size and complicated Select criteria. I can easily reproduce the problem by using this SQL. I tried "BEA's Oracle driver (Type 4): Version 8.1.7,9.0.1,9.2.0". the question can be dissect into 2 pieces:
1) why the jdbc connection (using oracle.jdbc.OracleDriver) won't return anything if the SQL execution time > 5min, that is probably the Oracle's problem
2) why the occupied connection pool won't release even I set "Statementtimeout=600", this is Weblogic's problem.
ZhenhaoHi. Yes, (1) is oracle's problem. (2) may also be. The JDBC spec has very few
allowances for one thread to interrupt a second thread's JDBC call. If we
transmit your timeout request by calling setQueryTimeout() on the oracle
statement, and if you have a weblogic-controlled transaction we call
Statement.cancel() on any ongoing statement, we end up relying on whether
the Oracle driver implements and responds to those calls.
Are you doing weblogic-controlled transactions? Are you/can you
call Statement.setQueryTimeout() on your statements, or are these
generated JDBC queries?
If you can duplicate the problem using the weblogic.jdbc.oracle.OracleDriver
we have some other debug avenues. This would be good even if you really
want to use the thin driver, because we will do the same JDBC calls to
either driver, and the debug would prove (if) we set up a query timeout
and if we call cancel(). If we do, then we can know that it is the Oracle
driver failing in these regards.
Joe
Maybe you are looking for
-
Dg4odbc on windows server 64 bit
windows server 64 bit Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Gateway : Heterogeneous Agent Release 11.2.0.1.0 - 64bit Production Built with Oracle Database Gateway for ODBC Oracle Home :D:\Oracle\Ora10G Gateway Home : C:\pr
-
What is payment alignment report
what is payment alignment report...is ther any standard one in sap
-
If I would buy a iPhone 5s A1457 in europe, will I be able to use it in Australia?
If I would buy a iPhone 5s A1457 in europe, will I be able to use it in Australia?
-
[Flex] RTMP-Server on port: 2038 failed to start up.
Hello. I looked everywhere and i couldn't find any solution for my problem. I installed LiveCycle Data Services ES with J2EE and i have a flex application that use only the messaging part.<br />Everything works great until the lcds crash down. In the
-
I am working on a series of shows shot with HDV (Sony Z1) and destined for broadcast in both HD and PAL networks. I edit in HD and apply colour correction filters etc to the timeline and monitor the levels using the FCP toolbench levels and "excess l