2016-05-17 18 views
2

wso2esb-4.9.0がインストールされ、マスターデータソースがoracle DBに構成されています。ネットワーク接続の問題によりOracle Databaseへの接続が切断されると、接続が再開しても次のエラーが継続的に出力されます。再起動後にのみ、例外は停止します。Oracle DBへの接続が切断されると、PooledConnectionはすでに閉じられています。

TID:[-1234] [2016-05-16 00:53:21,457] ERROR {org.wso2.carbon.registry.core.utils.RegistryUtils} - connectionIdの作成に失敗しました。 {org.wso2.carbon.registry.core.utils.RegistryUtils} java.sql.SQLRecoverableException:oracle.jdbc.driver.PhysicalConnection.getMetaData(PhysicalConnection.java:3131)の を閉じた接続 at sun.reflect.GeneratedMethodAccessor28。 (不明なソース) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.apache.tomcat.jdbc.pool org.wso2.carbon.ndatasource.rdbms.ConnectionRollbackOnReturnInterceptor.invokeでorg.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) で.ProxyConnection.invoke(ProxyConnection.java:126) (ConnectionRollbackOnReturnInterceptor .java:51) at org.apache.tomcat.jd bc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:71) at org.apache.tomcat.jdbc.poolにあります。 JdbcInterceptor.invoke(JdbcInterceptor.java:109) at org.apache.tomcat.jdbc.pool.interceptor.ConnectionState.invoke(ConnectionState.java:153) at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke( (JdbcInterceptor.java:109) at org.apache.tomcat.jdbc.pool.TrapException.invoke(TrapException.java:41) at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:109) at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:80) at com.sun.proxy。$ Proxy14.getMetaData(Unkn自身のソース) at org.wso2.carbon.registry.core.utils.RegistryUtils.getConnectionId(RegistryUtils.java:194) at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDatabaseTransaction $ ManagedRegistryConnection.getConnectionId(JDBCDatabaseTransaction .java:1133) at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCDatabaseTransaction $ ManagedRegistryConnection.rollback(JDBCDatabaseTransaction.java:1288) at org.wso2.carbon.registry.core.jdbc.dataaccess.JDBCTransactionManager .rollbackTransaction(JDBCTransactionManager.java:120) at org.wso2.carbon.registry.core.jdbc.dao.JDBCLogsDAO.rollbackTransaction(JDBCLogsDAO.java:335) at org.wso2.carbon.registry.core.jdbc.dao .JDBCLogsDAO.getLogList(JDBCLogsDAO.java:306) at org.wso2.carbon.registry.core.jdbc.EmbeddedRegistry.getLogs( EmbeddedLegistry.java:2332) (org.wso2.carbon.registry.core.session.UserRegistry.getLogsInternal(UserRegistry。 java:1806) at org.wso2.carbon.registry.core.session.UserRegistry.access $ 3600(UserRegistry.java:60) at org.wso2.carbon.registry.core.session.UserRegistry $ 37.run(UserRegistry。 java:1777) at org.wso2.carbon.registry.core.session.UserRegistry $ 37.run(UserRegistry.java:1774) at java.security.AccessController.doPrivileged(ネイティブメソッド) at org.wso2.carbon。 (ResourceSubmitter.java:119) at org.wso2.carbon.registry.indexing.ResourceSubmitter.run(ResourceSubmitter.java:76) at java.util.concurrent.Executors $ RunnableAdapter.call(Executors。java:471) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304) at java.util.concurrent.ScheduledThreadPoolExecutor $ ScheduledFutureTask.access $ 301(ScheduledThreadPoolExecutor.java:178) at java.util.concurrent .ScheduledThreadPoolExecutor $ ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615) )java.lang.Thread.run(Thread.java:745)

マスターはdatasources.xmlで

<?xml version="1.0" encoding="UTF-8" standalone="no"?><datasources-configuration xmlns:svns="http://org.wso2.securevault/configuration"> 

<providers> 
    <provider>org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader</provider> 
</providers> 

<datasources> 

    <datasource> 
     <name>WSO2_CARBON_DB</name> 
     <description>The datasource used for registry and user manager</description> 
     <jndiConfig> 
      <name>jdbc/WSO2CarbonDB</name> 
     </jndiConfig> 
     <definition type="RDBMS"> 
      <configuration> 
       <url>jdbc:oracle:thin:@xxx.xx.x.xxx:1528/dvdb</url> 
     <username>esbuser</username> 
       <password svns:secretAlias="Datasources.WSO2_CARBON_DB.Configuration.Password">password</password> 
       <driverClassName>oracle.jdbc.driver.OracleDriver</driverClassName> 
       <maxActive>80</maxActive> 
       <maxWait>60000</maxWait> 
       <minIdle>5</minIdle> 
       <testOnBorrow>true</testOnBorrow> 
       <validationQuery>SELECT 1 FROM DUAL</validationQuery> 
       <validationInterval>30000</validationInterval> 
      </configuration> 
     </definition> 
    </datasource> 
