4

Sidekiqバックグラウンドジョブに使用したいと思います。ただし、gem の依存関係がスレッドセーフであることが要件です。

彼らの wiki ページでは、次のように述べています。

   Some gems can be troublesome:

   * pg (the postgres driver, make sure PG::Connection.isthreadsafe returns true)

私はpgPostgreSQLにgemを使用しています。

私の質問は、PG::Connection.isthreadsafe を true に変更するにはどうすればよいですか?

4

1 に答える 1

3

gem は次の c ライブラリ呼び出しを呼び出します。

PQisthreadsafe();

ここに文書化されています:

http://www.postgresql.org/docs/8.2/static/libpq-threading.html

関連するドキュメントは次のとおりです。

PostgreSQL ディストリビューションのビルド時に configure コマンドライン オプション --enable-thread-safety が使用された場合、libpq は再入可能でスレッド セーフです。

そのため、実際にスレッドセーフにするために、libpg を再コンパイルする (または利用可能な場合はスレッドセーフ パッケージを入手する) 必要があります。

于 2013-03-13T20:06:55.233 に答える