メインコンテンツに移動
mattz.xii.jp

Main navigation

  • Home
  • YBR125メモ
User account menu
  • ログイン

パンくず

  1. ホーム

PostgreSQL 9でDrupal 6が動かない件

By mattz , 2012/10/19

新しくDrupalのサイトを構築するにあたって、あまり深く考えずにPostgreSQLの9を選んでしまった(なんでMySQLじゃないのかとかいうのには諸般の事情とお答えしておきます)のですが、動かない。

最初はさっぱり原因が分からなくて途方に暮れていたのですが、調べていくうちに大体原因がつかめた。

Drupalは色々なキャッシュデータをserializeしてbytea型のカラムに格納して保持しています。PostgreSQLの8までは、bytea型のカラムに値を格納するときはエスケープクォートして格納という形だったのが、9からはhexに変換して格納するという形にデフォルトの形式が変わりました。

これによって、chacheテーブルから取り出した値をunserializeできないというエラーになっていました。

bytea型に格納する形式を、旧来と同様な'escape'形式に変更するというのもできないことはない(ALTER DATABASE database_name SET bytea_output = 'escape')ようなのですが、他にもこのようなハマリポイントがあると厄介ですし、そのたびに検証して対策するという時間も取れそうにないので、結局のところPostgreSQLのバージョンを(実績のある)8系にすることにしました。

ちなみにDrupal 7では、この問題には対応済みのようです。

タグ

  • Drupal

最近のエントリー

  • フロントブレーキパッドの交換
  • バイクガレージを買った
  • バックミラーの交換
  • 角目化
  • バイクカバーを新調
  • クラッチレバーブーツの硬化対策
  • ハンドルストッパー
  • ジェッティングの見直し
  • バックミラーの防眩化
  • チェーン交換(その後)

ランダム

  • 旅行記 (2009/07/25)
  • 史記 武帝紀 二 (2009/08/06)
  • build 10108 (2008/08/15)
  • 短縮する必要のないところでまでURL短縮するのやめませんか? (2011/03/09)
  • きむらと田村 (2009/09/29)

月別アーカイブ

  • 5月 2008 (29)

ページ送り

  • 前ページ
  • 9
RSS feed