<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/mariadb-git.git/sql/sql_explain.cc, branch bb-10.2-mdev8646</title>
<subtitle>github.com: MariaDB/server.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/'/>
<entry>
<title>This is the consolidated patch for mdev-8646:</title>
<updated>2016-02-09T20:35:59+00:00</updated>
<author>
<name>Igor Babaev</name>
<email>igor@askmonty.org</email>
</author>
<published>2016-02-09T20:35:59+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=2cfc450bf78c2d951729d1a0e8f731c0d987b1d5'/>
<id>2cfc450bf78c2d951729d1a0e8f731c0d987b1d5</id>
<content type='text'>
"Re-factor the code for post-join operations".

The patch mainly contains the code ported from mysql-5.6 and
created for two essential architectural changes:
1. WL#5558: Resolve ORDER BY execution method at the optimization stage
2. WL#6071: Inline tmp tables into the nested loops algorithm

The first task was implemented for mysql-5.6 by Ole John Aske.
It allows to make all decisions on ORDER BY operation at the optimization
stage.

The second task implemented for mysql-5.6 by Evgeny Potemkin adds JOIN_TAB
nodes for post-join operations that require temporary tables. It allows
to execute these operations within the nested loops algorithm that used to
be used before this task only for join queries. Besides these task moves
all planning on the execution of these operations from the execution phase
to the optimization phase.

Some other re-factoring changes of mysql-5.6 were pulled in, mainly because
it was easier to pull them in than roll them back. In particular all
changes concerning Ref_ptr_array were incorporated.

The port required some changes in the MariaDB code that concerned the
functionality of EXPLAIN and ANALYZE. This was done mainly by Sergey
Petrunia.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
"Re-factor the code for post-join operations".

The patch mainly contains the code ported from mysql-5.6 and
created for two essential architectural changes:
1. WL#5558: Resolve ORDER BY execution method at the optimization stage
2. WL#6071: Inline tmp tables into the nested loops algorithm

The first task was implemented for mysql-5.6 by Ole John Aske.
It allows to make all decisions on ORDER BY operation at the optimization
stage.

The second task implemented for mysql-5.6 by Evgeny Potemkin adds JOIN_TAB
nodes for post-join operations that require temporary tables. It allows
to execute these operations within the nested loops algorithm that used to
be used before this task only for join queries. Besides these task moves
all planning on the execution of these operations from the execution phase
to the optimization phase.

Some other re-factoring changes of mysql-5.6 were pulled in, mainly because
it was easier to pull them in than roll them back. In particular all
changes concerning Ref_ptr_array were incorporated.

