> -----Original Message-----
> From: Kamesh Jayachandran 
> Sent: Saturday, September 29, 2007 3:42 PM
> To: Paul Burba; dev@subversion.tigris.org; kameshj@tigris.org
> Subject: RE: RE: svn commit: r26803 - in trunk/subversion: 
> libsvn_client tests/cmdline
> 
> >> >children_with_mergeinfo is populated with
> >> svn_client__merge_path_t* not
> >> >svn_client__merge_path_t *.  I assume you meant something like:
> >> 
> >> >svn_merge_range_t *range = 
> APR_ARRAY_IDX(child->remaining_ranges, 0, 
> >> >svn_merge_range_t *); ?
> >> 
> >> Thanks for the catch Paul, fixed in r26840.
> 
> >Hi Kamesh,
> 
> >I assume you saw my comment regarding slice_remaining_ranges()?
> 
> I did see that, But I could not see any flaw with it.
> 
> >> Regardless, slice_remaining_ranges() is definitely not 
> doing what you 
> >> want.  Interestingly, the test suite passes* with it completely 
> >> removed!
> 
> >It's not immediately obvious to me when 
> slice_remaining_ranges() might 
> >be useful and obviously it isn't being exercised by the test 
> suite at 
> >present.  Possibly we could add a test or tweak an existing 
> one to do 
> >this?
> 
> I am not sure whether we have one already,
FWIW I think we can be sure that we don't have one.  As I said before, I
*completely removed* this function and the test suite passed.  That
would seem to constitute sufficient evidence that the code wasn't being
used in any meaningful way.
> in any case I will 
> add one. 
That would be really helpful.  I need to write a new test for 2818 so
it's possible I could fold it into that test, but at the moment I'm
still not following the point of slice_remaining_ranges() completely
(see below).
> Let me explain what it does here.
> Your WC target is 'COPY_OF_A/D/G', requested merge range is 
> 22:100 Suppose if you have the following 'children_with_mergeinfo'
> [
> {path:'COPY_OF_A/D/G', 'remaining_ranges':'22-26, 28-29, 
> 34-36, 40-100'}, {path:'COPY_OF_A/D/G/pi', 
> 'remaining_ranges':'21-29, 34-36, 40-100'}, ] In first 
> iteration of WHILE loop in discover_and_merge_children we run 
> a merge for  22:26(26 is the nearest end rev).
> 
> So before doing the merge we need to slice COPY_OF_A/D/G/pi's 
> remaining_ranges to so that it has the following remaining 
> ranges '21-26, 27-29, 34-36, 40-100', so that in the next 
> while loop we can do a merge for '27-whatever-next-rev' on 
> 'COPY_OF_A/D/G/pi'
What about r27?  In your example COPY_OF_A/D/G/pi has these initial
remaining_ranges:
  '21-29, 34-36, 40-100'
But per your example slice_remaining_ranges() would convert them into:
  '21-26, 27-29, 34-36, 40-100'
And r27 wouldn't be merged no?
Paul
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Mon Oct  1 16:57:38 2007