Meant for the list... ---------- Forwarded message ---------- From: Yann Ylavic <[email protected]> Date: Sun, Mar 8, 2015 at 11:34 AM Subject: Re: svn commit: r1664775 - /apr/apr/trunk/tables/apr_skiplist.c To: Jim Jagielski <[email protected]>
On Sat, Mar 7, 2015 at 9:03 PM, Jim Jagielski <[email protected]> wrote: > >> On Mar 6, 2015, at 8:29 PM, [email protected] wrote: >> >> Author: ylavic >> Date: Sat Mar 7 01:29:20 2015 >> New Revision: 1664775 >> >> URL: http://svn.apache.org/r1664775 >> Log: >> skiplist: >> >> Generalize the internal stack structure as a queue (FIFO), and use it for the >> spare nodes (instead of apr_skiplist_alloc()/free()) and the insertion stack. >> > > This seems to have broken inserts/add of dups. To be compliant, > dups must be added after any existing entries. Assuming structs > of {42,1} {42,2} and {42,3}, and adding them in that order, > the seq pops should return them in that order, but with this > impl, {43,3} is popped 1st, then {43,2} then {42,1}... I am > guessing this is due to the stack->FIFO change :/ > > I've added this as a testcase for testskiplist The same kind of test from r1664471 did test exactly the opposite (per r1664406) :) Fixed in r1664958 (trunk), r1664960 (1.6.x) and r1664962 (1.5.x).
