Vscode-ng-language-service: Sprachdienst stürzt ab (auf Angular 4.1.2): JavaScript-Heap zu wenig Speicher

Erstellt am 14. Mai 2017  ·  5Kommentare  ·  Quelle: angular/vscode-ng-language-service

Ich habe kürzlich festgestellt, dass der Sprachdienst nicht mehr funktioniert und in der Konsole Folgendes angezeigt wird:


SCHWERER FEHLER: CALL_AND_RETRY_LAST Zuweisung fehlgeschlagen - JavaScript-Heap zu wenig Speicher

 Winkelsprachdienst: 4.1.2
 TypeScript: 2.1.6
 SCHWERER FEHLER: CALL_AND_RETRY_LAST Zuweisung fehlgeschlagen - JavaScript-Heap zu wenig Speicher
 1: node::Abort() [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 2: node::DLOpen(v8::FunctionCallbackInfo<:value i="9"> const&) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib ]
 3: v8::internal::FatalProcessOutOfMemory(char const*) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 4: v8::internal::FatalProcessOutOfMemory(char const*) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 5: v8::internal::Factory::NewFixedArray(int, v8::internal::PretenureFlag) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode. dylib]
 6: v8::internal::JSArrayBuffer::Setup(v8::internal::Handle<:internal::jsarraybuffer i="10">, v8::internal::Isolate*, bool, void*, unsigned long, v8::internal::SharedFlag) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 7: v8::internal::JSRegExp::New(v8::internal::Handle<:internal::string i="11">, v8::base::Flags<:internal::jsregexp::flag i ="12">) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 8: v8::internal::EhFrameIterator::DecodeSLeb128(unsigned char const*, int*) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 9: v8::internal::HeapNumber::HeapNumberPrint(std::__1::basic_ostream>&) [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework.framework/Versions/A/Libraries/libnode.dylib]
 10: v8::internal::RegisterConfiguration::AreAliases(v8::internal::MachineRepresentation, int, v8::internal::MachineRepresentation, int) const [/Applications/Visual Studio Code.app/Contents/Frameworks/Electron Framework .framework/Versions/A/Libraries/libnode.dylib]
 11: 0x2c0596f843a7
 12: 0x2c05971a4765
 13: 0x2c0597196a67
 [Info - 22:12:40 PM] Verbindung zum Server wurde geschlossen. Server wird neu gestartet.


Dies geschah entweder nach dem Upgrade auf Angular 4.1.1 oder 4.1.2 , vielleicht spielten auch andere Faktoren eine Rolle.

Das Problem lässt sich leicht lösen, indem die Abhängigkeiten aktualisiert werden:

cd ~/.vscode/extensions/Angular.ng-template-0.1.3
yarn upgrade @angular/language-service typescript vscode-languageserver

Ich hatte auch die Deps in Angular.ng-template-0.1.3 aktualisiert, aber das allein hat das Problem nicht behoben, ich habe die Änderung auch nicht rückgängig gemacht:

cd ~/.vscode/extensions/Angular.ng-template-0.1.3/server
yarn upgrade vscode-languageclient vscode typescript
bug

Hilfreichster Kommentar

@mafredri Die Fehler im zweiten Kommentar können auf die Aktualisierung von TypeScript nach 2.1 zurückgeführt werden. Das editorServices.ts erfordert erhebliche Änderungen, um nach 2.1 zu aktualisieren, weshalb dieses Plugin derzeit 2.1.5 verwendet.

Der erste Kommentar, von dem ich keine Ahnung habe.

Wenn Sie eine haben, sollten Sie die Dev-Abhängigkeit von @angular/language-service aus Ihrem Projekt entfernen, damit es wieder die eingebettete Version des Sprachdienstes verwendet. Wenn Sie noch keinen haben, ziehen Sie in Betracht, einen zum neuesten @angular/language-service hinzuzufügen.

Alle 5 Kommentare

Nachdem ich das obige Upgrade von deps durchgeführt habe, habe ich einige Fehler in der Erweiterungsausgabe bemerkt und sie hier hinzugefügt, falls sie hilfreich sein könnten:


Fehler: Länge < 0

 /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:10600
 throw new Error("Länge < 0");
 ^

 Fehler: Länge < 0
 at Object.createTextSpan (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:10600:19)
 bei TextChange.getTextChangeRange (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2024:44)
 bei ScriptVersionCache.getTextChangesBetweenVersions (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2112:80)
 at LineIndexSnapshot.getTextChangeRangeSinceVersion (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2177:31)
 at LineIndexSnapshot.getChangeRange (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2182:21)
 bei AcquireOrUpdateDocument (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:74378:133)
 at Object.updateDocumentWithKey (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:74357:20)
 at Object.getOrCreateSourceFileByPath [as getSourceFileByPath] (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:86043:49)
 bei tryReuseStructureFromOldProgram (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:67052:28)
 bei Object.createProgram (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/node_modules/typescript/lib/typescript.js:66824:14)
 [Info - 11:19:08 AM] Verbindung zum Server wurde geschlossen. Server wird neu gestartet.


