Monthly Archive for May, 2013

Subversion 1.8 Provides Automatic Merge and Significant Storage Savings

Subversion 1.8 Features Simplify and Automate Merge and Reduce Complexity

While Apache Subversion simplifies development, helps with team synchronization and offers advantages in terms of handling large files and repositories, it has been limited in its merge capabilities. This has led some developers to move to other SCM systems. With the long-awaited release of Apache Subversion 1.8, users can look forward to more complete merge functionality as well as storage savings.

In the past when using branches, users needed to determine if they wanted to do a sync or a reintegrate merge based on the direction of the update between branches. With Subversion 1.8, merges are automatic (“symmetric”) and Subversion now determines for the user which type of merge is necessary, simplifying the process and eliminating conflicts caused by users making the wrong selection. Symmetric merging handles changes simultaneously between branches rather than differentiating between the two merge forms – sync or reintegrate. In addition, Subversion 1.8 rejects attempts to merge between unrelated branches, decreasing the likelihood of user errors that often result in conflicts.

In addition, Subversion no longer requires the costly server set-up often cited in the past. Revision property packing and directory deltification, features of Subversion 1.8, reduce backup and restore times as well as the number of files stored, resulting in significant storage savings – up to more than 90% storage capacity savings. One company ran a test on its repository and storage decreased from 600+GB to just 17GB. Furthermore, a properly configured server allows for better performance on large projects due to extensive caching and other techniques (an area where SVN 1.8 also brings massive improvements).

We are a major sponsor of the Apache Software Foundation (ASF) and have made Subversion 1.8 release candidates (RedHat, SUSE and Debian versions) available for free download at http://www.wandisco.com/subversion/download.

We will also make certified and fully tested Subversion 1.8 binaries available for download as soon as the ASF announces their general availability.

Following the pre-release of Subversion 1.8, we held a webinar, “Introducing Subversion 1.8,” hosted by leading technology industry journalist Adrian Bridgwater, and core Subversion developers Julian Foad and Philip Martin. They unveiled Subversion’s latest major release and provided an overview of its significant new features focusing on improvements to its merge capabilities.  Visit the replay page to view “Introducing Subversion 1.8“.

Topics include:

  • Automatic (“symmetric”) merge capability for simplifying the merge process and eliminating conflicts caused by users selecting the wrong type of merge.

  • Simultaneous change handling between branches rather than differentiating between sync and reintegration merge forms.

  • Rejection of merge attempts between unrelated branches to decrease the likelihood of user errors that often result in conflicts.

  • Decrease in server set-up costs.

  • Revision property packing and directory deltification to reduce backup and restore times as well as the number of files stored for up to more than 90% storage capacity savings.

 

“This free webinar is further proof of WANdisco’s continued dedication to the Apache Subversion community,” said David Richards, CEO of WANdisco. “Attendees gain great insight by hearing directly from committers who created the software and being able to ask them questions at the end of the presentation. That is a rare opportunity.”

 

avatar

About rbudas

Rob Budas has over 25 years of software industry experience, with the last 15 years focused on the Software Configuration Management sector. Prior to joining WANdisco, Rob had worked at IBM Rational for 8 years where he was a Sr. Product Manager for Rational ClearCase. He has held various development, technical sales and product management roles throughout his career. Rob holds a Bachelor of Science in Computer and Communication Science from the University of Michigan.

On Achieving Consensus

maurelius_small

“Our life is what our thoughts make it.” M. Aurelius, 121 AD – 180 AD

Since WANdisco is a distributed computing company, you might be thinking this will be another article on the subtleties of obtaining consensus between multiple processors using the Paxos algorithm.

Almost, except without the computers.

Recently we had a kickoff summit for a new product. The core team met here in San Ramon, gathered from Belfast, Sheffield and Massachusetts.  We all have significantly different backgrounds, live in four different places, and came together for a few days to try to sort out a beefy list of major questions about integration points, requirements and architecture for the new product.

The technical chops of the group were without question, the motivation high, and the time short. It seemed clear that this was a challenge primarily of consensus.  We had to resolve our list of open questions efficiently and decisively.

And despite coming into the meeting with many questions still unresolved after long email exchanges, we did! The process was the quickest and most effective I’ve experienced in 25 years building enterprise software, and I started to wonder if WANdisco’s core technology of achieving consensus between computers was bleeding over and helping humans reach consensus as well.

It occurred to me that maybe it has something to do with the language that I overhear from the development teams. They speak constantly of “proposals”, “agreements”, “consensus”.  In my programming days, I recall using words like “cast”, “derive”, “protected”. Could the simple use of highly cooperative language have a beneficial side effect on group decision making?

Absolutely, and it’s variously described as Linguistic Relativity, Sapir–Whorf hypothesis, or Whorfianism.  In short, it’s the theory that the language we employ affects our thoughts and subsequent actions.

Looks like we caught an example of this in action. How might the language you use in your software development process affect your ability to reach consensus on big decisions?