[前][次][番号順一覧][スレッド一覧]

mysql:15609

From: 野副 勝己 <野副 勝己 <nozoe@xxxxxxxxxx>>
Date: Wed, 3 Aug 2011 10:46:41 +0900
Subject: [mysql 15609] Re: Indexをつけるとと、update のwhere 句マッチしない [Ver.4.1.23]

野副です。


平塚さん

更なる解説、有難う御座います。
入り口が異なる事、了解しました。
渡すパラメータが壊れているのでは、幾ら頑張っても該当レコードには
マッチしないですよね…

本当に助かりました。

# 今回は、明日作業と言う時に念の為にと思い、色々確認してしていたら、
# SELECTに使ったキーをそのまま使って、UPDATE しているにも関わらず、
# レコードの内容が変わらない…と、ちょっと冷や汗が。。。
# まさか、Index付ける前は成功していたUPDATE文が、indexつけたらUPDATE
# が何もしないで返ってくるなんて、予想出来ていませんでした…

# 取り敢えず、急遽作業は延期し、自分で調べつつもこのMLに質問させて
# 頂きました。MLに投稿なんて、十数年振り?と言う位久々でした。
# 元々、PostgreSQL派だったので、MySQL歴はほんの数年
#(と言っても、最近は自分で面倒見る機会がへっているので、pkgやrpmで
# インストールする機会が増えソースコードからという事をほとんどしなくなり
# ました...)



>> -----Original Message-----
>> From: HIRATSUKA Sadao [mailto:hiratsuka.sadao@xxxxxxxxxx]
>> Sent: Tuesday, August 02, 2011 8:31 PM
>> To: ml@xxxxxxxxxx
>> Subject: [mysql 15608] Re: Indexをつけるとと、update のwhere 句マ
>> ッチしない [Ver.4.1.23]
>>
>> 平塚です。
>>
>> On Tue, 2 Aug 2011 17:35:16 +0900
>> 野副 勝己 <nozoe@xxxxxxxxxx> wrote:
>>
>> > バグ情報が何処にあるか解らなかった(バグ情報から検索する事が出来
>> なかった
>> > …)
>> > ので、確信が持てずにいたのですが、平塚さんのメールでバグに該当し
>> ている
>> > と言う事に確信が持てましたので、これで延命処置を図りたいと思いま
>> す。
>> >
>> > ありがとうございました。
>>
>> どういたしまして!
>>
>>
>> > P.S. 解せないのは、SELECT 文ではIndex が有効に働いているにも関わ
>> らず
>> > 何故、UPDATE 文ではIndex 検索で空振りするのだろうかと言うことで
>> す。
>> > #UPDATE コマンドの応答速度からすると、いきなり該当無しで返って
>> きてい
>> > #る気がする…
>>
>> インデックススキャンはしているのですが、
>> 誤った文字列で探しているのだそうです。
>>
>>
>> > 実行計画って、SELECT文のWHERE句とUPDATE 文のWHERE句で違うので
>> しょうか?
>> > 不思議です…
>>
>> 大雑把にしか説明できないのですが、
>>
>> SELECT文は sql/sql_select.cc
>> UPDATE文は sql/sql_update.cc
>>
>> で実行されていて、ロジックが入口から異なっています。
>>
>> いわゆる実行計画というものは sql_select.cc の
>> JOIN::optimize というところで作られています。
>> sql_update.cc では処理がもう少し簡略化されています。
>>
>> 今回の不具合は sql_update.cc からストレージエンジンに検索条件を
>> 渡すまでの間のどこかで、検索条件を壊してしまったことによるもの
>> だと思います。
>>
>> --
>> 平塚貞夫 hiratsuka.sadao@xxxxxxxxxx
>>
>>



[前][次][番号順一覧][スレッド一覧]

     15605 2011-08-02 13:26 [野副 勝己 <nozoe@xx] Indexをつけるとと、update のwhere 句マッチしない [Ver.4.1.23]
     15606 2011-08-02 16:30 ┗[HIRATSUKA Sadao <hir]                                       
     15607 2011-08-02 17:35  ┗[野副 勝己 <nozoe@xx]                                     
     15608 2011-08-02 20:30   ┗[HIRATSUKA Sadao <hir]                                   
->   15609 2011-08-03 10:46    ┗[野副 勝己 <nozoe@xx]