Uploaded image for project: 'Tuigwaa'
  1. Tuigwaa
  2. TUIGWAA-127

テーブル編集時に、異なるサイトのテーブルメタデータが利用される

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 1.0.1, 1.0, 0.9.1, 0.9, 0.8
    • 1.0.2
    • database
    • None

    Description

      テーブル編集時に発行される SQL を構築する DynaConfiguration#getAlterSQLString 内で、schema 名が引き渡されておらず、
      その結果、alter 文の生成をする為の上記メソッドでは、同名であれば他サイトのテーブル情報を利用する可能性がある。

      詳細としては、DatabaseMetadata (Hibernate) #getTableMetadata では、DatabaseMetaData (javax.sql)#getTables を呼び出しており、
      この際にschema 名が null だと、テーブル名のマッチングにスキーマ情報が利用されない。(インターフェース定義より)
      また、DatabaseMetadata#getTableMetadata メソッドは、テーブル名がマッチしたタイミングでそのテーブル情報を返すので、
      異なるスキーマのテーブル情報でも特に気にせず返してしまうことが原因。

      これにより、標準テーブル作成モードで複数サイト間でのテーブル編集が不安定になる可能性がある。

      Attachments

        Activity

          People

            someda someda
            someda someda
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: