Hatena::ブログ(Diary)

総天然色頁 RSSフィード

2008-10-21 (火)

チケット回りのテーブル構成

TracでチケットをCSV出力しても、コメントが付いてこないので、調べてみました。

テーブル構成

チケット情報(既定のフィールド)

チケット本体。

CREATE TABLE ticket (
    id integer PRIMARY KEY,
    type text,
    time integer,
    changetime integer,
    component text,
    severity text,
    priority text,
    owner text,
    reporter text,
    cc text,
    version text,
    milestone text,
    status text,
    resolution text,
    summary text,
    description text,
    keywords text
)
カスタムフィールドの内容

チケットごとのカスタムフィールド名と値を管理するテーブルのようです。

例えば、開始予定日・終了予定日・進捗率を追加した場合、それらの値はこのテーブル上で管理されます。

カスタムフィールドに値を入力していなくても、レコードは必ず全カスタムフィールド分作られます。

CREATE TABLE ticket_custom (
    ticket integer,
    name text,
    value text,
    UNIQUE (ticket,name)
)
チケットの履歴

ticket_changeは、チケットの変更履歴を管理するテーブルのようです。

ticket_customと同様に、変更したfield名と(old|new)valueの対を管理するようです。

一度に複数個所を変更した場合、ticketとtimeが同じデータが複数作られます。

CREATE TABLE ticket_change (
    ticket integer,
    time integer,
    author text,
    field text,
    oldvalue text,
    newvalue text,
    UNIQUE (ticket,time,field)
)

コメント(基本)

チケット変更時には、必ず、field = 'comment'のデータが追加されるようです。

このデータだけは、他の変更履歴と異なり、oldvalue / newvalueは下記のような内容になります。

oldvalue
変更の通番(1始まり)
newvalue
コメント欄に記載した内容(あれば)

例えば、チケット1を登録して、最初の変更でassignだけを行った場合、

以下のように、ticketとtimeが同一のデータが2行追加されます。

tickettimeauthorfieldoldvaluenewvalue
11224567344kamatarocomment1 
11224567344kamatarostatusnewaccepted

この後コメントを追加するとこんな感じ。

tickettimeauthorfieldoldvaluenewvalue
11224567344kamatarocomment1 
11224567344kamatarostatusnewaccepted
11224567830kamatarocomment2テストテストテスト

コメント(返信時)

返信ボタンでコメントを作った場合、oldvalueの内容が上記と変わって、対象のコメント番号 "." 通番という形式になります。

説明に対する返信の場合は、"default." 変更の通番になります。

例えば、前述の例に、説明への返信を追加すると、こんな感じのデータが追加されます。

tickettimeauthorfieldoldvaluenewvalue
11224568360kamatarocommentdescription.3[ticket:1 kamataro]への返信...(以下略)

更に、コメント1(status:new→accepted)への返信を追加すると、こんな感じ。

tickettimeauthorfieldoldvaluenewvalue
11224568380kamatarocomment1.4[comment:1 kamataro] への返信...(以下略)

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/kamataro/20081021/1224568862