The port required some changes in the MariaDB code that concerned the
functionality of EXPLAIN and ANALYZE. This was done mainly by Sergey
Petrunia.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed compile warnings on Solaris</title>
<updated>2015-11-20T08:00:06+00:00</updated>
<author>
<name>Monty</name>
<email>monty@mariadb.org</email>
</author>
<published>2015-11-20T08:00:06+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=1e156e1436f931625b7a5573584a786388979de2'/>
<id>1e156e1436f931625b7a5573584a786388979de2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MDEV-8830: Weird output in the error log</title>
<updated>2015-10-05T13:47:34+00:00</updated>
<author>
<name>Sergei Petrunia</name>
<email>psergey@askmonty.org</email>
</author>
<published>2015-10-05T13:47:34+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=d2f6166ec5bc6c36f61f83b673b5b5dcd05edf12'/>
<id>d2f6166ec5bc6c36f61f83b673b5b5dcd05edf12</id>
<content type='text'>
Remove debug printout that was accidentally left in place
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove debug printout that was accidentally left in place
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix typos in JSON MRR output</title>
<updated>2015-09-24T13:31:45+00:00</updated>
<author>
<name>Sergei Petrunia</name>
<email>psergey@askmonty.org</email>
</author>
<published>2015-09-24T13:31:45+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=125001881dac9425e9aee12bd64003ee0b220580'/>
<id>125001881dac9425e9aee12bd64003ee0b220580</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>MDEV-8829: Assertion `0' failed in Explain_table_access::tag_to_json</title>
<updated>2015-09-24T12:45:54+00:00</updated>
<author>
<name>Sergei Petrunia</name>
<email>psergey@askmonty.org</email>
</author>
<published>2015-09-24T12:43:01+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=7016621596d4700a8cf2c228f958edf8d8932d38'/>
<id>7016621596d4700a8cf2c228f958edf8d8932d38</id>
<content type='text'>
- Add EXPLAIN/ANALYZE FORMAT=JSON handling for a few special cases.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Add EXPLAIN/ANALYZE FORMAT=JSON handling for a few special cases.
</pre>
</div>
</content>
</entry>
<entry>
<title>MDEV-7970: EXPLAIN FORMAT=JSON does not print HAVING</title>
<updated>2015-09-18T14:08:13+00:00</updated>
<author>
<name>Oleksandr Byelkin</name>
<email>sanja@mariadb.com</email>
</author>
<published>2015-09-09T14:29:50+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=da3ec3d421c345bbd4b6ddfe0e1e08ed192c0a97'/>
<id>da3ec3d421c345bbd4b6ddfe0e1e08ed192c0a97</id>
<content type='text'>
Printing non-trivial HAVING added.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Printing non-trivial HAVING added.
</pre>
</div>
</content>
</entry>
<entry>
<title>MDEV-6152: Remove calls to current_thd while creating Item</title>
<updated>2015-08-27T19:21:08+00:00</updated>
<author>
<name>Monty</name>
<email>monty@mariadb.org</email>
</author>
<published>2015-08-24T11:42:07+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=3cb578c001b2feabd2410f281d20eb6566371453'/>
<id>3cb578c001b2feabd2410f281d20eb6566371453</id>
<content type='text'>
- Part 3: Adding mem_root to push_back() and push_front()

Other things:
- Added THD as an argument to some partition functions.
- Added memory overflow checking for XML tag's in read_xml()
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Part 3: Adding mem_root to push_back() and push_front()

Other things:
- Added THD as an argument to some partition functions.
- Added memory overflow checking for XML tag's in read_xml()
</pre>
</div>
</content>
</entry>
<entry>
<title>Stage 2 of MDEV-6152:</title>
<updated>2015-08-21T06:40:51+00:00</updated>
<author>
<name>Monty</name>
<email>monty@mariadb.org</email>
</author>
<published>2015-08-20T12:24:13+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=1bae0d9e5669c2d03209082142e892417e24d09a'/>
<id>1bae0d9e5669c2d03209082142e892417e24d09a</id>
<content type='text'>
- Added mem_root to all calls to new Item
- Added private method operator new(size_t size) to Item to ensure that
  we always use a mem_root when creating an item.

This saves use once call to current_thd per Item creation
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Added mem_root to all calls to new Item
- Added private method operator new(size_t size) to Item to ensure that
  we always use a mem_root when creating an item.

This saves use once call to current_thd per Item creation
</pre>
</div>
</content>
</entry>
<entry>
<title>MDEV-8010 - Avoid sql_alloc() in Items (Patch #1)</title>
<updated>2015-08-21T06:40:39+00:00</updated>
<author>
<name>Sergey Vojtovich</name>
<email>svoj@mariadb.org</email>
</author>
<published>2015-08-11T07:18:38+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=31e365efae28ba3208e80511c4d18fe11a79541a'/>
<id>31e365efae28ba3208e80511c4d18fe11a79541a</id>
<content type='text'>
Added mandatory thd parameter to Item (and all derivative classes) constructor.
Added thd parameter to all routines that may create items.
Also removed "current_thd" from Item::Item. This reduced number of
pthread_getspecific() calls from 290 to 177 per OLTP RO transaction.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added mandatory thd parameter to Item (and all derivative classes) constructor.
Added thd parameter to all routines that may create items.
Also removed "current_thd" from Item::Item. This reduced number of
pthread_getspecific() calls from 290 to 177 per OLTP RO transaction.
</pre>
</div>
</content>
</entry>
<entry>
<title>Tabular ANALYZE must get its data from execution tracker</title>
<updated>2015-07-02T10:40:03+00:00</updated>
<author>
<name>Sergei Petrunia</name>
<email>psergey@askmonty.org</email>
</author>
<published>2015-07-02T10:33:08+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/mariadb-git.git/commit/?id=302bf7c4664b904482ecc133476e822d497b114d'/>
<id>302bf7c4664b904482ecc133476e822d497b114d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
