lichess.org
Donate

Lichess on scala3 - help needed

Is the team aware of all bugs that were recently reported in discord#support and across the forums, after the scala3 announcement thread was unstickied?
@Cedur216 said in #3:
> Is the team aware of all bugs that were recently reported in discord#support and across the forums, after the scala3 announcement thread was unstickied?

I've been reading the Lichess Feedback forum and entering new issues when I perceive there are new issues, and adding comments to existing issues when I perceive there is new information.

Discord#support seems quite responsive; have you tried your question there?
4/12/2022 at 1:01 AM
> lichess.org/tournament/kHc65sZl this arena wasn't logged on my profile. I referred to this scala upgrade bug before, then it was apparently fixed for everyone, but actually, it comes back sporadically for some people

5/12/2022 at 1:00 AM (after realizing it affects everyone and all arenas)
> Arena logging completely broke again

no responses both times, someone just asked the next question
I assume you already got these links and have completed the steps to migrate from Scala 2 to Scala 3 and it was not done manually.

www.scala-lang.org/2019/12/18/road-to-scala-3.html
docs.scala-lang.org/scala3/guides/migration/compatibility-intro.html

docs.scala-lang.org/scala3/guides/migration/tutorial-sbt.html
docs.scala-lang.org/scala3/guides/migration/tooling-tour.html
docs.scala-lang.org/scala3/guides/migration/tooling-syntax-rewriting.html

www.toptal.com/scala/scala-bytecode-and-the-jvm

techviewleo.com/how-to-install-scala-on-ubuntu-linux/

youtu.be/_f2kCanybSg

Best of luck to every one.
Hi, here is some discussion of the topic on a coding forum 'hacker news'. It's evolving but a couple of comments seemed potentially relevant. news.ycombinator.com/item?id=33865932

(1)

"> I don't think the garbage collector is to blame. During the worst times, when the JVM almost maxed out 90
CPUs, the GC was only using 3s of CPU time per minute.

The graph linked only shows 3s in young gen GC - you should check the time spent in the old gen GC too.

You can get loads of time spent in GC even without running out of memory - running out of other resources like file handles or network connections will also trigger a full GC in the hopes of freeing some up.

If you've got 1000 file handles available, one process that uses 100 per second and doesn't leak, and another that uses 1 per hour and leaks it, after 900 hours everything will look fine, then after 1000 hours you'll run out - and the symptoms will manifest in the first process, not the second.

Admittedly, there's a text file of jstats output linked which doesn't show any full GC happening, so maybe this is nothing... "

(2)

"I assume the author tried asking in the Scala discord?
discord.com/invite/scala

Most of the core community hangs out there, and some of the folks that contribute to the compiler too. If there's someone that knows, they're either on the Discord or the forums. "
Even though I'm a professional software developer I can't help you with this particular problem. It's jut too far outside my field of expertise.

I wish you the best of luck and hope you, or someone else, figures out what's going on. I sympathize with the unfortunate situation you / Lichess is in at this point. May the digital gods be with you.
Have you tried using some profiler to see what is causing your problems with high CPU usage? Maybe you can find some answers there.