Bug 410627

Summary: zypper should exit gracefully after receiving TERM or INT signal
Product: [openSUSE] openSUSE 11.4 Reporter: Markus Elfring <Markus.Elfring>
Component: libzyppAssignee: E-mail List <zypp-maintainers>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Enhancement    
Priority: P4 - Low CC: dmacvicar, dmuhamedagic, publio.escipion.el.africano
Version: RC 1   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE 11.3   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Markus Elfring 2008-07-18 22:19:29 UTC
I have tried the command "zypper update -t package kde4*". I have noticed that the corresponding protocol file "/var/log/zypper.log" grows very fast - several hundred MB in a few seconds.

I doubt that this growth rate is acceptable.


I have tried to abort this process. I got the reaction "OK OK! Exitting immediately..." for a command like "kill -TERM 7991" sometimes while I had to stop it by "kill -KILL" in other tries to prevent the disk allocation of some GB in a few minutes.


It seems that there is a danger that the log partition might become full at an unexpected speed because of update approaches with wildcards in (package) names.
Comment 1 Markus Elfring 2008-07-20 09:30:00 UTC
I have noticed that a double "Ctrl+C" results also in the message "OK OK! Exitting immediately...". It happened that the program did not always return. (The command "kill -KILL" or a similar action in the tool "ksysguard" was needed to stop it.)

I would like to know under which circumstances an abort/cancel for a started update process is refused here.
Comment 2 Duncan Mac-Vicar 2008-07-20 16:39:43 UTC

*** This bug has been marked as a duplicate of bug 404715 ***
Comment 3 Markus Elfring 2008-07-20 18:47:24 UTC
The issue "zypper.log is huge (9.5 GB)" is related.

But I guess that unsafe responses to termination/cancel signals for update processes should be further checked.
Comment 4 Jan Kupec 2008-07-21 13:11:39 UTC
Yes, zypper currently exits only if you send the TERM or INT signal twice (e.g. you hit ctrl+c twice). It is meant to quit gracefully after the first signal, and exit forcefully after the second. But the former case is not implemented yet, so currently you need to request the termination twice. There is no enhancement request covering this, so i'll keep this one.
Comment 5 Jan Kupec 2008-07-21 13:14:24 UTC
Markus, can you pls provide info requested here https://bugzilla.novell.com/show_bug.cgi?id=404715#c1 ? The original reporter did not respond so far, you may have the needed info :O)
Comment 6 Markus Elfring 2008-07-21 15:15:44 UTC
No, I'm sorry that I will not start a statistical analysis on so huge log files. (I deleted them after a short look.)

I prefer to stop the update process and the "mad" logging before my "var" partition will become completely full. I do not know the maximum size for the log partition so far to store all generated data when the zypper tool "explodes" in the conflict/dependency resolution dimension. I would also appreciate ways to dramatically reduce the log detail level.

I'll add a test case for problematic update candidates to the other issue.
My issue "Cancel a long running dependency resolution try in package manager" (bug #404770) might be affected, too.
Comment 7 Jan Kupec 2010-03-22 19:15:33 UTC
*** Bug 590290 has been marked as a duplicate of this bug. ***
Comment 8 Jan Kupec 2010-09-29 13:49:54 UTC
still relevant in 11.4
Comment 9 Rainer Hurtado Navarro 2011-02-20 23:19:36 UTC
It still happens, and One has to crtl+z because ctrl+c doesn't work, and later kill -9 PID, or crtl+c and bis.
"(changed during the 2011-02-20 Open-Bugs-Day about bugs for obsolete versions of openSUSE)"
Comment 11 Michael Andres 2014-01-13 09:14:26 UTC
Please reopen and provide the zypper.log if you experience this with a newer zypper version (openSUSE 12.3 or later).