Interface stability (sidebar to dce/rpc "client" api)

David Collier-Brown David.Collier-Brown at canada.sun.com
Tue Aug 22 14:31:04 GMT 2000


Steve Langasek wrote:
> Luke, it seems to me that this is a non-issue.  *Any* time you change the
> interface between two pieces of code, you're going to break something, no
> matter if that interface is a Unix socket or a dlopen() call.

	Managing these kinds of change is a Solved Problem
	in Computer Science: the RDBMS boys do it all
	the time, and don't even notice they're doing it (;-))

	To brutallly oversimplify: 
	1) all variables in the relation (struct in our case)
	   must have a well-defined "NULL" value
	2) new variables are added at the end
	3) dead variables are set to null
	3) if the relation is to be reorganized to eliminate
	   old dead variables, it will need a version number.

	And yes, this is off-topic (;-))

--dave
[Paul Stachour has promised to put his paper on this up on his
web site, now we've found a copy to scan in: this is a very old
technique, and dates back to my Multics days. The paper is
almost as old...]
-- 
David Collier-Brown,  | Always do right. This will gratify some people
185 Ellerslie Ave.,   | and astonish the rest.        -- Mark Twain
Willowdale, Ontario   | //www.oreilly.com/catalog/samba/author.html
Work: (905) 415-2849 Home: (416) 223-8968 Email: davecb at canada.sun.com




More information about the samba-technical mailing list