-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix sanitizer issues [BMQ,MWC] #373
Fix sanitizer issues [BMQ,MWC] #373
Conversation
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
reqOptions.setAttemptInterval( | ||
bsls::TimeInterval(0, 10 * bdlt::TimeUnitRatio::k_NS_PER_MS)); | ||
|
||
reqOptions.setAttemptInterval(bsls::TimeInterval(0, 1)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I understand why the second call of setAttemptInterval
with such strange arguments (1 ns) is required.
etc/ubsansup.txt
Outdated
# option is to update the code, which can be done by someone feeling | ||
# adventurous. | ||
alignment:crc32c1024SseInt | ||
# UndefinedBehaviorSanitizer suppressions file for BMQ. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# UndefinedBehaviorSanitizer suppressions file for BMQ. | |
# UndefinedBehaviorSanitizer suppressions file for BlazingMQ. |
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
etc/tsansup.txt
Outdated
# point. | ||
race:TestSession::waitForChannelClose | ||
race:TestSession::arriveAtStepWithCfgs | ||
# Suppress sporadically appearing data race in bmqimp::Brokersession test driver. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# Suppress sporadically appearing data race in bmqimp::Brokersession test driver. | |
# Suppress sporadically appearing data race in bmqimp::BrokerSession test driver. |
etc/tsansup.txt
Outdated
# at nearly same time in other thread bmqimp::BrokerSession::onConfigureQueueResponse() calls | ||
# queue->options().suspendsOnBadHostHealth() method which is detected as data race. | ||
# bmqt::QueueOptions and bmqimp::Queue classes are not thread safe by design, | ||
# and bmqimp::BrokerSession::onConfigureQueueResponse() cllback access them in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
# and bmqimp::BrokerSession::onConfigureQueueResponse() cllback access them in | |
# and bmqimp::BrokerSession::onConfigureQueueResponse() callback access them in |
@@ -248,6 +248,10 @@ class TestChannel : public Channel { | |||
/// Pops a close-call from those written to the channel (FIFO ordering). | |||
CloseCall popCloseCall(); | |||
|
|||
/// Lock mutex and return `true` if d_closeCalls collection is empty, | |||
/// `false` otherwise. | |||
bool closeCallsEmpty(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Might qualify as const
and make mutex mutable
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed as proposed.
Signed-off-by: Aleksandr Ivanov <aivanov71@bloomberg.net>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build 185 of commit c674af6 has completed with FAILURE
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build 205 of commit 3ff4329 has completed with FAILURE
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Build 211 of commit db49b5d has completed with FAILURE
Revise cancelled/suppressed unit tests running under sanitizers. Fix some issues.