Thanks Till for your prompt response! I'm sorry I don't know appropriate
ettiquette for inline/attachments here - I have inlined a heap of
output: (1) debug output from cups as requested (2) debug output from
cups during the print-dialog hang (3) gdb stacktrace of gedit during a
print-dialog hang. Hope its ok.

lpstat -p", "lpstat -v" are always fast.

lpoptions -p <printer-unresolved-hostname> -l
Takes about 5 seconds on an IPP printer (with unresolved hostname).
However it returns instantaneously on an SMB printer (with unresolved hostname).

IPP Printer:
$ time lpoptions -p Laserjet-1300 -l
lpoptions: Unable to get PPD file for LaserJet-1300: Not Found
real    0m5.024s
user    0m0.012s
sys     0m0.000s

And accompanying cups/error_log:
D [16/Sep/2008:14:33:22 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:33:22 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:33:22 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:33:22 +0700] CUPS-Get-Printers
D [16/Sep/2008:14:33:22 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:33:22 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:33:22 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:33:22 +0700] CUPS-Get-Classes
D [16/Sep/2008:14:33:22 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:33:22 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:33:22 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:33:22 +0700] CUPS-Get-Default
D [16/Sep/2008:14:33:22 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:33:22 +0700] cupsdCloseClient: 8
D [16/Sep/2008:14:33:22 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:33:22 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:33:22 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:33:22 +0700] Get-Printer-Attributes 
ipp://localhost/printers/LaserJet-1300
D [16/Sep/2008:14:33:22 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:33:27 +0700] cupsdAcceptClient: 10 from localhost:631 (IPv4)
D [16/Sep/2008:14:33:27 +0700] cupsdReadClient: 10 GET 
/printers/LaserJet-1300.ppd HTTP/1.1
D [16/Sep/2008:14:33:27 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:33:27 +0700] cupsdSendError: 10 code=404 (Not Found)
D [16/Sep/2008:14:33:27 +0700] cupsdCloseClient: 10
D [16/Sep/2008:14:33:27 +0700] cupsdCloseClient: 8

When the hostname is added to /etc/hosts I get the same error message on the 
IPP queue, but it returns instantaneously.
time lpoptions -p Laserjet-1300 -l
lpoptions: Unable to get PPD file for LaserJet-1300: Not Found
real    0m0.023s
user    0m0.008s
sys     0m0.004s

D [16/Sep/2008:14:41:37 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:41:37 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:41:37 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:41:37 +0700] CUPS-Get-Printers
D [16/Sep/2008:14:41:37 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:41:37 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:41:37 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:41:37 +0700] CUPS-Get-Classes
D [16/Sep/2008:14:41:37 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:41:37 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:41:37 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:41:37 +0700] CUPS-Get-Default
D [16/Sep/2008:14:41:37 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:41:37 +0700] cupsdCloseClient: 8
D [16/Sep/2008:14:41:37 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:41:37 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:41:37 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:41:37 +0700] Get-Printer-Attributes 
ipp://localhost/printers/LaserJet-1300
D [16/Sep/2008:14:41:37 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:41:37 +0700] cupsdAcceptClient: 10 from localhost:631 (IPv4)
D [16/Sep/2008:14:41:37 +0700] cupsdReadClient: 10 GET 
/printers/LaserJet-1300.ppd HTTP/1.1
D [16/Sep/2008:14:41:37 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:41:37 +0700] cupsdSendError: 10 code=404 (Not Found)
D [16/Sep/2008:14:41:37 +0700] cupsdCloseClient: 10
D [16/Sep/2008:14:41:37 +0700] cupsdCloseClient: 8


Here is the cupsd/error_log during when the print dialog hangs:
D [16/Sep/2008:14:29:23 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:29:23 +0700] Report: clients=1
D [16/Sep/2008:14:29:23 +0700] Report: jobs=74
D [16/Sep/2008:14:29:23 +0700] Report: jobs-active=0
D [16/Sep/2008:14:29:23 +0700] Report: printers=6
D [16/Sep/2008:14:29:23 +0700] Report: printers-implicit=0
D [16/Sep/2008:14:29:23 +0700] Report: stringpool-string-count=1139
D [16/Sep/2008:14:29:23 +0700] Report: stringpool-alloc-bytes=9360
D [16/Sep/2008:14:29:23 +0700] Report: stringpool-total-bytes=21904
D [16/Sep/2008:14:29:23 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:29:23 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:29:23 +0700] CUPS-Get-Printers
D [16/Sep/2008:14:29:23 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:29:33 +0700] cupsdCloseClient: 8
D [16/Sep/2008:14:29:43 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:29:58 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:29:58 +0700] cupsdAuthorize: No authentication data provided.
E [16/Sep/2008:14:30:08 +0700] cupsdReadClient: 8 IPP Read Error!
D [16/Sep/2008:14:30:08 +0700] cupsdSendError: 8 code=400 (Bad Request)
D [16/Sep/2008:14:30:08 +0700] cupsdCloseClient: 8
D [16/Sep/2008:14:30:28 +0700] cupsdAcceptClient: 8 from localhost (Domain)
D [16/Sep/2008:14:30:28 +0700] Report: clients=1
D [16/Sep/2008:14:30:28 +0700] Report: jobs=74
D [16/Sep/2008:14:30:28 +0700] Report: jobs-active=0
D [16/Sep/2008:14:30:28 +0700] Report: printers=6
D [16/Sep/2008:14:30:28 +0700] Report: printers-implicit=0
D [16/Sep/2008:14:30:28 +0700] Report: stringpool-string-count=1139
D [16/Sep/2008:14:30:28 +0700] Report: stringpool-alloc-bytes=9360
D [16/Sep/2008:14:30:28 +0700] Report: stringpool-total-bytes=21904
D [16/Sep/2008:14:30:28 +0700] cupsdReadClient: 8 POST / HTTP/1.1
D [16/Sep/2008:14:30:28 +0700] cupsdAuthorize: No authentication data provided.
D [16/Sep/2008:14:30:28 +0700] CUPS-Get-Printers
D [16/Sep/2008:14:30:28 +0700] cupsdProcessIPPRequest: 8 status_code=0 
(successful-ok)
D [16/Sep/2008:14:30:28 +0700] cupsdCloseClient: 8


Below is a stack trace of gedit hanging while its print dialog opens, 
suggesting it all happens inside gtk_cups_request_new ():
(gdb) bt
#0  0xb7f03410 in __kernel_vsyscall ()
#1  0xb73a9273 in read () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7348aed in _IO_file_underflow () from /lib/tls/i686/cmov/libc.so.6
#3  0xb734925b in _IO_default_uflow () from /lib/tls/i686/cmov/libc.so.6
#4  0xb734a624 in __uflow () from /lib/tls/i686/cmov/libc.so.6
#5  0xb733dcf6 in _IO_getline_info () from /lib/tls/i686/cmov/libc.so.6
#6  0xb733dc41 in _IO_getline () from /lib/tls/i686/cmov/libc.so.6
#7  0xb733cbba in fgets () from /lib/tls/i686/cmov/libc.so.6
#8  0xafddcb8b in ?? () from /lib/libnss_mdns4_minimal.so.2
#9  0xafddd352 in _nss_mdns4_minimal_gethostbyname2_r ()
   from /lib/libnss_mdns4_minimal.so.2
#10 0xb739e398 in ?? () from /lib/tls/i686/cmov/libc.so.6
#11 0xb739fad9 in getaddrinfo () from /lib/tls/i686/cmov/libc.so.6
#12 0xaffd6a0a in httpAddrGetList () from /usr/lib/libcups.so.2
#13 0xaffd6088 in httpConnectEncrypt () from /usr/lib/libcups.so.2
#14 0xb00114dc in gtk_cups_request_new ()
   from /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so
#15 0xb000f40c in ?? ()
   from /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so
#16 0xb7bc78ce in gtk_printer_request_details ()
   from /usr/lib/libgtk-x11-2.0.so.0
#17 0xb7bcea6e in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#18 0xb74fdaff in g_cclosure_marshal_VOID__VOID ()
   from /usr/lib/libgobject-2.0.so.0
#19 0xb74f0759 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#20 0xb7504f8b in ?? () from /usr/lib/libgobject-2.0.so.0
#21 0xb7506c1f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#22 0xb7506f69 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#23 0xb7b68cb9 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#24 0xb7b69621 in gtk_tree_selection_select_path ()
   from /usr/lib/libgtk-x11-2.0.so.0
#25 0xb7b696d5 in gtk_tree_selection_select_iter ()
   from /usr/lib/libgtk-x11-2.0.so.0
#26 0xb7bd0a9e in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#27 0xb74fd00a in g_cclosure_marshal_VOID__OBJECT ()
   from /usr/lib/libgobject-2.0.so.0
#28 0xb74f0759 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#29 0xb7504f8b in ?? () from /usr/lib/libgobject-2.0.so.0
#30 0xb7506c1f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#31 0xb7506ee0 in g_signal_emit_by_name () from /usr/lib/libgobject-2.0.so.0
#32 0xb000c468 in ?? ()
   from /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so
#33 0xb000bb2d in ?? ()
   from /usr/lib/gtk-2.0/2.10.0/printbackends/libprintbackend-cups.so
#34 0xb746cdd6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#35 0xb7470193 in ?? () from /usr/lib/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#36 0xb7470577 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
#37 0xb7a79264 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#38 0x0806841e in main ()

-- 
print dialog hangs when connected to wireless network
https://bugs.launchpad.net/bugs/223776
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to