Page 1 of 1

main_program: Fatal Error: Field not found: keyChange

Posted: Mon Nov 19, 2007 9:41 pm
by vmcburney
I'm doing a reference match of type CHAR on two fields that contain names without any blocking fields. I can test the match pass okay and compile the job but when when I run the job I get this error:
main_program: Fatal Error: Field not found: keyChange
There is no field called keyChange in the job. When I export the job and all depedent columns to a DSX file and search for the word keyChange I can't find it. I can't find it in the QualityStage manual. Anyone know what could be causing this error?

The only other log message is this one:
Ref_Match: Creating sub-operator: <QSmatStats -workDir ./RT_QS149/V0S1 -f Ref_Match.txt>
Creating sub-operator: <copy>
Creating sub-operator: <generator -par -schema "record(qsMatchDataID:uint64{cycle={init='part+1',incr=partcount}})">
Creating sub-operator: <copy>
Creating sub-operator: <copy>
Creating sub-operator: <generator -par -schema "record(qsMatchDataID:uint64{cycle={init='part+1',incr=partcount}})">
Creating sub-operator: <copy>
Creating sub-operator: <QSmat -n 1 -workDir ./RT_QS149/V0S1 -f Ref_Match.txt>
Creating sub-operator: <tsort -key qsMatchDataIDA>
Creating sub-operator: <QSmat_join -C -noresiduals -workDir ./RT_QS149/V0S1 -f Ref_Match.txt>
Creating sub-operator: <tsort -key qsMatchDataIDB>
Creating sub-operator: <QSmat_join -B -noresiduals -workDir ./RT_QS149/V0S1 -f Ref_Match.txt>
Creating sub-operator: <switch -ignoreRejects -key qsMatchType -case MP=0>

Posted: Mon Nov 19, 2007 11:19 pm
by ray.wurlod
Do you have a Sort stage upstream in which a key change column is specified?

Posted: Tue Nov 20, 2007 4:43 am
by vmcburney
No sort stages, it's a very simple DataStage job. Dataset stages for the source and reference files and a single name column in each.

Posted: Tue Nov 20, 2007 5:28 am
by ray.wurlod
Hmm. Can you dump the score and see if keyChange occurs there? After all, it's the score, not the design, that gets executed.

Posted: Tue Nov 20, 2007 5:33 am
by balajisr
I do not have any exposure in Quality Stage.I am sorry if this is absolutely irrelevant.

While going through the log message you posted i found this:
Creating sub-operator: <tsort -key qsMatchDataIDA>
Creating sub-operator: <QSmat_join -C -noresiduals -workDir ./RT_QS149/V0S1 -f Ref_Match.txt>
Creating sub-operator: <tsort -key qsMatchDataIDB>
Is there any implicit sort?

Posted: Tue Jun 17, 2008 1:55 pm
by emeri1md
I was having the exact same problem, but your post clued me into the solution.

You apparently have to block on something. If you add in a blocking column, the error should go away. It fixed my problem.