Fehlgeschlagen beim Bootstrapping wegen Out-of-Memory Killer

Vielleicht ist es eine gute Idee, es im Anschluss hinter einen Feature-Flag zu setzen, damit wir es intern weiterentwickeln können.

3 „Gefällt mir“

Ok, es wurde rückgängig gemacht und der Commit ist jetzt in tests-passed:

Danke, dass du uns Bescheid gegeben hast, und entschuldige bitte die Unannehmlichkeiten.

7 „Gefällt mir“

Ich würde gerne hören, ob diese Rückgängigmachung auch das Problem des OP gelöst hat. Der OP (@devnull) berichtete von:

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

was von @pfaffman nicht gemeldet wurde.

Außerdem möchte ich zu folgendem etwas sagen:

Das Hinzufügen von RAM kann die Leistung manchmal verbessern, aber bei einem tatsächlichen Speichermangel zählt RAM + Swap. Wenn das Erhöhen des Swap-Speichers bei einem Speichermangel nicht hilft, wird auch das Hinzufügen von RAM nichts bringen.

Wie @weallwegot berichtet, besteht der Fehler weiterhin, selbst nachdem 4 GB Swap hinzugefügt wurden. Etwas (oder etwas war) tatsächlich sehr hungrig.

2 „Gefällt mir“

Es ist derselbe Fehler. Beim Lesen des Backtrace ist in der vierten Zeile ein Hinweis auf OOM (Out of Memory) zu sehen.

3 „Gefällt mir“

Das alles ist richtig. Er hat weniger als 1 GB RAM, was nicht viel ist. Selbst wenn er dieses Problem nicht hätte, würde ich ihm trotzdem empfehlen, mehr RAM hinzuzufügen. Übrigens empfehle ich generell jedem, der weniger als 2 GB RAM hat, seinen Arbeitsspeicher zu erhöhen.

1 „Gefällt mir“

Das Problem ist für mich behoben. „App neu erstellen

3 „Gefällt mir“

„Absolut, ich verstehe den Rat, es ist die Logik, die irreführend wirken könnte.“

2 „Gefällt mir“

Übrigens konnte ich mit beiden Plugins problemlos neu aufbauen. Allerdings habe ich jetzt 6 GB Swap, also ist der Vergleich nicht ganz zu vergleichen, lol.

4 „Gefällt mir“

Danke! Ich bin wieder im Geschäft.

6 „Gefällt mir“

FYI: Ich habe diese Änderung erneut gemerged, aber diesmal sollte Bootstrap nicht mehr beeinträchtigt werden. Lass mich bitte wissen, falls dadurch Probleme entstehen.

2 „Gefällt mir“

Ich habe gerade denselben Fehler beim Bootstrap aufgetreten, den @pfaffman beschrieben hat… Parse-Fehler in theme_test_helper. Lass mich wissen, falls du weitere Informationen benötigst.

1 „Gefällt mir“

Können Sie den Fehler hier bitte kopieren und einfügen? Außerdem die Ausgabezeilen rund um das Komprimieren von theme_test_helper und theme_test_vendor. Diese sollten wie folgt aussehen:

12825804.271282336 Compressing: discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js
gzip -f -c -9 /var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js > /var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js.gz

brotli -f --quality=11 /var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js --output=/var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js.br
Done compressing discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js : 6.85 secs
6061451.556507351 Komprimiere: discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js
uglifyjs '/var/www/discourse/public/assets/discourse/tests/_theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js' -m -c -o '/var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js' --source-map "base='/var/www/discourse/public/assets/discourse/tests',root='/assets/discourse/tests',url='/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js.map'"
Parse-Fehler bei _theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js:27883,17
define("sinon", () => {
                 ^
FEHLER: Unerwartetes Token: punc «)»
    at JS_Parse_Error.get (eval at <anonymous> (/usr/lib/node_modules/uglify-js/tools/node.js:18:1), <anonymous>:71:23)
    at fatal (/usr/lib/node_modules/uglify-js/bin/uglifyjs:409:27)
    at run (/usr/lib/node_modules/uglify-js/bin/uglifyjs:347:9)
    at Object.<anonymous> (/usr/lib/node_modules/uglify-js/bin/uglifyjs:261:5)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
rake aborted!
Errno::ENOENT: Kein solcher Verzeichnis oder Datei @ rb_file_s_size - /var/www/discourse/public/assets/discourse/tests/theme_test_helper-790dafad7d3cb8a853fd3127fa3d99022120baf968cbb297066d166808ad3ae1.js
/var/www/discourse/lib/tasks/assets.rake:290:in `size'
/var/www/discourse/lib/tasks/assets.rake:290:in `block (4 levels) in <main>'
/var/www/discourse/lib/tasks/assets.rake:181:in `block in concurrent?'
/var/www/discourse/lib/tasks/assets.rake:281:in `block (3 levels) in <main>'
/var/www/discourse/lib/tasks/assets.rake:272:in `each'
/var/www/discourse/lib/tasks/assets.rake:272:in `block (2 levels) in <main>'
/var/www/discourse/lib/tasks/assets.rake:181:in `concurrent?'
/var/www/discourse/lib/tasks/assets.rake:269:in `block in <main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => assets:precompile
(Siehe vollständigen Trace, indem Sie die Aufgabe mit --trace ausführen)

und natürlich danach, nachdem die restlichen Plugins, Theme-Komponenten usw. durchlaufen wurden:

FEHLGESCHLAGEN
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake themes:update assets:precompile' fehlgeschlagen mit Rückgabewert #<Process::Status: pid 5128 exit 1>
Fehlerort: /pups/lib/pups/exec_command.rb:112:in `spawn'
Ausführung fehlgeschlagen mit den Parametern {"cd"=>"$home", "hook"=>"assets_precompile", "cmd"=>["su discourse -c 'bundle exec rake themes:update assets:precompile'"]}
29b7ee9f8297bdac0cc17dae6117ebe5aa94dcdf3f5dbfed4bf03b0bd7751cc0
** BOOTSTRAP FEHLGESCHLAGEN ** Bitte nach oben scrollen und nach früheren Fehlermeldungen suchen, es kann mehr als eine geben.
./discourse-doctor kann bei der Diagnose des Problems helfen.
4 „Gefällt mir“

Könntest du bitte den Container betreten und prüfen, welche Version von uglifyjs installiert ist?

./launcher enter app
uglifyjs --version

Und ebenfalls discourse_docker auf deinem Host-System:

git rev-parse HEAD
5 „Gefällt mir“

@Osama @downey,

wir haben das Basis-Image vor ein paar Stunden aktualisiert und erzwingen jetzt ein neues Basis-Image, damit wir JavaScript aus dem Jahr 2015 ordnungsgemäß kompilieren können. Könntest du bitte ein git pull ausführen und dann einen Neuaufbau versuchen, @downey? Es sollte nun Terser anstelle von Uglify verwenden.

cc @pmusaraj

6 „Gefällt mir“

Danke an alle. Ich war einige Abende wegen familiärer Verpflichtungen abwesend, war aber angenehm überrascht, dieses Update zu sehen.

Gute Nachricht: Ich habe git pull ausgeführt und neu aufgebaut, und alles schien einwandfrei zu funktionieren. (Obwohl ich eine Meldung erhielt, dass weniger als 5 GB verfügbar sind, musste ich also einige alte Docker-Images bereinigen und es ein zweites Mal versuchen.)

Aber soweit ich das beurteilen kann, ist alles in Ordnung. :tada:

Lass mich wissen, falls du weitere Informationen von meiner Seite benötigst.

8 „Gefällt mir“