![](https://secure.gravatar.com/avatar/39b623a1559cf9c69ac3d9d4fb44e7fe.jpg?s=120&d=mm&r=g)
Hi! On Aug 14, Sergei Golubchik wrote:
On Jul 10, Sergei Golubchik wrote:
So, I'm trying to make ONLINE to mean LOCK=NONE.
And as I've realized, there can no possibly be a truly online, LOCK=NONE ALTER TABLE operation. For example, ... So, at best LOCK=NONE is inconsistent. But really, almost any ALTER will need an exclusive metadata lock, even if for an instant. So no ALTER TABLE can ever be really LOCK=NONE or ONLINE.
Unless we redefine what "online" mean. If not, there's no choice but stop claming an "online alter" support and remove ONLINE and LOCK=NONE from the syntax.
As far as I understand, the suggestions were to redefine the meaning of "online". Okay, then we say (just as Oracle does) that online applies only to data, and even for "online" ALTER TABLE there will be a short exclusive metadata lock (that can, of course, block the server for a long time regardless). Thanks everyone, I'll update the code accordingly. Regards, Sergei