Freefilesync (AUR) Update bringt RAM zum Überlaufen

Distri: EndeavourOS, KDE
Display-Server: X11

Nachdem ich schon ein System-Update (sudo pacman -Syu) gemacht hatte, wollte ich noch via paru -Sua meine AUR-Pakete updaten. Es gab nur ein Paket, nämlich freefilesync.
Wenn ich das Update starte, läuft der RAM nach gut einer halben Minute voll, dann bleibt zunächst die Uhr in der Kontollleiste stehen, dann wird das ganze Bild schwarz, bis auf das geöffnete Terminal, in dem aber nichts mehr passiert.
Ich habe unten in der Kontrollleiste ein KDE-Miniprogramm für die RAM-Auslastung mitlaufen, dort sieht man, wie der RAM von anfänglich 33% auf 100% vollläuft.

Zunächst fand das Ganze in der virtuellen Maschine (VirtualBox) statt, der ich 4 GB RAM zugewiesen habe. Testweise habe ich dann den RAM dort mal auf 8 GB erhöht - mit gleichem Ergebnis.
Soweit ich mich erinnere, gab es auf diesem System schon ein paar Updates von freefilesync, die alle problemlos durchliefen, auch mit nur 4 GB RAM.
Ich habe auf dem System noch einen ZRAM aktiviert (nach Anleitung hier aus dem Forum), aber ich glaube nicht, dass es damit was zu tun hat.

Der Swap hat 512 MB.

Testweise habe ich auch mal mein Laptop rausgeholt, welches auch 8 GB RAM hat und auf dem ein Manjaro, KDE, ohne ZRAM installiert ist.
Dort war bisher noch kein freefilesync installiert. Ein Versuch dort via yay -S freefilesync führte zum gleichen Ergebnis: RAM läuft schnell voll - nichts geht mehr.

Bei einem weiteren Update-Versuch (wieder in der VM) habe ich dann noch länger gewartet (vermutlich ca. 45-60 Minuten), bis sich im Terminal doch noch etwas tat und einige Fehlermeldungen erschienen.
Daraufhin drückte ich einfach mal die Tasten strg +c (um den laufenden Prozess im Terminal zu stoppen).
Es geschah eine ganze Weile wieder nichts, dann griff der Befehl aber anscheinend doch und so kann ich die folgende Terminal-Ausgabe hier mal rein kopieren:

g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
Kompilierung beendet.
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/folder_selector.cpp.o] Fehler 1
make: *** Es wird auf noch nicht beendete Prozesse gewartet …
g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
Kompilierung beendet.
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/sync_cfg.cpp.o] Fehler 1
g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
Kompilierung beendet.
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/file_grid.cpp.o] Fehler 1
g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
Kompilierung beendet.
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base_tools.cpp.o] Fehler 1
g++: schwerwiegender Fehler: Signal Getötet hat Programm cc1plus beendet
Kompilierung beendet.
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/grid.cpp.o] Fehler 1
^Cmake: *** Datei „/tmp/FreeFileSync_Make/ffs/src/ui/version_check.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/ui/rename_dlg.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/ui/gui_status_handler.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/ui/folder_history_box.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/ui/batch_status_handler.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/afs/ftp.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/base/synchronization.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/base/path_filter.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/base/icon_loader.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/base/dir_lock.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/base/comparison.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/status_handler.cpp.o“ wird gelöscht
make: *** Datei „/tmp/FreeFileSync_Make/ffs/src/log_file.cpp.o“ wird gelöscht
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/application.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ffs_paths.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/icon_buffer.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/localization.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/binary.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/db_file.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/file_hierarchy.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/multi_rename.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/parallel_scan.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/speed_test.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/versioning.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/abstract.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/concrete.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/gdrive.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/init_curl_libssh2.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/sftp.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/abstract_folder_picker.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/cfg_grid.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/command_box.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/file_view.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/log_panel.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/tree_grid.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/gui_generated.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/main_dlg.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/progress_indicator.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/search_grid.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/small_dlgs.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/triple_splitter.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../libcurl/curl_wrap.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/argon2.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/file_access.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/file_path.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/file_traverser.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/zstring.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/format_unit.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/legacy_compiler.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/open_ssl.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/process_priority.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/recycler.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/resolve_path.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/process_exec.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/shutdown.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/sys_error.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/file_io.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/http.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/thread.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/zlib_wrap.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/darkmode.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/image_tools.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/popup_dlg.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/popup_dlg_generated.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../xBRZ/src/xbrz.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/sys_info.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../zen/sys_version.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/graph.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/taskbar.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/tooltip.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/file_drop.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/../../wx+/image_resources.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/log_file.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/algorithm.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/comparison.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/dir_lock.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/path_filter.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/synchronization.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/afs/ftp.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/folder_history_box.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/rename_dlg.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/version_check.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/base/icon_loader.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/batch_status_handler.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/status_handler.cpp.o] Unterbrechung
make: *** [Makefile:131: /tmp/FreeFileSync_Make/ffs/src/ui/gui_status_handler.cpp.o] Unterbrechung

==> FEHLER: Aborted by user! Exiting…
==> Räume auf…

(Ich hab das hier als Zitat reingeschrieben und nicht als Code, weil es als Code merkwürdigerweise in eine einzige lange Zeile geschrieben wird - extrem unübersichtlich!)

Mein Abbruch im Terminal geschah wohlbemerkt erst, nachdem die Fehlermeldungen “… Signal Getötet hat Programm cc1plus beendet …” erschienen.

Ist jemandem dazu vielleicht schon etwas bekannt, ist das ein Speicherleck o.ä.?

Notfalls könnte ich auch auf eine andere Version ausweichen, wobei die im AUR verfügbare freefilesync-bin 14.3-1 als veraltet markiert ist.
Ansonsten gib es auch noch eine Flatpak-Version (14.3).

Aber merkwürdig ist es halt schon …

Problem in der letzten PKGBUILD Änderung, müsste man am besten auf der AUR Seite melden.

Zeile 57 und 58 das -jentfernen, dann sollte es wieder normal durchlaufen.

1 Like

Hey, super, ich habe gerade gesehen, du hast da schon gemeldet! :+1:
War nämlich gerade am Überlegen, wie ich das am besten schreibe …
(Mal abgesehen davon, dass ich dort noch gar nicht registriert bin. Wäre aber natürlich nun eine gute Gelegenheit gewesen, früher oder später wird mal wieder sowas sein …)

1 Like

Jup, habe es vor ein paar Minuten bei AUR in die Runde geworfen.

Was ich hier gesehen habe, wir alles mit unter 32 GB RAM Probleme haben, das Paket zu kompilieren. Ist dem AUR Betreuer mit seinem System wahrscheinlich einfach nicht aufgefallen. Hätte ich hier mit 32 GB RAM wahrscheinlich ebenfalls nicht bemerkt, wenn ich nicht durch deinen Bericht ein Auge auf dem Speicherverbrauch gehabt hätte.

1 Like

Scheint aber, dass der Betreuer dort der Meinung ist, das sei so in Ordnung.
Er schreibt:

@Schlaefer
Well it builds fine on my fairly recent pc with 64gb ram. But if there’s a second objection then I’ll revert.

Bin mir nicht 100% sicher, wie er das meint, aber google-translator würde das wie folgt übersetzen:

Nun, es lässt sich auf meinem relativ neuen PC mit 64 GB RAM problemlos erstellen. Aber wenn es einen zweiten Einwand gibt, werde ich es rückgängig machen.

Und ein anderer meint, man solle dann halt die freefilesync-bin nehmen, wenn man nicht selbst kompilieren wolle (heißt also, wer nicht 64 GB oder mindestens 32 GB RAM hat, “will” nicht selbst kompilieren! :wink: ).

Ich habe dort jetzt auch mal kommentiert …

Er kann als der Paketmanager natürlich ins AUR einstellen was er will. Anderseits ist eine “funktioniert hier mit 64 GB RAM” Einstellung nicht besonders Produktiv für die breite Community.

Persönlich würde ich das einfach als unterdurchschnittliche Paketqualität bezeichnen, wenn im PKGBUILD die makepkg Einstellungen derart überschrieben werden. :person_shrugging:

Man es gemeldet, der Betreuer hat sich bereits aufgeschlossen gezeigt. Mehr kann man nicht machen.

1 Like