Uploaded image for project: 'Application Server 3  4  5 and 6'
  1. Application Server 3 4 5 and 6
  2. JBAS-5517

Missing configuration for HA local datasource. No url-delimiter.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • JBossAS-4.2.2.GA
    • JCA service
    • None
    • Documentation (Ref Guide, User Guide, etc.), Compatibility/Configuration

    Description

      We are Using JBoss-4.2.2GA Server for testing and Evaluation for Production Deployment. We are looking for the feature fail over for the DB. we have configured the server mysql-ds.xml for the same.

      Configured mysql configuration is as provided.

      <?xml version="1.0" encoding="UTF-8"?>

      <!-- $Id: mysql-ds.xml 41016 2006-02-07 14:23:00Z acoliver $ -->
      <!-- Datasource config for MySQL using 3.0.9 available from:
      http://www.mysql.com/downloads/api-jdbc-stable.html
      -->

      <datasources>
      <ha-local-tx-datasource>
      <jndi-name>MySqlDS</jndi-name>
      <use-java-context>true</use-java-context>
      <connection-url>jdbc:mysql://192.168.0.219:3306/MIS||jdbc:mysql://192.168.0.218:3306/MIS</connection-url>
      <url-delimeter>||</url-delimeter>
      <driver-class>com.mysql.jdbc.Driver</driver-class>
      <user-name>xxxxxxx</user-name>
      <password>xxxxxxx</password>
      <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
      <!-- should only be used on drivers after 3.22.1 with "ping" support -->
      <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name>
      <Unable to render embedded object: File (-- sql to call when connection is created) not found.-->
      <new-connection-sql>select current_date()</new-connection-sql>
      <!-- sql to call on an existing pooled connection when it is obtained from pool - MySQLValidConnectionChecker is preferred for newer drivers -->
      <check-valid-connection-sql>select current_date()</check-valid-connection-
      <!-- The minimum connections in a pool/sub-pool. Pools are lazily constructed on first use -->
      <min-pool-size>5</min-pool-size>
      <!-- The maximum connections in a pool/sub-pool -->
      <max-pool-size>20</max-pool-size>
      <set-tx-query-timeout/>
      <!-- maximum of 5 minutes for queries -->
      <query-timeout>300</query-timeout>
      <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) -->
      <metadata>
      <type-mapping>mySQL</type-mapping>
      </metadata>
      </ha-local-tx-datasource>
      </datasources>

      we are getting a constant error saying (We have also tested the same with Single Piped Delimeter)

      org.jboss.util.NestedSQLException: Missing configuration for HA local datasource. No url-delimiter. ; - nested throwable: (or
      g.jboss.resource.JBossResourceException: Missing configuration for HA local datasource. No url-delimiter. )

      but we have configured the parameter in the xml file.

      on further analsys in debug mode we found the tag itself is not read.

      <server>
      <mbean code='org.jboss.resource.connectionmanager.TxConnectionManager' display-name='ConnectionManager for DataSource MySqlDS' name='jboss.jca:service=LocalTxCM,name=MySqlDS'>
      <attribute name='TrackConnectionByTx'>true</attribute>
      <attribute name='LocalTransactions'>true</attribute>
      <depends optional-attribute-name='ManagedConnectionPool'>
      <mbean code='org.jboss.resource.connectionmanager.JBossManagedConnectionPool' display-name='Connection Pool for DataSource MySqlDS' name='jboss.jca:service=ManagedConnectionPool,name=MySqlDS'>
      <depends optional-attribute-name='ManagedConnectionFactoryName'>
      <mbean code='org.jboss.resource.connectionmanager.RARDeployment' display-name='ManagedConnectionFactory for DataSource MySqlDS' name='jboss.jca:service=ManagedConnectionFactory,name=MySqlDS'>
      <depends optional-attribute-name='OldRarDeployment'>jboss.jca:service=RARDeployment,name='jboss-ha-local-jdbc.rar'</depends>
      <attribute name='RARName'/>
      <attribute name='ConnectionDefinition'>javax.sql.DataSource</attribute>
      <attribute name='ManagedConnectionFactoryProperties'>
      <properties>
      <config-property name='ConnectionURL' type='java.lang.String'>jdbc:mysql://192.168.0.219:3306/MIS||jdbc:mysql://192.168.0.218:3306/MIS</config-property>
      <config-property name='DriverClass' type='java.lang.String'>com.mysql.jdbc.Driver</config-property>
      <config-property name='UserName' type='java.lang.String'>misuser</config-property>
      <config-property name='Password' type='java.lang.String'>misuser</config-property>
      <config-property name='NewConnectionSQL' type='java.lang.String'>select current_date()</config-property>
      <config-property name='CheckValidConnectionSQL' type='java.lang.String'>select current_date()</config-property>
      <config-property name='ValidConnectionCheckerClassName' type='java.lang.String'>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</config-property>
      <config-property name='ExceptionSorterClassName' type='java.lang.String'>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</config-property>
      <config-property name='TransactionQueryTimeout' type='boolean'>true</config-property>
      <config-property name='QueryTimeout' type='int'>300</config-property>
      <config-property name='ValidateOnMatch' type='boolean'>true</config-property>
      </properties>
      </attribute>
      </mbean>
      </depends>
      <attribute name='PoolJndiName'>MySqlDS</attribute>
      <attribute name='MinSize'>5</attribute>
      <attribute name='MaxSize'>20</attribute>
      <attribute name='BlockingTimeoutMillis'>30000</attribute>
      <attribute name='IdleTimeoutMinutes'>15</attribute>
      <attribute name='BackGroundValidation'>False</attribute>
      <attribute name='BackGroundValidationMinutes'>10</attribute>
      <attribute name='PreFill'>False</attribute>
      <attribute name='UseFastFail'>False</attribute>
      <attribute name='Criteria'>ByNothing</attribute>
      </mbean>
      </depends>
      <attribute name='JndiName'>MySqlDS</attribute>
      <depends optional-attribute-name='CachedConnectionManager'>jboss.jca:service=CachedConnectionManager</depends>
      <depends optional-attribute-name='TransactionManagerService'>jboss:service=TransactionManager</depends>
      </mbean>
      <mbean code='org.jboss.resource.adapter.jdbc.remote.WrapperDataSourceService' display-name='Binding for DataSource MySqlDS' name='jboss.jca:service=DataSourceBinding,name=MySqlDS'>
      <attribute name='JndiName'>MySqlDS</attribute>
      <attribute name='UseJavaContext'>true</attribute>
      <depends optional-attribute-name='ConnectionManager'>jboss.jca:service=LocalTxCM,name=MySqlDS</depends>
      </mbean>
      <mbean code='org.jboss.ejb.plugins.cmp.jdbc.metadata.DataSourceMetaData' name='jboss.jdbc:service=metadata,datasource=MySqlDS'>
      <depends optional-attribute-name='MetadataLibrary'>jboss.jdbc:service=metadata</depends>
      <attribute name='TypeMapping'>mySQL</attribute>
      </mbean>
      </server>

      would request you to provide the solution for the same.

      Also we are looking for Switching back to the same DB Once the DB has been restored. We are already running on the tight schedule, looking forward for earlier response.

      Thanks
      Sumanth Kalyan

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              rohinikalyan Sumanth Kalyan (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: