ipp stops after 'INFO: Printer busy; will retry in 10 seconds...'

Anders Blomdell anders.blomdell at control.lth.se
Tue Sep 23 03:29:02 PDT 2008


When using cups/ipp, jobs occasionally disappears with something like the following in the logs (names and addresses scrambled):

DEBUG: 1 files to send in job...
STATE: +connecting-to-device
INFO: Connecting to printer.at.some.domain on port 631...
STATE: -connecting-to-device
INFO: Connected to printer.at.some.domain...
DEBUG: Connected to x.x.x.x:631 (IPv4)...
DEBUG: Getting supported attributes...
DEBUG: document-format-supported (1 values)
DEBUG: [0] = "application/octet-stream"
INFO: none-report
STATE: none-report
DEBUG: printer-uri = "ipp://printer.at.some.domain:631/ipp"
DEBUG: requesting-user-name = "anonymous"
DEBUG: job-name = "Test Page"
INFO: Printer busy; will retry in 10 seconds...
INFO: none-report
STATE: none-report

My guess is that:

  while (copies_remaining > 0)
  {
...
      if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
	  ipp_status == IPP_PRINTER_BUSY)
      {
        _cupsLangPuts(stderr,
	              _("INFO: Printer busy; will retry in 10 seconds...\n"));
	sleep(10);
      }
...
    else if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
	     ipp_status == IPP_PRINTER_BUSY)
      break;
    else
      copies_remaining --;
...
  }

should be changed to:

  while (copies_remaining > 0)
  {
...
      if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
	  ipp_status == IPP_PRINTER_BUSY)
      {
        _cupsLangPuts(stderr,
	              _("INFO: Printer busy; will retry in 10 seconds...\n"));
	sleep(10);
        continue;
      }
...
    else if (ipp_status == IPP_SERVICE_UNAVAILABLE ||
	     ipp_status == IPP_PRINTER_BUSY)
      break;
    else
      copies_remaining --;
...
  }

Best reagrds

Anders Blomdell





More information about the cups mailing list