Thread: remove separate postgres.(sh)description files
I'm guessing the initial data for pg_(sh)description is output into separate files because it was too difficult for the traditional shell script to maintain enough state to do otherwise. With Perl, it's just as easy to assemble the data into the same format as the rest of the catalogs and then let the generic code path output it into postgres.bki. The attached patch does that and simplifies the catalog makefile and initdb.c. I'll add a commitfest entry for this. -- John Naylor https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Attachment
On 31/12/2019 02:08, John Naylor wrote: > I'm guessing the initial data for pg_(sh)description is output into > separate files because it was too difficult for the traditional shell > script to maintain enough state to do otherwise. Yeah, I guess so. The roots of postgres.description goes all the way back to 1997, when not only genbki was a shell script, but also initdb. > With Perl, it's just as easy to assemble the data into the same > format as the rest of the catalogs and then let the generic code path > output it into postgres.bki. The attached patch does that and > simplifies the catalog makefile and initdb.c. Nice cleanup! Looks like we didn't have any mention of the postgres.(sh)decription files in the docs, so no doc updates needed. Grepping around, there are a few stray references to postgres.description still: $ git grep -r -I postgres.shdescript . src/backend/catalog/.gitignore:/postgres.shdescription src/backend/catalog/Makefile:# postgres.bki, postgres.description, postgres.shdescription, src/tools/msvc/clean.bat:if %DIST%==1 if exist src\backend\catalog\postgres.shdescription del /q src\backend\catalog\postgres.shdescription Barring objections, I'll remove those too, and commit this. - Heikki
On Wed, Jan 08, 2020 at 02:33:23PM +0200, Heikki Linnakangas wrote: >On 31/12/2019 02:08, John Naylor wrote: >>I'm guessing the initial data for pg_(sh)description is output into >>separate files because it was too difficult for the traditional shell >>script to maintain enough state to do otherwise. > >Yeah, I guess so. The roots of postgres.description goes all the way >back to 1997, when not only genbki was a shell script, but also >initdb. > >>With Perl, it's just as easy to assemble the data into the same >>format as the rest of the catalogs and then let the generic code path >>output it into postgres.bki. The attached patch does that and >>simplifies the catalog makefile and initdb.c. >Nice cleanup! Looks like we didn't have any mention of the >postgres.(sh)decription files in the docs, so no doc updates needed. >Grepping around, there are a few stray references to >postgres.description still: > >$ git grep -r -I postgres.shdescript . >src/backend/catalog/.gitignore:/postgres.shdescription >src/backend/catalog/Makefile:# postgres.bki, postgres.description, >postgres.shdescription, >src/tools/msvc/clean.bat:if %DIST%==1 if exist >src\backend\catalog\postgres.shdescription del /q >src\backend\catalog\postgres.shdescription > >Barring objections, I'll remove those too, and commit this. > +1 from me. Let's remove these small RFC patches out of the way. regards -- Tomas Vondra http://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
On 16/01/2020 23:39, Tomas Vondra wrote: > On Wed, Jan 08, 2020 at 02:33:23PM +0200, Heikki Linnakangas wrote: >> On 31/12/2019 02:08, John Naylor wrote: >>> I'm guessing the initial data for pg_(sh)description is output into >>> separate files because it was too difficult for the traditional shell >>> script to maintain enough state to do otherwise. >> >> Yeah, I guess so. The roots of postgres.description goes all the way >> back to 1997, when not only genbki was a shell script, but also >> initdb. >> >>> With Perl, it's just as easy to assemble the data into the same >>> format as the rest of the catalogs and then let the generic code path >>> output it into postgres.bki. The attached patch does that and >>> simplifies the catalog makefile and initdb.c. >> Nice cleanup! Looks like we didn't have any mention of the >> postgres.(sh)decription files in the docs, so no doc updates needed. >> Grepping around, there are a few stray references to >> postgres.description still: >> >> $ git grep -r -I postgres.shdescript . >> src/backend/catalog/.gitignore:/postgres.shdescription >> src/backend/catalog/Makefile:# postgres.bki, postgres.description,e0ed6817c0..7aaefadaac >> postgres.shdescription, >> src/tools/msvc/clean.bat:if %DIST%==1 if exist >> src\backend\catalog\postgres.shdescription del /q >> src\backend\catalog\postgres.shdescription >> >> Barring objections, I'll remove those too, and commit this. > > +1 from me. Let's remove these small RFC patches out of the way. Pushed, thanks! - Heikki
On Sun, Jan 19, 2020 at 7:58 PM Heikki Linnakangas <hlinnaka@iki.fi> wrote: > > > On Wed, Jan 08, 2020 at 02:33:23PM +0200, Heikki Linnakangas wrote: > >> Grepping around, there are a few stray references to > >> postgres.description still: > >> > >> $ git grep -r -I postgres.shdescript . > >> src/backend/catalog/.gitignore:/postgres.shdescription > >> src/backend/catalog/Makefile:# postgres.bki, postgres.description,e0ed6817c0..7aaefadaac > >> postgres.shdescription, > >> src/tools/msvc/clean.bat:if %DIST%==1 if exist > >> src\backend\catalog\postgres.shdescription del /q > >> src\backend\catalog\postgres.shdescription > > Pushed, thanks! Thanks for taking care of those loose ends -- that was a bit sloppy of me. -- John Naylor https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services