Adalennis opened a new pull request, #9143:
URL: https://github.com/apache/hop/pull/9143

   Addresses #8970
   
   Ninth batch: a Result section on the pages of Bulk load into MySQL, Bulk 
load from MySQL into file and Bulk load into MSSQL.
   
   Every row comes from a hop-run test against the current code (55 workflows, 
MySQL 8.4 and SQL Server 2022 in Docker, with the test folder mounted at the 
same path on the host and in the containers, tables and files recreated before 
each test). Each action was also run after an action that is true with 2 errors 
(they pass on 0 errors), and with a previous result holding files and rows, on 
success and on failure. What the tests show:
   - Bulk load from MySQL into file fails with its default settings on MySQL 
8.4: High Priority is checked by default, the action always adds LOCK IN SHARE 
MODE, and MySQL rejects both together ("Table ... appears in multiple locking 
clauses"). With High Priority unchecked, the export works. Documented as a NOTE.
   - Bulk load from MySQL into file with a connection that doesn't exist in the 
project throws a NullPointerException out of execute(): the workflow stops and 
no hop is followed.
   - Bulk load into MSSQL is false with 0 errors (the reason is logged as an 
error) for a non-MSSQL connection, an empty field terminator with char or 
widechar, and an existing error file without Add date time.
   - Bulk load into MSSQL: SQL Server on Linux only accepts the RAW codepage, 
so the default OEM fails there. Specific sends the word 'Specific' instead of 
the Specific codepage value (visible in the logged SQL). With both Start at 
line and End at line set, only LASTROW is sent. A conversion error on row 2 
left row 1 loaded.
   - Bulk load into MySQL: Local (checked by default) needs 
allowLoadLocalInfile=true on the connection. Replace data off keeps the 
existing row on a duplicate key.
   - In both MySQL actions, a missing table is false with 1 error, but the 
reason is only logged at the Detailed level.
   - All three add the file to the result files only when they succeed.
   
   Also fixed:
   - Bulk load from MySQL into file: Source schema (was Target schema), the 
missing Source table row, what OUTFILE / DUMPFILE and each If file exists 
option do, and what High Priority does.
   - Bulk load into MySQL: what Local, Replace data and Ignore the...first 
lines do; labels Ignore the...first lines, Add file to result filenames.
   - Bulk load into MSSQL: labels Data File, Row terminated by; the Codepage 
list (ACP, OEM (default), RAW, Specific).
   
   Found while testing (not reported yet): the High Priority failure, the 
NullPointerException, the three false-with-0-errors paths, the Specific 
codepage value and Start at line being dropped. The last three are documented 
as NOTEs.
   
   ------------------------
   
   Thank you for your contribution! Follow this checklist to help us 
incorporate your contribution quickly and easily:
   - [x] Run `mvn clean install apache-rat:check` to make sure basic checks 
pass. A more thorough check will be performed on your pull request 
automatically.
   - [x] If you have a group of commits related to the same change, please 
squash your commits into one and force push your branch using `git rebase -i`.
   - [x] Mention the appropriate issue in your description (for example: 
`addresses #123`), if applicable.
   
   To make clear that you license your contribution under the [Apache License 
Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
   you have to acknowledge this by using the following check-box.
   
   - [x] I hereby declare this contribution to be licensed under the [Apache 
License Version 2.0, January 2004](http://www.apache.org/licenses/LICENSE-2.0)
   - [ ] In any other case, please file an [Apache Individual Contributor 
License Agreement](https://www.apache.org/licenses/icla.pdf).


-- 
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]

Reply via email to