Bug 228148

Summary: 'y2base printer qt' command takes 100% CPU usage
Product: [openSUSE] openSUSE 10.2 Reporter: A Nagappan <anagappan>
Component: YaST2Assignee: Michal Zugec <mzugec>
Status: RESOLVED DUPLICATE QA Contact: Jiri Srain <jsrain>
Severity: Normal    
Priority: P5 - None CC: andreas.hanke
Version: RC 5   
Target Milestone: ---   
Hardware: i686   
OS: SUSE Other   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: ppd_db.ycp

Description A Nagappan 2006-12-13 06:07:39 UTC
'y2base printer qt' command takes 100% CPU usage.

The same system was working fine in Alpha and Beta builds. Reinstalled manufacturer-PPDs, but still no luck.

From /var/log/YaST2/y2log

2006-12-13 11:29:29 <1> nags(17157) [YCP] Printerdb.ycp:340 Checking foomatic database
2006-12-13 11:29:29 <1> nags(17157) [YCP] Printerdb.ycp:343 Database changed
2006-12-13 11:29:29 <1> nags(17157) [agent-ppd] PPDdb.cc(createdbThread):419 CreateDbThread started
2006-12-13 11:29:29 <1> nags(17157) [agent-ppd] PPDdb.cc(loadPrebuiltDatabase):1439 Database file parsed correctly by YCP parser
2006-12-13 11:29:29 <1> nags(17157) [agent-ppd] PPDdb.cc(loadPrebuiltDatabase):1670 Database contents is OK

Additional info:
Upgraded from OpenSuSE 10.2 Alpha builds to Beta and then to RC. Now having RC5.

Checked with gnome-control-center -> Printers:

printer icon displayed with configured 'printer name' and also one more string 'paused'. When I checked the printer properties, the status is 'Paused: /usr/lib/cups/backend/socket failed'

nags:/var/log/cups # tail error_log
I [13/Dec/2006:10:05:13 +0530] Configured for up to 100 clients.
I [13/Dec/2006:10:05:13 +0530] Allowing up to 100 client connections per host.
I [13/Dec/2006:10:05:13 +0530] Using policy "default" as the default!
I [13/Dec/2006:10:05:13 +0530] Full reload is required.
I [13/Dec/2006:10:05:14 +0530] Loaded MIME database from '/etc/cups': 36 types, 40 filters...
I [13/Dec/2006:10:05:17 +0530] Loading job cache file "/var/cache/cups/job.cache"...
I [13/Dec/2006:10:05:18 +0530] Full reload complete.
I [13/Dec/2006:10:05:18 +0530] Listening to 127.0.0.1:631 on fd 0...
I [13/Dec/2006:10:05:18 +0530] Listening to ::1:631 on fd 2...
I [13/Dec/2006:10:05:18 +0530] Listening to /var/run/cups/cups.sock on fd 3...

