[OpenAFS] [Elders] OpenAFS Project List

Phil.Moore@msdw.com Phil.Moore@msdw.com
Fri, 16 Mar 2001 08:57:27 -0500 (EST)


Here are my comments and clarifications on the various items I
foolishly allowed to have my name attached to....

The dates for delivering all oft he code that has to be tossed over
the corporate walls of MSDW would be sometime by this summer.  I'd
commit to "by the next AFS user group conference", but I have no idea
when that is, and if it's next week (a) I can't make it, and (b) I'll
look stupid so....  by this summer.

|------------------+--------------+---------------+----------------------|
| NFS hardmount    | In Progress ?| N/A           | Phil Moore (Morgan   |
| capability       | Available??  |               | Stanley) believes    |
|                  |              |               | this capability was  |
|                  |              |               | already added to the |
|                  |              |               | code in 1997.  Phil  |
|                  |              |               | will find out how    |
|                  |              |               | this is configured   |
|                  |              |               | and share it with the|
|                  |              |               | team.  Craig Everhart|
|                  |              |               | will check at IBM    |
|                  |              |               | too.                 |
|------------------+--------------+---------------+----------------------|

See seperate mail I sent about this.  I left out the "long winded
story" about the historical reasons why MSDW would have had to throw
AFS out if we had not hard hard mounts.  That, I'll provide some other
time...

|------------------+--------------+---------------+----------------------|
| Old PERL 4 API,  | In Progress ?| N/A           | Phil Moore (Morgan   |
| wrappers around  | Available    |               | Stanley)             |
| VOS, PT ? admin  |              |               |                      |
| scripts for      |              |               |                      |
| automation       |              |               |                      |
|------------------+--------------+---------------+----------------------|

In 1994, I wrote a perl4 library for the vos, fs, pts and bos
commands.  This code is crude, but very, very effective, and it
allowed us to write all of the tools I discuss below.

This API really needs to be complete re-written for perl5, using XS
bindings where appropriate.  See below...

|------------------+--------------+---------------+----------------------|
| Audit tools ?    | In Progress ?| N/A           | Phil Moore (Morgan   |
| VLDB audit ?     | Available    |               | Stanley)             |
| cross check      |              |               |                      |
| between VLDB and |              |               |                      |
| file servers     |              |               |                      |
| (VLDB and volume |              |               |                      |
| header           |              |               |                      |
| comparison)      |              |               |                      |
|------------------+--------------+---------------+----------------------|

We have a numebr of very powerful administrative tools that audit that
state of an AFS cell.  The single most importnat one is "vldbaudit".
This code queries the entire VLDB, and the volume headers from all
fileservers in a cell (which is, yes, canonically difficult to
determine), and then performs a complete 2-way sanity check of
consistency.

For example, vldbaudit whines about:

(a) Orphaned volumes
(b) Duplicate volumes (same vol ID, on two different partitions of the
    same machine)
(c) Offline volumes
(d) Name mismatches (header say volname is foo, vldb says bar)

Plus a lot of MSDW specific policy, such as RO count should be at
least 3.  This code also makes shameless use of our infrastructure, so
part of it would have to be excised, but the core sanity checks are
useful.

|------------------+--------------+---------------+----------------------|
| Volume Management| In Progress ?| N/A           | Phil Moore (Morgan   |
| System ? uses    | Available    |               | Stanley)             |
| relational       |              |               |                      |
| database at the  |              |               |                      |
| back end         |              |               |                      |
|------------------+--------------+---------------+----------------------|

Did anyone on this list ever see my presentation at Decorum '97?  VMS
is the single most important thing I ever did for AFS at MSDW, and its
the backbone of our entire UNIX development environment (and but for
politics and stupidity, could have been so for NT, but...)

VMS is discussed, at a high level, in:

http://www.mindspring.com/~wpm/decorum97/

The code as it is currently written makes shameless use of MSDW
specific infrastructure, and the code could never be used outside of
our site without some code changes, but I beleive you could make it
work in a single cell environment with a bit of effort.

The code is, at the very least, a great starting point for a new
development, as the basic namespace management concepts at its core
are where the real value is.

|------------------+--------------+---------------+----------------------|
| Back-up --       |              | Medium/High   | Morgan Stanley (Phil |
| documentation on |              |               | Moore, Warren Yenson)|
| interfaces       |              |               | will contribute      |
| available in     |              |               | documentation on     |
| terms of hooks   |              |               | Networker and vosASM.|
| into vendor      |              |               | IBM (Laura Stentz)   |
| backup products  |              |               | will check on the    |
|                  |              |               | availability of      |
|                  |              |               | documentation for the|
|                  |              |               | ADSM/Tivoli Storage  |
|                  |              |               | Manager interface).  |
|------------------+--------------+---------------+----------------------|

We use networker with vosasm, last time I looked, which was 3 years
ago.  I don't think that's changed, but all we'll be doing is making
sure the networker/vosasm backup option is sufficiently documented.

|------------------+--------------+---------------+----------------------|
| Increase Limits  | ???          | ???           | Note:  Groups in     |
| in General (e.g.,|              |               | Groups would help    |
| > 20 entries per |              |               | with the ACL limit.  |
| ACL, 32 character|              |               | Phil Moore (Morgan   |
| limit on volume  |              |               | Stanley) manages the |
| name, etc.)      |              |               | volume names in a    |
|                  |              |               | relational database  |
|                  |              |               | and could contribute |
|                  |              |               | the code.            |
|------------------+--------------+---------------+----------------------|

See VMS.  The relevant idea here is that volume names are far too
short for any convention that attempts to encode pathname,
architecture or other information in the volume name to be
sufficientlt descriptive.

Thus, VMS creates volume names with a classification tag, a unique
idea, and a "comment" which may or may not assist a human when they
read the volume name.  

Then, the relational mapping from the volume name (really the unique
ID) can be to as many arbitrary attributes as one wants.

|------------------+--------------+---------------+----------------------|
| Generic @values  |              | ???           | Phil Moore and Travis|
|                  |              |               | Broughton will       |
|                  |              |               | collaborate on a     |
|                  |              |               | position paper on    |
|                  |              |               | generic @ values.    |
|------------------+--------------+---------------+----------------------|

You've already seen hints of this.  I will work with Travis, and
others to produce a draft of an RFC-like document for fuirther
discussion, flame wars, etc.  

This, I will commit to within the next week.

|------------------+--------------+---------------+----------------------|
| PERL API work    | ???          | ???           | Phil Moore (Morgan   |
|                  |              |               | Stanley).  Phil will |
|                  |              |               | investigate what is  |
|                  |              |               | presented at the     |
|                  |              |               | Garching conference, |
|                  |              |               | and has expertise to |
|                  |              |               | contribute as well.  |
|------------------+--------------+---------------+----------------------|

The old perl4 API I wrote is very, very long in the tooth, and while
its powerful, its also slow (fork/exec's to hell and back), and I've
since learned the ins/outs of perl5 XS programming, and enough about
OO design to get myself into trouble.

I'll be participating in the development of the new XS based modules,
and see what kind of value I can add to that effort.