Moodle開発者フォーラム

CentOSではPCREが標準ではUnicodeをサポートしていない

 
1997年の頃の写真です
CentOSではPCREが標準ではUnicodeをサポートしていない
Translators

こちらのディスカッショントピックと関係があります.

 MoodleのサーバをWindows XPからCentOS5に変更してから,ほとんどグローバルサーチを使用していませんでした.先日,試したところエラーが出る.調べたところ,CentOS5のPCREはUTF-8をサポートしているものの,標準のコンパイルされたパッケージではUnicodeに対応していないようです.

http://d.hatena.ne.jp/hnw/20090628
http://www.redistribution.cc/blog/20100301_1510.html
http://ameblo.jp/katyos/entry-10357760194.html
http://framework.zend.com/manual/ja/zend.search.lucene.charset.html

今は時間がありませんので対策を行いませんが,もしどなたかリーズナブルな解決方法をご存知の方はアドバイス頂けないでしょうか.リビルドか,パッケージを別から入手するか.

 
最大評点: -
1997年の頃の写真です
Re: CentOSではPCREが標準ではUnicodeをサポートしていない
Translators

 でも,グローバルサーチだけではなく,preg_matchやpreg_replaceにも影響を与えるようなことが書かれていますので,実は早く手を打たなくてはいけないのかも知れません.


http://junrei.dip.jp/wordpress/nagios/pnp4nagios%EF%BC%880-6-2%EF%BC%89%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB/

こちらの情報に基いて当方のサーバはPCREを更新しました.ただしあくまで参考であって推奨するものではありません.


Unicode Supportが有効なPCREに更新したことで,グローバルサーチが正常に機能するようになりました.

画像 river 34
Re: CentOSではPCREが標準ではUnicodeをサポートしていない
 

CentOS5.5でmoodle2も使ってみたいと思い、CentOS5標準のPHP5.1ではなくPHP5.2をyumでremiのリモジトリを利用してインストールしました。remiで配布されているPCREは以下のようにUnicode propertiesはONの状態でした。

PCRE version 8.02 2010-03-19
Compiled with
  UTF-8 support
  Unicode properties support
  Newline sequence is LF
  \R matches all Unicode newlines
  Internal link size = 2
  POSIX malloc threshold = 10
  Default match limit = 10000000
  Default recursion depth limit = 10000000
  Match recursion uses stack

ご指摘のmoodleでの問題に関しては動作確認していませんがご参考になりますでしょうか。

1997年の頃の写真です
Re: CentOSではPCREが標準ではUnicodeをサポートしていない
Translators

utterramblingsからインストールしたPCREのpcretest -Cの結果です.

PCRE version 8.02 2010-03-19
Compiled with
  UTF-8 support
  Unicode properties support
  Newline sequence is LF
  \R matches all Unicode newlines
  Internal link size = 2
  POSIX malloc threshold = 10
  Default match limit = 10000000
  Default recursion depth limit = 10000000
  Match recursion uses stack

同じバージョンのようですね.とりあえずこれでグローバルサーチは動作するようになったのですが,依然としてバックアップが失敗するコースがありますねぇ.max_execution_timeはコード中でも50分(3000秒)に変更しているようですので,時間切れでは無いと思うのですが,明確なエラーがログに残っていないのでちょっと困っています.