Killing time

meepbear * meepbear at
Sun Jul 10 14:20:29 PDT 2005

>Here's a draft:

Wouldn't now be as good a time as any to introduce a formal version 
parameter as well?

When a consumer first talks to a server (association phase) it'll picks its 
native (highest) version number and sends that to the server. If the server 
supports it will return the same number, if it doesn't it will return the 
version closest to it (which might be higher or lower than what the consumer 
asked for) that it supports.
It's then up to the consumer to check whether it can proceed or fail with an 
"incompatible version" error.

It also offers a way for the consumer to recover should the spec for the 
association phase ever change (consumer asks for v1.2 which sends params x 
and y, the server returns that the closest it supports is v1.1 which expects 
params y and z so the consumer can just fallback and re-associate sending 
the y and z the server is expecting this time).

More information about the yadis mailing list