On Tue, 17 Feb 2009 18:33:17 -0800 "C. Titus Brown" <[email protected]> wrote:
> How about just using a simple write lock around any sections that > modify pygr.Data, or (even simpler) around any XML-RPC-exposed > functions that modify pygr.Data? I thought about that, there is however an issue of multiple servers running independently on top of the same back-end(s) - how would they exchange locking information? The problem isn't in my opinion purely theoretical, as there are two examples which immediately come to mind: - an SSL and a non-SSL server run in two separate processes on the same machine; - multiple servers using files on a common remote file systems or connecting to the same SQL database. Unless I haven't spotted some other option, it seems back-end-level locking is required to address such issues. Fortunately AFAIK all back-ends we use provide such capabilities, then again we'd need to investigate what exactly they offer, whether it is done automatically or not etc. > I don't have a sense of how hard it would be to be able to manipulate > remote data -- do you mean download & then manipulate? -- but I > suspect it would be useful ;) The easiest way would likely indeed be download-then-manipulate, so so I think. Or we could begin by providing simple remote-write support and only think about extending it to actual manipulation of remote data later. Anyway, the way I see it remote-write support would require the following, or similar, RPC methods: - authenticate with remote server (preferably split into several sub-methods to avoid the risk of having credentials accidentally sent over the network in plain text); - lock back-end (if needed); - upload object to server and have it written to the back-end; - unlock back-end (if needed); - clear authentication cache (servers should periodically do this even when unprompted but it's nice to allow explicit deauthentication). Any comments or suggestions, guys? -- MS --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "pygr-dev" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/pygr-dev?hl=en -~----------~----~----~----~------~----~------~--~---