<datasource> 
     <name>WSO2_REG_DB</name> 
     <description>The datasource used for registry and user manager</description> 
     <jndiConfig> 
      <name>jdbc/WSO2REG</name> 
     </jndiConfig> 
     <definition type="RDBMS"> 
      <configuration> 
       <url>jdbc:oracle:thin:@xxx.xx.x.xxx:1528/dvdb</url> 
       <username>reguser</username> 
       <password svns:secretAlias="Datasources.WSO2_REG_DB.Configuration.Password">password</password> 
       <driverClassName>oracle.jdbc.driver.OracleDriver</driverClassName> 
       <maxActive>50</maxActive> 
       <maxWait>60000</maxWait> 
       <minIdle>5</minIdle> 
       <validationQuery>SELECT 1 FROM DUAL</validationQuery> 
       <testWhileIdle>true</testWhileIdle> 
     <timeBetweenEvictionRunsMillis>1800000</timeBetweenEvictionRunsMillis> 
     <numTestsPerEvictionRun>5</numTestsPerEvictionRun> 
     <minEvictableIdleTimeMillis>3600000</minEvictableIdleTimeMillis> 
      </configuration> 
     </definition> 
    </datasource> 
    <!-- For an explanation of the properties, see: http://people.apache.org/~fhanik/jdbc-pool/jdbc-pool.html --> 
    <!--datasource> 
     <name>SAMPLE_DATA_SOURCE</name> 
     <jndiConfig> 
      <name></name> 
      <environment> 
       <property name="java.naming.factory.initial"></property> 
       <property name="java.naming.provider.url"></property> 
      </environment> 
     </jndiConfig> 
     <definition type="RDBMS"> 
      <configuration> 

       <defaultAutoCommit></defaultAutoCommit> 
       <defaultReadOnly></defaultReadOnly> 
       <defaultTransactionIsolation>NONE|READ_COMMITTED|READ_UNCOMMITTED|REPEATABLE_READ|SERIALIZABLE</defaultTransactionIsolation> 
       <defaultCatalog></defaultCatalog> 
       <username></username> 
       <password svns:secretAlias="WSO2.DB.Password"></password> 
       <maxActive></maxActive> 
       <maxIdle></maxIdle> 
       <initialSize></initialSize> 
       <maxWait></maxWait> 

       <dataSourceClassName>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</dataSourceClassName> 
       <dataSourceProps> 
        <property name="url">jdbc:mysql://localhost:3306/Test1</property> 
        <property name="user">root</property> 
        <property name="password">123</property> 
       </dataSourceProps> 

      </configuration> 
     </definition> 
    </datasource--> 

</datasources> 
私の場合は

リポジトリ/ confに/ registry.xmlの

<currentDBConfig>wso2registry</currentDBConfig> 
<readOnly>false</readOnly> 
<enableCache>true</enableCache> 
<registryRoot>/</registryRoot> 

<dbConfig name="wso2registry"> 
    <dataSource>jdbc/WSO2CarbonDB</dataSource> 
</dbConfig> 

<dbConfig name="remoteRegistry"> 
    <dataSource>jdbc/WSO2REG</dataSource> 
</dbConfig> 

<remoteInstance url="https://registryhost:9453/registry"> 
    <id>9453</id> 
    <dbConfig>remoteRegistry</dbConfig> 
    <readOnly>false</readOnly> 
    <registryRoot>/</registryRoot> 
</remoteInstance> 

<mount path="/_system/config" overwrite="false"> 
    <instanceId>9453</instanceId> 
    <targetPath>/_system/nodes</targetPath> 
</mount> 

<mount path="/_system/governance" overwrite="false"> 
    <instanceId>9453</instanceId> 
    <targetPath>/_system/governance</targetPath> 
</mount> 

答えて

0

問題は、ファイルリポジトリ/設定/ registry.xmlの時に削除間違ったラインによって引き起こされました。代わりに別のDBCONFIGタグを追加する

<dbConfig name="wso2registry"> 
    <dataSource>jdbc/WSO2CarbonDB</dataSource> 
</dbConfig> 

私はこのコードを削除したいです。

私にとって、このタグは修正されました。このように:

<wso2registry> 

<!-- These are used to define the DB configuration and the basic parameters to be used for the registry --> 

<currentDBConfig>wso2registry</currentDBConfig> 
<readOnly>false</readOnly> 
<enableCache>true</enableCache> 
<registryRoot>/</registryRoot> 

<!-- This defines the default database and its configuration of the registry --> 

<dbConfig name="wso2registry"> 
    <dataSource>jdbc/WSO2CarbonDB</dataSource> 
</dbConfig> 

<dbConfig name="sharedregistry"> 
    <dataSource>jdbc/WSO2RegistryDB</dataSource> 
</dbConfig> 
... 
... 
</wso2registry> 

・ホープ、このポストヘルプあなた...

+0

私のregistry.xmlのは、すでに追加デシベルタグを持っています – user3592349

関連する問題