Skip to content
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

HPCC-15299 Protect multi writer getWriter from race condition #8541

Merged
merged 1 commit into from Apr 22, 2016

Conversation

jakesmith
Copy link
Member

The IRowMultiWriterReader::getWriter() implementation incremented
a unprotected writer count, used to determine end of reading.
It's thread-unsafeness could cause premature termination of
the reader side.

NB: this is only used by the unsorted parallel join helper.
The race condition can cause the join to prematurely stop and
potentiall cause a timeout error when joining the remaining worker
threads [~CMulticoreUnorderedJoinHelper worker[xx] join timed out"

Signed-off-by: Jake Smith jake.smith@lexisnexis.com

The IRowMultiWriterReader::getWriter() implementation incremented
a unprotected writer count, used to determine end of reading.
It's thread-unsafeness could cause premature termination of
the reader side.

NB: this is only used by the unsorted parallel join helper.
The race condition can cause the join to prematurely stop and
potentiall cause a timeout error when joining the remaining worker
threads [~CMulticoreUnorderedJoinHelper worker[xx] join timed out"

Signed-off-by: Jake Smith <jake.smith@lexisnexis.com>
@hpcc-jirabot
Copy link

@jakesmith
Copy link
Member Author

@ghalliday - please review

@richardkchapman richardkchapman merged commit 7b91f80 into hpcc-systems:candidate-5.6.4 Apr 22, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants