Failure to Print Multiple Copiee with Raw Option

Don Badrak dbadrak at
Fri Sep 12 12:31:05 PDT 2008

> Lucky Leavell wrote:
> >> Cups Version: 1.4svn
> >> OS: RHEL 5.1
> >>
> >> When printing multiple copies from the command line:
> >>
> >>      lp -d <printer_name> -n 2 -o raw <file_name>
> > ...
> >> (The printer in this case is a HP DesignJet 4550ps using the 5500ps PPD file printing PDF files. It also occurs for TIFF files.)
> >
> > The device URI is socket://<IP_Address>:9100
> What kind of raw files are you printing?
> Any errors for the job in /var/log/cups/error_log?

I'll followup here.  I work in the same org as Lucky but completely independently ran into this problem.

We are trying to print a PDF file.  The output devices (HP Plotters, 4500ps, 4550ps, 5500ps) support direct PDF printing.  They are faster and more accurate that way.  The quality we get printing this way is much better than if it is translated to postscript and then sent to the printer (not only with CUPS but also on Windows systems that never pass through CUPS).

lp -n N -o raw does different things for different versions.  In this example I send 174577 bytes to the printer, using:

        lp -n 2 -o raw file.pdf

In 1.1.22 (RHEL4), it opens a new TCP connection for each copy.

        open 59795 -> 9100
        send 174577 bytes
        close 59795
        open 59796 -> 9100
        send 174577 bytes
        close 59796

In 1.2.4 (RHEL5) it sends it all over the same TCP connection:

        open 41309 -> 9100
        send 174577 bytes
        send 174577 bytes
        close 41309

The plotter appears that can't take two PDFs in the same TCP connection.

If our script breaks it into N jobs, each is its own job and thus its own connection.

I captured traffic going to RHEL4 and RHEL5 CUPS servers.  It opens one connection per copy in 1.1.22, but in 1.2.4 and beyond opens one connection per job, regardless of the number of copies. It does send all the data (I verified that), but the HP Plotter appears that it cannot take multiple PDFs in the same connection stream.

Other HP devices work fine with 1.2.4 (HP LaserJet 9050).

More information about the cups-devel mailing list