You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Enrico Olivelli (Jira)" <ji...@apache.org> on 2022/05/27 07:56:00 UTC

[jira] [Commented] (AMQ-8613) Improve performance of selectors with a big sequence of OR and AND logical expressions

    [ https://issues.apache.org/jira/browse/AMQ-8613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17542821#comment-17542821 ] 

Enrico Olivelli commented on AMQ-8613:
--------------------------------------

This is my patch https://github.com/apache/activemq/pull/842

> Improve performance of selectors with a big sequence of OR and AND logical expressions
> --------------------------------------------------------------------------------------
>
>                 Key: AMQ-8613
>                 URL: https://issues.apache.org/jira/browse/AMQ-8613
>             Project: ActiveMQ
>          Issue Type: Improvement
>          Components: JMS client
>    Affects Versions: 5.17.1
>            Reporter: Enrico Olivelli
>            Priority: Major
>
> Currently when you create a selector with OR and ANDs the filter creates a huge stack trace.
> This is because for each element in the OR and AND expression node we have to execute a method call.
> This is happening because OR and AND expressions are treated as BinaryExpressions.
> A very simple but effecting improvement is to not represent OR and AND expressions as binary expression but store the list of siblings expression in only one node.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)