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

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

                Author: ASF GitHub Bot
            Created on: 22/Oct/20 14:02
            Start Date: 22/Oct/20 14:02
    Worklog Time Spent: 10m 
      Work Description: uomik edited a comment on pull request #3308:
URL: https://github.com/apache/activemq-artemis/pull/3308#issuecomment-714512209


   Setting poolPreparedStatements = true has proven to be a little problematic. 
The random database connection losses have made a comeback. The nodes randomly 
reboot themselves due to connection issues when renewing live locks. There 
always seem to be a batch of large messages going through the failing node when 
this happens. 
   
   It seems that the eviction runs don't work as expected when this setting is 
used, or there is some undocumented limit for open cursors for a db connection, 
and the connection is exhausted with too many open prepared statements. Anyway, 
this is not a general issue, but most likely caused by our MySQL server that 
has aggressive connection reset procedures.
   
   I will experiment with datasource configurations and will get back to this


----------------------------------------------------------------
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: 503738)
    Time Spent: 1h 50m  (was: 1h 40m)

> 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: 1h 50m
>  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