[OpenAFS-devel] unix sockets (and maybe devices?)

Tom Keiser tkeiser@gmail.com
Thu, 20 Sep 2012 01:48:26 -0400


On Wed, Sep 19, 2012 at 11:40 PM, Troy Benjegerdes <hozer@hozed.org> wrote:
> What is our general consensus on unix sockets?
>
> I'm attempting to run an AFS server out of an AFS root filesystem,
> and several things like to make sockets in /etc/openafs/server/local.
>
> I understand that 'in theory' we might want to distribute sockets at
> some point, but why does SYNC_bindSock need to fail?

Because you forgot to pass --disable-unix-sockets...


>
> Thu Sep 20 03:06:56 2012 SYNC_bindSock: bind failed with (1)
>
> Following the principle of least surprise, Wouldn't it be better
> to at least make the socket work on the local machine?
>

Perhaps...once the following conditions are met:

1. we've either: a) resolved the local/distributed debate, or b) found
a way to do local-only now without precluding distributed from being a
future strategy (the complications of doing local-only--sans a
cohesive strategy for implementing distributed fifos in the
future--have been discussed at-length on this list in the past);

2. the semantics for fifos/sockets in AFS-3 are clearly defined (e.g.,
mapping PRSFS permissions onto the various fifo-/socket-specific vnode
operations, how callback breaks affect open fifos/sockets, what
happens to open fifos/sockets when all repsites are down, etc.); and

3. the RPCs needed to create and destroy new vnodes types are defined.


> If someone wants distributed unix domain sockets, then I'd argue
> something like OpenSSI is a better solution. I don't think any
> filesystem (including Lustre) has tried to make unix sockets work
> across machines.
>

The entire point of a distributed file system is to produce a
loosely-coupled, immanently fault-isolated, heterogeneous system
providing a useful toolkit of fundamental primitives, and (best
effort) uniform semantics.  Regardless of whether or not distributed
sockets/fifos have any intrinsic merit, how does a tightly-coupled,
homogeneous, single system image machine have any applicability
to--let alone supplant one of the options in--this debate?

-Tom