Just-In-Time build still broken on my windows servers

Still getting
Build server is unreachable: HTTP error: 502 - Bad Gateway: undefined

when deploying, mostly on JIT builds. I also notice that doing the build (ZIP: least compression, lest memory) still takes more than 10 minutes on our windows machine with the end result just 60MB compressed. Something is seriously wrong there I think

Hey Tobias, we’re working on a new version right now that should make the 502 errors even more unlikely to occur. That should be released in the next week or two and should help the problem.

As for the time the build takes, have you taken a look at the otto-info log? Do you know which parts of the build are taking that time? The log should tell you when the build starts and when backups complete and zipping happens. The new version will have an even better version of this logging as well. If the zipping is taking the 10 minutes you could try increasing the memory allocation for the build. If the backup is taking that long then there is not much we can do as that is just how long FileMaker takes to run the backups.

-Kyle

1 Like

After looking at the log I think the problem lies in the way you build the zip. You clone each file and add that to the zip one after the other. It would be much more efficient to clone/copy all files and add them to the zip all at once. AFAIK adding a new file to a zip requires the zip to be extracted and compressed each time. So that creates unnecessary work for the server.

also the repeated
2024-04-09T19:24:11.906Z info GET: /otto/api/info
2024-04-09T19:24:11.932Z info GET: /otto/api/build/:buildId/status
2024-04-09T19:24:11.988Z info Getting build status for build xxx

cost 8-12 seconds each. You should try to do them in parallel to the build creation.

-Tobias

Hey Tobias,

We used to do a backup of all files and then zip them, however that process took longer than doing the zips and backups in the sort of cascading method we do now. our zipping process is not closing and opening the zip file with each individual file, we open the zip, add all of the files, and then close it at the end. If you were to grab the zip file between two of the files being added it would be an invalid zip file.

The calls you are seeing there are not “costing” 8-12 seconds, they just happen every 8-12 seconds. they are polling from OttoDeploy so that we can show you when your build is finished. The processes they are running run entirely separately from the backups and zipping.

Do you mind DMing me your otto-info.log file? I can take a look and see if I see anything out of the ordinary.

-Kyle

Sorry, hard at work at the moment. Will dm you the log the next time it fails.
-Tobias