From: Zardosht Kasheff Date: February 17 2010 8:47pm Subject: Re: question on HA_EXTRA_IGNORE_DUP_KEY List-Archive: http://lists.mysql.com/internals/37723 Message-Id: <2f9663ba1002171247w68adb63die7432421bd3a60f4@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 So it seems that just looking at this flag will not work, because INSERT IGNORE and INSERT...ON DUPLICATE KEY UPDATE both set this flag. I guess what I am wondering is the following, is there any way for the handler to know for sure that the user has called "insert ignore", and if so, would it be ok for the handler to return success even if internally a duplicate key is found? Thanks -Zardosht On Fri, Feb 12, 2010 at 5:08 PM, Zardosht Kasheff wrote: > Hello all, > > I am trying to implement an optimization in our storage engine if > HA_EXTRA_IGNORE_DUP_KEY is set. Would it be ok if handler::write_row > returns success if this flag is set, the sql statement is NOT > SQLCOM_REPLACE or SQLCOM_REPLACE_SELECT, and the row is not inserted > if a duplicate is otherwise there. > > Basically, the question is if this flag is set, is it ok to not return > HA_ERR_FOUND_DUPP_KEY in the cases where the statement is not "replace > into". > > Thanks > -Zardosht >