<?xml version="1.0" encoding="utf-8"?>
<feed>
	<title>ThinkPart</title>
	<subtitle>Andrey's blog</subtitle>
	<link href="http://hristov.com/oblog/"/>
	<updated>2010-03-20T03:02:55Q</updated>
	
					<entry>
			<title>My NAS - QNAP TS 119 Turbo NAS</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2010/03/07/my-nas-qnap-ts-119-turbo-nas/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2010/03/07/my-nas-qnap-ts-119-turbo-nas/" title="My NAS - QNAP TS 119 Turbo NAS" />
		   	<published>2010-03-07T00:00:00Q</published>
		   
		   <summary><![CDATA[Few weeks ago I got new hardware for my home network, a QNAP TS 119 Turbo NAS.]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>Few weeks ago I got new hardware for my home network, a QNAP TS 119 Turbo NAS.</p>]]>
		   </content>
		</entry>
				<entry>
			<title>mysqlnd and the compressed protocol, again</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/09/07/mysqlnd-and-the-compressed-protocol-again/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/09/07/mysqlnd-and-the-compressed-protocol-again/" title="mysqlnd and the compressed protocol, again" />
		   	<published>2009-09-07T00:00:00Q</published>
		   
		   <summary><![CDATA[mysqlnd patched for compressed protocol passes almost all tests, but all of the most relevant and those who test with big result sets. I have a few failures due to "Packet out of order" which is due to the crippled packet numbering when com...pressed is turned on-the outter layer has different counter than the inner, compressed one, and it is unknown how the server resets them (for example in the COM_CHANGE_USER tests).
&nbsp;]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p class="UIIntentionalStory_Message">mysqlnd patched for compressed protocol passes almost all tests, but all of the most relevant and those who test with big result sets. I have a few failures due to "Packet out of order" which is due to the crippled packet numbering when com<span class="text_exposed_hide">...</span><span class="text_exposed_show">pressed is turned on-the outter layer has different counter than the inner, compressed one, and it is unknown how the server resets them (for example in the COM_CHANGE_USER tests).</span></p>
<p>&nbsp;</p>]]>
		   </content>
		</entry>
				<entry>
			<title>The MySQL compressed protocol</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/09/04/the-mysql-compressed-protocol/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/09/04/the-mysql-compressed-protocol/" title="The MySQL compressed protocol" />
		   	<published>2009-09-04T00:00:00Q</published>
		   
		   <summary><![CDATA[MySQL's compressed protocol is not so widely used, but there are still users that use it. Thus, the need to implement it in mysqlnd.
Unfortunately the compressed protocol is full of landmines, a lot of them, exploding one by one.]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>MySQL's compressed protocol is not so widely used, but there are still users that use it. Thus, the need to implement it in mysqlnd.</p>
<p>Unfortunately the compressed protocol is full of landmines, a lot of them, exploding one by one.</p>]]>
		   </content>
		</entry>
				<entry>
			<title>Compressed protocol for mysqlnd</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/09/03/compressed-protocol-for-mysqlnd/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/09/03/compressed-protocol-for-mysqlnd/" title="Compressed protocol for mysqlnd" />
		   	<published>2009-09-03T00:00:00Q</published>
		   
		   <summary><![CDATA[Compressed protocol support for mysqlnd has ready alpha patch. Tested with simple queries, not tested against the test suite or big packets.]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p class="UIIntentionalStory_Message">Compressed protocol support for mysqlnd has ready alpha patch. Tested with simple queries, not tested against the test suite or big packets.</p>]]>
		   </content>
		</entry>
				<entry>
			<title>100 000 queries per second against MySQL</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/06/05/100-000-queries-per-second-against-mysql/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/06/05/100-000-queries-per-second-against-mysql/" title="100 000 queries per second against MySQL" />
		   	<published>2009-06-05T00:00:00Q</published>
		   
		   <summary><![CDATA[No! There is no error in the topic. You can see yourself:]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>No! There is no error in the topic. You can see yourself:</p>]]>
		   </content>
		</entry>
				<entry>
			<title>Where is the problem in the following code?</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/05/29/where-is-the-problem-in-the-following-code/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/05/29/where-is-the-problem-in-the-following-code/" title="Where is the problem in the following code?" />
		   	<published>2009-05-29T00:00:00Q</published>
		   
		   <summary><![CDATA[#define MYSQLND_INC_GLOBAL_STATISTIC(statistic) \
 { \
     if (MYSQLND_G(collect_statistics) &amp;&amp; statistic != STAT_LAST) { \
        mysqlnd_global_stats-&gt;values[statistic]++; \
    } \
 }
I usually don't make this mistake, but in this particular case I did. Can you spot it?]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<pre>#define MYSQLND_INC_GLOBAL_STATISTIC(statistic) \
 { \
     if (MYSQLND_G(collect_statistics) &amp;&amp; statistic != STAT_LAST) { \
        mysqlnd_global_stats-&gt;values[statistic]++; \
    } \
 }</pre>
<p>I usually don't make this mistake, but in this particular case I did. Can you spot it?</p>]]>
		   </content>
		</entry>
				<entry>
			<title>Query caching in PHP/mysqlnd - Reloaded</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/04/26/query-caching-in-phpmysqlnd-reloaded/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/04/26/query-caching-in-phpmysqlnd-reloaded/" title="Query caching in PHP/mysqlnd - Reloaded" />
		   	<published>2009-04-26T00:00:00Q</published>
		   
		   <summary><![CDATA[The MySQL UC 2009 is over and I got bored in the evening before I had to leave Santa Clara and decided to play again with query caching in mysqlnd. I have always said that mysqlnd is ready for it, the infrastructure is there and that we need just few changes to make it work. Well, I decided to bite the bullet and do it. Spent about 4h in the evening and on the next day 2h while waiting on the San Jose (SJC) airport and continued on the flight to Denver, where I am having vacation. On the plane&#8230;]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>The MySQL UC 2009 is over and I got bored in the evening before I had to leave Santa Clara and decided to play again with query caching in mysqlnd. I have always said that mysqlnd is ready for it, the infrastructure is there and that we need just few changes to make it work. Well, I decided to bite the bullet and do it. Spent about 4h in the evening and on the next day 2h while waiting on the San Jose (SJC) airport and continued on the flight to Denver, where I am having vacation. On the plane I was almost ready and today I made the final changes to the preliminary patch, that seems to work :)</p>
<p>I did a small benchmark, a microbenchmark.</p>]]>
		   </content>
		</entry>
				<entry>
			<title>mysqlnd talk this afternoon</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/04/22/mysqlnd-talk-this-afternoon/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/04/22/mysqlnd-talk-this-afternoon/" title="mysqlnd talk this afternoon" />
		   	<published>2009-04-22T00:00:00Q</published>
		   
		   <summary><![CDATA[In a few hours I will give my talk on mysqlnd. Well, the talk is not mine but we wrote it together with Ulf Wendel, of the MySQL Connectors Team fame. Although we haven't added much functionality to mysqlnd in the recent months mysqlnd is still pretty advanced and started to mature. I will talk about why mysqlnd is unique, why is it cool, why is it fast, and why you should use it!]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>In a few hours I will give my talk on mysqlnd. Well, the talk is not mine but we wrote it together with Ulf Wendel, of the MySQL Connectors Team fame. Although we haven't added much functionality to mysqlnd in the recent months mysqlnd is still pretty advanced and started to mature. I will talk about why mysqlnd is unique, why is it cool, why is it <strong>fast</strong>, and why you should use it!</p>]]>
		   </content>
		</entry>
				<entry>
			<title>Connector/C++ talk already in the history</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/04/22/connectorc-talk-already-in-the-history/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/04/22/connectorc-talk-already-in-the-history/" title="Connector/C++ talk already in the history" />
		   	<published>2009-04-22T00:00:00Q</published>
		   
		   <summary><![CDATA[Yesterday I gave my talk, in front of not that many people, about Connector/C++ at the MySQL UC 2009. Not too many questions came from the public, but this is a new product which very specific target group. You know, almost nobody writes Web applications in C++. And Java is the server language for the Enterprise. So I should have expected not many people in the room.
If you have missed the talk, don't worry. In May there will be a webinar which you can attend and if you miss it, you can just watch it at later time. The&#8230;]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>Yesterday I gave my talk, in front of not that many people, about Connector/C++ at the MySQL UC 2009. Not too many questions came from the public, but this is a new product which very specific target group. You know, almost nobody writes Web applications in C++. And Java is the server language for the Enterprise. So I should have expected not many people in the room.</p>
<p>If you have missed the talk, don't worry. In May there will be a webinar which you can attend and if you miss it, you can just watch it at later time. The webinars are recorded and offered freely.</p>
<p>Yesterday the Connector/C++ got the GA stamp and we officially support it. Although we are going to make changes, mostly backward compatible, because this GA, 1.0.5, added the basic functionality the people need to use MySQL with C++ without using the weird libmysql API, which makes your life hard, if you don't use boost and start to get exceptions - you are gonna leak big time.</p>]]>
		   </content>
		</entry>
				<entry>
			<title>Connector/C++ @ MySQL UC 2009</title>
		    <link rel="alternate" type="text/html" href="http://hristov.com/oblog/blog/post/2009/04/15/connectorc-mysql-uc-2009/" />
		    <link rel="service.edit" type="application/atom+xml" href="http://hristov.com/oblog/blog/post/2009/04/15/connectorc-mysql-uc-2009/" title="Connector/C++ @ MySQL UC 2009" />
		   	<published>2009-04-15T00:00:00Q</published>
		   
		   <summary><![CDATA[I will give a talk about Connector/C++ (and mysqlnd in another slot) next week at the MySQL UC 2009. We had to fit the presentation in about 20 slides to be able to fit in the small timeframe of 45 mins. So far I have given only presentations of about 90 minutes, incl. the shoot me with your questions part. I rehearsed today, both talks. Everything seems fine and I will fit. So, if you are an ISV that uses MySQL and use C++ come to see my presentation, there is something to learn. If you are open source developer,&#8230;]]></summary>
		   <author>
		       <name>Andrey</name>
		   </author>
		   <content type="html" xml:lang="en" xml:base="http://hristov.com/oblog/">
		        <![CDATA[<p>I will give a talk about Connector/C++ (and mysqlnd in another slot) next week at the MySQL UC 2009. We had to fit the presentation in about 20 slides to be able to fit in the small timeframe of 45 mins. So far I have given only presentations of about 90 minutes, incl. the shoot me with your questions part. I rehearsed today, both talks. Everything seems fine and I will fit. So, if you are an ISV that uses MySQL and use C++ come to see my presentation, there is something to learn. If you are open source developer, who uses C++, come to the room and allow me to introduce MySQL Connector/C++ to you. I am sure you will never get back to libmysql and MySQL Connector/C&nbsp;<img title="Wink" src="http://hristov.com/oblog/application/views/admin/static/javascript/tiny_mce/plugins/emotions/img/smiley-wink.gif" border="0" alt="Wink" /></p>]]>
		   </content>
		</entry>
			</feed>