eclipse-archived / ceylon

The Ceylon compiler, language module, and command line tools
http://ceylon-lang.org
Apache License 2.0
395 stars 62 forks source link

Shared circular dependency causes java.lang.StackOverflowError #7374

Open ItsDoot opened 6 years ago

ItsDoot commented 6 years ago

I have a large IntelliJ project, of which there are ~102 source files in 11 modules.

Recently I started receiving this message in the Event Log quite often:

Ceylon model update failed The Ceylon model update triggered an unexpected exception: java.lang.StackOverflowError that will be reported in the Event View. To avoid performance issues the automatic update of the Ceylon model has been disabled. You can reenable it by using the following menu entry: Tools -> Ceylon -> Enable automatic update of model.

ItsDoot commented 6 years ago

Here's the stacktrace of the error: https://gist.github.com/xDotDash/0f2008b1bca74c680eb1c63b3f049ced

davidfestal commented 6 years ago

The change producing this error might be that you exported a module (with a shared import) involved in a circular dependency.

ItsDoot commented 6 years ago

Fixed ^

gavinking commented 6 years ago

Fixed how exactly?

ItsDoot commented 6 years ago

As davidfestal suggested, I removed a shared circular dependency.

davidfestal commented 6 years ago

Let's reopen it: the IDE common dependency analyzer should detect this case and stop recursion