ITEM: DF3404L
HP JetDirect queues fail after 3.2.5 to 4.1.5 migration
ENV:
AIX 4.1.5
7013-590
HP JetDirects
*CUSTOMER REP:
Kirk
PROBLEM:
After upgrading from AIX 3.2.5 to AIX 4.1.5 our JetDirect
print queues that existed before the migration don't function
but newly added JetDirect queues do. When I submit a print
job to a JetDirect print queue defined before the migration,
I get the error:
error opening /var/spool/lpd/pio/dev/hp..... as stdout for
backend.
*ACTION TAKEN:
If you look in /etc/qconfig you will see that each queue
device (for local and JetDirect queues) have a line that
reads:
file = \
In the case of a local (serial or parallel) printer, the
purpose of this is much more obvious... When a job is sent
to this queue, qdaemon invokes the backend program and sends
its stdout to the file specified by the "file =" line.
This makes good sense for piobe - it writes the formatted
print job to stdout which is directed to the appropriate
file, eg. /dev/lp0.
However, in the case of an HP JetDirect, the behavior is a bit
more subtle. Since the output isn't going to a "file" but
rather being piped into piohpnpf to be sent across the network,
why bother to have a "file =" at all? The answer is for
locking purposes - if you have two print queues pointing to
the same JetDirect printer, only one of the two queues can
be sending data to it at a time. The file specified in the
"file =" line isn't where output is sent, but since only one
process can open the file for writing at a given moment, it
ensures only one queue will be RUNNING a job while the other
is in DEV_BUSY state waiting to be able to open the "file ="
file.
However, at AIX 3.2.5 these "lock" files resided in
/var/spool/lpd/pio/dev - which no longer exists in AIX 4.1.
Therefore, no queue can open the files in this directory.
In AIX 4.1.5 the files now reside in
/var/spool/lpd/pio/@local/dev directory.
The solution is to modify the path of the "file =" line in
/etc/qconfig to the correct location and create a blank file
in the directory corresponding to the "file =" line in
qconfig. An alternate solution would be to just take out the
"file =" line, or set "file = FALSE" which has special
meaning (discard stdout).
Support Line: HP JetDirect queues fail after 3.2.5 to 4.1.5 migration ITEM: DF3404L
Dated: July 1997 Category: N/A
This HTML file was generated 99/06/24~13:30:16
Comments or suggestions?
Contact us