Ticket #4428 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

画像が別DBで管理されていた場合、画像サイズレコードが削除されない

Reported by: kiwa Assigned to: kiwpon
Priority: minor Milestone: OpenPNE2.14.6
Component: 指定しない Version: 2.14.x
Keywords: Cc:

Description (Last modified by kiwpon)

■概要

画像が別DBで管理されていた場合、画像を削除しても画像サイズレコードが削除されない

■原因

c_image_sizeは main DBに記録しているが、db_image_delete_c_image() では image DBへ削除クエリを発行している。

■修正内容

c_image_sizeのデータの削除は、main DBを操作するように変更。

■関連情報

元の報告

http://sns.openpne.jp/diary/24070

早速バグ発見。

2.14で画像サイズ計算が導入されていますが、
画像を削除しても、画像サイズレコードが削除されない・・・。

パッチは作れるけどどこに提出したらいいのだろう・・・。


---追記 03/31---
パッチ作成しました。
■再現条件 画像DBが分かれている場合
dbのdsnはmainのがいいのかな・・・


Index: webapp/lib/db/image.php
===================================================================
--- webapp/lib/db/image.php (revision 21)
+++ webapp/lib/db/image.php (working copy)
@@ -81,6 +81,7 @@
function db_image_delete_c_image($filename, $c_member_id)
{
$db =& db_get_instance('image');
+ $db2 =& db_get_instance();

$sql = 'DELETE FROM c_image WHERE filename = ?';
$params = array($filename);
@@ -88,7 +89,7 @@

$sql = 'DELETE FROM c_image_size WHERE filename = ?';
$params = array($filename);
- $db->query($sql, $params);
+ $db2->query($sql, $params);

//function cacheの削除
$category = util_image_filename2category($filename);

関連チケット

#4437 #4428 の対応が既に削除された画像に適用されない

Change History

05/06/10 12:05:18 changed by kiwpon

  • owner changed from nobody to kiwpon.

パッチ適用やります。

05/06/10 12:26:47 changed by kiwpon

  • description changed.
  • summary changed from 画像サイズレコードが削除されない to 画像が別DBで管理されていた場合、画像サイズレコードが削除されない.

05/17/10 14:39:09 changed by kiwpon

  • keywords set to 確認中.

修正取り込みました。チケットのdescription変更はお待ちください

05/18/10 14:30:30 changed by kawahara

  • keywords changed from 確認中 to 差し戻し.
  • description changed.

差し戻しです。

  • c_image_sizeからのレコード削除時は $db2->query() ではなく db_query()を使うべきだと思います。
  • よって $db2 は不要かと思われます。

05/18/10 16:16:04 changed by kiwpon

  • keywords changed from 差し戻し to 確認中.

以下のリビジョンでdb_query を使用するように変更しました

05/18/10 16:25:40 changed by kawahara

  • description changed.

05/18/10 16:30:41 changed by kawahara

  • keywords changed from 確認中 to テスト待ち.

コード的には問題ありませんが、以下の点を確認。

  • このバグが発生して対処されるまでに発生したDBの不整合を修正する必要があるか否か。

05/20/10 11:21:21 changed by kiwpon

  • description changed.

05/20/10 11:21:49 changed by kiwpon

過去のデータに関しては#4437 にて対応します。

05/20/10 11:28:39 changed by imamura623

  • keywords deleted.
  • status changed from new to closed.
  • resolution set to fixed.

テストOKです。問題ありません。