[infinispan-dev] porting from 4.1.x to trunk

Mircea Markus mircea.markus at jboss.com
Thu Jul 1 11:09:23 EDT 2010


Hi,

I've just finished merging everything from 4.1.x to trunk, so trunk does contain latest and greatest from 4.1.x branch(r1875 through r1949)

Few thoughts on porting from 4.1.x and trunk:
- right now we use two approaches: one is to port each change in two places or to do a single merge/port  before a release to contain all changes.
As per today's experience this doesn't work: Manik wanted to check into trunk a fix  that depends on some code of mine, not yet  ported: bang!

Both options have pros and cons.
My option is for doing larger grained merges, and here is why:
- simpler development process. With the former one need to do this additional work for each task:
      - svn update on trunk
	- copy (or svn merge) from 4.1.x to trunk
     - mvn test on trunk, on the affected modules
     - commit
Perhaps not a lot, but this needs to be done (virtually) on each commit. Otherwise people that rely on the changes will have problems while migrating theirs. 
- a single SVN history (at the moment there are two of them).

The main cons is the conflict resolution. The longer you delay the integration, the more difficult it is to solve conflicts. 
I don't think this is such a big issue: our code is quite clean, no big classes, no large methods, very modular project structure. We also have a test suite to run, which can give us confidence on the result of the merge.     

I volunteer to take care of the merges for the next few releases. I'll clearly track down the time spent doing this, and we can have a clear image on what that would mean. 
If it doesn't work we can always use the other approach (it would work though :) )

Wdyt?

Cheers,
Mircea


More information about the infinispan-dev mailing list