Bug 122829 - CUPS loses print jobs if hot-pluggable printer removed while spooling.
Summary: CUPS loses print jobs if hot-pluggable printer removed while spooling.
Alias: None
Product: Fedora
Classification: Fedora
Component: cups (Show other bugs)
(Show other bugs)
Version: rawhide
Hardware: All Linux
Target Milestone: ---
Assignee: Tim Waugh
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2004-05-08 19:41 UTC by David Woodhouse
Modified: 2007-11-30 22:10 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2004-05-12 09:04:49 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description David Woodhouse 2004-05-08 19:41:14 UTC
See the sentence "when this happens, CUPS loses the print job which
was currently being spooled" in #122827.

Cups shouldn't see this as a successful print job. The page was not
printed -- and probably wasn't even completely sent to the printer, or
the printer would have printed it. I suspect CUPS will lose the job
even if the printer is disconnected for other reasons during printing. 

Certainly the acknowledgment had not been received from the printer
telling us that it had actually been rendered.

Comment 1 Tim Waugh 2004-05-11 12:05:12 UTC
Seems that backends are meant to handle retries themselves.  This is
what the USB backend currently does:

while (stuff to do)
  try writing to fd
  if it failed, break
close fd
exit 0

In other words, the USB backend gives up instead of trying again: it
treats a failure to transfer the data as a permanent error.

Comment 2 Tim Waugh 2004-05-11 13:35:23 UTC
Reported upstream.

Comment 3 Tim Waugh 2004-05-12 09:04:49 UTC

Comment 4 David Woodhouse 2004-05-12 09:31:35 UTC
The fix is crap. We should be reading status back from the printer,
not just counting the bytes we threw at it.

Note You need to log in before you can comment on or make changes to this bug.