← Back to team overview

maria-developers team mailing list archive




IMHO,as a user (not a developer) i will show my vision about 'alter'...

i think the ONLINE is equal to: please don't lock my table and report
"waiting table lock" at processlist for more than 1 second or users will
kill me! =] hehe

about algorithms i think it's something related to
"using this one will expend more time, but use less disk",
"this one will expend less time, but use temporary files",
"this have bigger locks, this one have small locks"
or something like this to help user selecting the best "online" model to
use with current workload

thinking again about syntax.. the "ONLINE" keyword could be removed... the
ALTER TABLE METHOD=OFFLINE, method=nolock, method=shared,
method=anyothers.... could do the same work, the ONLINE keyword is just a
"please don't use OFFLINE algorithm" and i think we could have a new var
here "default_offline_algorithm=xxxxxx" at my.cnf

as a DBA, i think about use of resources and time, like any project
management (cost, resource, time)
I NEED online when i have some programs running queries at <1 qps or a
'soft/hard realtime' process, and i need a new index, for example, and
table is very big (let's talk about >1GB)

with a offline solution i can create index only when i halt all programs
the online will solve many support problems to me, related to scheduled
tasks. I think that's the main point, avoid scheduled tasks

About internal algorithms and locks, i don't have many to say since i don't
know many internal features and structures, sorry... in future i will help
with internals :)

good work guys! when complete this task please let'me (everybody) know via
mail list :) i will test with >4GB tables in same day/week that i need new
index and change some fields size