mirror of https://github.com/sbt/sbt.git
Updated Client server discovery lifecycle (markdown)
parent
87f73dd7b7
commit
b0c4c88dbf
|
|
@ -13,6 +13,12 @@ How should the [server](https://github.com/sbt/sbt/wiki/Client-server-split) be
|
|||
* Potentially controversial, but based on experience: operating system lockfile functionality tends to be platform-specific and flaky (e.g. not working on NFS/AFS, not working between threads, stuff like that), so avoid if possible. This is likely a main question (whether to use FileLock).
|
||||
* There are more robust platform-specific solutions available, such as D-Bus on Linux, COM or window-based mechanisms on Windows, and launchd on Mac. These are likely a total pain in the ass to use from the JVM, though. Is there any sane-from-JVM way to do a reliable named lock?
|
||||
|
||||
## Concerns (possibly newly discovered)
|
||||
|
||||
1. Passing sys.props down from forked process to the server. Things like:
|
||||
`-Dhttp.proxyHost`
|
||||
`-Dsbt.version`
|
||||
|
||||
## Proposal 1: active.properties
|
||||
|
||||
This proposal is intended to "self-heal" and work in practice without asking users to kill processes or delete lockfiles - but nobody will call it elegant. The general idea is that a server suicides if the file pointing to that server is overwritten or deleted.
|
||||
|
|
|
|||
Loading…
Reference in New Issue