Pamac Update Manager causes the system to freeze

I had to disable updates in the pamac update tool today because it was consuming all available system memory and the entire swap too resulting in a complete freeze. Had to perform a hard reset to get my system up and running.

Generated on 2024-01-17 06:48:1705470525

#################### inxi -Fxzc0 ########################

System:
  Kernel: 6.6.10-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1 Desktop: KDE Plasma
    v: 5.27.10 Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASUSTeK model: F2A85-V PRO v: Rev X.0x serial: <superuser required>
    UEFI: American Megatrends v: 6504 date: 11/27/2014
Battery:
  Device-1: hidpp_battery_0 model: Logitech M570 charge: 20% status: discharging
CPU:
  Info: quad core model: AMD A10-6800K APU with Radeon HD Graphics bits: 64 type: MT MCP
    arch: Piledriver rev: 1 cache: L1: 192 KiB L2: 4 MiB
  Speed (MHz): avg: 2019 high: 2039 min/max: 2000/4100 boost: enabled cores: 1: 2000 2: 2038
    3: 2000 4: 2039 bogomips: 33464
  Flags: avx ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
  Device-1: AMD Richland [Radeon HD 8670D] vendor: ASUSTeK driver: radeon v: kernel
    arch: TeraScale-3 bus-ID: 00:01.0
  Device-2: AMD Turks XT [Radeon HD 6670/7670] vendor: ASUSTeK driver: radeon v: kernel
    arch: TeraScale-2 bus-ID: 01:00.0 temp: 42.0 C
  Device-3: Huawei HiCamera driver: snd-usb-audio,uvcvideo type: USB bus-ID: 5-1:2
  Display: x11 server: X.Org v: 21.1.10 driver: X: loaded: radeon unloaded: modesetting dri: r600
    gpu: radeon resolution: 1920x1080~60Hz
  API: EGL v: 1.5 drivers: kms_swrast,r600,swrast platforms: active: gbm,x11,surfaceless,device
    inactive: wayland
  API: OpenGL v: 4.5 vendor: mesa v: 23.3.3-manjaro1.1 glx-v: 1.4 direct-render: yes renderer: AMD
    TURKS (DRM 2.50.0 / 6.6.10-1-MANJARO LLVM 16.0.6)
  API: Vulkan Message: No Vulkan data available.
Audio:
  Device-1: AMD Trinity HDMI Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel bus-ID: 00:01.1
  Device-2: AMD FCH Azalia vendor: ASUSTeK driver: snd_hda_intel v: kernel bus-ID: 00:14.2
  Device-3: AMD Turks HDMI Audio [Radeon HD 6500/6600 / 6700M Series] vendor: ASUSTeK
    driver: snd_hda_intel v: kernel bus-ID: 01:00.1
  Device-4: Huawei HiCamera driver: snd-usb-audio,uvcvideo type: USB bus-ID: 5-1:2
  Device-5: GN Netcom Jabra EVOLVE 20 driver: jabra,snd-usb-audio,usbhid type: USB bus-ID: 5-2:3
  API: ALSA v: k6.6.10-1-MANJARO status: kernel-api
  Server-1: JACK v: 1.9.22 status: off
  Server-2: PipeWire v: 1.0.0 status: off
  Server-3: PulseAudio v: 16.1 status: active
Network:
  Device-1: Intel Wireless 7260 driver: iwlwifi v: kernel bus-ID: 03:00.0
  IF: wlp3s0 state: down mac: <filter>
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: ASUSTeK P8 series
    driver: r8169 v: kernel port: d000 bus-ID: 05:00.0
  IF: enp5s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface driver: btusb v: 0.8 type: USB bus-ID: 1-5:4
  Report: rfkill ID: hci0 rfk-id: 0 state: up address: see --recommends
Drives:
  Local Storage: total: 566.38 GiB used: 167.61 GiB (29.6%)
  ID-1: /dev/sda vendor: Kingston model: SA400S37240G size: 223.57 GiB
  ID-2: /dev/sdb vendor: SanDisk model: SDSSDP128G size: 119.24 GiB
  ID-3: /dev/sdc vendor: Kingston model: SA400S37240G size: 223.57 GiB
Partition:
  ID-1: / size: 218.71 GiB used: 167.61 GiB (76.6%) fs: ext4 dev: /dev/sda2
  ID-2: /boot/efi size: 299.4 MiB used: 312 KiB (0.1%) fs: vfat dev: /dev/sda1
Swap:
  ID-1: swap-1 type: file size: 512 MiB used: 46.2 MiB (9.0%) file: /swapfile
Sensors:
  System Temperatures: cpu: 12.2 C mobo: N/A
  Fan Speeds (rpm): N/A
  GPU: device: radeon temp: 42.0 C device: radeon temp: 3.0 C
