On 11/18/2011 16:29, Rick James wrote:
> Is this what keeps there from being parallelism in PARTITIONed tables?
No. Those partitions are accessed internally. Multiple threads can be
spawned in the context of resolving a single query. Any lack of
parallelism in resolving PARTITIONed table queries is simply a matter of
design time and effort.
Now, in the context of accessing internal resources any query that
requires a JOIN will need to touch at least two tables under the same
user context. Perhaps I misunderstood the original question?
> Is it possible for a client connection thread to access 2 tables concurrently from
> InnoDB, say using a slave thread ? Or is access limited to one table at a time per client
> connection thread ?
Perhaps he was asking about the optimizer processing a command that
needed to touch two or more tables? If that's the purpose of the
question then of course more than one table can be accessed in the
context of a single connection. This happens very frequently. I cannot
say with absolute certainty if those tables are processed in parallel
but I would be concerned if they were not.
I was reading his question more like this: Can the same connection be
used to open multiple queries where each query is pointing to a separate
table? In that context, each connection can only have one active command.
MySQL Principal Technical Support Engineer
Oracle USA, Inc. - Hardware and Software, Engineered to Work Together.
Office: Blountville, TN