Re: btvacuumpage useless "orig_blkno" - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: btvacuumpage useless "orig_blkno"
Date
Msg-id 1321913906-sup-7098@alvh.no-ip.org
Whole thread Raw
In response to Re: btvacuumpage useless "orig_blkno"  (Simon Riggs <simon@2ndQuadrant.com>)
Responses Re: btvacuumpage useless "orig_blkno"
List pgsql-hackers
Excerpts from Simon Riggs's message of lun nov 21 19:11:21 -0300 2011:
> On Mon, Nov 21, 2011 at 10:03 PM, Alvaro Herrera
> <alvherre@alvh.no-ip.org> wrote:
> > I just noticed that btvacuumpage has two BlockNumber parameters -- blkno
> > and orig_blkno.  The only caller passes them as the same value; the
> > header comments state that blkno would be different when recursing, but
> > actually the function implements recursion internally by way of a cute
> > "goto" trick.  So it seems to me that the orig_blkno parameter is
> > useless -- we could just remove it.
> >
> > Unless I'm completely missing something?
>
> tail recursion - read comments at bottom of the function

Right, but we don't need to pass the value as a parameter, we can just
save it at the start of the function, as my proposed patch does, right?

--
Álvaro Herrera <alvherre@commandprompt.com>
The PostgreSQL Company - Command Prompt, Inc.
PostgreSQL Replication, Consulting, Custom Development, 24x7 support


pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: btvacuumpage useless "orig_blkno"
Next
From: Robert Haas
Date:
Subject: Re: Inlining comparators as a performance optimisation