Info:
  Processes: 194 Uptime: 41m Memory: total: 16 GiB note: est. available: 14.84 GiB
  used: 1.99 GiB (13.4%) Init: systemd Compilers: gcc: 13.2.1 clang: 16.0.6 Packages: 1540
  Client: KDE Plasma v: 5.27.10 inxi: 3.3.31

As a quick fix I just terminated pamac update manager initially and then disabled the check for updates.

sudo pacman -Rns $(pacman -Qsq pamac)

And done. :slight_smile:

Could you expand on your explanation please? What does the command do?

It would remove all pamac packages.

1 Like

Don’t know if it worked but this was the output

sudo pacman -Rns $(pacman -Qsq pamac)                                                                                                                               ✔  base  
[sudo] password for lightning: 
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing libpamac breaks dependency 'libpamac>=11' required by manjaro-application-utility
:: removing pamac-cli breaks dependency 'pamac-cli' required by manjaro-application-utility
:: removing pamac-gtk breaks dependency 'pamac-gtk' required by manjaro-application-utility
:: removing libpamac breaks dependency 'libpamac' required by python-manjaro-sdk

Will report back on issues later (if any)
Thanks cscs

For me its a solution to a number of problems I would rather avoid.

You seemed to indicate that your current workaround is to just disable the things and try to make sure they dont run … so I figured uninstalling the packages would be similarly viable.

Of course you dont have to do that.


Looks like you have other packages that depend on it. You can include them with the removal.

sudo pacman -Rns pamac-gtk pamac-cli libpamac manjaro-application-utility python-manjaro-sdk

If you want to try to run down this pamac issue I might say begin by clearing its cache.

pamac clean -b

You might also check

ls -a /var/tmp/

If theres a pamac folder you can remove it.

sudo rm -r /var/tmp/pamac

Then update and refresh

pamac update --force-refresh

If it still isnt working well … you still have the option to remove it :slight_smile:

Your swap has a size of 512MB only.

True enough.
I think thats some weird default being sprung from recent calamares installs as I’ve been seeing it on a number of new users.
But its of course not the source of the issue … 16GB of physical memory should be more than enough to comfortably use the system and runaway memory use is a problem.

Were you in the midst of updating/rebuilding AUR packages when this happened?

And I have seen it for an experienced user as well - Bizarre Pamac & Pacman behavior: used 62GiB memory, took 10min to refresh DBs - I thought is was a single instance - I stand corrected.

I suggest to disable pamac update nag - and use only the native Arch Linux pacman.

Pamac consist of several packages and several utilities depend on pamac.

If you do not use those utilities there is no reason to keep them.

  • manjaro-application-utility - both a standalone and a plugin to manjaro-hello
  • python-manjaro-sdk - provides integration between manjaro specific applications
  • web-installer-url-handler - provides a mimetype to be handled by pamac

That is definitely a problem - wonder if an issue has been created at gitlab?

