Portions Copyright (c) 1996-2000, PostgreSQL Global Development Group
Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
Portions Copyright (c) 1994-6 Regents of the University of California<P>
Portions Copyright (c) 1994-6 Regents of the University of California<P>
Permission to use, copy, modify, and distribute this software and its
Permission to use, copy, modify, and distribute this software and its
...
@@ -183,7 +184,7 @@ MODIFICATIONS.
...
@@ -183,7 +184,7 @@ MODIFICATIONS.
<small><PRE>
<small><PRE>
POSTGRESQL データベース管理システム
POSTGRESQL データベース管理システム
部分的著作権 (c) 1996-2001, PostgreSQL国際開発チーム
部分的著作権 (c) 1996-2002, PostgreSQL国際開発チーム
部分的著作権 (c) 1994-6 カリフォルニア大学本校
部分的著作権 (c) 1994-6 カリフォルニア大学本校
...
@@ -209,6 +210,10 @@ MODIFICATIONS.
...
@@ -209,6 +210,10 @@ MODIFICATIONS.
]
]
</PRE></small>
</PRE></small>
<p>上記はBSDライセンスで古きオープンソースのライセンスです。ソースコード
がどのように使われようとも制限しません。好ましいことなので、我々もそれを
変えるつもりはありません。</p>
<P>
<P>
<H4><ANAME="1.3">1.3</A>) PostgreSQL の動作環境は?</H4>
<H4><ANAME="1.3">1.3</A>) PostgreSQL の動作環境は?</H4>
...
@@ -221,7 +226,7 @@ MODIFICATIONS.
...
@@ -221,7 +226,7 @@ MODIFICATIONS.
<h6>
<h6>
クライアント</h6>
クライアント</h6>
<P> MS Windows プラットホーム上で、<I>libpq</I> C ライブラリ、psql、それとその他のインターフェースは コンパイル可能で、バイナリーが走ります。この場合、クライアントを MS Windows 上で走らせて、TCP/IP 経由でサポートされている Unix プラットホーム上で走るサーバと通信します。
<P> MS Windows プラットホーム上で、<I>libpq</I> C ライブラリ、psql、それとその他のインターフェースは コンパイル可能で、バイナリーが走ります。この場合、クライアントを MS Windows 上で走らせて、TCP/IP 経由でサポートされている Unix プラットホーム上で走るサーバと通信します。
<P>もしエラーメッセージが<I>IpcSemaphoreCreate: semget failed (No space left on device)</I>であれば、カーネルが十分なセマフォを使えるように構成されていません。Postgresは潜在的なバックエンドプロセス毎に一つのセマフォを必要とします。とりあえずの解決策は<I>postmaster</I>を起動するときに、バックエンドプロセスの数をより少なく制限をすることです。既定値の32より小さな数のパラメータを<I>-N</I>で使います。より恒久的な解決策は、カーネルの<fontsize=-1>SEMMNS</font> と <fontsize=-1>SEMMNI</font> パラメータを増やすことです。
<P>もしエラーメッセージが<I>IpcSemaphoreCreate: semget failed (No space left on device)</I>であれば、カーネルが十分なセマフォを使えるように構成されていません。Postgresは潜在的なバックエンドプロセス毎に一つのセマフォを必要とします。とりあえずの解決策は<I>postmaster</I>を起動するときに、バックエンドプロセスの数をより少なく制限をすることです。既定値の32より小さな数のパラメータを<I>-N</I>で使います。より恒久的な解決策は、カーネルの<small>SEMMNS</small> と <small>SEMMNI</small> パラメータを増やすことです。
<P>現在は、PostgreSQLのトランザクションのコミット時にラージ・オブジェクト・ハンドルを閉じることにより、<I>lo_open</I>コマンドが完了した直後に強制的にルールを実行します。このため、最初にハンドルに対して何かをしようとすると、<I>invalid large obj descriptor(ラージオブジェクトの記述子が不正)</I>となります。それで、もし、トランザクションを使うのを忘れると、(少なくともほとんどの時間)働いていたコードがエラーメッセージを出すのです。
<P>現在は、PostgreSQLのトランザクションのコミット時にラージ・オブジェクト・ハンドルを閉じることにより、<I>lo_open</I>コマンドが完了した直後に強制的にルールを実行します。このため、最初にハンドルに対して何かをしようとすると、<I>invalid large obj descriptor(ラージオブジェクトの記述子が不正)</I>となります。それで、もし、トランザクションを使うのを忘れると、(少なくともほとんどの時間)働いていたコードがエラーメッセージを出すのです。