Several tags around PostgreSQL 7.1 broken - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Several tags around PostgreSQL 7.1 broken
Date
Msg-id 200804011800.11063.peter_e@gmx.net
Whole thread Raw
Responses Re: Several tags around PostgreSQL 7.1 broken  (Aidan Van Dyk <aidan@highrise.ca>)
Re: Several tags around PostgreSQL 7.1 broken  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
I have now managed to investigate why some conversions of the PostgreSQL CVS 
repository to other formats are having trouble or are failing.  Here, I am 
looking at git-cvsimport in particular.

The problem appears to be that several tags around the time of PostgreSQL 7.1 
are broken or inconsistent.  For instance, here is a piece of output of 
cvsps:

WARNING: Invalid PatchSet 9441, Tag REL7_1:   src/pl/plpgsql/src/mklang.sql.in:1.6=after, 
src/pl/plpgsql/src/INSTALL:1.2=before. Treated as 'before'

It turns out that src/pl/plpgsql/src/mklang.sql.in:1.6 and 
src/pl/plpgsql/src/INSTALL:1.2 are from the same commit ("PatchSet"), as 
determined by a common log message and timestamp, but the REL7_1 tag is on 
src/pl/plpgsql/src/mklang.sql.in:1.5 and src/pl/plpgsql/src/INSTALL:1.2.  So 
a part of the commit is before the tag and part of it is after the tag.

(The commit in question was to remove mklang.sql.in and adjust the INSTALL 
contents accordingly.)

In fact, if you check out the REL7_1 tag, you get the new INSTALL file but 
still the mklang.sql.in.  The released postgresql-7.1.tar.gz tarball is 
correct.

I guess the cause of this is that the tag was done on a partially updated 
checkout.

There are a few dozen inconsistencies like this in the tags REL7_1_BETA, 
REL7_1_BETA2, REL7_1_BETA3, REL7_1.  As a consequence of this, checkouts of 
the tags don't match the respective released tarballs.

Here are more examples:

WARNING: Invalid PatchSet 9297, Tag REL7_1:   src/backend/port/hpux/port-protos.h:1.10=after, COPYRIGHT:1.6=before. 
Treated as 'before'
WARNING: Invalid PatchSet 8906, Tag REL7_1:   doc/src/sgml/populate.sgml:2.4=after, 
doc/src/sgml/filelist.sgml:1.3=before. Treated as 'before'
WARNING: Invalid PatchSet 9371, Tag REL7_1:   doc/TODO.detail/subquery:1.3=after, doc/TODO:1.366=before. Treated 
as 'before'
WARNING: Invalid PatchSet 8815, Tag REL7_1_BETA2:   src/include/c.h:1.2=after, contrib/pgcrypto/md5.c:1.2=before.
Treated
 
as 'before'
etc.

I could get the conversion to run successfully if I remove the mentioned tags.  
When I find more time, I'm going to try if I can move/fix the tags instead so 
they correspond to the actual releases and the patch sets become consistent.

In the meantime, does anyone have more information about how this came about?


pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: Debugging PostgreSQL with GDB
Next
From: David Fetter
Date:
Subject: Re: Cast as compound type