antlr / antlr4

ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
http://antlr.org
BSD 3-Clause "New" or "Revised" License
17.23k stars 3.29k forks source link

Lab is down #4471

Closed aaliakseyenka closed 12 months ago

aaliakseyenka commented 12 months ago

Antlr lab is down :( Was up at least on Friday https://lab.antlr.org/

JeSuisUneLicorne commented 12 months ago

Its down since days. My first thought: Did my shitty grammar broke it?

Anyways.... Please restart the service.

ericvergnaud commented 12 months ago

@parrt I guess only you can do something about this ?

parrt commented 12 months ago

sorry about that. back up. CPU was pegged.

kaby76 commented 11 months ago

It's down again. Thu, Dec 7, 2023 6:21:18 AM EST.

parrt commented 11 months ago

Seems up right now.

TobinCavanaugh commented 6 months ago

Seems to be down again. Tues 9:30 2024/05/21

parrt commented 6 months ago

Damn. seems like I'm going to have to figure out a way to increased performance or identify people hitting the server are too hard.

parrt commented 6 months ago

Strange. CPU is idle. 17% RAM usage for java process. Oh. log shows:

java.lang.OutOfMemoryError: Java heap space
        at java.base/java.lang.StringLatin1.toChars(StringLatin1.java:73)
        at java.base/java.lang.String.toCharArray(String.java:2855)
        at org.antlr.runtime.ANTLRStringStream.<init>(ANTLRStringStream.java:75)
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:334)
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:314)
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:300)
        at org.antlr.v4.tool.LexerGrammar.<init>(LexerGrammar.java:33)
        at org.antlr.v4.server.GrammarProcessor.interp(GrammarProcessor.java:69)
        at org.antlr.v4.server.ANTLRHttpServer$ParseServlet.doPost(ANTLRHttpServer.java:86)
...

Earlier I see:

java.lang.UnsupportedOperationException
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:339)
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:314)
        at org.antlr.v4.tool.Grammar.<init>(Grammar.java:300)
        at org.antlr.v4.tool.LexerGrammar.<init>(LexerGrammar.java:33)
        at org.antlr.v4.server.GrammarProcessor.interp(GrammarProcessor.java:69)
        at org.antlr.v4.server.ANTLRHttpServer$ParseServlet.doPost(ANTLRHttpServer.java:86)
...

Wow. There are a bunch of those. That appears to be because it does not get a tree from the grammar:

https://github.com/antlr/antlr4/blob/dev/tool/src/org/antlr/v4/tool/Grammar.java#L337C3-L340C4

this.ast = tool.parse(fileName, in);
if ( ast==null ) {
    throw new UnsupportedOperationException();
}

That does not seem to be a problem... I guess it's the out of memory issue. Hmm...ok There was no maximum set and I don't have much memory but I said it to 3G. restarted. please try again.

davemackintosh commented 5 months ago

Seems to be down again @parrt

parrt commented 5 months ago

back up. more mem didn't help. :( Will have to investigate I guess :(