activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From adityasharad <>
Subject [GitHub] activemq-artemis pull request #1237: ARTEMIS-1135: Fix alerts - ove...
Date Sat, 29 Apr 2017 20:17:33 GMT
GitHub user adityasharad opened a pull request:

    ARTEMIS-1135: Fix alerts - overflows in integer addition or multiplication

    This PR addresses ARTEMIS-1135, issued based on the alerts found by the "Result of integer
multiplication cast to long" and "Implicit narrowing conversion in compound assignment" rules
    In `MySQLSQLProvider`, overflow occurs when setting the max blob size, which overflows
to zero at runtime rather than the intended 4GB
    In `MQTTProtocolHandler`, overflow occurs when determining the time to keep the connection
    These are both fixed by casting the operands to `long` first.
    In `AddressControlImpl`, queue message counts are `long`s but added up in an `int`.
    In `MessageCounter.DayCounter`, the `counters` array holds `int`s but its elements will
have `long` message counts added to them.
    These are both fixed by changing the counter variables and relevant return types to `long`.

You can merge this pull request into a Git repository by running:

    $ git pull fix/lgtm-alerts-int-overflow

Alternatively you can review and apply these changes as the patch at:

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1237
commit b8f21bf2e31e5d9d121fd763d1b058bc2de1f6af
Author: Aditya Sharad <>
Date:   2017-04-29T14:03:51Z

    ARTEMIS-1135: Fix integer multiplication overflows
    Multiplication operations where the operands have type `int` but the
    result is cast to `long` may lead to overflow.
    Fixes two instances of this problem, by ensuring the operands are cast
    to `long` during multiplication.
    This resolves the "Result of integer multiplication cast to long"
    alerts at

commit bb4bee488020092eebfd0a1e6e84ab85bafd83c7
Author: Aditya Sharad <>
Date:   2017-04-29T14:34:06Z

    ARTEMIS-1135: Fix potential message count overflow
    Have `AddressControlImpl::getMessageCount` use and return a `long`.
    Prevents potential overflow from use of an `int` count variable.
    Fixes one of the "Implicit narrowing conversion in compound assignment"
    alerts at

commit 9c10169dc3fd45d8fe9784157ed5a6dcb84b1be2
Author: Aditya Sharad <>
Date:   2017-04-29T14:52:08Z

    ARTEMIS-1135: Prevent overflow in `DayCounter`
    Use `long` array for hourly counters instead of `int` array.
    Prevents overflow when the number of new messages (a `long`) is added.
    Fixes one of the "Implicit narrowing conversion in compound assignment"
    alerts on


If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

View raw message