Attempt to solve fread stack imbalance on Windows when rereading.#2488
Attempt to solve fread stack imbalance on Windows when rereading.#2488
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2488 +/- ##
==========================================
- Coverage 91.55% 91.43% -0.13%
==========================================
Files 63 63
Lines 12046 12059 +13
==========================================
- Hits 11029 11026 -3
- Misses 1017 1033 +16
Continue to review full report at Codecov.
|
| if (jump>0 && !nextGoodLine(&tch, ncol)) { | ||
| stopTeam=true; | ||
| DTPRINT("No good line could be found from jump point %d\n",jump); // TODO: change to stopErr | ||
| continue; |
There was a problem hiding this comment.
I believe this continue should remain
There was a problem hiding this comment.
Reason for removal was :
error: invalid branch to/from OpenMP structured block
but maybe the continue could be just afterwards. Will try ...
|
Not sure if this would help or not, but I found the following explanation:
So the root of the problem could be that some Windows system call somehow gets invoked with wrong calling convention, which after many calls may lead to stack corruption. Which call it is I'm not sure, but could be |
| ASSERT(allocnrow <= nrowLimit, "allocnrow(%llu) < nrowLimit(%llu)", (llu)allocnrow, (llu)nrowLimit); | ||
| #pragma omp parallel num_threads(nth) | ||
| { | ||
| int me = omp_get_thread_num(); |
There was a problem hiding this comment.
you can add here
bool reportProgress = false;
#pragma omp master
reportProgress = args.showProgress;
then everywhere where you check (me==0 && args.showProgress) you can just replace with reportProgress
Closes #2481