I just took a look at gitlab and there is a topic RAM usage of pamac-manager above 700-800 MB just to open it (#1381) · Issues · Applications / pamac · GitLab on the initial memory consumption.

The user’s system had 20 updates - occupying 7-800MB RAM - one can imagine what a stable update with 100’s of packages changed can do.

Taking some deep diving into this and data from my own system - it may be reasonable to look at the LordTermor / Pamac tray icon for plasma · GitLab tray.

1 Like

I would also raise the swapfile.

For 16 GB RAM, I would also go with 16 GB Swap.

I have a ‘swapfile’ function to go, where you could add to your rc file, monitoring with a program like htop how it’s go’s and adjust the size if needed.

Swapfile
# swapfile
swap-activate() {

    echo "How much MB should your swapfile have?"
    echo "Enter here: "
    read -r i

    while ! [[ "$i" =~ ^[0-9]+$ ]]; do
        echo "memory size, has to be numbers"
        echo "try again: "
        read -r i
    done

    echo -e 'Do you want to use \e[38;2;242;29;0m'"${i}"'\e[0mMB?'
    echo "Press y are Enter to continue"

    read -r r

    if [[ "$r" =~ ^[Yy]$ ]] || [[ "$r" == "" ]]; then

        sudo swapoff /swapfile &&
            sh -c "sudo rm /swapfile" &&
            sudo dd if=/dev/zero of=/swapfile bs=1M count="$i" status=progress &&
            sh -c "sudo chmod 600 /swapfile" &&
            sudo mkswap /swapfile &&
            sudo swapon /swapfile &&
            cat <<'EOF' >/etc/sysctl.d/99-swappiness.conf

    vm.swappiness=6
    vm.vfs_cache_pressure=66
    vm.dirty_ratio=3
    # sudo sysctl vm.vfs_cache_pressure=100
    # sudo sysctl vm.swappiness=8
    # sudo mkinitcpio -P
EOF
        if sh -c "sudo grep -q '/swapfile' /etc/fstab"; then
            echo "Entry already exists in /etc/fstab"
        else
            #todo    sudo echo "/swapfile none swap defaults 0 0" >>/etc/fstab
            #    echo "Entry added to /etc/fstab"

            echo "need to add to fstab"
        fi
    else
        echo "swapfile cancelled.."
    fi
}
1 Like

no I was not - but the issue is related to the auto update function in pamac.

Having disabled autoupdate in pamac - how does this impact the update of AUR & Flatpack packages?

I had to do a manual update to check for any updates and keep getting a pop up that says it has failed to synchronize the AUR databases.

Although 2 applications were updated mkincpio & msedge with no apparent issues.

Regarding the individual with a similar problem with runaway memory should I understand this to mean that it took 10 mins to refresh (internal)databases - filled 62gb of memory with spurious data in the process before the machine froze or started working normally again? I don’t quite understand the situation as I never saw any odd data just my memory being consumed rapidly which ultimately led to the freezing state of my computer. I did let it run for about 10 mins and noticed every now and then that I did regain very limited control of the mouse, but that was all, they keyboard lights would eventually go out and a hard reset was the only way back.

I’ll do some tests later unless of course there’s a fix.
(not sure if I want to use a different update tool as this might cause complications/confusions in the future - but will keep on eye on github and here in the meantime)

Thank you all for your assistance.

We are all guilty of promoting a paradigm where you must keep your system up-to-date several times a day.

That is waste of time an bandwidth - at least for me - my system functions without any issues even though I run unstable branch and updates when I remember it or when I sync a package I need.

I have come to point with my system - I prefer it in running state and only update when I sync a new package.

I have another system which I check with first and thus the system is only updated when I need to check - verify an issue so to speak

disable AUR update check
disable the flatpak update check

Search for the phrase check-aur.sh for a non-intrusive check for changed AUR scripts.

With flatpak you can run a simple command in a terminal.

The similarity I saw was your statement

which looked very much the same with regards to filling available system memory and pamac.

I realised, when I revisited the topic, they were not quite the same.

EDIT
@Nicomo
After some testing by watching process with htop and doing some pamac related tasks - I discovered there was some pids which - depending on the tasks - would come and go.

I provided some data to the pamac developer and was asked if the same pids were active if I disabled AUR in pamac.

And thereby we discovered that disabling AUR removed all excess pids for the pamac-tray-plasma and the pamac-daemon.

I am quite sure the developer is catching up the issue.

Until then - disabling AUR in Pamac will ensure no excess memory usage and dangling pids.

3 Likes

Some AUR packages do require a lot of space, at least on disk. Waterfox is (or at least was) one offender; I had to mount an external drive to compile it on as only had a 25G / at the time.

I can’t remember how much RAM it gobbled up, though. :man_shrugging:

This is wise and similar to what I do; check everything is OK (usually for a day or so) before rolling out the updates to the other systems, particularly my mate’s T430.

1 Like

I just got the same problem right now. Start PC, log in, pamac-checkupdate take so much ram it crash the whole system. I have to say that I personnaly like pamac. I found the gui to search is better for me than the command line. And the update notification is good to have (at least for me). I disable the notification to at least be able to start without the problem in the future. But I found the solution of just uninstalling to be not the best.

I started pamac manually, and go the update section. Same problems happens.
I then did the update manually in command line (with pacman). It upgraded 2 packages:
Packages (2) chromium-121.0.6167.85-1 firefox-122.0-1
I then started pamac again in the update section and the bug is not there anymore! YES!
Will try to use it a bit again in the coming days to see if the problem come back.

The issue seems to have resolved itself or perhaps a number of recent updates addressed and resolved the issue. I have returned to my original auto update settings and have not seen any issues over the last two days. Updates seem to be passing through without a hitch. I turned on updates for AUR after and they worked fine too.

I’ll update or create a new post if anything goes wrong further in the week that might be related. Thanks to all of you who offered and provided advice

Same exact issue now
With a system that has 32GB of RAM I get always to 28 to 29GB of RAM used by pamac-checkupdates and the result is an UNUSABLE PC
It becomes NOT responsive until I get to the System Activity and kill that process

How can it be ??

Never had an issue with pamac so far

I have the latest version (just today updates few more apps)
Any help ?

Clear your build cache.

Build cache is clean
I removed the check for updates since NO solution works so far

Same thing happens when I use pacman from command prompt