pool eden thrift connections
pool eden thrift connections

Summary:
Whenever a file is modified in an EdenFS mount and a watchman subscription is
active, watchman will be nodified and will issue a getFilesChangedSince Thrift
call. In order to do that, Watchman ends up always re-creating a new connection
to EdenFS, causing the .eden/socket or .eden/config to be re-read in order to
find EdenFS's socket.

For workloads with heavy write traffic to EdenFS, this readlink/read can add
up. On Windows, writing ~2.5GB worth of data lead Watchman to read over 650MB
worth of data from the .eden/config!

Reviewed By: kmancini

Differential Revision: D29508654

fbshipit-source-id: 60440d645340bc4fe16ea9618d7a5080740e4d87

nodakai/watchman,nodakai/watchman,facebook/watchman,nodakai/watchman,nodakai/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,facebook/watchman,facebook/watchman,nodakai/watchman,nodakai/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,facebook/watchman,nodakai/watchman