<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Ich bin root &#187; innodb</title>
	<atom:link href="http://ichbinroot.de/tag/innodb/feed/" rel="self" type="application/rss+xml" />
	<link>http://ichbinroot.de</link>
	<description>ich darf das!</description>
	<lastBuildDate>Fri, 13 Jan 2012 13:49:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>InnoDB konfigurieren</title>
		<link>http://ichbinroot.de/2008/02/innodb-konfigurieren/</link>
		<comments>http://ichbinroot.de/2008/02/innodb-konfigurieren/#comments</comments>
		<pubDate>Sun, 03 Feb 2008 13:34:00 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[anleitungen]]></category>
		<category><![CDATA[innodb]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://ichbinroot.de/?p=24</guid>
		<description><![CDATA[Eigentlich sollte an dieser Stelle ein (leienhafter) Beitrag von mir zur Konfiguration von InnoDB (ent)stehen. MySQL-Gott Isotopp ist mir zuvor gekommen. Besser kann man es denke ich nicht erklären. Danke!]]></description>
			<content:encoded><![CDATA[<p>Eigentlich sollte an dieser Stelle ein (leienhafter) Beitrag von mir zur Konfiguration von InnoDB (ent)stehen. <a mce_href="http://blog.koehntopp.de/archives/1059-In-with-the-out,-old-with-the-new....html" href="http://blog.koehntopp.de/archives/1059-In-with-the-out,-old-with-the-new....html">MySQL-Gott</a> <a mce_href="http://blog.koehntopp.de/" href="http://blog.koehntopp.de/">Isotopp</a> ist mir <a mce_href="http://blog.koehntopp.de/archives/1997-Die-InnoDB-Storage-Engine-Konfiguration.html" href="http://blog.koehntopp.de/archives/1997-Die-InnoDB-Storage-Engine-Konfiguration.html">zuvor gekommen</a>. Besser kann man es denke ich nicht erklären. Danke!</p>
<p></p>
<p><span id="more-24"></span>
<p><br mce_bogus="1"></p>
]]></content:encoded>
			<wfw:commentRss>http://ichbinroot.de/2008/02/innodb-konfigurieren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MySQL-Käferjagd</title>
		<link>http://ichbinroot.de/2008/02/mysql-kaferjagd/</link>
		<comments>http://ichbinroot.de/2008/02/mysql-kaferjagd/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 16:36:34 +0000</pubDate>
		<dc:creator>root</dc:creator>
				<category><![CDATA[bug]]></category>
		<category><![CDATA[innodb]]></category>
		<category><![CDATA[mysql]]></category>

		<guid isPermaLink="false">http://ichbinroot.de/?p=25</guid>
		<description><![CDATA[Für einen neuen, dicken Datenbankserver (8 CPU-Kerne, 16GB RAM) habe ich eine passende MySQL-Version gesucht. Dabei bin ich auf einige &#8211; teilweise sehr beunruhigende &#8211; Bug-Reports gestoßen. MySQL 5.0.32 Community Eigentlich wollte ich das MySQL-Paket von Debian etch verwenden. Dann stiess ich im MySQL Performance Blog auf Bug #15815. Hier die kurze Erklärung von Vadim [...]]]></description>
			<content:encoded><![CDATA[<p>Für einen neuen, dicken Datenbankserver (8 CPU-Kerne, 16GB RAM) habe ich eine <a mce_href="http://blog.koehntopp.de/archives/1804-Eine-MySQL-Installation-planen.html" href="http://blog.koehntopp.de/archives/1804-Eine-MySQL-Installation-planen.html">passende MySQL-Version</a> gesucht. Dabei bin ich auf einige &#8211; teilweise sehr beunruhigende &#8211; Bug-Reports gestoßen.<br mce_bogus="1"></p>
<p><span id="more-25"></span><br />
<h3>MySQL 5.0.32 Community<br /></h3>
<p>Eigentlich wollte ich das MySQL-Paket von Debian etch verwenden. Dann stiess ich im <a mce_href="http://www.mysqlperformanceblog.com/2006/07/28/returning-to-innodb-scalability/" href="http://www.mysqlperformanceblog.com/2006/07/28/returning-to-innodb-scalability/">MySQL Performance Blog</a> auf Bug <a mce_href="http://bugs.mysql.com/bug.php?id=15815" href="http://bugs.mysql.com/bug.php?id=15815">#15815</a>. Hier die kurze Erklärung von <a mce_href="http://www.percona.com/team/vadim-tkachenko.html" href="http://www.percona.com/team/vadim-tkachenko.html">Vadim</a> dazu:</p>
<blockquote><p>On 4-CPU box 1 thread executes full-table scan select query for 8 sec, but with 4 threads &#8211; each thread executes query for 240 sec. It is very strange as threads use only SELECT queries and ideally there should be no any problem in concurrent enviroment, especially for CPU-bound workload.</p></blockquote>
<p>Behoben ist das ganze in MySQL Enterprise 5.0.30 und in MySQL Community 5.0.33 (source code release) bzw. MySQL Community 5.0.37 (binary release). Ein Work-Around dafür ist: </p>
<pre>innodb_thread_concurrency=4 # oder noch niedriger</pre>
<h3>Sortierschwierigkeiten</h3>
<p>Auf der Suche nach einem Paket in dem der obige Bug sowie die <a mce_href="https://tretkowski.de:443/blog/archives/403-No-need-to-hurry-for-MySQL-5.0.51a-in-Debian.html" href="https://tretkowski.de:443/blog/archives/403-No-need-to-hurry-for-MySQL-5.0.51a-in-Debian.html">aktuellen Sicherheitslücken</a> gefixt ist und auch sonst keine krassen Fehler enthalten sind fand ich Bug <a mce_href="http://bugs.mysql.com/bug.php?id=30666" href="http://bugs.mysql.com/bug.php?id=30666">#30666</a> welcher bisher in keinem Community-Release behoben wurde. In den Enterprise-Releases ist er ab 5.0.52 behoben.</p>
<blockquote><p>It seems that if a query has range conditions on fields of 2 tables or more, the ORDER BY clause is ignored and the rows are returned in unsorted table order.</p></blockquote>
<p>Das Enterprise-Kunden jedoch nicht immer die besseren Releases kriegen sieht man an Version 5.0.48 (welche zurückgerufen wurde). MySQL konnte dort in noch mehr Fällen nicht mehr korrekt sortieren. Gleich zwei Bugs diesbezüglich gibt es dort: </p>
<blockquote><p><a mce_href="http://bugs.mysql.com/bug.php?id=30596" href="http://bugs.mysql.com/bug.php?id=30596">#30596</a> <br />
The optimization that uses a unique index to remove GROUP BY suffers from the following<br />
flaw: It does not choose the index at the same time as removing GROUP BY, thus it cannot<br />
guarantee ordering the result by the columns in the GROUP BY list.</p></blockquote>
<blockquote><p><a mce_href="http://bugs.mysql.com/bug.php?id=31001" href="http://bugs.mysql.com/bug.php?id=31001">#31001</a> <br />
MySQL pays no attention to the DESC in the ORDER BY if you order by the primary key and<br />
also include a simple equals where condition on an indexed column.</p></blockquote>
<h3>Hilfe, ich brauche Enterprise!</h3>
<p>Der oben beschriebene Sortier-Bug wäre bei der einzusetzenden Anwendung derzeit kein Problem, jedoch enthält die wichtigste Query davon ein IN(). Demnächst wird das Datenbanklayout der Anwendung etwas modifiziert &#8211; wie steht zwar noch nicht genau fest &#8211; jedoch habe ich keine Lust mich dann evtl. mit diesem Bug rumzuschlagen. Also muss eine Enterprise-Version her. Nach etwas Googlen und studieren der <a mce_href="https://shop.mysql.com/enterprise/" href="https://shop.mysql.com/enterprise/">Preisliste</a> (*schwitz*) fand ich einen Mirror der die <a mce_href="http://mirror.provenscaling.com/mysql/enterprise/source/5.0/" href="http://mirror.provenscaling.com/mysql/enterprise/source/5.0/">Enterprise-Sourcen</a> zum Download anbietet. <a mce_href="http://mirror.provenscaling.com/mysql/enterprise/binaries/5.0/" href="http://mirror.provenscaling.com/mysql/enterprise/binaries/5.0/">Binaries</a> gibts dort übrigens auch.</p>
<h3>Noch mehr Bugs: Replikation</h3>
<p>Bei meiner ganzen Sucherei bin ich neben schon beschriebenen Sachen auch auf beunruhigende Tatsachen bezüglich Replikation gestoßen:</p>
<blockquote><p><a mce_href="http://bugs.mysql.com/bug.php?id=26489" href="http://bugs.mysql.com/bug.php?id=26489">#26489</a><br />I currently have replication set up between 2 innodb servers (the remote one being very remote) over a VPN on a high latency connection. The relay logs are OFTEN corrupted with odd characters[...].</p></blockquote>
<p>Ausserdem ist die MySQL-Replikation nicht mehr Absturzsicher. Details dazu kann man im <a mce_href="http://www.mysqlperformanceblog.com/2008/01/29/no-more-mysql-crash-safe-replication-in-50/" href="http://www.mysqlperformanceblog.com/2008/01/29/no-more-mysql-crash-safe-replication-in-50/">MySQL Performance Blog</a> oder im zugehörigen <a mce_href="http://bugs.mysql.com/bug.php?id=34058" href="http://bugs.mysql.com/bug.php?id=34058">Bug-Report</a> nachlesen.</p>
<h3>Beim Timeout sollte alles weg!</h3>
<p>Beim studieren der Changelogs habe ich ausserdem noch folgenden Eintrag gefunden, in meinen Augen total unsinnig. Wenn eine Transaktion abläuft sollte man sie meiner Meinung nach komplett zurückrollen. Oder gibt es Fälle in denen das nicht erwünscht ist bzw. keinen Sinn macht!? Bitte klärt mich auf! Naja richtig konfigurieren kann man es <a mce_href="http://dev.mysql.com/doc/mysqld-version-reference/en/ch05s02s16.html" href="http://dev.mysql.com/doc/mysqld-version-reference/en/ch05s02s16.html">seit 5.0.32</a> auf Wunsch.</p>
<blockquote><p><a mce_href="http://bugs.mysql.com/bug.php?id=24200" href="http://bugs.mysql.com/bug.php?id=24200">#24200</a><br />Starting with MySQL 5.0.13 InnoDB will only roll back the last query on transaction timeouts. In 4.x and up to 5.0.12 it would abort and roll back the complete transaction on timeouts as it still does on transaction deadlocks.</p></blockquote>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://ichbinroot.de/2008/02/mysql-kaferjagd/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

