プロジェクト

全般

プロフィール

Bug(バグ) #2516

pc_backend_dev.php や mobile_frontend_dev.php で見るとi18nのキャッシュについてのwarningが出る

hiromi hishida12年以上前に追加. 8年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Urgent(急いで)
担当者:
対象バージョン:
開始日:
2011-10-19
期日:
2011-10-19
進捗率:

100%

3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Unknown (未調査)

説明

概要

pc_backendをdevで見るとi18nのキャッシュについて添付ファイルにキャプチャしたようなエラーが出ます。

参考:管理画面でWarning: mkdir()などのエラーがでます
http://sns.openpne.jp/communityTopic/7618

修正方針

pc_backendのfactories.ymlにて

  i18n:
    class: opI18N
    param:
      source:               OpenPNE
      debug:                false
      untranslated_prefix:  "[T]" 
      untranslated_suffix:  "[/T]" 
      cache:
        class: sfFileCache
        param:
          automatic_cleaning_factor: 0
          cache_dir: %SF_I18N_CACHE_DIR%
          lifetime: 86400
          prefix: %SF_APP_DIR%

となっているものをpc_frontendのfactories.ymlと同じように

  i18n:
    class: opI18N
    param:
      source:               OpenPNE
      debug:                false
      untranslated_prefix:  "[T]" 
      untranslated_suffix:  "[/T]" 
      cache: ~

と直せば発生しなくなります。

追記

note-8 以降で指摘された mobile_frontend についても対応することにします。

名称未設定-1.gif 表示 - エラーメッセージのキャプチャ (4.95 KB) hiromi hishida, 2011-10-19 08:23


関連するチケット

関連している OpenPNE 3 - Bug(バグ) #995: [Optimization] Waste file-accesses in i18n (i18n 関連処理で無駄なファイルアクセスがある) Fixed(完了) 2010-04-27
関連している OpenPNE 3 - Backport(バックポート) #2863: pc_backend_dev.php や mobile_frontend_dev.php で見るとi18nのキャッシュについてのwarningが出る Fixed(完了) 2011-10-19 2011-10-19

関係しているリビジョン

リビジョン 2432d7d3 (差分)
Minoru Takai12年以上前に追加

(fixes #2516) fixed factories.yml for pc_backend not to cause warning

リビジョン 28895fb4 (差分)
Minoru Takai12年以上前に追加

(fixes #2516) fixed factories.yml for mobile_frontend not to cause warning

リビジョン 64ede427 (差分)
Minoru Takai約12年前に追加

(fixes #2516) fixed factories.yml for pc_backend not to cause warning

リビジョン bebacd50 (差分)
Minoru Takai約12年前に追加

(fixes #2516) fixed factories.yml for mobile_frontend not to cause warning

履歴

#1 Minoru Takai12年以上前に更新

  • ステータスNew(新規) から Accepted(着手) に変更
  • 担当者Minoru Takai にセット
  • 対象バージョンOpenPNE 3.7.0 にセット
  • 360対象 を削除 (3.6.0)

チケットでの報告ありがとうございます。(チケットの設定値について、 OpenPNE-3.6.0 リリースのための臨時的な項目が残ったままになっているので近々整備します)

master ブランチで本件の問題を確認できたので、 Target version を 3.7.0 に設定します。本件について状況を確認し、修正が可能かを調査します。

#2 hiromi hishida12年以上前に更新

根本原因の解明まで行きついてなくて申し訳ないのですが、githubのほうにpull requestもさせていただいています。
https://github.com/openpne/OpenPNE3/pull/26

よろしくお願いします。

#3 Minoru Takai12年以上前に更新

修正方針についてレビューしました(これは OpenPNE リポジトリへのコミットに対するレビューではありません)。

  • apps/pc_backend/config/factories.yml
    • 修正前
        i18n:
          class: opI18N
          param:
            source:               OpenPNE
            debug:                false
            untranslated_prefix:  "[T]" 
            untranslated_suffix:  "[/T]" 
            cache:
              class: sfFileCache
              param:
                automatic_cleaning_factor: 0
                cache_dir:                 %SF_I18N_CACHE_DIR%
                lifetime:                  86400
                prefix:                    %SF_APP_DIR%
      
    • 修正後
        i18n:
          class: opI18N
          param:
            source:               OpenPNE
            debug:                false
            untranslated_prefix:  "[T]" 
            untranslated_suffix:  "[/T]" 
            cache: ~
      

修正前の記述が追加されたのは #416 およびそれ以前のコミットのようです。その経緯を見ると修正前の記述があること自体が問題ではなく、その後にこの問題が解消されていないことが問題だと読み取れます。

pc_frontend 側では(チケットに示されている通り)すでに修正後のような記述になっています。これを追ったところ #995 で修正されていました。

この問題は #995 での(pc_backend 側の)修正漏れか、あるいは同類の問題と見做せるようです。修正内容についてはチケット(およびこのコメントの上部)で示されているものは妥当そうです。

pull request があるようなので、そちらからの取り込みで対応したいと思います。

#4 Minoru Takai12年以上前に更新

コミット取り込み操作の都合上、今回は Pull Request を扱わずに対応することとしました(詳細は pull/26 を参照)。

#5 Minoru Takai12年以上前に更新

  • 説明 を更新 (diff)

#6 Minoru Takai12年以上前に更新

  • ステータスAccepted(着手) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 2432d7d3e226d5fb49e69df57fc09582cbed0c55 で適用されました。

#7 Minoru Takai12年以上前に更新

note-6 で master ブランチへ修正を取り込んでいます。

  • 修正前
    • (ログイン前)管理画面のログイン画面を dev モードで表示すると下記の警告が表示される
    • (ログイン後)任意の管理画面のページを dev モードで表示すると下記の警告が表示される
    • 警告の内容
      Warning: mkdir() [function.mkdir]: File exists in /path/to/OpenPNE/lib/vendor/symfony/lib/cache/sfFileCache.class.php on line 282
      
      Warning: copy(/path/to/OpenPNE/cache/apache/pc_backend/dev/i18n/messages.ja.xml.php/ja_JP.cache) [function.copy]:
       failed to open stream: Not a directory in /path/to/OpenPNE/lib/vendor/symfony/lib/cache/sfFileCache.class.php on line 302
      
      Warning: chmod() [function.chmod]: Not a directory in /path/to/OpenPNE/lib/vendor/symfony/lib/cache/sfFileCache.class.php on line 308
      
  • 修正後
    • 修正前に表示されていた警告が一切表示されなくなる

#8 Shogo Kawahara12年以上前に更新

mobile_frontend でも同様の問題が起きております。
対処法としては同様ですが、別チケットを作ったほうがよいでしょうか。

#9 Shogo Kawahara12年以上前に更新

原因は

http://redmine.openpne.jp/issues/995

での修正に対応できていなかったようです。

#10 Shogo Kawahara12年以上前に更新

こちらの対応とは別で、 factory で i18n.param.cache を指定したときは
#995 の高速化には対応しないくらいの修正が必要かもしれません。

#11 Minoru Takai12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Fixing(修正待ち) に変更

note-8 の指摘について確認しました。

mobile_frontend でも起きることについては note-7 時点で認識していませんでした。

本チケットは「 "pc_backend" での問題を修正する」というよりは、「キャッシュに関する設定が不適切なために警告が出ている」という問題を扱っていると思いますし、チケットを分ける必要性が感じられないので、このチケットで併せて修正してしまって良いと思います(対応時にはチケットも書き換える)。

#12 Minoru Takai12年以上前に更新

  • 題名pc_backend_dev.phpで見るとi18nのキャッシュについてのwarningが出る から pc_backend_dev.php や mobile_frontend で見るとi18nのキャッシュについてのwarningが出る に変更
  • 説明 を更新 (diff)

チケットを書き換えました。また 28895fb4badb6f9d02720617e6885f86444551d6 で対応しました。(Redmineが同期してコミットが取得できた時点でステータスが連動してレビュー待ちになることを想定し、ステータスを変更していない、がすぐに同期できていなかった)

#13 Minoru Takai12年以上前に更新

  • ステータスPending Fixing(修正待ち) から Pending Review(レビュー待ち) に変更

更新履歴 28895fb4badb6f9d02720617e6885f86444551d6 で適用されました。

#14 Minoru Takai12年以上前に更新

  • 題名pc_backend_dev.php や mobile_frontend で見るとi18nのキャッシュについてのwarningが出る から pc_backend_dev.php や mobile_frontend_dev.php で見るとi18nのキャッシュについてのwarningが出る に変更

#15 Minoru Takai約12年前に更新

  • 優先度Normal(通常) から High(高め) に変更
  • 3.6 で発生するかUnknown (未調査) にセット
  • 3.4 で発生するかUnknown (未調査) にセット

不要なエラーログ( Warning 等)が出力されると開発時にデバッグ作業がしにくいため、このような問題は早いうちに対応すべきかと思います。

開発者だけではなく、SNS管理者相当の人が dev モードで表示した場合にも、不要なエラーログが出力されていることで混乱する可能性があります。

このような理由で優先度を High に設定します。

#16 Shouta Kashiwagi約12年前に更新

  • 対象バージョンOpenPNE 3.7.0 から 252 に変更

#17 Youichi Kimura約12年前に更新

  • 優先度High(高め) から Urgent(急いで) に変更

#18 Shouta Kashiwagi約12年前に更新

  • 対象バージョン252 から OpenPNE 3.8beta1 に変更

#19 Minoru Takai約12年前に更新

更新履歴 64ede427d2d4a00dbefc5b84f465727c91f6eb7d で適用されました。

#20 Minoru Takai約12年前に更新

更新履歴 bebacd50ccf0ba7cdd65676a58b094058274a2be で適用されました。

#21 Yuya Watanabe約12年前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#22 Yuma Sakata約12年前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

テストOKです。

#23 kaoru n8年以上前に更新

  • 3.8 で発生するかUnknown (未調査) にセット

他の形式にエクスポート: Atom PDF