How to replace BoneCP with HikariCP

This is specifically aimed at XTRF administrators. If you’re using XTRF v.8.8 or newer, and have customized the database configuration, then you need to update it.

The Vendor Portal database scala and Play framework have been updated from version 8.8 onward. Following that, BoneCP has been deprecated in favor of HikariCP: a more efficient connection pool. In order to make the best of it and avoid potential issues in the future, follow these steps and update your Vendor Portal database connection pool configuration.

Steps

1. Access the Wildfly server where XTRF is stored.

2. Open xtrfDatabaseConfig.xml by going to wildfly\standalone\configuration\xtrfDatabaseConfig.xml.

3. Copy the following HikariCP parameters and paste them into xtrfDatabaseConfig.xml. If you wish to alter the values to your specific requirements, feel free to do so, however remember to keep a backup file.

    <!-- HikariCP pool configuration for Vendors (Play application) -->

    <!-- see here: https://github.com/brettwooldridge/HikariCP -->

    <entry key="vendors.db.hikaricp.minimumIdle">1</entry>

    <entry key="vendors.db.hikaricp.maximumPoolSize">10</entry>

    <entry key="vendors.db.hikaricp.idleTimeout">10 minute</entry> <!-- 0 = infinite lifetime (not recomended!) -->

    <entry key="vendors.db.hikaricp.maxLifetime">60 minute</entry> <!-- 0 = infinite lifetime -->

    <entry key="vendors.db.hikaricp.connectionTimeout">5 second</entry>


    4. Delete the BoneCP parameters from xtrfDatabaseConfig.xml. Here’s an example of the deprecated parameters to delete:

      <!-- BoneCP pool configuration for Vendors (Play application) -->

      <!-- see here: http://jolbox.com/configuration.html -->

      <!-- and here: https://www.playframework.com/documentation/2.1.3/SettingsJDBC -->

      <entry key="vendors.db.partitionCount">2</entry>

      <entry key="vendors.db.minConnectionsPerPartition">1</entry>

      <entry key="vendors.db.maxConnectionsPerPartition">5</entry>

      <entry key="vendors.db.acquireIncrement">1</entry>

      <entry key="vendors.db.idleMaxAge">30 minute</entry>

      <entry key="vendors.db.connectionTimeout">5 second</entry> <!-- 0 = wait forever -->

      5. Save the file.

        System Vendor Portal

        Is this article helpful for you?