Skip to content
Snippets Groups Projects
Commit fc67e1fb authored by Bruce Momjian's avatar Bruce Momjian
Browse files

Script cleanups.

parent f20ec2e8
No related branches found
No related tags found
No related merge requests found
#!/bin/sh #!/bin/sh
## currently, this script makes a lot of assumptions: ## currently, this script makes a lot of assumptions:
## 1) location of guc.c and postgresql.conf.sample relative to script ## 1) the valid config settings may be preceded by a '#', but NOT '# '
## For postgresql.conf.sample ## (we use this to skip comments)
## 2) the valid config settings may be preceded by a '#', but NOT '# ' ## 2) the valid config settings will be followed immediately by ' ='
## 3) the valid config settings will be followed immediately by ' =' ## (at least one space preceding the '=' for guc.c)
## (at least one space preceding the '=' ## 3) the options have PGC_ on the same line as the option
## For guc.c ## 4) the options have '{ ' on the same line as the option
## 4) the options have PGC_ on the same line as the option
## 5) the options have '{ ' on the same line as the option
## Problems ## Problems
## 1) Don't know what to do with TRANSACTION ISOLATION LEVEL ## 1) Don't know what to do with TRANSACTION ISOLATION LEVEL
...@@ -23,21 +21,25 @@ lc_time lc_numeric fixbtree" ...@@ -23,21 +21,25 @@ lc_time lc_numeric fixbtree"
### in guc.h? ### in guc.h?
# grab everything that looks like a setting and convert it to lower case # grab everything that looks like a setting and convert it to lower case
SETTINGS=`grep ' =' postgresql.conf.sample | grep -v '^# ' | \ SETTINGS=`grep ' =' postgresql.conf.sample |
sed -e 's/^#//' | awk '{print $1}'` grep -v '^# ' | # strip comments
SETTINGS=`echo "$SETTINGS" | tr 'A-Z' 'a-z'` sed -e 's/^#//' |
awk '{print $1}'`
SETTINGS=`echo "$SETTINGS" |
tr 'A-Z' 'a-z' # lowercase`
for i in $SETTINGS ; do for i in $SETTINGS ; do
hidden=0 hidden=0
## it sure would be nice to replace this with an sql "not in" statement ## it sure would be nice to replace this with an sql "not in" statement
for hidethis in $INTENTIONALLY_NOT_INCLUDED ; do for hidethis in $INTENTIONALLY_NOT_INCLUDED ; do
if [ "$i" = "$hidethis" ] ; then if [ "$hidethis" = "$i" ] ; then
hidden=1 hidden=1
fi fi
done done
if [ "0" = "$hidden" ] ; then if [ "$hidden" -eq 0 ] ; then
grep -i $i guc.c > /dev/null; grep -i $i guc.c > /dev/null
if [ ! $? = 0 ] ; then if [ $? -ne 0 ] ; then
echo "$i seems to be missing from guc.c"; echo "$i seems to be missing from guc.c";
fi; fi;
fi fi
...@@ -55,13 +57,13 @@ SETTINGS=`echo "$SETTINGS" | tr 'A-Z' 'a-z'` ...@@ -55,13 +57,13 @@ SETTINGS=`echo "$SETTINGS" | tr 'A-Z' 'a-z'`
for i in $SETTINGS ; do for i in $SETTINGS ; do
hidden=0 hidden=0
for hidethis in $INTENTIONALLY_NOT_INCLUDED ; do for hidethis in $INTENTIONALLY_NOT_INCLUDED ; do
if [ "$i" = "$hidethis" ] ; then if [ "$hidethis" = "$i" ] ; then
hidden=1 hidden=1
fi fi
done done
if [ "0" = "$hidden" ] ; then if [ "$hidden" -eq 0 ] ; then
grep -i $i postgresql.conf.sample > /dev/null; grep -i $i postgresql.conf.sample > /dev/null
if [ ! $? = 0 ] ; then if [ $? -ne 0 ] ; then
echo "$i seems to be missing from postgresql.conf.sample"; echo "$i seems to be missing from postgresql.conf.sample";
fi fi
fi fi
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment