List:Internals« Previous MessageNext Message »
From:Konstantin Osipov Date:June 10 2009 9:55pm
Subject:Re: making "insert delayed" like normal "insert"
View as plain text  
* Rick James <rjames@stripped> [09/06/10 22:33]:
> I'll vote for the philosophy that "Hints that don't apply, or that are
> deliberately ignored, should be silently ignored."  Perhaps "silent"
> could be interpreted as "not an ERROR, but optionally a WARNING".  Some
> examples:
> 
> USE INDEX might be totally silent, but
> FORCE INDEX, when it cannot use that index, might give a WARNING.
> (Etc, for FOR GROUP BY)
> 
> SQL_CACHE could be totally silent if query_cache_type=OFF.
> 
> LEFT JOIN is turned into JOIN is some situation.  There is no ERROR or
> WARNING that 'LEFT' is irrelevant.  (Ok, maybe this can't be considered
> a 'hint'.)
> 
> INT(5) -- I wish this would elicit a WARNING.  Usually that syntax comes
> from a novice who has not learned about SMALLINT.

DELAYED is not a hint that can be safely ignored.

It has semantical consequences.

I.e. if you violate a primary key or SQL mode rules, you will
never know, the row will be silently skipped.
Your insert is no longer part of your transaction. 

-- 
Thread
making "insert delayed" like normal "insert"Zardosht Kasheff10 Jun
  • RE: making "insert delayed" like normal "insert"Rick James10 Jun
  • Re: making "insert delayed" like normal "insert"Vladimir Shebordaev10 Jun
    • Re: making "insert delayed" like normal "insert"Zardosht Kasheff10 Jun
  • Re: making "insert delayed" like normal "insert"Konstantin Osipov10 Jun