[ 
https://issues.apache.org/jira/browse/ARTEMIS-2955?focusedWorklogId=506631&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-506631
 ]

ASF GitHub Bot logged work on ARTEMIS-2955:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 30/Oct/20 10:38
            Start Date: 30/Oct/20 10:38
    Worklog Time Spent: 10m 
      Work Description: uomik commented on pull request #3308:
URL: https://github.com/apache/activemq-artemis/pull/3308#issuecomment-719477325


   Correct. With default pool configuration, we had issues. But by using more 
aggressive settings everything works fine. And all this because our database 
closes connections after one hour, being active or not. This is not a general 
issue, I suppose. The extra pool settings are:
   
   - timeBetweenEvictionRunsMillis: "900000"
   - numTestsPerEvictionRun: "3"
   - testWhileIdle: "true"
   - testOnReturn: "true"
   - testOnBorrow: "true"
   - maxWaitMillis: "60000"
   - minIdle: "0"
   - maxConnLifetimeMillis: "1800000"
   - removeAbandonedOnMaintenance: "true"
   
   And yes, the snapshot we are using was made before ARTEMIS-2941. 
Unfortunately we will have to wait until the official 2.16.0 release until 
update, for "organisational" reasons.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 506631)
    Time Spent: 3h 40m  (was: 3.5h)

> commons-dbcp2 performance issue with Derby Embedded DBMS
> --------------------------------------------------------
>
>                 Key: ARTEMIS-2955
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-2955
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker, Tests
>    Affects Versions: 2.16.0
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>            Priority: Major
>             Fix For: 2.16.0
>
>         Attachments: image-2020-10-20-09-08-45-390.png, 
> image-2020-10-20-09-10-10-644.png, pooling_off.svg, pooling_on.svg, 
> screenshot-1.png, screenshot-2.png
>
>          Time Spent: 3h 40m
>  Remaining Estimate: 0h
>
> The test suite has shown an increase in duration of 30 minutes going from to 
> 2:30 to 3 hours: it seems related to integration paging tests running on 
> Embedded Derby with the changes of 
> [ARTEMIS-2823|https://issues.apache.org/jira/browse/ARTEMIS-2823].
> After some profiling sessions on 
> org/apache/activemq/artemis/tests/integration/paging/PagingTest.testQueueRemoveAll
>  it seems that using commons-dbcp2 with Embedded Derby isn't working as 
> expected:
>  !image-2020-10-20-09-08-45-390.png! 
> while, if we switch to 
> [EmbeddedDataSource|https://db.apache.org/derby/docs/10.13/publishedapi/org/apache/derby/jdbc/EmbeddedDataSource.html]
>  we have
>  !image-2020-10-20-09-10-10-644.png! 
> By not using commons-dbcp2 we get roughtly a ~10X improvement in performance: 
> it seems that commons-dbcp2 is forcing to setup from the ground the prepared 
> statement each time, while EmbeddedDataSource nope. Specifically it seems 
> related to Derby GenericActivationHolder.
> I suggest to disable commons-dbcp2 for Derby and investigate if it could 
> happen in a real broker too.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to