nags:/var/log/cups # tail access_log
localhost - - [13/Dec/2006:11:40:50 +0530] "POST / HTTP/1.1" 200 411 Get-Printer-Attributes successful-ok
localhost - - [13/Dec/2006:11:40:55 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Default successful-ok
localhost - - [13/Dec/2006:11:40:55 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Printers successful-ok
localhost - - [13/Dec/2006:11:40:55 +0530] "POST / HTTP/1.1" 200 411 Get-Printer-Attributes successful-ok
localhost - - [13/Dec/2006:11:41:00 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Default successful-ok
localhost - - [13/Dec/2006:11:41:00 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Printers successful-ok
localhost - - [13/Dec/2006:11:41:00 +0530] "POST / HTTP/1.1" 200 411 Get-Printer-Attributes successful-ok
localhost - - [13/Dec/2006:11:41:05 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Default successful-ok
localhost - - [13/Dec/2006:11:41:05 +0530] "POST / HTTP/1.1" 200 112 CUPS-Get-Printers successful-ok
localhost - - [13/Dec/2006:11:41:05 +0530] "POST / HTTP/1.1" 200 411 Get-Printer-Attributes successful-ok

nags:/var/log/cups # tail page_log
printer nags 20 [29/Nov/2006:16:08:56 +0530] 3 1 - localhost
printer nags 20 [29/Nov/2006:16:08:56 +0530] 4 1 - localhost
printer nags 20 [29/Nov/2006:16:08:57 +0530] 5 1 - localhost
printer nags 20 [29/Nov/2006:16:08:57 +0530] 6 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 1 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 2 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 3 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 4 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 5 1 - localhost
printer nags 21 [04/Dec/2006:14:34:22 +0530] 6 1 - localhost


Any other info shall I provide ?
Comment 1 Matej Horvath 2006-12-13 09:20:58 UTC
Yes, please attach all the yast logs (http://en.opensuse.org/Bugs/YaST), the /var/log/messages, output of the 'hwinfo --printer' and if possible, try to run 'top' while executing the 'y2base printer qt' and find a process with the most CPU usage.

Thank you.
Comment 2 A Nagappan 2006-12-13 10:24:29 UTC
Printer is a network printer.

nags:/var/lib/YaST2 # cat printers
$[
  "cups_usb_devices" : `always,
  "drivers_were_installed" : true,
  "printers" : [
    $[
      "ff" : false,
      "name" : "printer",
      "raw" : false,
      "uri" : "socket://164.99.152.7:9100"
    ]
  ],
  "version" : 523
]

When 'y2base printer qt' is invoked, in the GUI I could see the following...

'Checking database of printers...' it stops at 40 % and pops up a new dialog and that stops at 4% with the following message.

'The list of installed drivers has changed.
Building database of drivers...'
Comment 3 A Nagappan 2006-12-13 10:31:35 UTC
Top shows:

22902 root      15   0 81688  31m  17m S 97.5  1.5  10:19.69 y2base

22848 ?        Sl     0:00 gnomesu -- /sbin/yast2
22853 ?        S      0:00 /opt/gnome/lib/libgnomesu/gnomesu-pam-backend 20 19 root /sbin/yast2
22859 ?        S      0:00 /bin/bash /sbin/yast2
22879 ?        S      0:00 /usr/lib/YaST2/bin/y2controlcenter
22881 ?        S      0:00 /bin/bash /sbin/yast2 printer
22902 ?        Sl    12:40 /usr/lib/YaST2/bin/y2base printer qt
22932 ?        S      0:00 /bin/bash /usr/lib/YaST2/servers_non_y2/ag_initscripts

Unable to attach the YaST2 log as the file size is 6.0 MB. Uploaded to http://people.freedesktop.org/~nagappan/y2logs.tgz
Comment 4 A Nagappan 2006-12-13 10:38:41 UTC
nags:/var/lib/YaST2 # top
top - 16:00:04 up  5:55,  5 users,  load average: 1.38, 1.12, 0.70
Tasks: 129 total,   3 running, 125 sleeping,   0 stopped,   1 zombie
Cpu(s): 76.3%us, 23.7%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2068180k total,  1961676k used,   106504k free,   362456k buffers
Swap:  2096440k total,        0k used,  2096440k free,   724348k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
22902 root      15   0 81688  31m  17m S 97.5  1.5  10:19.69 y2base

greped output from 'ps ax'

22848 ?        Sl     0:00 gnomesu -- /sbin/yast2
22853 ?        S      0:00 /opt/gnome/lib/libgnomesu/gnomesu-pam-backend 20 19 root /sbin/yast2
22859 ?        S      0:00 /bin/bash /sbin/yast2
22879 ?        S      0:00 /usr/lib/YaST2/bin/y2controlcenter
22881 ?        S      0:00 /bin/bash /sbin/yast2 printer
22902 ?        Sl    12:40 /usr/lib/YaST2/bin/y2base printer qt
22932 ?        S      0:00 /bin/bash /usr/lib/YaST2/servers_non_y2/ag_initscripts
Comment 5 Michal Zugec 2006-12-14 14:24:32 UTC
couldn't reproduce with same network printer
provide please /var/lib/YaST2/ppd_db.ycp file please
after remove that file it works ok?
Comment 6 A Nagappan 2006-12-14 14:35:19 UTC
Created attachment 109742 [details]
ppd_db.ycp
Comment 7 A Nagappan 2006-12-14 14:37:33 UTC
After removing the file, the bug is gone ! Closing the bug.
Comment 8 Andreas Hanke 2006-12-14 14:45:47 UTC
(In reply to comment #7)
> After removing the file, the bug is gone ! Closing the bug.

That is a workaround and not a fix.
Comment 9 Michal Zugec 2006-12-14 14:59:57 UTC
You're right, Andreas
But I couldn't reproduce it on my machine
Comment 10 Andreas Hanke 2006-12-14 15:01:04 UTC
In that case it would be a WORKSFORME rather than FIXED ;-)
Comment 11 Michal Zugec 2006-12-14 15:06:37 UTC
That is because A Nagapaan close it, not me.
And I'm waiting for his answer about HW configuration (proabably some x86_64 related bug or something) via IM (I know, I know - bugzilla is for that purpose, but this is much faster ;-) )
Comment 12 Michal Zugec 2006-12-15 18:10:17 UTC
Couldn't reproduce on the same architecture as reporter (i586)
Comment 13 A Nagappan 2007-05-15 04:18:57 UTC
Whenever the driver database changed (on package upgrade) and on opening YaST2 printer interface, CPU goes to 100% and I have to manually remove the file /var/lib/YaST2/ppd_db.ycp. On restarting the YaST2 printer service, things work fine.

Hence reopening the bug.
Comment 14 Michal Zugec 2007-05-15 06:19:36 UTC
This was already fixed
What is your yast2-printer version?
Comment 15 A Nagappan 2007-05-15 06:34:42 UTC
yast2-printer-2.14.15-3
Comment 16 Michal Zugec 2007-05-15 08:30:33 UTC
This is already fixed for trunk and there was online update for 10.2
I see 2.14.20 available via online update


*** This bug has been marked as a duplicate of bug 229231 ***