Xerox Print Driver: two spurious print jobs are preceding actual print job

Originator:freek
Number:rdar://24606341 Date Originated:2016-02-11
Status:open Resolved:
Product:OS X Product Version:10.10.5 (14F1605)
Classification:serious bug Reproducible:always
 
On my new laptop, with either Xerox Print drivers 3.64.0 or 3.65.3, I have the following problem.

When opening a Print Dialog, CUPS queues two print jobs of 1024 each. None of them seem actual print jobs, and if they are followed by an actual print job, it takes a time-out of these spurious print job before the actual print job is send to the printer.

Steps to Reproduce:
1. Configure a Xerox printer, e.g. the ColorQube 9302.
2. Open any application, e.g. TextEdit.
3. Open the print dialog using the File > Print menu item. Do nothing else yet.
4. In a terminal, observe with `lpstat -o` that there are two print jobs already in the queue.
5. Optionally, cancel the print dialog.

Expected Results:
I expected that only a "Print" command would send a print job to the printer.

Actual Results:
Even if just a print dialog is opened, two print jobs already populate in the queue. If a document is actually printed, that would be the third job in the queue.

Configuration:
This has been tested with a Xerox ColorCube 9302. The printer is configured to use it's fixed IPv4 address, and using the HP Jetdirect - Socket protocol.

The problem has been reproduced on OS X.10.5 with Xerox printer software 3.64.0, OS X.10.5 with Xerox printer software 4.65.3, and OS X.11.1 with Xerox printer software 3.65.3.

Notes:
I suspect that the actual bug is in the Xerox print driver, and that while opening the Print dialog, it asks for the status of the printer. However, that status request is somehow interpreted as a print job by CUPS. The spurious jobs always have a size of 1024 bytes, regardless of the actual print job (which is typically much larger).

Workaround:
As a work-around, it is each enough to kill the spurious jobs in the terminal using `lprm`. On OS X.10, these two jobs are not shown in the printer GUI dialog. On OS X.11, on another machine, these two jobs are shown in the printer GUI dialog.

Comments

Work-around

here is my work-around (for those of you savvy with the command line):

Go to /etc/cups/ppd, and open the .ppd file of the affected printer. Mine is called "Xerox_ColorQube.ppd".

Uncomment the line with the "cupsCommands" by replacing:

*cupsCommands: "ReportStatus com.xerox.ColorCorrections com.xerox.LDAPQuery"

With:

*%cupsCommands: "ReportStatus com.xerox.ColorCorrections com.xerox.LDAPQuery"

(The line in your file may be slightly different. E.g., it may contain an ReportLevels entry.)

Then, restart the print services:

sudo launchctl stop org.cups.cupsd
sudo launchctl start org.cups.cupsd

After this change, I could print just fine again.


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!