Increasing pool size in Grails taking no effect

77 Views Asked by At

I am load testing a Grails 4.0.10 app using JMeter. The app is connected to a MySQL 8 database. The JDK I am using is JDK 8.

I am testing registration feature simulating 2000 users trying to register at once.

Registration process consist of these steps:

enter image description here

I am first testing with this database and pool size configuration:

production:
    dataSource:
        #            dialect: org.hibernate.dialect.MySQL5InnoDBDialect
        dbCreate: none
        url: jdbc:mysql://localhost:3306/dev2?useUnicode=yes&characterEncoding=UTF-8
        username: root
        password: password


        properties:
            minimumIdle: 5
            maximumPoolSize: 10
            poolName: main-db
            cachePrepStmts: true
            prepStmtCacheSize: 250
            prepStmtCacheSqlLimit: 2048
            useServerPrepStmts: true
            useLocalSessionState: true
            rewriteBatchedStatements: true
            cacheResultSetMetadata: true
            cacheServerConfiguration: true
            elideSetAutoCommits: true
            maintainTimeStats: false

Using this db configuration the number of successful registrations I am getting is 1167.

enter image description here

After that I change the pool size to 10 times:

production:
    dataSource:
        #            dialect: org.hibernate.dialect.MySQL5InnoDBDialect
        dbCreate: none
        url: jdbc:mysql://localhost:3306/dev2?useUnicode=yes&characterEncoding=UTF-8
        username: root
        password: password


        properties:
            minimumIdle: 50
            maximumPoolSize: 100
            poolName: main-db
            cachePrepStmts: true
            prepStmtCacheSize: 250
            prepStmtCacheSqlLimit: 2048
            useServerPrepStmts: true
            useLocalSessionState: true
            rewriteBatchedStatements: true
            cacheResultSetMetadata: true
            cacheServerConfiguration: true
            elideSetAutoCommits: true
            maintainTimeStats: false

With this configuration, the total successful registration I am getting is 1169.

enter image description here

The error shown for the missing registration is this:

enter image description here

enter image description here

Why is the db configuration change not taking effect? Am I doing something wrong?

Update

I am running the Grails app as standalone. I am using the following command on my server:

nohup java -Dgrails.env=prod -Duser.timezone=US/Mountain -jar RoadRace4-0.1.jar &
0

There are 0 best solutions below