Re: [PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-26 Thread Jakub Narebski
Junio C Hamano writes: > Derrick Stolee writes: > >>     time git log --topo-order -10 master >/dev/null >> >>     time git log --topo-order -10 maint..master >/dev/null >> >> I get 0.39s for the first call and 0.01s for the second. (Note: I >> specified "-10" to ensure we are only writing 10

Re: [PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-25 Thread Junio C Hamano
Derrick Stolee writes: >     time git log --topo-order -10 master >/dev/null > >     time git log --topo-order -10 maint..master >/dev/null > > I get 0.39s for the first call and 0.01s for the second. (Note: I > specified "-10" to ensure we are only writing 10 commits and the > output size does

Re: [PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-21 Thread Derrick Stolee
On 10/21/2018 9:12 PM, Junio C Hamano wrote: Jakub Narebski writes: So if revs->limited is set (but not because revs->topo_order is set), which means A..B queries, we will be still using the old algorithm. All right, though I wonder if it could be improved in the future (perhaps with the help

Re: [PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-21 Thread Junio C Hamano
Jakub Narebski writes: > So if revs->limited is set (but not because revs->topo_order is set), > which means A..B queries, we will be still using the old algorithm. > All right, though I wonder if it could be improved in the future > (perhaps with the help of other graph labelling / indices than

Re: [PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-21 Thread Jakub Narebski
"Derrick Stolee via GitGitGadget" writes: > From: Derrick Stolee > > When running 'git rev-list --topo-order' and its kin, the topo_order > setting in struct rev_info implies the limited setting. This means > that the following things happen during prepare_revision_walk(): > > * revs->limited

[PATCH v4 4/7] revision.c: begin refactoring --topo-order logic

2018-10-16 Thread Derrick Stolee via GitGitGadget
From: Derrick Stolee When running 'git rev-list --topo-order' and its kin, the topo_order setting in struct rev_info implies the limited setting. This means that the following things happen during prepare_revision_walk(): * revs->limited implies we run limit_list() to walk the entire