From kobari @ irvinesystems.co.jp Thu Jan 10 07:45:03 2008 From: kobari @ irvinesystems.co.jp (Yasunaga Kobari) Date: Thu, 10 Jan 2008 07:45:03 +0900 (JST) Subject: [postgresforest-users 107] TimeOut Error Message-ID: <1150.61.26.240.83.1199918703.squirrel@webmail.irvinesystems.co.jp> 小針です。 2台の冗長構成(gscも冗長構成)にて、以下の症状で 片肺運転になることが繰り返し起きています。 MSG:The timeout of the query was carried out. STATUS:XX000 broken logをみると、特定のSQLを発行して発生 しているわけではなく、SELECT、INSERT、UPDATE でログが記録されています。 オンラインリカバリーツールで復旧するのですが、 しばらく運用していると同様のエラーが発生し 片肺運転になってしまいます。エラーをおこす マシンは、2台のうちいつも同じマシンです。 上記エラーの原因として何か心当たりがあるれば おしえていただけないでしょうか?また、上記 エラーは、ForestのJDBCが出力しているようですが、 具体的に、どのような現象で発生するものでしょうか? From asari @ users.sourceforge.net Thu Jan 10 12:07:00 2008 From: asari @ users.sourceforge.net (ASARI Takashi) Date: Thu, 10 Jan 2008 12:07:00 +0900 Subject: [postgresforest-users 108] Re: TimeOut Error In-Reply-To: <1150.61.26.240.83.1199918703.squirrel@webmail.irvinesystems.co.jp> References: <1150.61.26.240.83.1199918703.squirrel@webmail.irvinesystems.co.jp> Message-ID: <5d04aefa0801091907s50384caeo8527f80c7c303a25@mail.gmail.com> 浅利といいます。はじめまして。 08/01/10 に Yasunaga Kobari さんは書きました: > MSG:The timeout of the query was carried out. > STATUS:XX000 > > broken logをみると、特定のSQLを発行して発生 > しているわけではなく、SELECT、INSERT、UPDATE > でログが記録されています。 ログのとおりに判断すれば、時間がかかる SQL 文を実行してしまったため、 障害が発生しているとみなされて GSC にその旨記録されたのではないかと思います。 # 私の場合、時間のかかる全文検索を行ったときにたまにそのようになります。 まずはコンフィグを編集して、 timeout (障害判定タイムアウト) を 大きい値に変更してみてはいかがでしょう。 その後時間がかかる処理を見直してみることもおすすめします。 PostgresForest 4.0 環境構築ツール リファレンス 3.5 コンフィグレーションの操作 http://sourceforge.jp/projects/postgresforest/document/forestadm.html/ja/1/forestadm.html#id33 PostgresForest4.0 開発者ガイド 4.2 接続文字列の書式 http://sourceforge.jp/projects/postgresforest/document/developers_guide.html/ja/1/developers_guide.html#id17 もしお役に立てましたら。 -- (株) RNAi 研究開発部 浅利 尚志 From yamamototomomi @ gmail.com Wed Jan 16 13:07:01 2008 From: yamamototomomi @ gmail.com (Tomomi Yamamoto) Date: Wed, 16 Jan 2008 13:07:01 +0900 Subject: [postgresforest-users 109] =?iso-2022-jp?b?GyRCJSQlcyU5JUghPCVrJEskRCQkJEYbKEI=?= Message-ID: 山本と申します。 初歩的な質問ですいません、PostgreSQL8.2をインストールしたサーバーに PostgresFores4.0.2をインストールし、ユーザー「postgres」のユーザーディレクトリ化に データ領域を作ろうとしたのですが、所々で下記のような「javau」がないといったような メッセージをはいて異常終了してしまいます。 LANGUAGE javaU; psql:/usr/local/forest40/share/forest_pljava_funcs.sql:9: ERROR: language "javau" does not exist ERROR: language "javau" does not exist STATEMENT: CREATE OR REPLACE FUNCTION postgresforest.getpartnum(text, integer, integer) RETURNS int AS 'org.postgresforest.tool.lib.PartitionUtils.getpartnum(java.lang.String, java.lang.Integer, java.lang.Integer)' 一応データ領域に、ディレクトリなど作られて、コマンドラインから「forest_ctl」を 起動してみると動作しはじめるのですが、 =================================================== ====== PostgresForest initialization failed. ====== =================================================== が表示されているので、失敗しているようです。 PostgreSQL8.2はソースで入手し、単純に「./configure」→「gmake」→「gmake install」の流れで導入し JDKはSUNのサイトでj2sdkの1.4.2.16をrpmで取得しインストールしました。 対応の仕方など、お教えいただければ幸いです。 よろしくお願い申し上げます。 【環境】 OS: CentOS 5.1 x86_64 DB: PostgreSQL 8.2(ソースで単純インストール) PostgresForest: PostgresForest-4.0.2 -- ================================================ 山本 知己 (Tomomi Yamamoto) URL:http://www.andromalius.com ================================================ From nagatsumas @ nttdata.co.jp Wed Jan 16 15:44:29 2008 From: nagatsumas @ nttdata.co.jp (Satoshi.Nagatsuma) Date: Wed, 16 Jan 2008 15:44:29 +0900 Subject: [postgresforest-users 110] Re: =?iso-2022-jp?b?GyRCJSQlcyU5JUghPCVrJEskRCQkJEYbKEI=?= In-Reply-To: References: Message-ID: <478DA7CD.40805@nttdata.co.jp> 長妻です。 Forestのインストールに失敗しているように見受けられます。 Forestインストールの際、PostgreSQLバイナリのある場所へ いくつかの関数やライブラリを配置します。 その際に書き込み権限がなかったのではないかと思います。 Forestのinstall.sh を実行する際、PostgreSQLバイナリが 置かれている場所の権限を、一時的にinstall.shを起動する ユーザのものとするか、でなければinstall.shをroot権限で 起動してみるといかがでしょう。 Tomomi Yamamoto さんは書きました: > 山本と申します。 > > 初歩的な質問ですいません、PostgreSQL8.2をインストールしたサーバーに > PostgresFores4.0.2をインストールし、ユーザー「postgres」のユーザーディレクトリ化に > データ領域を作ろうとしたのですが、所々で下記のような「javau」がないといったような > メッセージをはいて異常終了してしまいます。 > > LANGUAGE javaU; > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:9: ERROR: > language "javau" does not exist > ERROR: language "javau" does not exist > STATEMENT: CREATE OR REPLACE FUNCTION postgresforest.getpartnum(text, > integer, integer) > RETURNS int > AS 'org.postgresforest.tool.lib.PartitionUtils.getpartnum(java.lang.String, > java.lang.Integer, java.lang.Integer)' > > 一応データ領域に、ディレクトリなど作られて、コマンドラインから「forest_ctl」を > 起動してみると動作しはじめるのですが、 > =================================================== > ====== PostgresForest initialization failed. ====== > =================================================== > が表示されているので、失敗しているようです。 > > PostgreSQL8.2はソースで入手し、単純に「./configure」→「gmake」→「gmake install」の流れで導入し > JDKはSUNのサイトでj2sdkの1.4.2.16をrpmで取得しインストールしました。 > > 対応の仕方など、お教えいただければ幸いです。 > よろしくお願い申し上げます。 > > > 【環境】 > OS: CentOS 5.1 x86_64 > DB: PostgreSQL 8.2(ソースで単純インストール) > PostgresForest: PostgresForest-4.0.2 > From asari @ users.sourceforge.net Fri Jan 18 04:08:58 2008 From: asari @ users.sourceforge.net (ASARI Takashi) Date: Fri, 18 Jan 2008 04:08:58 +0900 Subject: [postgresforest-users 111] =?iso-2022-jp?b?GyRCJVEhPCVGJSMlNyVnJXMyPRsoQiAoMikgGyRCJEcbKEIg?= =?iso-2022-jp?b?THVkaWEgGyRCJE4bKEIgcGdzMmdldG5oaXRzKCkg?= =?iso-2022-jp?b?GyRCJHI7SCQmJCQkJEp9SyEkTyEpGyhC?= Message-ID: <5d04aefa0801171108t2711ed8fu18bec5ae1d178a1c@mail.gmail.com> こんばんは。浅利と申します。 Ludia と PostgresForest のパーティション化 (2) テーブルを使ってみています。 規模は数十GB程度で、 8 台に分散させて 8 パーティションを置いています。 インデックス作成速度も速く、検索スピードも良好で、なかなかよさそうです。 ところで、 Ludia には直前の全文検索でのヒット件数を返す pgs2getnhits() という 関数が準備されていますが、これを PostgresForest で使おうとすると、 それぞれの PostgreSQL インスタンスの pgs2getnhits() の結果を返してきます。 私はパーティション化テーブルで試していますが、 多重化テーブルでももしかすると同様の問題があるかもしれません。 問題の構造としては、 NOW() などのそれと似ていると思います。 pgs2getnhits() はとても速いのでできれば使いたいと思っているのですが、 何かいい方法はあるでしょうか。 Parser や ForestStatement あたりの COUNT の扱いを参考に書き換えて なんとかなるかとも思ったのですが、ちょっと自分には重いようでした。 もし、どなたかなにかお知恵がありましたら、お教えいただければ幸いです。 以下、その他雑感や現況をチラシの裏的に並べてしまいます。 初期のデータ投入を JDBC 経由で行ったのが少々面倒で時間もかかり、 もしかしたら PostgresForest 内部で使われているハッシュ関数を利用して 初期データをロードするツールを自分で書いた方がいい場面もあるかな、と感じました。 フロントエンドの開発は PHP を主に使っていますので、 PHP/Java Bridge (http://php-java-bridge.sourceforge.net/) を試しています。 今のところ、 Tomcat を経由して PHP で無事に PostgresForest を使えています。 パーティション化 (2) による分散は、メモリ上の種々のキャッシュの 利用効率から見て、大規模な運用にもかなり有望だと思っています。 これからも PostgresForest を使いたいと思っています。よろしくお願いいたします。 -- (株) RNAi 浅利 尚志 From nagatsumas @ nttdata.co.jp Fri Jan 18 18:21:43 2008 From: nagatsumas @ nttdata.co.jp (Satoshi.Nagatsuma) Date: Fri, 18 Jan 2008 18:21:43 +0900 Subject: [postgresforest-users 112] Re: =?iso-2022-jp?b?GyRCJVEhPCVGJSMlNyVnJXMyPRsoQiAoMikg?= =?iso-2022-jp?b?GyRCJEcbKEIgTHVkaWEgGyRCJE4bKEIgcGdzMmdldG5oaXRzKCkg?= =?iso-2022-jp?b?GyRCJHI7SCQmJCQkJEp9SyEkTyEpGyhC?= In-Reply-To: <5d04aefa0801171108t2711ed8fu18bec5ae1d178a1c@mail.gmail.com> References: <5d04aefa0801171108t2711ed8fu18bec5ae1d178a1c@mail.gmail.com> Message-ID: <47906FA7.90102@nttdata.co.jp> 長妻です。 > ところで、 Ludia には直前の全文検索でのヒット件数を返す pgs2getnhits() という > 関数が準備されていますが、これを PostgresForest で使おうとすると、 > それぞれの PostgreSQL インスタンスの pgs2getnhits() の結果を返してきます。 Forestのデフォルト動作では、 select now(); select pgs2getnhits(); といったテーブルを特定しないSELECT文を実行する場合、 実行するPostgreSQLインスタンスを順繰りに変更していきます。 ですので、ちょっとトリッキーな書き方になってしまいますが・・・。 for(台数分) { rs = stmt.executeQuery("select pgs2getnhits()"); rs.next(); count += rs.getInt(1); } という感じで全PostgreSQLインスタンスから結果を集約できるはずです。 > 私はパーティション化テーブルで試していますが、 > 多重化テーブルでももしかすると同様の問題があるかもしれません。 > 問題の構造としては、 NOW() などのそれと似ていると思います。 実はレプリケーション(多重化)テーブルの場合、この問題は起きません。 全てのPostgreSQLインスタンスで内容が同じなので、どのインスタンスで クエリを実行したとしても得られる結果は同じだからです。 > 初期のデータ投入を JDBC 経由で行ったのが少々面倒で時間もかかり、 > もしかしたら PostgresForest 内部で使われているハッシュ関数を利用して > 初期データをロードするツールを自分で書いた方がいい場面もあるかな、と感じました。 確かにそうですね。 Forestのハッシュ関数は、plJavaから使われることも想定したつくりに なっていることもあり、結構無駄な内部構造になっている部分もあります。 また、1件1件JAVA上で処理してINSERT文で投入することになりますから、 copy文などでデータを投入するのに比べるとかなり遅くなるのは仕方ないところです。 推奨する使い方ではないですが、最初からどのデータがどのパーティションに 含まれるかわかっていて、なおかつ初期データを投入する状況に限っていえば、 事前に何らかの方法でデータを各パーティションの内容ごとに分割しておき、 psqlで直接各パーティションテーブルに投入するという方法もありますね。 (試してみる or ソースを見てみればわかりますが、 Forestデフォルトの配置関数は、配置属性のHash値で分割しています) > フロントエンドの開発は PHP を主に使っていますので、 > PHP/Java Bridge (http://php-java-bridge.sourceforge.net/) を試しています。 > 今のところ、 Tomcat を経由して PHP で無事に PostgresForest を使えています。 PHPとJavaのブリッジの存在は認識していましたが、なかなか手を出せる時間がなく ずっと放置していました。これは貴重な動作報告ですね!ありがとうございます。 > パーティション化 (2) による分散は、メモリ上の種々のキャッシュの > 利用効率から見て、大規模な運用にもかなり有望だと思っています。 パーティション化2は柔軟性に富みすぎていて、そのせいで色々と扱いづらい 部分も多々ありますが、それだけに面白い(まだまだ改善のし甲斐がある) ところです。なんとかもっと使いやすくしていきたいところですね。。。 ASARI Takashi さんは書きました: > こんばんは。浅利と申します。 > > Ludia と PostgresForest のパーティション化 (2) テーブルを使ってみています。 > 規模は数十GB程度で、 8 台に分散させて 8 パーティションを置いています。 > インデックス作成速度も速く、検索スピードも良好で、なかなかよさそうです。 > > ところで、 Ludia には直前の全文検索でのヒット件数を返す pgs2getnhits() という > 関数が準備されていますが、これを PostgresForest で使おうとすると、 > それぞれの PostgreSQL インスタンスの pgs2getnhits() の結果を返してきます。 > > 私はパーティション化テーブルで試していますが、 > 多重化テーブルでももしかすると同様の問題があるかもしれません。 > 問題の構造としては、 NOW() などのそれと似ていると思います。 > > pgs2getnhits() はとても速いのでできれば使いたいと思っているのですが、 > 何かいい方法はあるでしょうか。 > Parser や ForestStatement あたりの COUNT の扱いを参考に書き換えて > なんとかなるかとも思ったのですが、ちょっと自分には重いようでした。 > もし、どなたかなにかお知恵がありましたら、お教えいただければ幸いです。 > > > 以下、その他雑感や現況をチラシの裏的に並べてしまいます。 > > 初期のデータ投入を JDBC 経由で行ったのが少々面倒で時間もかかり、 > もしかしたら PostgresForest 内部で使われているハッシュ関数を利用して > 初期データをロードするツールを自分で書いた方がいい場面もあるかな、と感じました。 > > フロントエンドの開発は PHP を主に使っていますので、 > PHP/Java Bridge (http://php-java-bridge.sourceforge.net/) を試しています。 > 今のところ、 Tomcat を経由して PHP で無事に PostgresForest を使えています。 > > パーティション化 (2) による分散は、メモリ上の種々のキャッシュの > 利用効率から見て、大規模な運用にもかなり有望だと思っています。 > これからも PostgresForest を使いたいと思っています。よろしくお願いいたします。 > From asari @ users.sourceforge.net Fri Jan 18 21:26:48 2008 From: asari @ users.sourceforge.net (ASARI Takashi) Date: Fri, 18 Jan 2008 21:26:48 +0900 Subject: [postgresforest-users 113] Re: =?iso-2022-jp?b?GyRCJVEhPCVGJSMlNyVnJXMyPRsoQiAoMikg?= =?iso-2022-jp?b?GyRCJEcbKEIgTHVkaWEgGyRCJE4bKEIgcGdzMmdldG5oaXRz?= =?iso-2022-jp?b?KCkgGyRCJHI7SCQmJCQkJEp9SyEkTyEpGyhC?= In-Reply-To: <47906FA7.90102@nttdata.co.jp> References: <5d04aefa0801171108t2711ed8fu18bec5ae1d178a1c@mail.gmail.com> <47906FA7.90102@nttdata.co.jp> Message-ID: <5d04aefa0801180426x7fd55f30i593fd2de77e7fcf2@mail.gmail.com> 浅利です。 ご対応ありがとうございます。 08/01/18 に Satoshi.Nagatsuma さんは書きました: > ですので、ちょっとトリッキーな書き方になってしまいますが・・・。 > > for(台数分) { > rs = stmt.executeQuery("select pgs2getnhits()"); > rs.next(); > count += rs.getInt(1); > } > > という感じで全PostgreSQLインスタンスから結果を集約できるはずです。 な、なるほど! お教えいただき、ありがとうございます。 これなら簡単にできますね。 全ノードに同じ内容のクエリを投げて結果の UNION を得るための キーワード (PASSTHROUGH SELECT ... とか?) を PostgresForest の パーサに追加して… などと考えたりもしていましたが、 これはそんな大げさなこともなく、よさそうです。 > 実はレプリケーション(多重化)テーブルの場合、この問題は起きません。 > 全てのPostgreSQLインスタンスで内容が同じなので、どのインスタンスで > クエリを実行したとしても得られる結果は同じだからです。 なるほど。 全文検索を行ったインスタンスと SELECT pgs2getnhits() を実行する インスタンスが異なってしまうこともあるかもしれないな、と思ったりしました。 > 推奨する使い方ではないですが、最初からどのデータがどのパーティションに > 含まれるかわかっていて、なおかつ初期データを投入する状況に限っていえば、 > 事前に何らかの方法でデータを各パーティションの内容ごとに分割しておき、 > psqlで直接各パーティションテーブルに投入するという方法もありますね。 > (試してみる or ソースを見てみればわかりますが、 > Forestデフォルトの配置関数は、配置属性のHash値で分割しています) まさにそのようなことを想像していました。 あまり関係ない話題ですが、パーティションのキーになる文字列が 2007001110000000 のような長い数字の列でしたので、 Long.parseLong(aString) するようなハッシュ関数があると便利かなあ、 などと思いながら Forest の配置関数のソースを眺めてみたことがあります。 結局 Long.parseLong() よりも String#hashCode() のほうがずっと高速というオチでした。 > > フロントエンドの開発は PHP を主に使っていますので、 > > PHP/Java Bridge (http://php-java-bridge.sourceforge.net/) を試しています。 > > 今のところ、 Tomcat を経由して PHP で無事に PostgresForest を使えています。 > > PHPとJavaのブリッジの存在は認識していましたが、なかなか手を出せる時間がなく > ずっと放置していました。これは貴重な動作報告ですね!ありがとうございます。 そんな私もPostgresForest開発日記を読んで試してみようと思いました! > パーティション化2は柔軟性に富みすぎていて、そのせいで色々と扱いづらい > 部分も多々ありますが、それだけに面白い(まだまだ改善のし甲斐がある) > ところです。なんとかもっと使いやすくしていきたいところですね。。。 期待しております! ただ、僭越ながら、当面は無理なものは無理ということで放置して、 ドキュメントなど全体の完成度を高めつつユーザー数を増やしていく 方向性も重視なさっては、とも思います。 個人的には、パーティション(2)での制限事項リストとか…。 全体的にユーザが増えてきて、「試してみました!」のような報告を カジュアルなユーザーがブログに書くようになってくれば、 OSS ならではの盛り上がりもでてくるんじゃないでしょうか。 と、いうことで、私も何か例えば PHP で使うための howto みたいなものを 書いて貢献できればいいのですが…。うむむ。 -- ASARI Takashi @ Todai Fink Team http://fink.sodan.ecc.u-tokyo.ac.jp/ From ryo.nightserv @ gmail.com Sun Jan 20 20:47:04 2008 From: ryo.nightserv @ gmail.com (Ryotaro Kameoka) Date: Sun, 20 Jan 2008 20:47:04 +0900 Subject: [postgresforest-users 114] =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XN28bKEI=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= Message-ID: 戸根と申します。 PostgresForestのインストールを行おうとしたのですが、 /usr/loca/forest40/bin/forest_initdb を実行した際に下記のエラーが表示されます。 <Error Message抜粋> CREATE FUNCTION === Deploy pl/java === org.postgresql.util.PSQLException: ERROR: could not load library "/usr/lib/pgsql/pljava.so": /usr/lib/pgsql/pljava.so: undefined symbol: SetUserId at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1525) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1309) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188) at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452) at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:340) at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:332) at org.postgresql.pljava.deploy.Deployer.initJavaHandlers(Deployer.java:474) at org.postgresql.pljava.deploy.Deployer.main(Deployer.java:269) === Grant on pl/java === psql:/usr/local/forest40/share/forest_pljava_init.sql:1: ERROR: schema "sqlj" does not exist psql:/usr/local/forest40/share/forest_pljava_init.sql:2: ERROR: schema "sqlj" does not exist psql:/usr/local/forest40/share/forest_pljava_init.sql:3: ERROR: schema "sqlj" does not exist psql:/usr/local/forest40/share/forest_pljava_init.sql:4: ERROR: schema "sqlj" does not exist GRANT === Install pl/java funcs === ERROR: schema "sqlj" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:1: ERROR: schema "sqlj" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:9: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:13: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:17: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:21: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:25: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:29: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:37: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:41: ERROR: language "javau" does not exist psql:/usr/local/forest40/share/forest_pljava_funcs.sql:45: ERROR: language "javau" does not exist 環境は下記のとおりです。  ・Redhat ES4 Update6  ・PostgreSQL 8.1.11(rpm)  ・PostgresForest 4.0.2 いろいろとやってみたところ、  ・PostgreSQL 8.1.11(rpm):失敗  ・PostgreSQL 8.1.11(src):失敗  ・PostgreSQL 8.1.10(rpm):成功  ・PostgreSQL 8.1.10(src):成功 というように、V8.1.xの最新版:8.1.11だと失敗するようです。 # 8.2.x系はパッチが必要とのことなので、当方では試しておりません。 PostgresForest 4.0.2に対するPostgreSQLバージョンの要件ってあるのでしょうか? Webを見たところ、詳細なものが書いていなかったので、ご教授頂ければと思います。 以上、宜しくお願いします。 From asari @ users.sourceforge.net Sun Jan 20 22:07:24 2008 From: asari @ users.sourceforge.net (ASARI Takashi) Date: Sun, 20 Jan 2008 22:07:24 +0900 Subject: [postgresforest-users 115] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: References: Message-ID: <5d04aefa0801200507h1ebd459ib40e126cb2afcac4@mail.gmail.com> 浅利です。こんばんは。 気になったので自分でも PostgreSQL 8.1.11 をインストールしてみましたが、 forest_initdb は問題なく実行できたように見えます。 環境は Gentoo Linux で、 $HOME/pg8111 , $HOME/forest40 以下にインストールしました。 JAVA_HOME は /opt/sun-jdk-1.5.0.14 を指しています。 以下、勘です。適当なことを書いて申し訳ありませんが…。 古い PostgresForest を間違えてインストールしないよう、新しく展開しなおした PostgresForest で bulid.sh を実行してみてはどうでしょう? RPM のことは詳しくないのですが、 PostgreSQL をインストールする際に postgresql-devel (に相当するヘッダ類) のバージョンが古いままになってしまった、 というのは考えられませんか? -- ASARI Takashi @ Todai Fink Team http://fink.sodan.ecc.u-tokyo.ac.jp/ From nagatsumas @ gmail.com Sun Jan 20 22:19:13 2008 From: nagatsumas @ gmail.com (nagatsuma satoshi) Date: Sun, 20 Jan 2008 22:19:13 +0900 Subject: [postgresforest-users 116] Re: =?iso-2022-jp?b?GyRCJVEhPCVGJSMlNyVnJXMyPRsoQiAoMikg?= =?iso-2022-jp?b?GyRCJEcbKEIgTHVkaWEgGyRCJE4bKEIgcGdzMmdldG5oaXRz?= =?iso-2022-jp?b?KCkgGyRCJHI7SCQmJCQkJEp9SyEkTyEpGyhC?= Message-ID: 長妻です。 > 全文検索を行ったインスタンスと SELECT pgs2getnhits() を実行する > インスタンスが異なってしまうこともあるかもしれないな、と思ったりしました。 うっ、言われてみればそうですね・・・ 今手元に試せる環境がないのですぐには何とも言えませんが、原理的には そういう動作になる気がします。もしそうだとするなら回避方法としては、 Forestの負荷分散動作をラウンドロビン方式ではなく、コネクションごとに インスタンス振り分けする方式に変えてあげればうまくいくように思えます。 > あまり関係ない話題ですが、パーティションのキーになる文字列が > 2007001110000000 のような長い数字の列でしたので、 > Long.parseLong(aString) するようなハッシュ関数があると便利かなあ、 > などと思いながら Forest の配置関数のソースを眺めてみたことがあります。 > 結局 Long.parseLong() よりも String#hashCode() のほうがずっと高速というオチでした。 確かに、配置関数に渡った時点でStringインスタンスが生成されているとしたら その段階でhashCode値は生成済みですからね。Long.parseLongはパースという 重い処理が入るので圧倒的にパフォーマンスは悪そうですね・・・。 > ただ、僭越ながら、当面は無理なものは無理ということで放置して、 > ドキュメントなど全体の完成度を高めつつユーザー数を増やしていく > 方向性も重視なさっては、とも思います。 > 個人的には、パーティション(2)での制限事項リストとか…。 ごもっともです(^^; 今のところ、そういった方針で少しずつやっている感じです。 開発関係でいうと、レプリケーションテーブルをメインに、周辺ツールの ユーザビリティ向上であったり、JDBCのメッセージ品質向上などなど。 ドキュメント類ではマニュアルの拡充、制限事項リストやAPIの対応状況等 といったあたりをチマチマと進めています。 いろいろとやりたいこと、やるべきことはあるものの、開発メンバーが その他の仕事で忙しかったり・・・なかなか余力がなく悩ましい状況です。 そういった意味でも > と、いうことで、私も何か例えば PHP で使うための howto みたいなものを > 書いて貢献できればいいのですが…。うむむ。 期待してます!(笑) こんな改善案はどう?というような案やら意見やら (あるいはこんな実装やら改造やらしちゃったんですが・・・なんて話でも) 情報共有できるとよいですね。 > 浅利です。 > ご対応ありがとうございます。 > > 08/01/18 に Satoshi.Nagatsuma さんは書きました: > > ですので、ちょっとトリッキーな書き方になってしまいますが・・・。 > > > > for(台数分) { > > rs = stmt.executeQuery("select pgs2getnhits()"); > > rs.next(); > > count += rs.getInt(1); > > } > > > > という感じで全PostgreSQLインスタンスから結果を集約できるはずです。 > > な、なるほど! お教えいただき、ありがとうございます。 > これなら簡単にできますね。 > > 全ノードに同じ内容のクエリを投げて結果の UNION を得るための > キーワード (PASSTHROUGH SELECT ... とか?) を PostgresForest の > パーサに追加して… などと考えたりもしていましたが、 > これはそんな大げさなこともなく、よさそうです。 > > > 実はレプリケーション(多重化)テーブルの場合、この問題は起きません。 > > 全てのPostgreSQLインスタンスで内容が同じなので、どのインスタンスで > > クエリを実行したとしても得られる結果は同じだからです。 > > なるほど。 > 全文検索を行ったインスタンスと SELECT pgs2getnhits() を実行する > インスタンスが異なってしまうこともあるかもしれないな、と思ったりしました。 > > > 推奨する使い方ではないですが、最初からどのデータがどのパーティションに > > 含まれるかわかっていて、なおかつ初期データを投入する状況に限っていえば、 > > 事前に何らかの方法でデータを各パーティションの内容ごとに分割しておき、 > > psqlで直接各パーティションテーブルに投入するという方法もありますね。 > > (試してみる or ソースを見てみればわかりますが、 > > Forestデフォルトの配置関数は、配置属性のHash値で分割しています) > > まさにそのようなことを想像していました。 > > あまり関係ない話題ですが、パーティションのキーになる文字列が > 2007001110000000 のような長い数字の列でしたので、 > Long.parseLong(aString) するようなハッシュ関数があると便利かなあ、 > などと思いながら Forest の配置関数のソースを眺めてみたことがあります。 > 結局 Long.parseLong() よりも String#hashCode() のほうがずっと高速というオチでした。 > > > > フロントエンドの開発は PHP を主に使っていますので、 > > > PHP/Java Bridge (http://php-java-bridge.sourceforge.net/) を試しています。 > > > 今のところ、 Tomcat を経由して PHP で無事に PostgresForest を使えています。 > > > > PHPとJavaのブリッジの存在は認識していましたが、なかなか手を出せる時間がなく > > ずっと放置していました。これは貴重な動作報告ですね!ありがとうございます。 > > そんな私もPostgresForest開発日記を読んで試してみようと思いました! > > > パーティション化2は柔軟性に富みすぎていて、そのせいで色々と扱いづらい > > 部分も多々ありますが、それだけに面白い(まだまだ改善のし甲斐がある) > > ところです。なんとかもっと使いやすくしていきたいところですね。。。 > > 期待しております! > > ただ、僭越ながら、当面は無理なものは無理ということで放置して、 > ドキュメントなど全体の完成度を高めつつユーザー数を増やしていく > 方向性も重視なさっては、とも思います。 > 個人的には、パーティション(2)での制限事項リストとか…。 > > 全体的にユーザが増えてきて、「試してみました!」のような報告を > カジュアルなユーザーがブログに書くようになってくれば、 > OSS ならではの盛り上がりもでてくるんじゃないでしょうか。 > > と、いうことで、私も何か例えば PHP で使うための howto みたいなものを > 書いて貢献できればいいのですが…。うむむ。 > > -- > ASARI Takashi @ Todai Fink Team > http://fink.sodan.ecc.u-tokyo.ac.jp/ From nagatsumas @ nttdata.co.jp Mon Jan 21 15:43:53 2008 From: nagatsumas @ nttdata.co.jp (Satoshi.Nagatsuma) Date: Mon, 21 Jan 2008 15:43:53 +0900 Subject: [postgresforest-users 117] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: References: Message-ID: <47943F29.7020809@nttdata.co.jp> 長妻です。 軽く試してみたところ、確かにPostgreSQL8.1.11ではforest_initdbで エラーが出てしまいました。詳細はまだ見ていないのですが、pljavaの コンパイル等々に失敗しているとかそういった感じかもしれません。 詳しく調べてみないとなんともいえませんが、今のところは Forest4.0.2をPostgreSQL8.1.11ではすぐには使えないという結論に なるかもしれません。 (浅利さんのほうでは使えていらっしゃるみたいなのが謎ですね・・・) Ryotaro Kameoka さんは書きました: > 戸根と申します。 > > PostgresForestのインストールを行おうとしたのですが、 > /usr/loca/forest40/bin/forest_initdb を実行した際に下記のエラーが表示されます。 > > > <Error Message抜粋> > > CREATE FUNCTION > === Deploy pl/java === > org.postgresql.util.PSQLException: ERROR: could not load library > "/usr/lib/pgsql/pljava.so": /usr/lib/pgsql/pljava.so: undefined > symbol: SetUserId > at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1525) > at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1309) > at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188) > at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452) > at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:340) > at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:332) > at org.postgresql.pljava.deploy.Deployer.initJavaHandlers(Deployer.java:474) > at org.postgresql.pljava.deploy.Deployer.main(Deployer.java:269) > === Grant on pl/java === > psql:/usr/local/forest40/share/forest_pljava_init.sql:1: ERROR: > schema "sqlj" does not exist > psql:/usr/local/forest40/share/forest_pljava_init.sql:2: ERROR: > schema "sqlj" does not exist > psql:/usr/local/forest40/share/forest_pljava_init.sql:3: ERROR: > schema "sqlj" does not exist > psql:/usr/local/forest40/share/forest_pljava_init.sql:4: ERROR: > schema "sqlj" does not exist > GRANT > === Install pl/java funcs === > ERROR: schema "sqlj" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:1: ERROR: > schema "sqlj" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:9: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:13: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:17: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:21: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:25: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:29: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:37: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:41: ERROR: > language "javau" does not exist > psql:/usr/local/forest40/share/forest_pljava_funcs.sql:45: ERROR: > language "javau" does not exist > > > 環境は下記のとおりです。 >  ・Redhat ES4 Update6 >  ・PostgreSQL 8.1.11(rpm) >  ・PostgresForest 4.0.2 > > > いろいろとやってみたところ、 >  ・PostgreSQL 8.1.11(rpm):失敗 >  ・PostgreSQL 8.1.11(src):失敗 >  ・PostgreSQL 8.1.10(rpm):成功 >  ・PostgreSQL 8.1.10(src):成功 > というように、V8.1.xの最新版:8.1.11だと失敗するようです。 > # 8.2.x系はパッチが必要とのことなので、当方では試しておりません。 > > > PostgresForest 4.0.2に対するPostgreSQLバージョンの要件ってあるのでしょうか? > Webを見たところ、詳細なものが書いていなかったので、ご教授頂ければと思います。 > > 以上、宜しくお願いします。 > > _______________________________________________ > postgresforest-users mailing list > postgresforest-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > > From nakai @ shinko.co.jp Mon Jan 21 16:37:43 2008 From: nakai @ shinko.co.jp (Hisakazu Nakai) Date: Mon, 21 Jan 2008 16:37:43 +0900 Subject: [postgresforest-users 118] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: References: Message-ID: <47944BC7.6040206@shinko.co.jp> 中井です。 ちょっと考え付いたのですが、外していたらすいません。 Ryotaro Kameoka さんは書きました: > CREATE FUNCTION > === Deploy pl/java === > org.postgresql.util.PSQLException: ERROR: could not load library > "/usr/lib/pgsql/pljava.so": /usr/lib/pgsql/pljava.so: undefined > 環境は下記のとおりです。 >  ・Redhat ES4 Update6 >  ・PostgreSQL 8.1.11(rpm) >  ・PostgresForest 4.0.2 /usr/lib/pgsql/pljava.soというファイルはありますか? javaもどきのオープンソースjavaが邪魔していませんか? -- -=-=-=-= SHINKO ELECTRIC INDUSTRIES CO., LTD. =-=-=-=- =-=-=-=- Research & Development Div. -=-=-=-= -=-=-=-= Infomation Technology Research Dept. =-=-=-=- =-=-=-=- Name:Hisakazu Nakai TEL:026-263-3922 -=-=-=-= -=-=-=-= Mail:nakai @ shinko.co.jp FAX:026-263-4562 =-=-=-=- From nagatsumas @ nttdata.co.jp Mon Jan 21 18:10:44 2008 From: nagatsumas @ nttdata.co.jp (Satoshi.Nagatsuma) Date: Mon, 21 Jan 2008 18:10:44 +0900 Subject: [postgresforest-users 119] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: <47943F29.7020809@nttdata.co.jp> References: <47943F29.7020809@nttdata.co.jp> Message-ID: <47946194.3040807@nttdata.co.jp> 長妻です。 どうやらPostgreSQLの関数が変更されていることが原因のようです。 pljava.soは、PostgreSQLバイナリのlib中に配置できているようなので そこは問題ないだろうと踏んで、エラーメッセージをもう一度見ると・・・ org.postgresql.util.PSQLException: ERROR: could not load library > "/usr/lib/pgsql/pljava.so": /usr/lib/pgsql/pljava.so: undefined > symbol: SetUserId となってるので、PostgreSQLのソースコードの中をSetUserIdで検索してみると PostgreSQL-8.1.10 [forestdevel @ fedora5 src]$ grep -R "SetUserId(" * backend/access/transam/xact.c: SetUserId(s->currentUser); backend/utils/fmgr/fmgr.c: SetUserId(fcache->userid); backend/utils/fmgr/fmgr.c: SetUserId(save_userid); backend/utils/fmgr/fmgr.c: SetUserId(save_userid); (省略) PostgreSQL-8.1.11 [forestdevel @ fedora5 src]$ grep -R "SetUserId(" * backend/utils/init/miscinit.c: * Note: there's no SetUserId() anymore; use SetUserIdAndContext(). まさにこれが原因ですね。どうやら8.1.11からこの関数がなくなったようです。 8.3RC1でも同じように問題になっているようです。 http://www.nabble.com/Pl-Java-broken-since-Postgresql-8.3-rc1-td14746321.html あれ? そうなってくると浅利さんが使えているのは何故でしょう・・? Satoshi.Nagatsuma さんは書きました: > 長妻です。 > > 軽く試してみたところ、確かにPostgreSQL8.1.11ではforest_initdbで > エラーが出てしまいました。詳細はまだ見ていないのですが、pljavaの > コンパイル等々に失敗しているとかそういった感じかもしれません。 > > 詳しく調べてみないとなんともいえませんが、今のところは > Forest4.0.2をPostgreSQL8.1.11ではすぐには使えないという結論に > なるかもしれません。 > (浅利さんのほうでは使えていらっしゃるみたいなのが謎ですね・・・) > > > Ryotaro Kameoka さんは書きました: >> 戸根と申します。 >> >> PostgresForestのインストールを行おうとしたのですが、 >> /usr/loca/forest40/bin/forest_initdb を実行した際に下記のエラーが表示されます。 >> >> >> <Error Message抜粋> >> >> CREATE FUNCTION >> === Deploy pl/java === >> org.postgresql.util.PSQLException: ERROR: could not load library >> "/usr/lib/pgsql/pljava.so": /usr/lib/pgsql/pljava.so: undefined >> symbol: SetUserId >> at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1525) >> at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1309) >> at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188) >> at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452) >> at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:340) >> at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:332) >> at org.postgresql.pljava.deploy.Deployer.initJavaHandlers(Deployer.java:474) >> at org.postgresql.pljava.deploy.Deployer.main(Deployer.java:269) >> === Grant on pl/java === >> psql:/usr/local/forest40/share/forest_pljava_init.sql:1: ERROR: >> schema "sqlj" does not exist >> psql:/usr/local/forest40/share/forest_pljava_init.sql:2: ERROR: >> schema "sqlj" does not exist >> psql:/usr/local/forest40/share/forest_pljava_init.sql:3: ERROR: >> schema "sqlj" does not exist >> psql:/usr/local/forest40/share/forest_pljava_init.sql:4: ERROR: >> schema "sqlj" does not exist >> GRANT >> === Install pl/java funcs === >> ERROR: schema "sqlj" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:1: ERROR: >> schema "sqlj" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:9: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:13: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:17: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:21: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:25: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:29: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:37: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:41: ERROR: >> language "javau" does not exist >> psql:/usr/local/forest40/share/forest_pljava_funcs.sql:45: ERROR: >> language "javau" does not exist >> >> >> 環境は下記のとおりです。 >>  ・Redhat ES4 Update6 >>  ・PostgreSQL 8.1.11(rpm) >>  ・PostgresForest 4.0.2 >> >> >> いろいろとやってみたところ、 >>  ・PostgreSQL 8.1.11(rpm):失敗 >>  ・PostgreSQL 8.1.11(src):失敗 >>  ・PostgreSQL 8.1.10(rpm):成功 >>  ・PostgreSQL 8.1.10(src):成功 >> というように、V8.1.xの最新版:8.1.11だと失敗するようです。 >> # 8.2.x系はパッチが必要とのことなので、当方では試しておりません。 >> >> >> PostgresForest 4.0.2に対するPostgreSQLバージョンの要件ってあるのでしょうか? >> Webを見たところ、詳細なものが書いていなかったので、ご教授頂ければと思います。 >> >> 以上、宜しくお願いします。 >> >> _______________________________________________ >> postgresforest-users mailing list >> postgresforest-users @ lists.sourceforge.jp >> http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users >> >> > > _______________________________________________ > postgresforest-users mailing list > postgresforest-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > > From asari @ users.sourceforge.net Mon Jan 21 18:23:05 2008 From: asari @ users.sourceforge.net (ASARI Takashi) Date: Mon, 21 Jan 2008 18:23:05 +0900 Subject: [postgresforest-users 120] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: <47946194.3040807@nttdata.co.jp> References: <47943F29.7020809@nttdata.co.jp> <47946194.3040807@nttdata.co.jp> Message-ID: <5d04aefa0801210123q6fdb8c2frf7bb9d566a5e4331@mail.gmail.com> 浅利です。こんばんは。 また何かやっちまったか、と思いながらもう一度試してみました。 どこを勘違いしたのかわかりませんが、確かにエラーが出ています。 戸根様、皆様、誤った情報を流してしまい、申し訳ありませんでした。 > 古い PostgresForest を間違えてインストールしないよう、新しく展開しなおした > PostgresForest で bulid.sh を実行してみてはどうでしょう? …自分でこれに当たっていたとか。 結構こんなんばっかりです。 -- ASARI Takashi @ Todai Fink Team http://fink.sodan.ecc.u-tokyo.ac.jp/ From ryo.nightserv @ gmail.com Mon Jan 21 18:41:17 2008 From: ryo.nightserv @ gmail.com (ryo.nightserv @ gmail.com) Date: Mon, 21 Jan 2008 18:41:17 +0900 Subject: [postgresforest-users 121] Re: =?iso-2022-jp?b?UG9zdGdlc0ZvcmVzdBskQiUkJXMlOSVIITwla01XGyhC?= =?iso-2022-jp?b?GyRCN28kSyREJCQkRhsoQg==?= In-Reply-To: <5d04aefa0801210123q6fdb8c2frf7bb9d566a5e4331@mail.gmail.com> References: <47943F29.7020809@nttdata.co.jp> <47946194.3040807@nttdata.co.jp> <5d04aefa0801210123q6fdb8c2frf7bb9d566a5e4331@mail.gmail.com> Message-ID: 長妻様 浅利様 中井様 利根です。いろいろと情報のご提供ありがとうございます。 Ver8.11から仕様が変わってしまったみたいですね。 pljava.so自体はlibディレクトリにありましたので。。。 とりあえずVer8.1.10ではinitdbができますので、 そちらを使わせて頂きます。 皆様、ありがとうございました。 以上、宜しくお願い致します。 08/01/21 に ASARI Takashi さんは書きました: > 浅利です。こんばんは。 > > また何かやっちまったか、と思いながらもう一度試してみました。 > どこを勘違いしたのかわかりませんが、確かにエラーが出ています。 > 戸根様、皆様、誤った情報を流してしまい、申し訳ありませんでした。 > > > 古い PostgresForest を間違えてインストールしないよう、新しく展開しなおした > > PostgresForest で bulid.sh を実行してみてはどうでしょう? > > …自分でこれに当たっていたとか。 > 結構こんなんばっかりです。 > > -- > ASARI Takashi @ Todai Fink Team > http://fink.sodan.ecc.u-tokyo.ac.jp/ > > _______________________________________________ > postgresforest-users mailing list > postgresforest-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > From nagatu2 @ gmail.com Tue Jan 22 14:38:40 2008 From: nagatu2 @ gmail.com (=?ISO-2022-JP?B?GyRCMUpERRsoQg==?=) Date: Tue, 22 Jan 2008 14:38:40 +0900 Subject: [postgresforest-users 122] =?iso-2022-jp?b?GyRCJUYhPCVWJWslOSVaITwlOSROJTUlXSE8JUgkSyREGyhC?= =?iso-2022-jp?b?GyRCJCQkRhsoQg==?= Message-ID: <4304b9d50801212138u2e3c5231pcea0172b4bbff2ca@mail.gmail.com> 永津と申します。 以前のスレッドで以下のような書き込みがありましたので、 質問いたします。 > PostgresForestが提供するツール内からのテーブルスペース作成は > 現在のところサポートしておりません。 > > 実現する方法としては、環境構築ツールでデータベースを作った後、 > 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく > といったあたりがよいかと思います。 > > psql等で各PostgreSQLに接続 > ↓ > create tablespace sample_ts location '/xxx/xxx/xxx'; > ↓ > alter database sampledb set default_tablespace = 'sample_ts'; > (個別テーブルのテーブルスペースを変える場合ならば > alter table sampletable set tablespace = 'sample_ts';) postgresforest4.0.2において、 環境構築ツールからcreate tablespaceは実行できなくても、 alter tablespaceは実行できるように思いますが、 何か問題はあるでしょうか。 今のところ ・肥大化したテーブルをテーブルスペース間で移動させる際に  デフォルトコンフィグではSQL実行時の30秒タイムアウトに引っかかる可能性。 以上のものが思いつきます。 他に何か考慮すべき点があればご教授ください。 >吉森です。遅くなってすみません。 >教えていただいた方法でテーブルスペースの設定ができました。ありがとうございます。 >ただ、それぞれのインスタンスに同じ作業をするのはちょっと違和感があります。 >forestadmから設定できるようになる予定はあるのでしょうか。 > 長妻と申します。 > > PostgresForestが提供するツール内からのテーブルスペース作成は > 現在のところサポートしておりません。 > > 実現する方法としては、環境構築ツールでデータベースを作った後、 > 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく > といったあたりがよいかと思います。 > > psql等で各PostgreSQLに接続 > ↓ > create tablespace sample_ts location '/xxx/xxx/xxx'; > ↓ > alter database sampledb set default_tablespace = 'sample_ts'; > (個別テーブルのテーブルスペースを変える場合ならば > alter table sampletable set tablespace = 'sample_ts';) > > > YOSHIMORI Izumi さんは書きました: > > 吉森です。お世話になっております。 > > > > よりいっそうの高速化を目指しているのですが、 > > PostgresForestでテーブルスペースを使うことはできるでしょうか? > > PostgresForestで提供されているツール類からはテーブルスペースの > > 作成ができないようなのですが… > > > > よろしくお願いします。 From nagatsumas @ nttdata.co.jp Thu Jan 24 18:44:31 2008 From: nagatsumas @ nttdata.co.jp (Satoshi.Nagatsuma) Date: Thu, 24 Jan 2008 18:44:31 +0900 Subject: [postgresforest-users 123] Re: =?iso-2022-jp?b?GyRCJUYhPCVWJWslOSVaITwlOSROJTUlXSE8JUgbKEI=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <4304b9d50801212138u2e3c5231pcea0172b4bbff2ca@mail.gmail.com> References: <4304b9d50801212138u2e3c5231pcea0172b4bbff2ca@mail.gmail.com> Message-ID: <47985DFF.8040008@nttdata.co.jp> 長妻です。 Forest4.0.2はテーブルスペースについて考慮されていません。 ですので、alter tablespace が正常に動作するかどうかも 検証できていないというのが今の状況です。 ちなみに、 > ・肥大化したテーブルをテーブルスペース間で移動させる際に >  デフォルトコンフィグではSQL実行時の30秒タイムアウトに引っかかる可能性。 SQL実行タイムアウトはJDBCの動作に関してのみであって、 forestadmの動作には無関係です。 永津 さんは書きました: > 永津と申します。 > > 以前のスレッドで以下のような書き込みがありましたので、 > 質問いたします。 > >> PostgresForestが提供するツール内からのテーブルスペース作成は >> 現在のところサポートしておりません。 >> >> 実現する方法としては、環境構築ツールでデータベースを作った後、 >> 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく >> といったあたりがよいかと思います。 >> >> psql等で各PostgreSQLに接続 >> ↓ >> create tablespace sample_ts location '/xxx/xxx/xxx'; >> ↓ >> alter database sampledb set default_tablespace = 'sample_ts'; >> (個別テーブルのテーブルスペースを変える場合ならば >> alter table sampletable set tablespace = 'sample_ts';) > > postgresforest4.0.2において、 > 環境構築ツールからcreate tablespaceは実行できなくても、 > alter tablespaceは実行できるように思いますが、 > 何か問題はあるでしょうか。 > > 今のところ > ・肥大化したテーブルをテーブルスペース間で移動させる際に >  デフォルトコンフィグではSQL実行時の30秒タイムアウトに引っかかる可能性。 > 以上のものが思いつきます。 > 他に何か考慮すべき点があればご教授ください。 > > >> 吉森です。遅くなってすみません。 >> 教えていただいた方法でテーブルスペースの設定ができました。ありがとうございます。 >> ただ、それぞれのインスタンスに同じ作業をするのはちょっと違和感があります。 >> forestadmから設定できるようになる予定はあるのでしょうか。 > >> 長妻と申します。 >> >> PostgresForestが提供するツール内からのテーブルスペース作成は >> 現在のところサポートしておりません。 >> >> 実現する方法としては、環境構築ツールでデータベースを作った後、 >> 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく >> といったあたりがよいかと思います。 >> >> psql等で各PostgreSQLに接続 >> ↓ >> create tablespace sample_ts location '/xxx/xxx/xxx'; >> ↓ >> alter database sampledb set default_tablespace = 'sample_ts'; >> (個別テーブルのテーブルスペースを変える場合ならば >> alter table sampletable set tablespace = 'sample_ts';) >> >> >> YOSHIMORI Izumi さんは書きました: >>> 吉森です。お世話になっております。 >>> >>> よりいっそうの高速化を目指しているのですが、 >>> PostgresForestでテーブルスペースを使うことはできるでしょうか? >>> PostgresForestで提供されているツール類からはテーブルスペースの >>> 作成ができないようなのですが… >>> >>> よろしくお願いします。 > > _______________________________________________ > postgresforest-users mailing list > postgresforest-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > > From nagatu2 @ gmail.com Fri Jan 25 18:31:36 2008 From: nagatu2 @ gmail.com (=?ISO-2022-JP?B?GyRCQ2ZCPBsoQg==?=) Date: Fri, 25 Jan 2008 18:31:36 +0900 Subject: [postgresforest-users 124] Re: =?iso-2022-jp?b?GyRCJUYhPCVWJWslOSVaITwlOSROJTUlXSE8JUgbKEI=?= =?iso-2022-jp?b?GyRCJEskRCQkJEYbKEI=?= In-Reply-To: <47985DFF.8040008@nttdata.co.jp> References: <4304b9d50801212138u2e3c5231pcea0172b4bbff2ca@mail.gmail.com> <47985DFF.8040008@nttdata.co.jp> Message-ID: <4304b9d50801250131o4090f5e6y44b070a8524137eb@mail.gmail.com> 長妻様 お世話になっております。 永津です。 > Forest4.0.2はテーブルスペースについて考慮されていません。 > ですので、alter tablespace が正常に動作するかどうかも > 検証できていないというのが今の状況です。 psqlから「\d testtable1(テーブル名);」のコマンドで見たときと HDDの使われ方から設定通りにテーブルスペースが割り当てられているとは思いますが、 不測の事態が起こる可能性はあるということですね。 ご回答ありがとうございました。 > SQL実行タイムアウトはJDBCの動作に関してのみであって、 > forestadmの動作には無関係です。 こちらについては理解が不足していました。 申し訳ありません。 > 長妻です。 > > Forest4.0.2はテーブルスペースについて考慮されていません。 > ですので、alter tablespace が正常に動作するかどうかも > 検証できていないというのが今の状況です。 > > ちなみに、 > > > ・肥大化したテーブルをテーブルスペース間で移動させる際に > > デフォルトコンフィグではSQL実行時の30秒タイムアウトに引っかかる可能性。 > > SQL実行タイムアウトはJDBCの動作に関してのみであって、 > forestadmの動作には無関係です。 > > > 永津 さんは書きました: > > 永津と申します。 > > > > 以前のスレッドで以下のような書き込みがありましたので、 > > 質問いたします。 > > > >> PostgresForestが提供するツール内からのテーブルスペース作成は > >> 現在のところサポートしておりません。 > >> > >> 実現する方法としては、環境構築ツールでデータベースを作った後、 > >> 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく > >> といったあたりがよいかと思います。 > >> > >> psql等で各PostgreSQLに接続 > >> ↓ > >> create tablespace sample_ts location '/xxx/xxx/xxx'; > >> ↓ > >> alter database sampledb set default_tablespace = 'sample_ts'; > >> (個別テーブルのテーブルスペースを変える場合ならば > >> alter table sampletable set tablespace = 'sample_ts';) > > > > postgresforest4.0.2において、 > > 環境構築ツールからcreate tablespaceは実行できなくても、 > > alter tablespaceは実行できるように思いますが、 > > 何か問題はあるでしょうか。 > > > > 今のところ > > ・肥大化したテーブルをテーブルスペース間で移動させる際に > > デフォルトコンフィグではSQL実行時の30秒タイムアウトに引っかかる可能性。 > > 以上のものが思いつきます。 > > 他に何か考慮すべき点があればご教授ください。 > > > > > >> 吉森です。遅くなってすみません。 > >> 教えていただいた方法でテーブルスペースの設定ができました。ありがとうございます。 > >> ただ、それぞれのインスタンスに同じ作業をするのはちょっと違和感があります。 > >> forestadmから設定できるようになる予定はあるのでしょうか。 > > > >> 長妻と申します。 > >> > >> PostgresForestが提供するツール内からのテーブルスペース作成は > >> 現在のところサポートしておりません。 > >> > >> 実現する方法としては、環境構築ツールでデータベースを作った後、 > >> 全てのPostgreSQL上で個別にテーブルスペースの設定をしていただく > >> といったあたりがよいかと思います。 > >> > >> psql等で各PostgreSQLに接続 > >> ↓ > >> create tablespace sample_ts location '/xxx/xxx/xxx'; > >> ↓ > >> alter database sampledb set default_tablespace = 'sample_ts'; > >> (個別テーブルのテーブルスペースを変える場合ならば > >> alter table sampletable set tablespace = 'sample_ts';) > >> > >> > >> YOSHIMORI Izumi さんは書きました: > >>> 吉森です。お世話になっております。 > >>> > >>> よりいっそうの高速化を目指しているのですが、 > >>> PostgresForestでテーブルスペースを使うことはできるでしょうか? > >>> PostgresForestで提供されているツール類からはテーブルスペースの > >>> 作成ができないようなのですが… > >>> > >>> よろしくお願いします。 > > > > _______________________________________________ > > postgresforest-users mailing list > > postgresforest-users @ lists.sourceforge.jp > > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > > > > > > _______________________________________________ > postgresforest-users mailing list > postgresforest-users @ lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/postgresforest-users > From abe.akira @ kick.gr.jp Wed Jan 30 19:56:21 2008 From: abe.akira @ kick.gr.jp (Akira Abe) Date: Wed, 30 Jan 2008 19:56:21 +0900 Subject: [postgresforest-users 125] =?iso-2022-jp?b?Q09QWSAbJEIlMyVeJXMlSSRLJEQkJCRGGyhC?= Message-ID: <200801301056.m0UAuLWd077791@orange.kick.gr.jp> 阿部と申します。 初歩的な質問ですみません。 PostgresForestでは、COPYコマンドの使用は可能でしょうか? マニュアルと過去ログを確認しましたが見当たりませんでした。 実際に試したところ下記のエラーが出ました。 ※通常のPostgreSQLでは正常にCOPYできたデータです。 [2] COPY testtbl from '/home/forest/data.dat'; SQL: COPY testtbl from '/home/forest/data.dat'; ERROR: cannot copy to view "testtbl" 実際には、part table2コマンド(パーティション化(2))を利用した テーブルに適用したいと考えております。 よろしくお願い致します。