Thread: Curious bug in buildfarm files-changed links

Curious bug in buildfarm files-changed links

From
Tom Lane
Date:
Observe the list of "Files changed this run" at
http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=gazelle&dt=2006-06-17%2000:30:01

The links to the core-system files are OK but the plpgsql files are not
correct, egpgsql/src/gram.y 1.93
where it should bepgsql/src/pl/plpgsql/src/gram.y 1.93

I'm betting on an overly-greedy regex ...
        regards, tom lane


Re: Curious bug in buildfarm files-changed links

From
Andrew Dunstan
Date:

Tom Lane wrote:

>Observe the list of "Files changed this run" at
>http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=gazelle&dt=2006-06-17%2000:30:01
>
>The links to the core-system files are OK but the plpgsql files are not
>correct, eg
>    pgsql/src/gram.y 1.93
>where it should be
>    pgsql/src/pl/plpgsql/src/gram.y 1.93
>
>I'm betting on an overly-greedy regex ...
>  
>

Good catch.

As usual you are spot on.

The offending line is this one, which is parsing CVS status output (if 
you don't read perl just close your eyes):
      s!.*Repository revision:.(\d+(\.\d+)+).*(pgsql/.*),v.*!$3 $1!;

I think the simplest fix would be just to require a / before the 
filename capture:
     s!.*Repository revision:.(\d+(\.\d+)+).*/(pgsql/.*),v.*!$3 $1!;


cheers

andrew


Re: Curious bug in buildfarm files-changed links

From
Tom Lane
Date:
Andrew Dunstan <andrew@dunslane.net> writes:
> I think the simplest fix would be just to require a / before the 
> filename capture:

That sounds like it would work.  I was thinking you might need a
minimal-munch instead of maximal-munch quantifier before the pgsql
pattern, but that's not a good idea because someone might well be
running the buildfarm in a path that includes "pgsql".  We'll just have
to be sure not to use bare "pgsql" as a subdirectory name anywhere in
the CVS tree.
        regards, tom lane