enso-org / enso

Hybrid visual and textual functional programming.
https://enso.org
Apache License 2.0
7.31k stars 317 forks source link

Soft retries when awaiting runtime responses #10272

Closed hubertp closed 2 weeks ago

hubertp commented 2 weeks ago

Pull Request Description

A quick and dirty workaround for slow processing in a similar spirit to PR #9858. Long compilation of stdlib holds a write compilation lock, while opening the file needs to set module sources and requires read compilation lock and file lock. The expectation was that setting module sources is instantaneous except not, because of locks.

This PR adds soft retries.

Partially closes #10231. There are still problems related to https://github.com/enso-org/enso/issues/9993 once this PR is merged.

Important Notes

We need to figure out a more fine-grained lock system or, ideally, make it lock free to avoid such hacks.

Checklist

Please ensure that the following checklist has been satisfied before submitting the PR: