On 10/14/08, Monty Taylor <[EMAIL PROTECTED]> wrote:
>
> This isn't about transactional vs. non-transactional  or even about
> getting the wrong answer. For most of these shops, the transactional
> ability is useful for some of the queries - usually a very small number
> of them. It's the transaction isolation that's useless for a large
> number of the queries. (Or, to be clear, keeping the same transactional
> context for the purposes for isolation - I'm sure that no one wants the
> underlying data to change out from under a single query)


Exactly.

So if one query gets one set of data (say, the address for "The Ivy" on
> that page Ask sent) and another query gets something else (say, the list
> of accepted payment methods) ... if someone in an admin interface
> changed the list of payment methods after the address query was run but
> before the payment methods query - NO ONE cares. Keeping context is
> honestly retarded.
>
> The funny thing is that some of the stuff built for the purposes of
> transactions (MVCC etc) are actually quite useful for these folks. (One
> of the main reasons no one really uses MyISAM any more) Just not all of it.


In my experience, the reasons we used InnoDB in most deployments at Yahoo
and now craigslist are:

- concurrency (no table locks)
- crash recovery

All the transactional features and referential integrity and other features
are *nice to have* but rarely used and not at all required 98% of the time.
If MyISAM had suddenly got decent concurrency and good crash recovery, we'd
have probably never needed InnoDB.  InnoDB is often slower than we'd like
but we accept that because it doesn't have table locking and doesn't need
REPAIR TABLE in the rare even of a crash.

Everything else is overhead.

Jeremy
_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to