TypeError: Eigenschaft 'Art' von undefined kann nicht gelesen werden

 /Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43244
 switch (node.kind) {
 ^

 TypeError: Eigenschaft 'Art' von undefined kann nicht gelesen werden
 bei Evaluator.evaluateNode (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43244:21)
 bei Evaluator.evaluateNode (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43383:34)
 unter /Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43263:39
 bei visitEachNode (/Users/mafredri/ng2-project/node_modules/typescript/lib/typescript.js:14724:30)
 bei Object.forEachChild (/Users/mafredri/ng2-project/node_modules/typescript/lib/typescript.js:14840:24)
 bei Evaluator.evaluateNode (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43248:22)
 unter /Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43317:103
 bei Array.map (nativ)
 bei Evaluator.evaluateNode (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43317:69)
 bei objFromDecorator (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:43753:33)
 [Info - 11:15:20 AM] Verbindung zum Server wurde geschlossen. Server wird neu gestartet.


TypeError: Eigenschaft 'Metadaten' von null kann nicht gelesen werden

 /Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:48425
 var _d = this.resolver.getNonNormalizedDirectiveMetadata(directive.reference), metadata = _d.metadata, annotation = _d.annotation;
 ^

 TypeError: Eigenschaft 'Metadaten' von null kann nicht gelesen werden
 at TypeScriptServiceHost.ensureTemplateMap (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:48425:113)
 at TypeScriptServiceHost.getTemplateReferences (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:48265:14)
 unter LanguageServiceImpl.getTemplateReferences (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:47956:90)
 unter /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2689:78
 zur Zeit (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2677:22)
 at Object.getTemplateReferences (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2689:20)
 bei Project.updateFileMap (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:788:62)
 bei Project.updateGraph (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:806:14)
 bei Project.finishGraph (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:798:14)
 bei ProjectService.updateConfiguredProject (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:1708:25)
 [Info - 11:14:33 AM] Verbindung zum Server wurde geschlossen. Server wird neu gestartet.


SERVERFEHLER: Eigenschaft 'charCount' von undefined kann nicht gelesen werden

 SERVERFEHLER: Eigenschaft 'charCount' von undefined kann nicht gelesen werden
 TypeError: Eigenschaft 'charCount' von undefined kann nicht gelesen werden
 bei LineNode.walk (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2439:39)
 at LineIndex.edit (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2304:27)
 bei ScriptVersionCache.getSnapshot (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2086:39)
 bei ScriptInfo.snap (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:405:25)
 bei LSHost.lineOffsetToPosition (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:649:28)
 unter /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:1439:86
 bei Array.map (nativ)
 bei ProjectService.lineOffsetsToPositions (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:1439:30)
 unter /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/documents.js:151:56
 bei TextDocuments.logErrors (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/documents.js:234:13)
 [Error - 11:19:44 AM] Benachrichtigungshandler 'textDocument/didChange' mit Meldung fehlgeschlagen: Eigenschaft 'charCount' von undefined kann nicht gelesen werden


Benachrichtigungshandler 'textDocument/didChange' mit Meldung fehlgeschlagen: Eigenschaft 'charCount' von undefined kann nicht gelesen werden

 [Fehler - 11:42:51 AM] Benachrichtigungs-Handler 'textDocument/didChange' mit Meldung fehlgeschlagen: Eigenschaft 'charCount' von undefined kann nicht gelesen werden
 /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2431
 childCharCount = child.charCount();
 ^

 TypeError: Eigenschaft 'charCount' von undefined kann nicht gelesen werden
 bei LineNode.walk (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2431:35)
 at LineIndex.edit (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2304:27)
 bei ScriptVersionCache.getSnapshot (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2086:39)
 at ScriptVersionCache.latestVersion (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2050:18)
 bei LSHost.getScriptVersion (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:542:29)
 bei TypeScriptServiceHost.getTemplates (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:48312:39)
 unter LanguageServiceImpl.getDiagnostics (/Users/mafredri/ng2-project/node_modules/@angular/language-service/bundles/language-service.umd.js:47959:35)
 unter /Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2686:72
 zur Zeit (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2677:22)
 bei Object.getDiagnostics (/Users/mafredri/.vscode/extensions/Angular.ng-template-0.1.3/server/editorServices.js:2686:20)
 [Info - 11:42:51 AM] Verbindung zum Server wurde beendet. Server wird neu gestartet.

@mafredri Die Fehler im zweiten Kommentar können auf die Aktualisierung von TypeScript nach 2.1 zurückgeführt werden. Das editorServices.ts erfordert erhebliche Änderungen, um nach 2.1 zu aktualisieren, weshalb dieses Plugin derzeit 2.1.5 verwendet.

Der erste Kommentar, von dem ich keine Ahnung habe.

Wenn Sie eine haben, sollten Sie die Dev-Abhängigkeit von @angular/language-service aus Ihrem Projekt entfernen, damit es wieder die eingebettete Version des Sprachdienstes verwendet. Wenn Sie noch keinen haben, ziehen Sie in Betracht, einen zum neuesten @angular/language-service hinzuzufügen.

Die editorServices.ts erfordert erhebliche Änderungen, um die Version 2.1 zu aktualisieren, weshalb dieses Plugin derzeit 2.1.5 verwendet.

@chuckjaz Ich fand dies nicht der Fall (wie in meinem PR # 105 zu sehen ist). Aber ich kann nicht sicher sein, dass ich nichts übersehen habe.

Wenn Sie einen haben, sollten Sie die Dev-Abhängigkeit von @angular/language-service aus Ihrem Projekt entfernen, damit die eingebettete Version des Sprachdienstes wieder verwendet wird.

Ich habe es als Dev-Abhängigkeit, aber mein PR-Zweig funktioniert gut, also würde ich es vorziehen, nicht auf eine ältere Version des Sprachdienstes zurückzugreifen.

Wie konfiguriere ich dieses Plugin " Nicht um " in bestimmten Ordnern
Bitte helft

Dieses Problem wurde aufgrund von Inaktivität automatisch gesperrt.
Bitte reichen Sie ein neues Problem ein, wenn Sie auf ein ähnliches oder verwandtes Problem stoßen.

Lesen Sie mehr über unsere Richtlinie zum automatischen Sperren von Konversationen .

_Diese Aktion wurde automatisch von einem Bot ausgeführt._

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen