imbajin opened a new pull request, #858:
URL: https://github.com/apache/hugegraph-toolchain/pull/858

   ## Purpose of the PR
   
   Fix #706. Takes over #710 by @bajisn-666 with a focused fix for the 
reproduced concurrency failure.
   
   Parallel file readers share one `FileSource`, including its `SkippedLine` 
rule. Reusing that rule's mutable `Matcher` across readers can let a blank or 
comment line through and fail CSV parsing. Each match now has independent state.
   
   ## Main Changes
   
   - Cache the immutable compiled `Pattern` and create a `Matcher` for each 
line; invalidate the cache when the regex changes.
   - Exercise split readers with four threads, checking every expected row and 
completed file progress, including comments, blank lines, empty files, suffix 
filtering, and a serialized custom rule.
   - Restore four parser threads in the three local tests previously limited to 
one, and in the two HDFS cases from #710.
   
   ## Verifying these changes
   
   - [x] Need tests and can be verified as follows:
     - The mixed-line concurrent-reader regression fails on the previous 
implementation and passes with this fix.
     - Client and Loader unit suites pass on JDK 17.
     - Server-backed local functional tests are still being verified; this PR 
remains a draft until that check completes.
     - HDFS integration has not been run locally.
   
   ## Does this PR potentially affect the following parts?
   
   - [x] Nope
   - [ ] Dependencies (add/update license info)
   - [ ] Modify configurations
   - [ ] The public API
   - [ ] Other affects
   
   ## Documentation Status
   
   - [ ] `Doc - TODO`
   - [ ] `Doc - Done`
   - [x] `Doc - No Need`
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to