<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Pasha Golub&#039;s Blog &#187; PostgreSQL</title>
	<atom:link href="http://pgolub.wordpress.com/category/postgresql/feed/" rel="self" type="application/rss+xml" />
	<link>http://pgolub.wordpress.com</link>
	<description>Nullus est in vitae sensus, ipsa vera est sensus</description>
	<lastBuildDate>Mon, 21 May 2012 15:25:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='pgolub.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/b5ec0b5169e018796e786f9e8ada4617?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Pasha Golub&#039;s Blog &#187; PostgreSQL</title>
		<link>http://pgolub.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://pgolub.wordpress.com/osd.xml" title="Pasha Golub&#039;s Blog" />
	<atom:link rel='hub' href='http://pgolub.wordpress.com/?pushpress=hub'/>
		<item>
		<title>The tale of how PostgresDAC became the cross-platform component suite</title>
		<link>http://pgolub.wordpress.com/2012/02/20/the-tale-of-how-postgresdac-became-the-cross-platform-component-suite/</link>
		<comments>http://pgolub.wordpress.com/2012/02/20/the-tale-of-how-postgresdac-became-the-cross-platform-component-suite/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 08:40:49 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgresDAC]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[macos]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1743</guid>
		<description><![CDATA[As some probably know Delphi XE2 now have compilers for Win32, Win64, Mac and iOS. And as you probably guessed, we were inundated with questions from our customers about support for this zoo in our DACs. Frankly speaking this situation is perfectly described in Joel&#8217;s Spolsky &#8220;Fire and motion&#8221;. We thought: &#8220;This just can&#8217;t be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1743&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As some probably know <a href="http://edn.embarcadero.com/article/41593" target="_blank">Delphi XE2</a> now have compilers for Win32, Win64, Mac and iOS. And as you probably guessed, we were inundated with questions from our customers about support for this zoo in our <a href="http://microolap.com/products/connectivity/" target="_blank">DACs</a>.</p>
<p>Frankly speaking this situation is perfectly described in Joel&#8217;s Spolsky <a href="http://www.joelonsoftware.com/articles/fog0000000339.html" target="_blank">&#8220;Fire and motion&#8221;</a>. We thought: &#8220;This just can&#8217;t be done in a sane time!&#8221;</p>
<p>However &#8220;you never know what you can do till you try&#8221; and &#8220;the devil is not so black as he is painted&#8221;. So we decided to port <a href="http://microolap.com/products/connectivity/postgresdac/" target="_blank">PostgresDAC</a> first. The main reason was the using of libpq.dll client library, which may be <a href="http://www.pgbuildfarm.org/cgi-bin/show_status.pl" target="_blank">built</a> for a huge amount of target platforms.</p>
<p>Thus we don&#8217;t need to worry about low-level network routines and may pay the whole of the attention to the middle layer, have no idea how to name it.</p>
<p><a href="http://pgolub.files.wordpress.com/2012/02/osx.png"><img class="alignright wp-image-1746" title="PostgresDAC target platforms" src="http://pgolub.files.wordpress.com/2012/02/osx.png?w=510" alt="" /></a>As for Win64 platform, then were no problems at all. We&#8217;ve prepared x64 deploy libraries and we done with it. There were no dangerous places in our source code were address arithmetics may produce unsuspected behavior. This simplicity is understandable. We just stayed within one Windows platform in general.</p>
<p>Then it was Mac&#8217;s turn. When we started I have never seen MacOS before&#8230; That was scary move. Especially for my self-esteem. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>We crossed the fingers, chose OS X as the target platform and the fun began. I knew our code was Windows-centric, but I was so far from the real understanding of the scope of the tragedy. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Here is the seven deadly sins for the cross-platform library written in Delphi:</p>
<p><strong>1.</strong> Using of <em>Windows</em> unit is prohibited. The only things you have are <em>System </em>ans <em>SysUtils</em>. Deal with it!</p>
<p><strong>2.</strong> Using of VCL units (<em>Controls, StdVCL, ExtCtrls</em> etc) is prohibited. There&#8217;s no VCL on Mac, <a href="http://www.embarcadero.com/products/firemonkey">FireMonkey</a> only.</p>
<p><strong>3.</strong> Using of forms is prohibited. So no custom dialogs, message boxes etc. You have no idea under which platform library is built. Well, this is so true for console application too. That&#8217;s why we&#8217;ve removed annoying trial screen.</p>
<p><strong>4.</strong> Ignoring compiler directives is stupid. Remember the first sin? Yeah, sometimes you&#8217;ll need low-level OS&#8217;s functionality. If so, do it smart:<br />
<code><br />
{$IFDEF MSWINDOWS}<br />
  Winapi.Windows,<br />
{$ENDIF}<br />
{$IFDEF MACOS}<br />
Macapi.CoreServices,<br />
{$ENDIF}<br />
{$IFDEF POSIX}<br />
  Posix.SysTypes, Posix.Stdio, Posix.Stdlib<br />
{$ENDIF}<br />
</code></p>
<p><strong>5.</strong> Using of messages, window procedures, handles, file mappings and other Win-shit is prohibited. That&#8217;s why our <a href="http://microolap.com/products/connectivity/postgresdac/help/TPSQLMonitor/TPSQLMonitor.htm" target="_blank">TPSQLMonitor</a> is still useless for Mac. We need to rewrite it from scratch. And we ready for it.</p>
<p><strong>6.</strong> Use correct type naming, e.g. <em>LongWord </em>instead of <em>DWORD</em>.</p>
<p><strong>7.</strong> Use proper functions or implement them for all platforms. No place for <em>ZeroMemory, CopyMemory, GetTickCount</em> on Mac etc.</p>
<p>You know, when I wrote the number of seven I didn&#8217;t think that I&#8217;m so damn write! Of course in your case there may be dozen of others incompatibilities. That was just a joke. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/postgresdac/'>PostgresDAC</a>, <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/component/'>component</a>, <a href='http://pgolub.wordpress.com/tag/delphi/'>Delphi</a>, <a href='http://pgolub.wordpress.com/tag/macos/'>macos</a>, <a href='http://pgolub.wordpress.com/tag/osx/'>osx</a>, <a href='http://pgolub.wordpress.com/tag/postgresdac/'>PostgresDAC</a>, <a href='http://pgolub.wordpress.com/tag/windows/'>Windows</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1743/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1743/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1743/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1743&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2012/02/20/the-tale-of-how-postgresdac-became-the-cross-platform-component-suite/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://pgolub.files.wordpress.com/2012/02/osx.png" medium="image">
			<media:title type="html">PostgresDAC target platforms</media:title>
		</media:content>
	</item>
		<item>
		<title>LibreOffice announces native support for PostgreSQL</title>
		<link>http://pgolub.wordpress.com/2012/02/15/libreoffice-announces-native-support-for-postgresql/</link>
		<comments>http://pgolub.wordpress.com/2012/02/15/libreoffice-announces-native-support-for-postgresql/#comments</comments>
		<pubDate>Wed, 15 Feb 2012 15:11:08 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[libpq]]></category>
		<category><![CDATA[libpq.dll]]></category>
		<category><![CDATA[LibreOffice]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1739</guid>
		<description><![CDATA[Today I found out about new release of LibreOffice (version 3.5), which is now my choice instead of MS Office and it&#8217;s brother OpenOffice killed by Oracle. And the most pleasant surprise is PostgreSQL native support added in this minor release. I remember messages by Lionel Elie Mamane sent to pgsql-hackers list. And the problems [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1739&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today I found out about new release of LibreOffice (<a href="http://www.libreoffice.org/download/3-5-new-features-and-fixes/">version 3.5</a>), which is now my choice instead of MS Office and it&#8217;s brother OpenOffice killed by Oracle.</p>
<p>And the most pleasant surprise is PostgreSQL native support added in this minor release.<br />
<img alt="" src="http://www.libreoffice.org/assets/Uploads/EN-Project_images/3.5NewFeatures/Base/postgresql.png" class="aligncenter" width="690" height="484" /><br />
I remember messages by Lionel Elie Mamane sent to pgsql-hackers list. And the problems LibO community was faced with. Kudos guys!</p>
<p>BTW, how did you manage cross platform compilation of libpq library, especially for MacOS? And how do you provide libpq.so on Macs? </p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/libpq/'>libpq</a>, <a href='http://pgolub.wordpress.com/tag/libpqdll/'>libpq.dll</a>, <a href='http://pgolub.wordpress.com/tag/libreoffice/'>LibreOffice</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1739/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1739/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1739/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1739&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2012/02/15/libreoffice-announces-native-support-for-postgresql/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://www.libreoffice.org/assets/Uploads/EN-Project_images/3.5NewFeatures/Base/postgresql.png" medium="image" />
	</item>
		<item>
		<title>Factorial using CTE in PostgreSQL</title>
		<link>http://pgolub.wordpress.com/2012/02/01/factorial-using-cte-in-postgresql/</link>
		<comments>http://pgolub.wordpress.com/2012/02/01/factorial-using-cte-in-postgresql/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 09:42:26 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[CTE]]></category>
		<category><![CDATA[factorial]]></category>
		<category><![CDATA[oscon]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1730</guid>
		<description><![CDATA[Not so long ago I used Common Table Expressions for Fibonacci Numbers calculation. Today I had a conversation with one client about SQL in general and about PosgreSQL dialect in particular. We talked about SQL&#8217;s Turing completeness also. Well my opponent is sure that SQL (Postgres dialect either) is not Turing Complete. But I know [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1730&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Not so long ago <a href="http://pgolub.wordpress.com/2010/06/20/fibonacci-rides-again/">I used</a> Common Table Expressions for <a href="http://en.wikipedia.org/wiki/Fibonacci_number">Fibonacci Numbers</a> calculation.</p>
<p>Today I had a conversation with one client about SQL in general and about PosgreSQL dialect in particular. We talked about SQL&#8217;s <a href="http://en.wikipedia.org/wiki/Turing_completeness">Turing completeness</a> also. Well my opponent is sure that SQL (Postgres dialect either) is not Turing Complete. But I know for sure that if SQL supports CTE it is Turing Complete. Well, I&#8217;m sure about it because some time ago at <a href="http://www.oscon.com/oscon2009">Oscon 2009</a> David Fetter said so. And my confidence in this man is boundless.  <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<img alt="" src="http://habrastorage.org/storage2/8e8/001/13c/8e800113cf3071f21c26c0de1aff577c.png" title="Result set" class="alignright" width="106" height="287" /><br />
Anyway, my client proposed to implement Factorial calculation on a pure SQL. I choose Postgres dialect. He agreed. </p>
<p>That was his first mistake! He didn&#8217;t know that Postgres has built in <a href="http://www.postgresql.org/docs/9.1/static/functions-math.html">&#8220;!&#8221; and &#8220;!!&#8221; operators</a> for this purpose. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>But to be more convincing, I have wrote this code:</p>
<table style="border-collapse:collapse;margin-top:15px;margin-bottom:15px;" border="0" cellspacing="0" cellpadding="5" bgcolor="LightYellow">
<tbody>
<tr>
<td>
<pre>
WITH RECURSIVE fact(i, f) AS (
    VALUES (2, 1)
UNION ALL
    SELECT i + 1, i * f FROM fact
)
SELECT f FROM fact LIMIT 10;
</pre>
</td>
</tr>
</tbody>
</table>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/coding/'>Coding</a>, <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/cte/'>CTE</a>, <a href='http://pgolub.wordpress.com/tag/factorial/'>factorial</a>, <a href='http://pgolub.wordpress.com/tag/oscon/'>oscon</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a>, <a href='http://pgolub.wordpress.com/tag/sql/'>SQL</a>, <a href='http://pgolub.wordpress.com/tag/trick/'>trick</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1730/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1730/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1730/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1730&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2012/02/01/factorial-using-cte-in-postgresql/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://habrastorage.org/storage2/8e8/001/13c/8e800113cf3071f21c26c0de1aff577c.png" medium="image">
			<media:title type="html">Result set</media:title>
		</media:content>
	</item>
		<item>
		<title>Joomla! 2.5 with PostgreSQL support officially released</title>
		<link>http://pgolub.wordpress.com/2012/01/25/joomla-2-5-with-postgresql-support-officially-released/</link>
		<comments>http://pgolub.wordpress.com/2012/01/25/joomla-2-5-with-postgresql-support-officially-released/#comments</comments>
		<pubDate>Wed, 25 Jan 2012 12:49:49 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[Announces]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Joomla!]]></category>
		<category><![CDATA[microsoft sql server]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1721</guid>
		<description><![CDATA[Joomla, one of the world’s most popular open source content management systems (CMS) used for everything from websites to blogs to Intranets, today announces the immediate availability of Joomla 2.5. Along with new features such as advanced search and automatic notification of Joomla core and extension updates, the Joomla CMS for the first time includes [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1721&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignright" title="Joomla 2.5" src="http://www.joomla.org/images/stories/joomla/200x200.jpg" alt="" width="130" height="130" /><br />
<blockquote>Joomla, one of the world’s most popular open source content management systems (CMS) used for everything from websites to blogs to Intranets, today announces the immediate availability of Joomla 2.5. Along with new features such as advanced search and automatic notification of Joomla core and extension updates, the Joomla CMS for the first time includes multi-database support with the addition of Microsoft SQL Server. Previous versions of Joomla were compatible exclusively with MySQL databases.</p></blockquote>
<p>Way to go Joomla! But why don&#8217;t you guys mention <a href="http://www.postgresql.org/">PostgreSQL</a> database in the <a href="http://www.joomla.org/announcements/release-news/5406-joomla-25-released.html">main release story</a>? Do you really think that MSSQL is more common choice for the database layer for any CMS? Seriously?</p>
<p><strong>UPD</strong> Apparently I was a little rushed. PostgreSQL and Oracle support must be added in the shortest time. Waiting for explanations from Joomla!</p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/announces/'>Announces</a>, <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/cms/'>CMS</a>, <a href='http://pgolub.wordpress.com/tag/joomla/'>Joomla!</a>, <a href='http://pgolub.wordpress.com/tag/microsoft-sql-server/'>microsoft sql server</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a>, <a href='http://pgolub.wordpress.com/tag/release/'>release</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1721/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1721/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1721/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1721&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2012/01/25/joomla-2-5-with-postgresql-support-officially-released/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://www.joomla.org/images/stories/joomla/200x200.jpg" medium="image">
			<media:title type="html">Joomla 2.5</media:title>
		</media:content>
	</item>
		<item>
		<title>Why you cannot create table and PK constraint with the same name</title>
		<link>http://pgolub.wordpress.com/2012/01/12/why-you-cannot-create-table-and-pk-constraint-with-the-same-name/</link>
		<comments>http://pgolub.wordpress.com/2012/01/12/why-you-cannot-create-table-and-pk-constraint-with-the-same-name/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 12:37:03 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1712</guid>
		<description><![CDATA[Very interesting message appeared on the pgsql-bugs@postgresql.org list today: When I do this CREATE TABLE "T1" ( "T1_ID" bigint NOT NULL, CONSTRAINT "T1" PRIMARY KEY ("T1_ID" ) ); I get the following message: NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "T1" for table "T1" ERROR: relation "T1" already exists ********** Error ********** [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1712&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Very interesting message appeared on the pgsql-bugs@postgresql.org list today:</p>
<blockquote><p>
When I do this</p>
<p><code>CREATE TABLE "T1"<br />
(<br />
  "T1_ID" bigint NOT NULL,<br />
  CONSTRAINT "T1" PRIMARY KEY ("T1_ID" )<br />
);</code></p>
<p>I get the following message:<br />
<code><br />
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index "T1" for table "T1"<br />
ERROR:  relation "T1" already exists<br />
********** Error **********<br />
ERROR: relation "T1" already exists<br />
SQL state: 42P07</code></p>
<p>It does NOT create either the table or the constraint, and the message is confusing because there is no relation by that name.</p>
<p>The SQLSTATE 42P07 is described in the manual as only as &#8220;table undefined&#8221;, and it is not clear if the intent is to allow or<br />
disallow the creation of a constraint called the same as the table in Postgresql. Oracle 11g allows this, but my feeling is that<br />
doing this should not be allowed, just as Postgresql handles it.</p>
<p>I am complaining about the confusing error message which IMO is off-topic, not about how the DB handles this.
</p></blockquote>
<p>The quick answer is PRIMARY KEY constraint always has underlying system index with the same name. Thus to implement CREATE statement above PostgreSQL should create table with the name &#8220;T1&#8243; and the index with the same name. This is impossible, because tables and indexes are stored in the same system catalog <a href="http://www.postgresql.org/docs/9.1/static/catalog-pg-class.html">pg_class</a> (they share the same namespace). That is where ambiguity appears. The same is true for UNIQUE constraint.</p>
<p>On the other hand you may freely create CHECK constraint under such conditions:<br />
<code><br />
CREATE TABLE "T1"<br />
(<br />
  "T1_ID" bigint NOT NULL,<br />
  CONSTRAINT "T1" CHECK ("T1_ID" &gt; 0 )<br />
);<br />
</code></p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/bug/'>bug</a>, <a href='http://pgolub.wordpress.com/tag/development/'>development</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a>, <a href='http://pgolub.wordpress.com/tag/sql/'>SQL</a>, <a href='http://pgolub.wordpress.com/tag/trick/'>trick</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1712/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1712/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1712/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1712&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2012/01/12/why-you-cannot-create-table-and-pk-constraint-with-the-same-name/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>
	</item>
		<item>
		<title>Determination of a leap year in PostgreSQL</title>
		<link>http://pgolub.wordpress.com/2011/12/28/determination-of-a-leap-year-in-postgresql/</link>
		<comments>http://pgolub.wordpress.com/2011/12/28/determination-of-a-leap-year-in-postgresql/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 11:28:39 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[leap year]]></category>
		<category><![CDATA[plpgsql]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[trick]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1692</guid>
		<description><![CDATA[From Wikipedia: A leap year (or intercalary or bissextile year) is a year containing one extra day (or, in the case of lunisolar calendars, a month) in order to keep the calendar year synchronized with the astronomical or seasonal year. Because seasons and astronomical events do not repeat in a whole number of days, a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1692&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>From <a href="http://en.wikipedia.org/wiki/Leap_year">Wikipedia</a>:</p>
<blockquote><p>A leap year (or intercalary or bissextile year) is a year containing one extra day (or, in the case of lunisolar calendars, a month) in order to keep the calendar year synchronized with the astronomical or seasonal year. Because seasons and astronomical events do not repeat in a whole number of days, a calendar that had the same number of days in each year would, over time, drift with respect to the event it was supposed to track. By occasionally inserting (or intercalating) an additional day or month into the year, the drift can be corrected. A year that is not a leap year is called a common year.</p></blockquote>
<p>So to determine whether a year is a leap year or not in either the Gregorian calendar we need to check such condition:</p>
<table style="border-collapse:collapse;margin-top:15px;margin-bottom:15px;" border="0" cellspacing="0" cellpadding="5" bgcolor="LightYellow">
<tbody>
<tr>
<td>
<code>(Year mod 4 = 0) AND ((Year mod 100 != 0) or (Year mod 400 = 0)),<br />
where mod is modulo operation</code>
</td>
</tr>
</tbody>
</table>
<p>This dirty query does the trick then:</p>
<table style="border-collapse:collapse;margin-top:15px;margin-bottom:15px;" border="0" cellspacing="0" cellpadding="5" bgcolor="LightYellow">
<tbody>
<tr>
<td>
<code><font color="#0000ff">SELECT</font> c.y, (c.y % 4 = 0) <font color="#0000ff">AND</font> ((c.y % 100 &#060;&#062; 0) <font color="#0000ff">OR</font> (c.y % 400 = 0)) <br />&nbsp;<font color="#0000ff">FROM</font> generate_series(1582, 2020) <font color="#0000ff">AS</font> c(y)</font></code>
</td>
</tr>
</tbody>
</table>
<p><a href="http://pgolub.files.wordpress.com/2011/12/out1.jpg"><img src="http://pgolub.files.wordpress.com/2011/12/out1.jpg?w=510" alt="output" title="output"   class="alignnone size-full wp-image-1700" /></a></p>
<p>I prefer to have function for this task. First I thought it must be written in <a href="www.postgresql.org/docs/9.1/static/plpgsql.html" target="_blank">plpgsql</a> to be fast enough. Yeah, I&#8217;m to lazy for C functions. However after tests I saw that SQL function has the same productivity. Don&#8217;t know why. Here the sources for both of them:</p>
<table style="border-collapse:collapse;margin-top:15px;margin-bottom:15px;" border="0" cellspacing="0" cellpadding="5" bgcolor="LightYellow">
<tbody>
<tr>
<td>
<code><font color="#0000ff">CREATE</font> <font color="#0000ff">OR REPLACE</font> <font color="#0000ff">FUNCTION</font> isleapyear(<font color="#0000ff">year</font> integer)<br />&nbsp;<font color="#0000ff">RETURNS</font> boolean <font color="#0000ff">AS</font><br /><font color="#A31515">'SELECT ($1 % 4 = 0) AND (($1 % 100 &#060;&#062; 0) or ($1 % 400 = 0))'</font><br />&nbsp;<font color="#0000ff">LANGUAGE</font> sql <font color="#0000ff">IMMUTABLE STRICT</font>;</code></p>
<p><code><font color="#0000ff">CREATE</font> <font color="#0000ff">OR REPLACE</font> <font color="#0000ff">FUNCTION</font> isleapyear(<font color="#0000ff">year</font> integer)<br />&nbsp;<font color="#0000ff">RETURNS</font> boolean <font color="#0000ff">AS</font><br /><font color="#A31515">'BEGIN<br />
&nbsp;&nbsp;RETURN  (Year % 4 = 0) AND ((Year % 100  0) or (Year % 400 = 0));<br />
END'</font><br />&nbsp;<font color="#0000ff">LANGUAGE</font> plpgsql <font color="#0000ff">IMMUTABLE STRICT</font>;</code>
</td>
</tr>
</tbody>
</table>
<p>P.S. Some funny traditions:</p>
<ul>
<li>On the British isles, it is a tradition that women may propose marriage only on leap years.</li>
<li>In Denmark, the tradition is that women may propose on the bissextile leap day, February 24, and that refusal must be compensated with 12 pairs of gloves.</li>
<li>In Finland, the tradition is that if a man refuses a woman&#8217;s proposal on leap day, he should buy her the fabrics for a skirt.</li>
</ul>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/coding/'>Coding</a> Tagged: <a href='http://pgolub.wordpress.com/tag/leap-year/'>leap year</a>, <a href='http://pgolub.wordpress.com/tag/plpgsql/'>plpgsql</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a>, <a href='http://pgolub.wordpress.com/tag/sql/'>SQL</a>, <a href='http://pgolub.wordpress.com/tag/trick/'>trick</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1692/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1692/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1692/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1692&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2011/12/28/determination-of-a-leap-year-in-postgresql/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://pgolub.files.wordpress.com/2011/12/out1.jpg" medium="image">
			<media:title type="html">output</media:title>
		</media:content>
	</item>
		<item>
		<title>Holiday discounts on pgmdd &amp; postgresdac</title>
		<link>http://pgolub.wordpress.com/2011/12/28/holiday-discounts-on-pgmdd-postgresdac/</link>
		<comments>http://pgolub.wordpress.com/2011/12/28/holiday-discounts-on-pgmdd-postgresdac/#comments</comments>
		<pubDate>Wed, 28 Dec 2011 08:01:48 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[Announces]]></category>
		<category><![CDATA[MicroOLAP Database Designer for PostgreSQL]]></category>
		<category><![CDATA[PostgresDAC]]></category>
		<category><![CDATA[designer]]></category>
		<category><![CDATA[ER]]></category>
		<category><![CDATA[gift]]></category>
		<category><![CDATA[happy holidays]]></category>
		<category><![CDATA[PostgreSQL]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1686</guid>
		<description><![CDATA[Holidays came suddenly. I know we&#8217;re little bit late with Christmas presents, but who cares anyway! Everybody is welcome to use &#8220;Christmas&#8221; coupon code till January 14 for 20% discount on any product from MicroOLAP Technologies including the most robust Database Designer for PostgreSQL and PostgresDAC component suite. From all of us at MicroOLAP, we [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1686&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://pgolub.files.wordpress.com/2011/12/ded.gif"><img src="http://pgolub.files.wordpress.com/2011/12/ded.gif?w=510" alt="Ded Moroz" title="ded"   class="alignright size-full wp-image-1689" /></a>Holidays came suddenly. I know we&#8217;re little bit late with Christmas presents, but who cares anyway!</p>
<p>Everybody is <a href="http://microolap.com/order/">welcome to use</a> &#8220;Christmas&#8221; coupon code till January 14 for 20% discount on any product from MicroOLAP Technologies including the most robust <a href="http://microolap.com/products/database/postgresql-designer/">Database Designer for PostgreSQL</a> and <a href="http://microolap.com/products/connectivity/postgresdac/">PostgresDAC</a> component suite.</p>
<p>From all of us at <a href="http://microolap.com/">MicroOLAP</a>, we wish you happy holidays and a prosperous new year!</p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/announces/'>Announces</a>, <a href='http://pgolub.wordpress.com/category/postgresql/microolap-database-designer-for-postgresql/'>MicroOLAP Database Designer for PostgreSQL</a>, <a href='http://pgolub.wordpress.com/category/postgresql/postgresdac/'>PostgresDAC</a> Tagged: <a href='http://pgolub.wordpress.com/tag/designer/'>designer</a>, <a href='http://pgolub.wordpress.com/tag/er/'>ER</a>, <a href='http://pgolub.wordpress.com/tag/gift/'>gift</a>, <a href='http://pgolub.wordpress.com/tag/happy-holidays/'>happy holidays</a>, <a href='http://pgolub.wordpress.com/tag/postgresdac/'>PostgresDAC</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1686/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1686/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1686/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1686&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2011/12/28/holiday-discounts-on-pgmdd-postgresdac/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://pgolub.files.wordpress.com/2011/12/ded.gif" medium="image">
			<media:title type="html">ded</media:title>
		</media:content>
	</item>
		<item>
		<title>Popularity of database servers by Jelastic PaaS</title>
		<link>http://pgolub.wordpress.com/2011/12/13/popularity-of-database-servers-by-jelastic-paas/</link>
		<comments>http://pgolub.wordpress.com/2011/12/13/popularity-of-database-servers-by-jelastic-paas/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 09:17:19 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[stats]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1674</guid>
		<description><![CDATA[Today found an interesting statistics by Jelastic platform on database servers used in November 2011. As before, MySQL is still the leader. PosgreSQL takes second place of honor, followed by MariaDB. Only one of the NoSQL databases MongoDB showed very good results in November. If compare current data with the October, we can conclude that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1674&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Today found an interesting statistics by <a href="http://jelastic.com/">Jelastic</a> platform on database servers used in November 2011.</p>
<p>As before, MySQL is still the leader. PosgreSQL takes second place of honor, followed by MariaDB. Only one of the NoSQL databases MongoDB showed very good results in November.</p>
<p><img class="aligncenter" title="Database Distribution in November 2011" src="http://chart.apis.google.com/chart?chtt=Database+distribution+(November+2011)&amp;chts=000000,12&amp;chs=450x200&amp;chf=bg,s,ffffff&amp;cht=p3&amp;chd=t:44.00,21.00,20.00,15.00&amp;chl=MySQl+44%|PostgreSQl+21%|MongoDB+20%|MariaDB+15%&amp;chco=0000ff,ff0000,00ff00,00ffff" alt="" width="450" height="200" /></p>
<p>If compare current data with the October, we can conclude that the number of fans did not change.</p>
<p><img class="aligncenter" title="By region" src="http://chart.apis.google.com/chart?chtt=Marketshare+by+region+(November+2011)&amp;chts=000000,12&amp;chs=500x200&amp;chf=bg,s,ffffff|c,s,ffffff&amp;chxt=x,y&amp;chxl=0:|MySQL|PostgreSQL|MariaDB|MongoDB|1:|0|10|20|30|40|50&amp;cht=bvg&amp;chd=t:100.00|90.00,34.00,36.00,40.00|88.00,24.00,48.00,40.00|100.00&amp;chdl=|Europe|North+America|&amp;chco=ffffff,0000ff,ff0000,ffffff&amp;chbh=18" alt="" width="500" height="200" /></p>
<p>Current numbers:<br />
<a name="habracut"></a></p>
<table>
<tbody>
<tr>
<td></td>
<td>Europe</td>
<td>North America</td>
<td>Total</td>
</tr>
<tr>
<td>MySQL</td>
<td>45%</td>
<td>44%</td>
<td>44%</td>
</tr>
<tr>
<td>PostgreSQL</td>
<td>17%</td>
<td>12%</td>
<td>21%</td>
</tr>
<tr>
<td>MariaDB</td>
<td>18%</td>
<td>24%</td>
<td>15%</td>
</tr>
<tr>
<td>MongoDB</td>
<td>20%</td>
<td>20%</td>
<td>20%</td>
</tr>
</tbody>
</table>
<p>According to the table we need <a href="http://pgconf.eu" target="_blank">PgConf.eu</a> twice a year. <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a>, <a href='http://pgolub.wordpress.com/tag/stats/'>stats</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1674/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1674/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1674/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1674&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2011/12/13/popularity-of-database-servers-by-jelastic-paas/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://chart.apis.google.com/chart?chtt=Database+distribution+(November+2011)&#38;chts=000000,12&#38;chs=450x200&#38;chf=bg,s,ffffff&#38;cht=p3&#38;chd=t:44.00,21.00,20.00,15.00&#38;chl=MySQl+44%&#124;PostgreSQl+21%&#124;MongoDB+20%&#124;MariaDB+15%&#38;chco=0000ff,ff0000,00ff00,00ffff" medium="image">
			<media:title type="html">Database Distribution in November 2011</media:title>
		</media:content>

		<media:content url="http://chart.apis.google.com/chart?chtt=Marketshare+by+region+(November+2011)&#38;chts=000000,12&#38;chs=500x200&#38;chf=bg,s,ffffff&#124;c,s,ffffff&#38;chxt=x,y&#38;chxl=0:&#124;MySQL&#124;PostgreSQL&#124;MariaDB&#124;MongoDB&#124;1:&#124;0&#124;10&#124;20&#124;30&#124;40&#124;50&#38;cht=bvg&#38;chd=t:100.00&#124;90.00,34.00,36.00,40.00&#124;88.00,24.00,48.00,40.00&#124;100.00&#38;chdl=&#124;Europe&#124;North+America&#124;&#38;chco=ffffff,0000ff,ff0000,ffffff&#38;chbh=18" medium="image">
			<media:title type="html">By region</media:title>
		</media:content>
	</item>
		<item>
		<title>PGConf.EU 2011: My schedule</title>
		<link>http://pgolub.wordpress.com/2011/10/12/pgconf-eu-2011-my-schedule/</link>
		<comments>http://pgolub.wordpress.com/2011/10/12/pgconf-eu-2011-my-schedule/#comments</comments>
		<pubDate>Wed, 12 Oct 2011 08:28:11 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[pgconf.eu]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1659</guid>
		<description><![CDATA[I&#8217;m very exciting about upcoming PGConf.EU 2011, which will be held in Amsterdam, The Netherlands this month. And it&#8217;s time to choose the most interesting talks to visit. So I prefer these: Wednesday, October 19 11:10 - 12:00 PostgreSQL 9.1 - what's new Magnus Hagander Despite the fact I read a lot about new Pg [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1659&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://2011.pgconf.eu/"><img alt="PGConf.EU" src="http://2011.pgconf.eu/files/img/logo.png" title="PGConf.EU" class="alignright" width="100" height="103" /></a>I&#8217;m very exciting about upcoming <a href="http://2011.pgconf.eu/">PGConf.EU 2011</a>, which will be held in Amsterdam, The Netherlands this month. And it&#8217;s time to choose the most interesting <a href="http://www.postgresql.eu/events/schedule/pgconfeu2011/">talks</a> to visit. So I prefer these:</p>
<p><strong>Wednesday, October 19</strong></p>
<p><code>11:10 - 12:00<br />
PostgreSQL 9.1 - what's new<br />
Magnus Hagander</code></p>
<p>Despite the fact I read a lot about new Pg 9.1 features, it&#8217;s always interesting to get overview by someone who knows system very well and spent a lot of time developing it.</p>
<p><code>12:10 - 13:00<br />
Look Out The Window Functions (and free your SQL)<br />
Gianni Ciolli </code></p>
<p>It&#8217;s a shame, but I really know a little about this powerful functionality.</p>
<p><code>Lunch!</code></p>
<p>It goes without saying! <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><code>14:00 - 14:50<br />
Explaining the Postgres Query Optimizer<br />
Bruce Momjian</code></p>
<p>I hope index-only scans will be presented here also.</p>
<p><code>15:20 - 16:10<br />
Asynchronous Notifications for Fun and Profit<br />
Marc Balmer</code></p>
<p>I like NOTIFY\LISTEN functionality a lot, but sometimes it&#8217;s hard to find really useful use case for demonstration to clients.</p>
<p><code>16:20 - 17:10<br />
Review of Patch Reviewing<br />
Stephen Frost</code></p>
<p>Development process! What else to say?! </p>
<p><strong>Thursday, October 20</strong></p>
<p><code>09:30 - 10:20<br />
Improving VACUUM Suction<br />
Greg Smith</code></p>
<p>I liked the title. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  </p>
<p><code>10:50 - 11:40<br />
Extensions are good for business logic<br />
Dimitri Fontaine</code></p>
<p>Had no time to give extensions a chance. This time I will.</p>
<p><code>11:50 - 12:40<br />
Fast GiST index build<br />
Alexander Korotkov</code></p>
<p>Want to know more about techniques used.</p>
<p><code>13:40 - 14:30<br />
More Mistakes Were Made<br />
Selena Deckelmann</code></p>
<p>Have no idea what all of this is about, but I need to see Selena. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><code>14:40 - 15:30<br />
Port databases from MySQL to PostgreSQL<br />
Andreas Scherbaum</code></p>
<p>Want to know what&#8217;s new in this area appeared.  </p>
<p><strong>Friday, October 21</strong></p>
<p><code>09:30 - 10:20<br />
Relational Database Designer for pgAdmin<br />
Guillaume Lelarge, Luis Ochoa</code></p>
<p>Frankly speaking this is the first hard choice for me. I would like to listen Simon&#8217;s roadmap for PostgreSQL too. But ER-designer is my <a href="http://microolap.com/products/database/postgresql-designer/">proffesional interest</a>. So without a chance. </p>
<p><code>10:50 - 11:40<br />
Bottom-up Database Benchmarking<br />
Greg Smith</code></p>
<p>Benchmarking is so elusive subject, but exciting at the same time.</p>
<p><code>11:50 - 12:40<br />
Mission impossible? Can I replace my most important databases with PostgreSQL?<br />
Michael Meskes </code></p>
<p>Holy war detected! <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><code>13:40 - 14:30<br />
Managing Terabytes<br />
Selena Deckelmann</code></p>
<p>Never had deal with such huge databases, but need to know how it is.</p>
<p>Meet me at the PGConf.EU soon!</p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/'>PostgreSQL</a> Tagged: <a href='http://pgolub.wordpress.com/tag/pgconf-eu/'>pgconf.eu</a>, <a href='http://pgolub.wordpress.com/tag/postgresql/'>PostgreSQL</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1659/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1659/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1659/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1659&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2011/10/12/pgconf-eu-2011-my-schedule/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>

		<media:content url="http://2011.pgconf.eu/files/img/logo.png" medium="image">
			<media:title type="html">PGConf.EU</media:title>
		</media:content>
	</item>
		<item>
		<title>PostgresDAC meets Delphi XE2</title>
		<link>http://pgolub.wordpress.com/2011/09/01/postgresdac-meets-delphi-pulsar/</link>
		<comments>http://pgolub.wordpress.com/2011/09/01/postgresdac-meets-delphi-pulsar/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 09:25:27 +0000</pubDate>
		<dc:creator>pashagolub</dc:creator>
				<category><![CDATA[PostgresDAC]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[component]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[development]]></category>

		<guid isPermaLink="false">http://pgolub.wordpress.com/?p=1518</guid>
		<description><![CDATA[We here, in MicroOLAP, have conducted tests of the new Embarcadero RAD Studio XE2. And with the all responsibility we may say that PostgresDAC is ready for use with it. Filed under: PostgresDAC Tagged: beta, component, Delphi, development, PostgresDAC<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1518&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We here, in <a href="http://microolap.com/">MicroOLAP</a>, have conducted tests of the new Embarcadero RAD Studio XE2. And with the all responsibility we may say that <a href="http://microolap.com/products/connectivity/postgresdac/">PostgresDAC</a> is ready for use with it.</p>
<br />Filed under: <a href='http://pgolub.wordpress.com/category/postgresql/postgresdac/'>PostgresDAC</a> Tagged: <a href='http://pgolub.wordpress.com/tag/beta/'>beta</a>, <a href='http://pgolub.wordpress.com/tag/component/'>component</a>, <a href='http://pgolub.wordpress.com/tag/delphi/'>Delphi</a>, <a href='http://pgolub.wordpress.com/tag/development/'>development</a>, <a href='http://pgolub.wordpress.com/tag/postgresdac/'>PostgresDAC</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/pgolub.wordpress.com/1518/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/pgolub.wordpress.com/1518/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/pgolub.wordpress.com/1518/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pgolub.wordpress.com&#038;blog=5816673&#038;post=1518&#038;subd=pgolub&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://pgolub.wordpress.com/2011/09/01/postgresdac-meets-delphi-pulsar/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/24a7da587040285b6213974ed8933fdf?s=96&#38;d=wavatar&#38;r=G" medium="image">
			<media:title type="html">pashagolub</media:title>
		</media:content>
	</item>
	</channel>
</rss>
