Datastage phantom error
Moderators: chulett, rschirm, roy
-
- Participant
- Posts: 5
- Joined: Mon Aug 01, 2005 3:22 am
Datastage phantom error
Hi All,
I am getting a Warning in my Datastage server job," Phantom 3812, Variable previously defined, Zero length string used." The same job was running previously without problems. Now suddenly this error is starting to show. Can somebody please help why this would be happening?
Roopak
I am getting a Warning in my Datastage server job," Phantom 3812, Variable previously defined, Zero length string used." The same job was running previously without problems. Now suddenly this error is starting to show. Can somebody please help why this would be happening?
Roopak
Hello roopaknair,
The message probably reads "Variable previously undefined..."; it means that the first use of the variable was to see it's value instead of assigning one to it.
You should check your TRANSformer stages in the job and look at stage variables or usage of parameters to perhaps spot an error.
If you cannot find it through that method then you could use the line number shown in the error message and look at the source code of that job stage to track it down, but that it usually more work than looking at the job directly.
If you are certain that nothing has changed in the program then the cause must be data driven - does your job contain any branches or conditionals?
The message probably reads "Variable previously undefined..."; it means that the first use of the variable was to see it's value instead of assigning one to it.
You should check your TRANSformer stages in the job and look at stage variables or usage of parameters to perhaps spot an error.
If you cannot find it through that method then you could use the line number shown in the error message and look at the source code of that job stage to track it down, but that it usually more work than looking at the job directly.
If you are certain that nothing has changed in the program then the cause must be data driven - does your job contain any branches or conditionals?
<a href=http://www.worldcommunitygrid.org/team/ ... TZ9H4CGVP1 target="WCGWin">
</a>
</a>
-
- Participant
- Posts: 5
- Joined: Mon Aug 01, 2005 3:22 am
Hi ArndW ,
I removed all the parameters and stage variables in the TRANSformer stage but i m still getting the error. I am now finding that it is happening for all the jobs wherein an ODBC stage is present. I am passing the DSN, User Name and password as parameters to these ODBC stage jobs. The warning is
DataStage Job 577 Phantom 3812
Program "DSD.BCIGetInfo": Line 61, Variable previously undefined. Zero length string used.
Program "DSD.BCIGetInfo": Line 61, Variable previously undefined. Zero length string used.
DataStage Phantom Finished
Thanks for the help
I removed all the parameters and stage variables in the TRANSformer stage but i m still getting the error. I am now finding that it is happening for all the jobs wherein an ODBC stage is present. I am passing the DSN, User Name and password as parameters to these ODBC stage jobs. The warning is
DataStage Job 577 Phantom 3812
Program "DSD.BCIGetInfo": Line 61, Variable previously undefined. Zero length string used.
Program "DSD.BCIGetInfo": Line 61, Variable previously undefined. Zero length string used.
DataStage Phantom Finished
Thanks for the help
Most likely you have misspelled one of the parameter names, that would explain the error. Variable names such as parameters are case-sensitive. If you can't find the problem, replace the parameters with constant values until the error goes away.
<a href=http://www.worldcommunitygrid.org/team/ ... TZ9H4CGVP1 target="WCGWin">
</a>
</a>
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
-
- Participant
- Posts: 5
- Joined: Mon Aug 01, 2005 3:22 am
Hi ArndW,Ray
Even when I replaced the job parameters with constant values, the phantom error keeps coming. So right now the server job which I am running does not have any job parameters and only hardcoded values and still shows the error.
The appearence of the phantom error was very surprising as till yesterday afternoon the jobs were running fine and they started showing this error suddenly yesterday evening. Can any change or the datastage environment becoming corrupt cause this problem?
Thanks Roopak
Even when I replaced the job parameters with constant values, the phantom error keeps coming. So right now the server job which I am running does not have any job parameters and only hardcoded values and still shows the error.
The appearence of the phantom error was very surprising as till yesterday afternoon the jobs were running fine and they started showing this error suddenly yesterday evening. Can any change or the datastage environment becoming corrupt cause this problem?
Thanks Roopak
-
- Participant
- Posts: 5
- Joined: Mon Aug 01, 2005 3:22 am
-
- Premium Member
- Posts: 1255
- Joined: Wed Feb 02, 2005 11:54 am
- Location: United States of America
OK....Now is the fun part. TROUBLESHOOTING.
How many stages does your job have? Could you tell us more about what you are trying to achieve with your job?
If your job is not big enough. I would advise you to redesign the job and see what happens. In this new job do not use any variables and parameters.
Hard-code all the values and see if you still get the message.
Thanks,
Naveen.
How many stages does your job have? Could you tell us more about what you are trying to achieve with your job?
If your job is not big enough. I would advise you to redesign the job and see what happens. In this new job do not use any variables and parameters.
Hard-code all the values and see if you still get the message.
Thanks,
Naveen.
I seldom see this error from a job that DOES NOT contain reference to a routine. The error is usually in the routine.
Since routines are dynamically linked at runtime, another developer could have modified and compiled the routine, then the errors magically start appearing the next time the job(s) is run, even though "you" did not change a thing.
Since routines are dynamically linked at runtime, another developer could have modified and compiled the routine, then the errors magically start appearing the next time the job(s) is run, even though "you" did not change a thing.
Or there could be a routine with conditional logic with a path that is mostly never traversed. Maybe nowyour source data is in a condition that is causing that branch to be used, and it references a variable previously not set.
Edited: corrected "past" to "path"
Edited: corrected "past" to "path"
Last edited by kcbland on Tue Oct 18, 2005 7:43 pm, edited 1 time in total.
Kenneth Bland
Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
Rank: Sempai
Belt: First degree black
Fight name: Captain Hook
Signature knockout: right upper cut followed by left hook
Signature submission: Crucifix combined with leg triangle
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
When you reset the job, the "from previous run..." event should identify the actual stage in which the problem occurred, even if the original message did not. Did you post the entire error message?
It's odd that the message is being reported from DSD.BCIGetInfo. This function is used by ODBC and UniVerse stages to request information from the data source about syntax. (That is, it may not be your error.) Has anything changed vis-a-vis the ODBC driver?
What does your support provider say?
Can you reproduce it in a second job?
It's odd that the message is being reported from DSD.BCIGetInfo. This function is used by ODBC and UniVerse stages to request information from the data source about syntax. (That is, it may not be your error.) Has anything changed vis-a-vis the ODBC driver?
What does your support provider say?
Can you reproduce it in a second job?
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
-
- Participant
- Posts: 5
- Joined: Mon Aug 01, 2005 3:22 am
Hi All,
I redesigned the job and it still did not solve the problem.
But the problem got solved when I created a new project in the same server and exported the files from the old project and imported it into the new one. Possibly the old project had got corrupted due to some reason.
Thanks for all the help
Roopak
I redesigned the job and it still did not solve the problem.
But the problem got solved when I created a new project in the same server and exported the files from the old project and imported it into the new one. Possibly the old project had got corrupted due to some reason.
Thanks for all the help
Roopak
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact: