Chris Withers wrote: > Jim Fulton wrote: >> I'm fine with change the storage server to pass the history size >> argument as a keyword parameter. > > Okay, but where is the Z309 equivalent of ZEOStorage308Adapter's history > method?
Ug, the answer is much less pleasant :-( So, a ZODB 3.9.3 ClientStorage calls the ServerStub's history method, this does an rpc call: self.rpc.call('history', oid, length) Which comes in on the server and gets despatched straight out in: /ZEO/zrpc/connection.py", line 581, in handle_request This, of course, means we can't pull the keyword parameters trick, since ZEO's rpc doesn't support keyword parameters from what I saw... I'm not sure what to suggest here... - release a new version of zeoraid targeted at zodb 3.9+ that doesn't include any version parameters anywhere. (I dunno how Christian would feel about the maintenance burden) - drop support for zodb < 3.9 in zeoraid and remove all version parameters. That'd be fine by me, dunno how Christian would feel. - use some kind of StorageInterface to indicate what parameters a storage expects. (this would require work on both zeoraid and zeoraid :-/) - make zrpc.connection.Connection.handle_request do some fancier work around 581 to check what parameters the method is expecting. I worry that might impact performance though... Help? Chris -- Simplistix - Content Management, Batch Processing & Python Consulting - http://www.simplistix.co.uk _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org https://mail.zope.org/mailman/listinfo/zodb-dev