PSF/6000: Large PostScript jobs (ps2afp) vanish!
ITEM: RTA000090377
Q:
My customer wants to print big PostScript jobs (5000 Blocks). Small
jobs print okay, but with these large jobs, the ps2afp queue starts
converting, status INITING. After 1 minute, the queue is READY, not
RUNNING, nothing prints, the job is gone.
The same queue works fine with small PS-jobs. The printer is an IBM3935
attached via TCP/IP. The ps2afp.log says "Communications error", but
nothing ever went to the net (we used a sniffer to check). The
ps2afp.log looks the same for both small and big job. The ps2afp.cfg
has 1000 minutes max. time, 64000K max. memory (the RISC has 128MB),
30% virtual max. memory.
We already watched the filesystems. Both /var, which is the working
directory, and /tmp are fine, lots of space, never reaching 90%.
What's wrong?
Q:
Sorry, I solved the problem myself. It was the /tmp Filesystem which
was 100% full during conversion. It was hard to discover, because it
is very quickly filled and emptied. The lpstat command is so slow,
that by the time I saw that the job was gone, the /tmp had been
emptied. (My solution: 2 scripts "while true do lpstat -a done"
and "while true do df sleep 1 done".)
New Question: For the future, how can I change the path, so that I can
use my own filesystem for the temporary print-files?
Who is using /tmp, AIX-spool or PSF/6000?
A:
AIX uses /tmp for swap space. If possible you should increase the size
of /tmp, and then consider increasing your paging size. That should help
resolve that problem.
The PostScript transform uses /var in several ways.
1) By default, the ps2afpd.cfg is coded to use /var/psf/ps2afp as
a temporary staging area for your input PS file. You can change
this file and stop/restart the ps2afpd daemon to have the PostScript
transform use a different workarea.
2) If you submit a PS job through enq -odatatype=ps, the resulting
AFPDS gets created in /var/psf/tmp.
3) If you submit a PS job through ps2afp and then pipe it to enq
(ps2afp | enq), then the AFPDS gets created into /var/spool/qdaemon.
(Same principle holds true for the other transforms as well.)
Then at print time:
1) If you're printing to an IPDS printer, PSF/6000 will print while
converting from AFPDS (in memory, no disk workspace).
2) If you're printing to a PCL or PPDS printer, the file is converted
into /var/spool/qdaemon. It must be completely converted into there
before the job can print.
There is an example in the new Print Administration Guide for Version 2
(S544-3817-02) on page 411 that gives general guidelines for creating
a new file system and link to it. However, it is missing a couple of
important steps. The steps to do this would be:
1) Create a new filesystem (this example will use "/psf") and mount it.
2) Bring down all PSF/6000 printer queues (psfctl -dt ,
where is the
name of each PSF/6000 print
queue)
3) cd /var/psf//dcl
4) rm * (This will remove mca, mcb and scb; make sure PSF/6000 is downą
These files are used for memory mapping and cannot be copied.
They will be recreated as needed.)
5) cd ..
6) rmdir dcl
Repeat steps 2-6 for each printer you have defined to PSF/6000.
7) Use the mv command to move the directories under the existing
/var/psf file system to the new (/psf) file system:
mv -i /var/psf/* /psf
8) Verify that /var/psf is empty:
ls -Fae /var/psf (should be empty except for . & ..)
9) rmdir /var/psf
10) Use symbolic links to connect the /var/psf file system to the new
(/psf) file system:
ln -s /psf /var/psf
11) Bring up PSF/6000 for each printer:
psfctl -u
/var gets even busier and fuller with the enhancements in Version 2 for
for production print and COM/tape processing, so we need to document
this soon. I will send you some additional details offline in the
interim.
I hope that helps.
S e a r c h - k e y w o r d s:
AIX PSF/6000 PSF FOR AIX PS2AFP POSTSCRIPT /VAR /TMP FULL FAILS
vanish disappear jobs pcl pcl2afp pcl2afpd.cfg ps2afpd.cfg
WWQA: ITEM: RTA000090377 ITEM: RTA000090377
Dated: 01/1999 Category: XPSF6000
This HTML file was generated 99/06/24~12:43:30
Comments or suggestions?
Contact us