[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GEMPAK #OUP-365834]: GEMPAK - message queue problem



Mark,

It sounds like you are spawning a separate csh process for each part of your 
chart,
so the parent process of the gpmap is changing. That could be the problem
with your gpend not closing the queue, and overlays failing as well.

If this is the case, its probably best for your program to generate all the 
layers 
of your plot as input lines to the gpmap invocation, and then with a single 
invocation 
of the csh script, create the postscript output file.

I do have a programs_ps target in the gpmap Makefile to build a version of gpmap
that bypasses the gplt. But again you would want to do all the layers in
a single system call.

Steve Chiswell
Unidata User Support



> Hi,
> 
> Here is the error:
> Error in message send = 22
> 
> I am drawing a significant weather chart.  Each of the features is drawn
> with a seperate call to gpmap.
> I am producing a postscript file.
> When I look at the ipc message queue stats, I see that the queues are
> not being released.  I suspect that
> I hit an OS limit and further sends fail.  My guess is that gpend
> doesn't use the same queue as gpmap.
> 
> Maybe the routines you mention below will help.  Otherwise, I might
> modify GEMPAK to force the use of
> parent PID. or even to always use the same queue.
> 
> Mark
> 
> Unidata GEMPAK Support wrote:
> 
> >Mark,
> >
> >There are no flags for a program to run in batch mode- a controlling 
> >terminal or
> >lack thereof is determined in the routines.
> >
> >You didn't mention what errors you were seeing, but make sure that if you 
> >are running
> >to create a XW, GF, PS display that required contacting an X server, the 
> >environment from
> >within the spawned shell has the display access, as well as the full GEMPAK 
> >environment.
> >
> >Also, you may be able to utilize the gpmap_gf or gpmap_xw etc. to eliminate 
> >the message queues
> >if you don't require separate program runs for overlays.
> >
> >Steve Chiswell
> >Unidata User SUpport
> >
> >
> >
> >
> >
> >>Institution: Global Weather Dynamics
> >>Package Version: GEMPAK5.8.3a
> >>Operating System: Linux
> >>Hardware Information: HP Pavillion Desktop
> >>Inquiry: Hi,
> >>
> >>My application runs fine from a shell script.
> >>I call gpmap a number of times and then call gpend.
> >>I have a problem when I launch the c-shell script from a java program (the 
> >>java program executes /bin/csh with the script as an argument).  I see 
> >>comments which indicate that there are two ways to determine the message 
> >>queue ID in the function "cgetmq.c".  It looks like I need to force the 
> >>program into "batch mode".
> >>
> >>Is there a parameter which I can set somewhere, or is it always detected by 
> >>isatty?
> >>
> >>Any suggestions would be greatly appreciated.
> >>
> >>Mark Hughes
> >>
> >>
> >>
> >>
> >>
> >>
> >
> >
> >Ticket Details
> >===================
> >Ticket ID: OUP-365834
> >Department: Support GEMPAK
> >Priority: Normal
> >Status: Closed
> >
> >
> >
> 
> 


Ticket Details
===================
Ticket ID: OUP-365834
Department: Support GEMPAK
Priority: Normal
Status: Closed