Triplea: Binaries missing in pre-releases

Created on 30 Dec 2019  路  16Comments  路  Source: triplea-game/triplea

bin

Problem

All 16 comments

Failed with:

install4j: compilation failed. Reason: java.lang.OutOfMemoryError: Java heap space

Closed as latest releases have them included.

@DanVanAtta Seems to occur constantly now.

CC: @RoiEXLab @ron-murhammer @ssoloff

Still the same error unfortunately :/

Until we actually resolve the problem, this seems to be a liability.
The issue is heap space for the install4j process. We do not control that very directly.
It's less than ideal., I don't think there is a readily available fix to be had here.

FWIW, the install4j gradle task was recently update to 8x; Assuming that is okay, perhaps that may have an impact on this issue. Will be interesting if/when how often we see this problem going forward.

@DanVanAtta
I am reopening this, as we see on https://github.com/triplea-game/triplea/releases
that the creation of binaries seems to be a result of a lottery, still.

It looks like this problem is happening more often than not.

It's not a trivial fix as the problem is not really in our control 100%.

We also do not have a lot to go off of to know where this problem is coming from, secondly the iteration time for building installers is very slow, which could make this a painful fix.

The only things I can think of:

  • see if we can add flags to increase heap space
  • start removing likely suspects
  • downgrade install4j version and/or all dependencies from when this problem started happening.

@RoiEXLab any thoughts on this one by any chance?

@RoiEXLab I wonder a bit about JavaFX dep's, particularly as install4j seemingly has trouble with them. Perhaps this is related to: https://github.com/triplea-game/triplea/issues/5755

as install4j seemingly has trouble with them.

What do you mean? Could you name an example? I doubt that it has something to do with it. After all RAM doesn't necessarily have anything to do with actual persistant storage space.

But apart from that. no clue. I remember that we had a somewhat related issue quite some time ago, where the PR builder was constantly running out of memory as well. IIRC @ssoloff created a ticket for this which resulted in the variable _JAVA_OPTIONS to be set by travis for the gradle daemon. Maybe something similar could help?

Not finding JAVA_OPTS in history or code. It'd be really ideal if we could fix this with adding resources.

Could you name an example?

Travis is reporting 7k warnings for pack200 issues.

I doubt that it has something to do with it.

I suspect that could be right, but we don't know what is causing our heap to run out of space. The timing of adding many megabytes, and perhaps if it's not being handled well and we are getting maybe something like file handles being leaked into heap, then it's conceivable we could run out of space and it be exacerbated with additional javaFx class files.

IIRC @ssoloff created a ticket for this which resulted in the variable _JAVA_OPTIONS to be set by travis for the gradle daemon.

2365 links back to all applicable issues and PRs.

Thanks @ssoloff for the reference, that was a help and a similar fix applied in #5897 seems to have worked.

The latest master build with a 3G heap looks to have successfully built installer artifacts. The build process still died though:

Triggering github release by pushing tag: 2.0.17868
+cd website
+git update-index --refresh
_maps/dragon-war.html: needs update

Along a few fixes, added a setting for the gradle max heap size to be 3G (increased from 2G) when building installers. Since then have not seen an out of heap failure and the latest release has the installers attached to it.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

DanVanAtta picture DanVanAtta  路  5Comments

DanVanAtta picture DanVanAtta  路  5Comments

DanVanAtta picture DanVanAtta  路  6Comments

DanVanAtta picture DanVanAtta  路  6Comments

DanVanAtta picture DanVanAtta  路  8Comments