Univention Bugzilla – Bug 31354
MinPhysicalRAM should be tested only when installing a app, not during an update
Last modified: 2013-07-10 14:18:21 CEST
I have a UCS 3.1 (1024MB memory) with ox 6.2 and a NON-key-ID license. Then i switched to the test appcenter to update my ox to 7.2. But there is no update Button.
There is not enough free memory. The ox app defines "MinPhysicalRAM=640" but my running system has only
-> free -m
total used free shared buffers cached
Mem: 1002 915 87 0 6 167
But it is ox itself that uses all this memory. At the moment, i need 2 * MinPhysicalRAM to update my ox app (or stop ox before the update).
I think it is better not to test MinPhysicalRAM when updating a app, or?
I think we should change it more generally. Every ISV misunderstood the value.
Currently we check the real free memory, I think we should rather check the available memory in the system. And it should be possible to continue even if the system has less memory.
(In reply to Stefan Gohmann from comment #1)
> I think we should change it more generally. Every ISV misunderstood the
> Currently we check the real free memory, I think we should rather check the
> available memory in the system. And it should be possible to continue even
> if the system has less memory.
If we only check for the available memory we do not prevent installing every single app in the app center with only 1024 MB RAM. Or did I misunderstand the sentence? If we would do that, the whole check should be removed completely as it does not make much sense any more.
We _could_ somehow check for the difference of MinPhysicalRAM during an update if necessary. But if I remember the code correctly this might get hacky or dev-time consuming...
I like the idea with a simple warning not preventing the installation/update. This could be shown even during the update of OX when the old OX consumed all the RAM.
For testing I reserved 1.5GB of memory via python:
a = array.array('d', xrange(int(1.5 * 1024 * 1024 * 1024 / 8)))
Erratum changes → OK
YAML file → OK
3.2 changes → OK
3.2 changelog → OK