Re: database abstraction layer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2010-02-03 at 00:05 +0100, Rene Veerman wrote:

> i haven't had the pleasure yet of writing for sites that generate so many
> hits/sec that
> they'd update the max value of any table at exactly the same time.
> 
> i usually ask for the max value about 2 milliseconds before doing the
> insert.
> And if the insert fails, i can auto-retry via a wrapper function after
> sleep(rand(1,3));
> I dare say i could work this way at facebook <g> (not that i really want to,
> happy with where i am)
> 
> On Tue, Feb 2, 2010 at 11:46 PM, Ashley Sheridan
> <ash@xxxxxxxxxxxxxxxxxxxx>wrote:
> 
> >  On Tue, 2010-02-02 at 23:19 +0100, Rene Veerman wrote:
> >
> > function getMax($table, $field)
> >
> >
> > If I saw this sort of code I'd be appalled! It's possibly the worst way to
> > get the auto increment value. You won't notice it testing the site out on
> > your own, but all hell will break loose when you start getting a lot of
> > hits, and two people cause an auto increment at the same time!
> >
> >   Thanks,
> > Ash
> > http://www.ashleysheridan.co.uk
> >
> >
> >


I saw it happen on a site that was getting only about 3000 hits a day.
It just takes the right combination of circumstances and it all goes
pear shaped. You really should get out of the habit of doing it.

Thanks,
Ash
http://www.ashleysheridan.co.uk



[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux