« NetBeansでConsolasフォントを使う | メイン | ImageMagickでGIFアニメをリサイズ »

symfony propelでシーケンス名が省略されてしまう
このエントリーをブックマークに追加 このエントリーをlivedoorクリップに追加

yukiです。

今回は「symfonyでよくあるトラブル」を掲載してからちょうど1年を経過したので、また今年も取り上げてみたいと思います。

前回はsymfony+MySQLを使っての場合でしたが、今回はsymfony+PostgreSQLでお送りします。
とはいえ以前よりもだいぶsymfonyを取り巻く状況も変化し、バグらしいバグもほとんど既知のものだったり、枯れて(?)きたのかな、とも思います。
そんななか、小一時間ほどハマってしまった不具合があったので、今回はそのご紹介のみになります。

symfony propel-build-modelで作成したSQLのシーケンス名が食い違う

どうもテーブル名やカラム名がある程度長いと、途中で省略されてしまったりして、誤認識してしまう。
PostgreSQLの場合英数字63文字(63byte)までは問題ないはずが、どうもそれより短い文字数でも途中で切れてしまう問題。
どうもPropelのバグらしいので、自作パッチを当てるなり、UPDATEで修正されることを期待するしかなさそうです。

$ cat symfony/lib/vendor/propel-generator/classes/propel/engine/platform/PgsqlPlatform.php
中略
    /** 
     * @see        Platform#getMaxColumnNameLength()
     */
    public function getMaxColumnNameLength()
    {   
        return 32; 
    }   

中略

今回もアッサリしたエントリになってしまいましたが、お役に立てれば幸いです。

トラックバック

このエントリーのトラックバックURL:
http://www.unoh.net/mt32/mt-tb.cgi/1550

コメントを投稿


画像の中に見える文字を入力してください。

  [PR] 転職
ウノウラボはウノウ株式会社のエンジニア/デザイナーによる大小のアウトプットを行っていく場です。

現在ウノウは絶賛人材募集中です。詳細は求人ページへ。

About

2008年12月 1日 16:38に投稿されたエントリーのページです。

ひとつ前の投稿は「NetBeansでConsolasフォントを使う」です。

次の投稿は「ImageMagickでGIFアニメをリサイズ」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

ウノウサービス