Page 1 of 1

SIGBUS ERROR IN LOOKUPS

Posted: Mon Nov 13, 2006 7:41 am
by chandra
HI Frnds -
I will explain you job -

1- lkp file -A
this lkp file A is used in several files and there is another graph that updates this lookup file ! Occasionally the writting lkp and read will occuer simultanesly in that case the jobs which are reading the LKP file is getting failed- and the error is SIGBUS (unix-error)
----
My Solutions :-
Create 2 files for LKP new and dat , over write new with dat.
still it fails
Ideas will be appreciated !

Posted: Mon Nov 13, 2006 7:49 am
by ray.wurlod
Explain the entire job. What you have supplied is insufficient for cogent diagnosis. SIGBUS is one of the standard UNIX signals; type man signal at a UNIX prompt to learn a little more about this particular signal.

In general, in parallel jobs, simultaneous write and read to the same object is not possible.

Posted: Mon Nov 13, 2006 7:57 am
by chandra
situation where one graph is rebuilding a lookup file, while another graph is reading from it. The graph that is reading from the lookup gets "killed" by the graph that replaces the lookup.

thanks in Adv

Posted: Mon Nov 13, 2006 9:55 am
by ray.wurlod
Standard medical advice: if it hurts, don't do it.

Posted: Mon Nov 13, 2006 10:07 am
by chandra
ray.wurlod wrote:Standard medical advice: if it hurts, don't do it. ...
what else you need ! I have explained the problem ?
Please let me , I will try my best..
we approch the forum hoping of some solutions .

Posted: Mon Nov 13, 2006 10:09 am
by DSguru2B
ray.wurlod wrote: In general, in parallel jobs, simultaneous write and read to the same object is not possible.
I think Ray has given you the answer. Avoid that and you will be ok.

Posted: Mon Nov 13, 2006 10:51 am
by ray.wurlod
As I stated earlier, write and read of the same object in the same job is not supported in parallel jobs, in general. It is a blocking operation, which interferes with pipeline parallelism.

Posted: Tue Nov 14, 2006 8:48 am
by chandra
what ever the ray told ! that i know ..
I am asking if you get same problem how do you deal.









Problem to problem is not solution !

Posted: Tue Nov 14, 2006 9:19 am
by ray.wurlod
I never get the same problem, because I don't try to force DataStage to do anything illegal.

Posted: Tue Nov 14, 2006 12:56 pm
by Ultramundane
If datastage opens the lookup file when it is using it and doesn't close it until the job is complete you should be able to delete the file and the job using it should be fine until it closes the file. This would let you create the new file and datastage would happily use the filename which doesn't exist anymore until that program is done running. However, if you delete the file and datastage is opening and closing it you will have a problem.

Posted: Tue Nov 14, 2006 1:36 pm
by chandra
Thanks for the reply!My question is
1- lkp A is using job1 as lookup
2- Job 2 writting the same file - lkp A.
--
scenario 1:-

Is there any way we can find the wheather JOb 1 is reading lkp-A.so that we can stop writting until it reading is finsihed and we can trigger the job2 to write the same file .

Posted: Tue Nov 14, 2006 1:39 pm
by Ultramundane
The unix command fuser can be used to determine whether a file is in use or not.

Posted: Wed Nov 15, 2006 7:33 am
by chandra
Thanks -

this what Im looking for !-
now we can apply a logic !

if file is in use
then
abort job2
else
run job2.
Ultramundane wrote:The unix command fuser can be used to determine whether a file is in use or not.