Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
P
postgres-lambda-diff
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Jakob Huber
postgres-lambda-diff
Commits
f2332ea1
Commit
f2332ea1
authored
18 years ago
by
Bruce Momjian
Browse files
Options
Downloads
Patches
Plain Diff
Add indenting to Solaris FAQ, for clarity.
parent
b680a1d9
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
doc/FAQ_Solaris
+80
-74
80 additions, 74 deletions
doc/FAQ_Solaris
with
80 additions
and
74 deletions
doc/FAQ_Solaris
+
80
−
74
View file @
f2332ea1
============================================================
Frequently Asked Questions (FAQ) for PostgreSQL
Sun Solaris specific
t
o be read in conjunction with the installation instructions
T
o be read in conjunction with the installation instructions
.
============================================================
l
ast updated: $Date: 2006/10/0
4 22:03:22
$
L
ast updated: $Date: 2006/10/0
5 03:13:15
$
Contents:
...
...
@@ -22,10 +22,10 @@ Contents:
You will need
-
GNU zip (for installing the documentation)
-
GNU make
-
GNU readline library (optional)
-
Sun Studio CC or GCC
GNU zip (for installing the documentation)
GNU make
GNU readline library (optional)
Sun Studio CC or GCC
You can download Sun Studio from:
http://developers.sun.com/prodtech/cc/downloads/index.jsp
...
...
@@ -35,23 +35,24 @@ present on the Solaris companion CD.
If you like packages for older version of Solaris, you can find these
tools here:
http://www.sunfreeware.com or http://www.blastwave.org
If you prefer sources, look here:
http://www.gnu.org/order/ftp.html
You can build with either GCC or Sun's compiler suite. For better
code optimalization Sun's compiler is strongly recommended on the
SPARC architecture. We have heard reports of problems when using
gcc 2.95.1; gcc 2.95.3 or later is recommended. If you are using
Sun's compiler, be careful *not* to select /usr/ucb/cc;
use /opt/SUNWspro/bin/cc.
You can build with either GCC or Sun's compiler suite. For better code
optimalization Sun's compiler is strongly recommended on the SPARC
architecture. We have heard reports of problems when using gcc 2.95.1;
gcc 2.95.3 or later is recommended. If you are using Sun's compiler, be
careful *not* to select /usr/ucb/cc; use /opt/SUNWspro/bin/cc.
2) Why do I get problems when building with OpenSSL support?
When you build PostgreSQL with OpenSSL support you might get
compilation
errors in the following files:
When you build PostgreSQL with OpenSSL support you might get
compilation
errors in the following files:
src/backend/libpq/crypt.c
src/backend/libpq/password.c
...
...
@@ -62,39 +63,39 @@ This is because of a namespace conflict between the standard
/usr/include/crypt.h header and the header files provided by OpenSSL.
Upgrading your OpenSSL installation to version 0.9.6a fixes this
problem.
Solaris 9 and above already newer version of OpenSSL.
problem. Solaris 9 and above already newer version of OpenSSL.
3) Why does configure complain about a failed test program?
This is probably a case of the run-time linker being unable to find
some
library. On solaris 8 and older it should be libz or some other
non-standard library, such as libssl. To point it to the right
location,
set the LD_LIBRARY_PATH environment variable, e.g.,
This is probably a case of the run-time linker being unable to find
some
library. On solaris 8 and older it should be libz or some other
non-standard library, such as libssl. To point it to the right
location,
set the LD_LIBRARY_PATH environment variable, e.g.,
LD_LIBRARY_PATH=/usr/sfw/lib:/opt/sfw/lib:/usr/local/lib
export LD_LIBRARY_PATH
and restart configure. You will also have to keep this setting
whenever you run any of the installed PostgreSQL programs.
Alternatively, set the environment variable LD_RUN_PATH. See the
ld(1) man page for more information.
and restart configure. You will also have to keep this setting whenever
you run any of the installed PostgreSQL programs. Alternatively, set
the environment variable LD_RUN_PATH. See the ld(1) man page for more
information.
4) Why does my 64-bit build sometimes crash?
On Solaris 7 and older, the 64-bit version of libc has a buggy vsnprintf
routine, which leads to erratic core dumps in PostgreSQL. The simplest
known
workaround is to force PostgreSQL to use its own version of
vsnprintf rather
than the library copy. To do this, after you run
'configure' edit a file
produced by configure:
routine, which leads to erratic core dumps in PostgreSQL. The simplest
known
workaround is to force PostgreSQL to use its own version of
vsnprintf rather
than the library copy. To do this, after you run
'configure' edit a file
produced by configure:
In src/Makefile.global, change the line
LIBOBJS =
to read
LIBOBJS = snprintf.o
(There might be other files already listed in this variable. Order
...
...
@@ -105,16 +106,18 @@ Then build as usual.
5) How can I compile for optimum performance?
On SPARC architecture Sun Studio is strongly recommended for compilation.
Try using -xO5 optimalization flag to generate significantly faster binaries.
Do not use any flags which modify behavior of floating point operations and
errno processing (e.g. -fast). These flags should raise some nonstandard
PostgreSQL behavior for example in the date/time computing.
On SPARC architecture Sun Studio is strongly recommended for
compilation. Try using -xO5 optimalization flag to generate
significantly faster binaries. Do not use any flags which modify
behavior of floating point operations and errno processing (e.g.
-fast). These flags should raise some nonstandard PostgreSQL behavior
for example in the date/time computing.
If you do not reason to use 64-bit binaries on SPARC, prefer 32-bit version.
The 64-bit operations are slower and 64-bit binaries are slower then 32-bits.
And on other side a 32-bit code on the AMD64 CPU family is not native and
that is why 32-bit code is significant slower on this CPU family.
If you do not reason to use 64-bit binaries on SPARC, prefer 32-bit
version. The 64-bit operations are slower and 64-bit binaries are slower
then 32-bits. And on other side a 32-bit code on the AMD64 CPU family is
not native and that is why 32-bit code is significant slower on this
CPU family.
6) How to compile PostgreSQL with Sun Studio?
...
...
@@ -130,16 +133,17 @@ gmake
7) Where I can download prepared Solaris packages?
The PostgreSQL is bundled with Solaris 10 (from update 2). Official
packages
are too available on
http://pgfoundry.org/projects/solarispackages/.
Packages for older
Solaris version (8,9) you can download from:
http://www.sunfreeware.com
or http://www.blastwave.org
The PostgreSQL is bundled with Solaris 10 (from update 2). Official
packages
are too available on
http://pgfoundry.org/projects/solarispackages/. Packages for older
Solaris version (8,9) you can download from:
http://www.sunfreeware.com
or http://www.blastwave.org
8) How to tune PostgreSQL and Solaris for best performance?
Some tuning tricks can be found here:
http://www.sun.com/servers/coolthreads/tnb/applications_postgresql.jsp
This article is primary focused on T2000 platform, however, many of
...
...
@@ -149,13 +153,15 @@ recommendations are general for other hardware with Solaris.
9) Can I use dtrace for tracing PostgreSQL?
The PostgreSQL 8.2 has implemented dtrace support. You can enable it by
the --enable-dtrace configure switch. If you want to compile a 64-bit
code
with dtrace you must specify DTRACEFLAGS='-64', e.g.
the --enable-dtrace configure switch. If you want to compile a 64-bit
code
with dtrace you must specify DTRACEFLAGS='-64', e.g.
Using gcc compiler:
$ ./configure CC='gcc -m64' --enable-dtrace DTRACEFLAGS='-64' ...
Using Sun compiler:
$ configure CC='/opt/SUNWspro/bin/cc -xtarget=native64' --enable-dtrace DTRACEFLAGS='-64'
...
...
@@ -169,9 +175,9 @@ ld: fatal: Symbol referencing errors. No output written to postgres
collect2: ld returned 1 exit status
gmake: *** [postgres] Error 1
, check if you have Solaris 10u3 or newer installed on your box.
check if you have Solaris 10u3 or newer installed on your box. You can
also find more information here:
You can also find more information here:
http://blogs.sun.com/robertlor/entry/user_level_dtrace_probes_in
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment