diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2014-01-18 16:04:11 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2014-01-18 16:04:32 -0500 |
commit | 0d79c0a8cc20dbaa39112d78a9abb821c4ca3554 (patch) | |
tree | fbf44e5fc488b94c056aead354111d4e32167318 /src/include/common/relpath.h | |
parent | 7d7eee8bb702d7796a0d7c5886c1f4685f2e2806 (diff) |
Make various variables const (read-only).
These changes should generally improve correctness/maintainability.
A nice side benefit is that several kilobytes move from initialized
data to text segment, allowing them to be shared across processes and
probably reducing copy-on-write overhead while forking a new backend.
Unfortunately this doesn't seem to help libpq in the same way (at least
not when it's compiled with -fpic on x86_64), but we can hope the linker
at least collects all nominally-const data together even if it's not
actually part of the text segment.
Also, make pg_encname_tbl[] static in encnames.c, since there seems
no very good reason for any other code to use it; per a suggestion
from Wim Lewis, who independently submitted a patch that was mostly
a subset of this one.
Oskari Saarenmaa, with some editorialization by me
Diffstat (limited to 'src/include/common/relpath.h')
-rw-r--r-- | src/include/common/relpath.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/include/common/relpath.h b/src/include/common/relpath.h index 8795464a27a..23a226d058e 100644 --- a/src/include/common/relpath.h +++ b/src/include/common/relpath.h @@ -25,7 +25,8 @@ #define TABLESPACE_VERSION_DIRECTORY "PG_" PG_MAJORVERSION "_" \ CppAsString2(CATALOG_VERSION_NO) -extern const char *forkNames[]; +extern const char *const forkNames[]; + extern int forkname_chars(const char *str, ForkNumber *fork); extern char *relpathbackend(RelFileNode rnode, BackendId backend, ForkNumber forknum); |