Windows XP and WinSvr 2012...
I am converting a map from 8.1 to 8.4 that executes batch files that calls an SQLLDR scripts. In 8.1 it works without issue, 8.4 is failing. Here is the simplified rule...
VALID(GET("BAT","-CMD c:\path\header.bat -trace -audit"), FAIL("HEADER: " + LASTERRORMSG()))
This is the cmd line in the batch file.....
sqlldr id/pw@sid control=header.ctl log=c:\path\header_db_load.log bad=c:\path\header_db_load.bad
The log file indicates one row was inserted to the table...
1 Row successfully loaded.
0 Rows not loaded due to data errors.
0 Rows not loaded because all WHEN clauses were failed.
0 Rows not loaded because all fields were null.
Space allocated for bind array: 255420 bytes(18 rows)
Read buffer bytes: 1048576
Total logical records skipped: 0
Total logical records read: 1
Total logical records rejected: 0
Total logical records discarded: 0
I confirmed the row was inserted but the map fails with the following issue in the m4batch.mtr file...
Executing Command: c:\path\HEADER.BAT
Window Style is SW_HIDE (0).
Getting standard input handle.
Standard input handle is 00000000.
Process 4384 Created.
Reading from Standard Error...
stdin reading is being processed by thread 5128.
...0 bytes read from Standard Error.
PeekNamedPipe : When Reading From Stderr returned 6 - The handle is invalid.
Peeking/Reading from Standard Error failed (err code = 6)...
Error Executing Command - Return Code is 6.
Run Terminated at time_stamp....
Any idea why I'm getting the error?