Re: File access control
On Thu, Sep 29, 2011 at 3:41 AM, Grant emailgr...@gmail.com wrote: I see that subversion supports path-based authorization: http://svnbook.red-bean.com/en/1.5/svn.serverconfig.pathbasedauthz.html Is there a way to do file-based authorization? Hi Grant, WANdisco offer a commercial product which does exactly this based on our proxy technology. http://www.wandisco.com/subversion/accesscontrol has more details - feel free to get in touch if you have any questions. Best Wishes, Ian -- Ian Wild WANdisco, Inc. http://www.wandisco.com uberSVN: Apache Subversion Made Easy http://www.uberSVN.com http://www.ubersvn.com/
Re: File access control
On Thu, Sep 29, 2011 at 1:34 PM, Prabhu Gnana Sundar prabh...@collab.netwrote: ** On Thursday 29 September 2011 05:10 PM, Ian Wild wrote: WANdisco offer a commercial product which does exactly this based on our proxy technology. http://www.wandisco.com/subversion/accesscontrol has more details - feel free to get in touch if you have any questions. I could nowhere see any information about *file-based* authorization in the link provided above. I know it's not a detailed description, but as per the feature list on that page: Allows access control to be implemented at the SVNROOT, branch, directory or *file* levels. You can in fact specify regular expressions to determine patterns for your rules, and we support wildcards etc through that mechanism so it's pretty powereful. FYI: SubversionEdge has a simple and easy way of path-based authorization allowing the user to customize the permissions very easily. Seeing as I'm in plug mode, so does uberSVN - http://www.ubersvn.com :-) Best Wishes, Ian Ian Wild WANdisco, Inc. uberSVN: Apache Subversion Made Easy http://www.uberSVN.com http://www.ubersvn.com/
Re: Delay syncing to mirror repositories causing issues
On Mon, Aug 15, 2011 at 4:06 PM, Les Mikesell lesmikes...@gmail.com wrote: I can see how you might do a quorum based locking scheme there to make things reliable in the case of a partitioned network with multiple replicas, but what can it do to improve the time it takes for a certain amount of new/uncached data to make it to the other side of a slow network? Don't the rules of physics still apply? Hi Les, Yes, the rules of physics still apply, but the key with WANdisco is that the commit always happens at the local node, so anyone else using that local node to do the checkout gets the very latest version. There is no concept of a slave server with WANdisco. The quorum is established at the time of the commit and the mechanism provides a guarenteed way to ensure that the same commits are applied to all servers in the same order, but not necessarily at the same time (a server could be down, and would only catch-up its missed transactions when it came back on line). I should also add that Subversion Multisite in no way changes the operation of the underlying Subversion binaries and we are not implemented with hooks. In fact the product is a proxy server which sits between the client and server and reads/replicates write traffic as it's sent to all other servers. WANdisco have some huge customers and the product is used to solve these exact issues by thousands of developers every day. It's a very robust solution all round... If anyone on this list would like to get access to trial copy to prove out the claims then I'm sure I can arrange that, just drop me a mail and I will be happy to sort. Best Wishes, Ian -- Ian Wild WANdisco, Inc. http://www.wandisco.com uberSVN: Apache Subversion Made Easy http://www.uberSVN.com http://www.ubersvn.com/
Re: How can I setup two svnservers with svnsync and both should provide checkout and checkins
a procedural one. In read-only mode, sure. That's how DNS slaves, NTP slaves, and MMM or MySQL-Master-Master works. The problem is the remote idiot who activates write access to their local quorum. There is no defense against this, except to throw a screaming hissy if it happens, and ensure that *every working copy taken from the split-off repository is entirely rebuilt from scratch*. And Subversion servers simply have no reliable record of where the working copies are to enforce this. There is a perfectly good defence against this, and yes it's procedural. But it's the same defence as not allowing the silly admin the ability to type rm -rf * as root on a production server he thinks isn't, or 'drop database everything;'. Perhaps not the best examples, but surely you accept it's a silly point in a reasonably locked down enterprise environment with properly trained admins? Needed? No, not if you're willing to leave your remote cluster in read-only mode for an indefinite period until the VPN or network connection can be re-established to rejoing it to the distributed set of clusters. That's likely to kill remote software productivity for hours, if not days. I've had VPN wackiness last for *weeks* due to bureaucratic befuddlement. Again, you have to bear in mind our audience and the sort of customers we work with. We do have customers with very difficult connections to one or more sites globally. That doesn't affect the general usage of the platform though and in fact it's those users who often benefit most from a local WANdisco instance which cuts a load of read traffic off the network and provides fast reliable access to the local server. There is a sane fallback in that situation. Replicate the service to an alternative backup with a different UUID, tell developers to use that one in the short term, and provide assistance migrating their changes to the primary repository when write operations are available. It's painful, but doable. I could point you to plenty of people who wouldn't find that acceptable. If you have 20,000 developers and thousands of commits a day you simply can't put yourself in that sort of position I'd say. *Wrong*. As soon as a manager of an individual node can designate it a master with write permission, separated from the rest of the network, chaos is guaranteed. And you *CANNOT* hardcode the full set of nodes, because nodes have to be replacable or discardable. See above. That quorum agreement is at risk from local quorums. Hopefully now you see why that's not true? unless you've got some kind of transaction checksum stored with each Subversion databse transaction to check for discrepancies, it's at risk for discrepancies to circulate, for that split brain situation under such circumstances. Yes. Every transaction (ie Each WebDAV change sent by the client) is replicated with a checksum which is transmitted as part of the agreement and replication process. Sadly, I've seen this sort of thing happen with other databases, especially involving sensitive and complex information, that are not well managed. There are 300+ Enterprise users of our products today who represent many of the largest Subversion deployments in the world and who have never seen this sort of issue. But of course if we're talking about badly managed deployments, they are probably being run by people who aren't talking to WANdisco anyway. Ian -- Ian Wild Chief Solutions Architect WANdisco, Inc.
Re: How can I setup two svnservers with svnsync and both should provide checkout and checkins
. WANdisco's technology (And patent) does go quite a bit further in terms of the agreement process and again I'd encourage you to get your hand on a copy of Subversion Multisite and prove this to yourself. Remember this is the culmination of over 10 years research and development; you can get a lot done in that time! It's workable, but potentially fragile, and it is an *old* distributed computing problem. I hope you'll come back to this thread at some point with a changed view on this. I believe you will find our solution robust and effective when you dig deeper. It must be, given some of the customers and use cases we see (18 nodes in one instance, 18,000,000 transactions per day in another... I could go on). Best Wishes, Ian -- Ian Wild Chief Solutions Architect WANdisco, Inc.
Re: How can I setup two svnservers with svnsync and both should provide checkout and checkins
On Thu, Apr 21, 2011 at 6:28 AM, Daniel Shahaf d...@daniel.shahaf.namewrote: Ian Wild wrote on Wed, Apr 20, 2011 at 13:28:53 +0100: using our own patented active-active replication technology. What is the patent number? Thanks for asking. US20080140726 and WO 2006/076530 Ian -- Ian Wild Chief Solutions Architect WANdisco, Inc. Cell: +44 (0)7961193722 Office DDI: +44 (0)114 3030472 US: +1-925-6665007
Re: How can I setup two svnservers with svnsync and both should provide checkout and checkins
On Thu, Apr 21, 2011 at 10:02 AM, Daniel Shahaf d...@daniel.shahaf.namewrote: Translating from Patentese to English, I think it basically says This is the we solve the Consensus Problem (one of the standard problems in theoretical distributed computing). Thanks for the pointers. That sounds like a good translation to me. The maths gets complicated to put it mildly, but I know Dr Yeturu's work is in some part at least based on Paxos ( http://en.wikipedia.org/wiki/Paxos_algorithm ). AIUI we've got the only implementation of this model that can guarantee the consistency and ordering of transactions; important when you need your repositories to remain identical on every site! Ian -- Ian Wild Chief Solutions Architect WANdisco, Inc.
Re: How can I setup two svnservers with svnsync and both should provide checkout and checkins
On Wed, Apr 20, 2011 at 1:16 PM, Ryan Schmidt subversion-20...@ryandesign.com wrote: Snip For full multiple-master capability, you'll have to look elsewhere. For example, WANdisco is a commercial product that's based on Subversion that offers this. http://www.wandisco.com/subversion/multisite I've never used it and don't know anything more about it besides that it exists. Thanks very much for the plug Ryan. You're correct that this is exactly the problem Subversion Multisite solves, using our own patented active-active replication technology. If you ever want a demo do feel free to get in touch! The same applies to you Phaneedra. Although Multisite is a commercial product we've recently changed our pricing model and we're certainly affordable even for quite small implementations where the requirements sound similar to yours. Best Wishes, Ian -- Ian Wild Chief Solutions Architect WANdisco, Inc. http://www.wandisco.com