<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   >
<channel>
    <title>Postgres OnLine Journal - 9.2</title>
    <link>http://www.postgresonline.com/journal/</link>
    <description>an In depth look at the PostgreSQL open source database</description>
    <dc:language>en</dc:language>
    <generator>Serendipity 1.4.1 - http://www.s9y.org/</generator>
    <pubDate>Sat, 13 Apr 2013 21:19:46 GMT</pubDate>

    <image>
        <url>http://www.postgresonline.com/journal/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Postgres OnLine Journal - 9.2 - an In depth look at the PostgreSQL open source database</title>
        <link>http://www.postgresonline.com/journal/</link>
        <width>100</width>
        <height>21</height>
    </image>

<item>
    <title>pgRouting windows binaries for PostgreSQL 9.2 32-bit and 64-bit</title>
    <link>http://www.postgresonline.com/journal/archives/300-pgRouting-windows-binaries-for-PostgreSQL-9.2-32-bit-and-64-bit.html</link>
            <category>9.2</category>
            <category>9.3</category>
            <category>contrib spotlight</category>
            <category>pgRouting</category>
            <category>postgis</category>
            <category>postgresql versions</category>
            <category>winextensions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/300-pgRouting-windows-binaries-for-PostgreSQL-9.2-32-bit-and-64-bit.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=300</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=300</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;We&#039;ve got experimental &lt;a href=&quot;http://pgrouting.org&quot; target=&quot;_blank&quot;&gt;pgRouting&lt;/a&gt; windows binaries available for windows PostgreSQL 9.2 32-bit and 64-bit for pgRouting 1.0.7 development branch.  More details on our &lt;a href=&quot;http://www.bostongis.com/blog/index.php?/archives/215-pgRouting-1.07dev-windows-binaries-available-for-PostgreSQL-9.2-32-bit-and-64-bit.html&quot; target=&quot;_blank&quot;&gt;Boston GIS blog page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The final versions we plan to release with upcoming PostGIS 2.1 PostgreSQL 9.2 on stackbuilder as part of the PostGIS install. Barring no difficulties we&#039;ll also have experimental binaries for PostgreSQL 9.3 releases once 9.3 reaches beta.&lt;/p&gt;

&lt;p&gt;This version and upcoming pgRouting versions support the PostgreSQL extension model, so if you have postgis already installed, its just an additonal simple step:&lt;/p&gt;
&lt;br /&gt;&lt;code&gt;CREATE EXTENSION pgrouting;&lt;/code&gt; 
    </content:encoded>

    <pubDate>Tue, 09 Apr 2013 00:26:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/300-guid.html</guid>
    <category>pgrouting</category>
<category>postgis</category>
<category>windows</category>

</item>
<item>
    <title>PostGIS 2.0.3 for Windows x32 and x64 installers</title>
    <link>http://www.postgresonline.com/journal/archives/296-PostGIS-2.0.3-for-Windows-x32-and-x64-installers.html</link>
            <category>8.4</category>
            <category>9.0</category>
            <category>9.1</category>
            <category>9.2</category>
            <category>9.3</category>
            <category>editor note</category>
            <category>postgis</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/296-PostGIS-2.0.3-for-Windows-x32-and-x64-installers.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=296</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=296</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;We have all the setup executables for PostgreSQL 8.4-9.2 32-bit and
PostgreSQL 9.1-9.2 x64-bit for PostGIS 2.0.3.  We&#039;ll have the 9.0x64-bit
ones up shortly but do have the binaries.&lt;/p&gt;

&lt;p&gt;We are planning to release these to stackbuilder sometime next week, but
would like some feedback first with any issues people run into.&lt;/p&gt;

&lt;p&gt;One person already reported a serious bug in our original packaging which we
fixed. If you already installed 2.0.3 the x64-bit version or any of the 9.2
versions (both x32 and x64) that was not marked as -2.zip, -2.exe, you&#039;ll
want to reinstall. The 8.4-9.1 32-bits were not affected so just have a -1.&lt;/p&gt;

&lt;p&gt;Packages can be downloaded from: &lt;br /&gt;
&lt;a href=&quot;http://download.osgeo.org/postgis/windows&quot; target=&quot;_blank&quot;&gt;http://download.osgeo.org/postgis/windows&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;General details on what is included:&lt;/p&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;http://postgis.net/windows_downloads&quot; target=&quot;_blank&quot;&gt;http://postgis.net/windows_downloads&lt;/a&gt;
&lt;br /&gt;
&lt;p&gt;As always if you are installing for PostgreSQL x64 make sure to pick a zip
or installer with 64 in the name.  The unmarked or marked with 32 are just
for PostgreSQL 32-bit.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 17 Mar 2013 01:48:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/296-guid.html</guid>
    <category>postgis</category>

</item>
<item>
    <title>PostgreSQL 9.2 windows binaries for file_textarray_fdw</title>
    <link>http://www.postgresonline.com/journal/archives/286-PostgreSQL-9.2-windows-binaries-for-file_textarray_fdw.html</link>
            <category>9.2</category>
            <category>contrib spotlight</category>
            <category>fdws</category>
            <category>postgresql versions</category>
            <category>winextensions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/286-PostgreSQL-9.2-windows-binaries-for-file_textarray_fdw.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=286</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=286</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;We discussed a while back the &lt;a href=&quot;http://www.postgresonline.com/journal/archives/251-File-FDW-Family-Part-2-file_textarray_fdw-Foreign-Data-Wrapper.html&quot; target=&quot;_blank&quot;&gt;Text array foreign data wrapper&lt;/a&gt; that allows you to register and query a delimited file as if it were a regular table with one array column.
It&#039;s probably the FDW we use most often and reminded of that recently when I had to query a 500,000 record resident list tab delimited file to prep for geocoding.&lt;/p&gt;

&lt;p&gt;When we upgraded to 9.2 and we could no longer compile, I wrote to Andrew Dunstan about this and &lt;a href=&quot;http://people.planetpostgresql.org/andrew/index.php?/archives/291-File-Text-Array-FDW-changes.html&quot; target=&quot;_blank&quot;&gt;he kindly created a 9.2 version&lt;/a&gt;.
Unfortunately there are still quite a few FDWs broken as a result of the 9.2 changes and I was hoping to try to apply similar patches to them that I saw Andrew do, but
haven&#039;t had the patience or time yet. Anyway we&#039;ve compiled these for 9.2 under our mingw64-w64 and mingw64-w32 chains using Andrew&#039;s 9.2 GitHub stable branch. 
&lt;a href=&quot;https://github.com/adunstan/file_text_array_fdw/tree/REL9_2_STABLE&quot;&gt;https://github.com/adunstan/file_text_array_fdw/tree/REL9_2_STABLE&lt;/a&gt;
and we&#039;ve tested them using the PostgreSQL EDB windows VC++ compiled versions. We hope you find them as useful as we have.
&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;&lt;a href=&quot;/downloads/fdw_win32_92_bin.zip&quot;&gt;PostgreSQL 9.2 w32 FDWs&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;/downloads/fdw_win64_92_bin.zip&quot;&gt;PostgreSQL 9.2 w64 FDWs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I&#039;m hoping to add more FDWs to these 9.2 bags once
we have those working again. If you want to compile yourself or compile others, we have instructions in the packaged README.txt.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 19 Jan 2013 14:06:00 -0500</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/286-guid.html</guid>
    <category>fdw</category>
<category>file_textarray_fdw</category>
<category>foreign data wrapper</category>
<category>postgresql 9.2</category>
<category>windows</category>

</item>
<item>
    <title>Unpivoting data in PostgreSQL</title>
    <link>http://www.postgresonline.com/journal/archives/283-Unpivoting-data-in-PostgreSQL.html</link>
            <category>9.2</category>
            <category>contrib spotlight</category>
            <category>hstore</category>
            <category>postgresql versions</category>
            <category>sql server</category>
            <category>tablefunc</category>
    
    <comments>http://www.postgresonline.com/journal/archives/283-Unpivoting-data-in-PostgreSQL.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=283</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=283</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;A while ago we demonstrated how to &lt;a href=&quot;http://www.postgresonline.com/journal/archives/14-CrossTab-Queries-in-PostgreSQL-using-tablefunc-contrib.html&quot; target=&quot;_blank&quot;&gt;create cross tabulation tables&lt;/a&gt; using &lt;em&gt;&lt;a href=&quot;http://www.postgresql.org/docs/current/interactive/tablefunc.html&quot; target=&quot;_blank&quot;&gt;tablefunc&lt;/a&gt;&lt;/em&gt; extension aka (Pivot Tables) (basically collapsing
rows into columns).
Recently someone asked me how to do the reverse (convert columns to rows).  He found a solution to the problem here: &lt;a href=&quot;http://stackoverflow.com/questions/1128737/unpivot-and-postgresql&quot;&gt;http://stackoverflow.com/questions/1128737/unpivot-and-postgresql&lt;/a&gt;
using a combination of &lt;b&gt;&lt;a href=&quot;http://www.postgresql.org/docs/current/interactive/functions-array.html&quot; target=&quot;_blank&quot;&gt;array&lt;/a&gt;&lt;/b&gt; and &lt;b&gt;unnest&lt;/b&gt;.  That approach is very similar to &lt;a href=&quot;http://msdn.microsoft.com/en-us/library/ms177410%28v=sql.105%29.aspx&quot; target=&quot;_blank&quot;&gt;SQL Server&#039;s built-in Pivot SQL predicate&lt;/a&gt;. 
The solution seemed
nice enough except similar to the SQL Server Unpivot, it required knowing the column names  beforehand so very hard to genericize. 
So would it be possible to accomplish this feat without knowing the columns names (except for the key) and be able to do it with one SQL statement.  I realized that the 
PostgreSQL &lt;em&gt;&lt;a href=&quot;http://www.postgresql.org/docs/current/interactive/hstore.html&quot; target=&quot;_blank&quot;&gt;hstore&lt;/a&gt;&lt;/em&gt; extension fit the bill nicely. In this article I&#039;ll demonstrate both approaches by creating a view 
using both.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/283-Unpivoting-data-in-PostgreSQL.html#extended&quot;&gt;Continue reading &quot;Unpivoting data in PostgreSQL&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Fri, 04 Jan 2013 15:03:00 -0500</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/283-guid.html</guid>
    <category>cross tabulation</category>
<category>hstore</category>
<category>pivot</category>
<category>tablefunc</category>
<category>unpivot</category>

</item>
<item>
    <title>Unknown object type 84 in default privileges</title>
    <link>http://www.postgresonline.com/journal/archives/282-Unknown-object-type-84-in-default-privileges.html</link>
            <category>9.2</category>
            <category>basics</category>
            <category>beginner</category>
            <category>pgadmin</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/282-Unknown-object-type-84-in-default-privileges.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=282</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=282</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;We recently started upgrading some of our databases on windows 64-bit to 9.2, in doing so we ran into a nasty issue we discovered when some of our backups were failing.  The first time it happened, I chucked it up to a dirty PostgreSQL 8.4 database being restored to PostgreSQL 9.2.1.  The second time it happened restoring a 9.1 database to 9.2.2, I thought, better look into this to see if there is a known issue.  Low and behold I found this:
&lt;a href=&quot;http://archives.postgresql.org/pgsql-bugs/2012-12/msg00091.php&quot; target=&quot;_blank&quot;&gt;http://archives.postgresql.org/pgsql-bugs/2012-12/msg00091.php (Bug #7741)&lt;/a&gt;.  Apparently something to do with granting rights on Types.&lt;/p&gt;

&lt;p&gt;As a workaround for this problem so our backups would work again was to delete the offending permissions from system tables. It&#039;s probably not the best way but only way we could think of, we delete the bad record in &lt;b&gt;pg_default_acl&lt;/b&gt; and after that backup works without complaint.&lt;/p&gt;

&lt;pre&gt;
   &lt;code&gt;&lt;span class=&quot;syntax0&quot;&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt;-- there is no such thing as T for default priviledges that pg_dump understands based on 
-- https://github.com/adunstan/postgresql-dev/blob/master/src/bin/pg_dump/pg_dump.c#L11838
-- backup bad records just in case we need them again --&lt;/span&gt;
&lt;span class=&quot;syntax-KEYWORD1&quot;&gt;SELECT&lt;/span&gt; &lt;span class=&quot;syntax-OPERATOR&quot;&gt;*&lt;/span&gt; &lt;span class=&quot;syntax-KEYWORD1&quot;&gt;into&lt;/span&gt; zz_bad_pg_default_acl &lt;span class=&quot;syntax-KEYWORD1&quot;&gt;FROM&lt;/span&gt; pg_default_acl  &lt;span class=&quot;syntax-KEYWORD1&quot;&gt;WHERE&lt;/span&gt; defaclobjtype &lt;span class=&quot;syntax-OPERATOR&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;syntax-LITERAL1&quot;&gt;&#039;&lt;/span&gt;&lt;span class=&quot;syntax-LITERAL1&quot;&gt;T&lt;/span&gt;&lt;span class=&quot;syntax-LITERAL1&quot;&gt;&#039;&lt;/span&gt;; 
&lt;span class=&quot;syntax-COMMENT1&quot;&gt;--&lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt; &lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt;delete&lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt; &lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt;unknown&lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt; &lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt;records&lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt; &lt;/span&gt;&lt;span class=&quot;syntax-COMMENT1&quot;&gt;--&lt;/span&gt;
&lt;span class=&quot;syntax-KEYWORD4&quot;&gt;DELETE&lt;/span&gt; &lt;span class=&quot;syntax-KEYWORD1&quot;&gt;from&lt;/span&gt; pg_default_acl &lt;span class=&quot;syntax-KEYWORD1&quot;&gt;WHERE&lt;/span&gt; defaclobjtype &lt;span class=&quot;syntax-OPERATOR&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;syntax-LITERAL1&quot;&gt;&#039;&lt;/span&gt;&lt;span class=&quot;syntax-LITERAL1&quot;&gt;T&lt;/span&gt;&lt;span class=&quot;syntax-LITERAL1&quot;&gt;&#039;&lt;/span&gt;; 
&lt;/span&gt;&lt;/code&gt;
&lt;/pre&gt;
  

&lt;p&gt;If  anyone else has further input on this, I&#039;d be interested.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 31 Dec 2012 04:08:00 -0500</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/282-guid.html</guid>
    
</item>
<item>
    <title>PLV8 1.3 windows binaries for PostgreSQL 9.2</title>
    <link>http://www.postgresonline.com/journal/archives/280-PLV8-1.3-windows-binaries-for-PostgreSQL-9.2.html</link>
            <category>9.2</category>
            <category>pl programming</category>
            <category>plcoffee</category>
            <category>plLiveScript</category>
            <category>plv8js</category>
            <category>postgresql versions</category>
            <category>winextensions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/280-PLV8-1.3-windows-binaries-for-PostgreSQL-9.2.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=280</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=280</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;As Hitoshi Hirada mentioned already in &lt;a href=&quot;http://umitanuki.hatenablog.com/entry/2012/12/10/145425&quot; target=&quot;_blank&quot;&gt;PL/v8 is now the richest procedural language&lt;/a&gt; , PL/V8 1.3 has been recently released and some of the great new features are automatic conversion of json objects, and ability to write window functions.  Not only does PL/V8 allow you to make the most of the native JSON support in PostgreSQL 9.2, but in many cases particularly numeric processing, the speed is much better than what you get with plpgsql.  Someone asked us a while back about this and we are hoping to do a demonstration of pl/v8 for numeric processing where you can see the marked difference in speed and perhaps compare with something like PL/R that is also often used for array numeric processing.&lt;/p&gt;


&lt;p&gt;For those who are on windows we&#039;ve compiled PLv8 1.3  for windows 32-bit and windows 64-bit that work with PostgreSQL EDB installs. We haven&#039;t had a chance to thoroughly test them yet,  so let us know if you find issues.  We&#039;ve saved the last versions we compiled under a different name since some things are not backward compatible between the PLv8 1.1 and 1.3 releases.&lt;/p&gt;

&lt;p&gt;We are also hoping to making our windows binary download links more visible.  For stop gap fix, we are tagging all the articles concerning things like FDW extensions, PostGIS, plv8 we&#039;ve compiled for windows under winextensions and accessible from &lt;a href=&quot;http://www.postgresonline.com/winextensions.php&quot; target=&quot;blank&quot;&gt;http://www.postgresonline.com/winextensions.php&lt;/a&gt;&lt;/p&gt;

 &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/280-PLV8-1.3-windows-binaries-for-PostgreSQL-9.2.html#extended&quot;&gt;Continue reading &quot;PLV8 1.3 windows binaries for PostgreSQL 9.2&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Thu, 13 Dec 2012 22:32:00 -0500</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/280-guid.html</guid>
    
</item>
<item>
    <title>Using PLV8 to build JSON selectors</title>
    <link>http://www.postgresonline.com/journal/archives/272-Using-PLV8-to-build-JSON-selectors.html</link>
            <category>9.2</category>
            <category>pl programming</category>
            <category>plv8js</category>
            <category>postgis</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/272-Using-PLV8-to-build-JSON-selectors.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=272</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=272</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;Unfortunately we missed Postgres Open this year, but we did catch some of the slides.  One of them was &lt;a href=&quot;http://plv8-pgopen.herokuapp.com&quot; target=&quot;_blank&quot;&gt;Embracing the web with JSON and PLV8&lt;/a&gt; by Will Leinweber of Heroku.  He had a great slide deck with a lot of interesting points.  One surprising for us was that even in tasks that both PL/PgSQL and PL/V8 can do, PL/V8 is sometimes faster as demonstrated in his slides:
&lt;a href=&quot;http://plv8-pgopen.herokuapp.com/#51&quot; target=&quot;_blank&quot;&gt;#51&lt;/a&gt; thru &lt;a href=&quot;http://plv8-pgopen.herokuapp.com/#54&quot; target=&quot;_blank&quot;&gt;#54&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Another interesting point he covered which is the topic of this article is the ease with which you can build PLV8 functions from javascript libs on the web. In particular &lt;a href=&quot;http://jsonselect.org/#docs&quot;&gt;JSON:Select&lt;/a&gt; library.
In one article we demonstrated &lt;a href=&quot;http://www.postgresonline.com/journal/archives/264-PLV8JS-and-PLCoffee-Part-2B-PHP-JQuery-App.html&quot; target=&quot;_blank&quot;&gt;a JQuery app with PLV8&lt;/a&gt; and one of JQuery&#039;s foundations is the CSS like selector syntax it provides for JSON and HTML document elements which allows you to drill down a document using CSS3 style referencing, much like what &lt;a href=&quot;http://en.wikipedia.org/wiki/XPath&quot; target=&quot;_blank&quot;&gt;xpath&lt;/a&gt; does for xml. One of the glaring features missing in PostgreSQL 9.2 basic JSON support is a function to navigate a JSON document comparable to the &lt;a href=&quot;http://www.postgresql.org/docs/current/interactive/functions-xml.html&quot; target=&quot;_blank&quot;&gt;PostgreSQL built-in xpath function for xml&lt;/a&gt;.
So how do we get this json selector goodness available to us in the database? Like all good monkeys, we copy/emulate it.  &lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/272-Using-PLV8-to-build-JSON-selectors.html#extended&quot;&gt;Continue reading &quot;Using PLV8 to build JSON selectors&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Sun, 23 Sep 2012 21:40:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/272-guid.html</guid>
    <category>json</category>
<category>pljavascript</category>
<category>plv8</category>
<category>postgresql 9.2</category>

</item>
<item>
    <title>Windows Binaries and Installers Up for PostgreSQL 9.2: PLV8 and PostGIS 2.0.1</title>
    <link>http://www.postgresonline.com/journal/archives/271-Windows-Binaries-and-Installers-Up-for-PostgreSQL-9.2-PLV8-and-PostGIS-2.0.1.html</link>
            <category>9.2</category>
            <category>pl programming</category>
            <category>plcoffee</category>
            <category>plv8js</category>
            <category>postgis</category>
            <category>postgresql versions</category>
            <category>winextensions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/271-Windows-Binaries-and-Installers-Up-for-PostgreSQL-9.2-PLV8-and-PostGIS-2.0.1.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=271</wfw:comment>

    <slash:comments>3</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=271</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;We&#039;ve recompiled our &lt;a href=&quot;http://www.postgresonline.com/journal/archives/261-Building-PLV8JS-and-PLCoffee-for-Windows-using-MingW64-w64-w32.html&quot; target=&quot;_blank&quot;&gt;PL/V8 for windows&lt;/a&gt; against PostgreSQL 9.2.0 (both &lt;b style=&#039;font-size:20pt&#039;&gt;&lt;a href=&quot;http://www.postgresonline.com/downloads/pg92plv8jsbin_w32.zip&quot; target=&quot;_blank&quot;&gt;32-bit&lt;/a&gt;&lt;/b&gt; and &lt;b style=&#039;font-size:20pt&#039;&gt;&lt;a href=&quot;http://www.postgresonline.com/downloads/pg92plv8jsbin_w64.zip&quot; target=&quot;_blank&quot;&gt;64-bit&lt;/a&gt;&lt;/b&gt;) with latest PL/V8 code.  This includes the additional &lt;a href=&quot;http://gkz.github.com/LiveScript/&quot; target=&quot;_blank&quot;&gt;LiveScript language&lt;/a&gt;, which you can use by doing: &lt;/p&gt;
&lt;code&gt;CREATE EXTENSION plls;&lt;/code&gt;

&lt;p&gt;New release also includes some bug fixes such as &lt;a href=&quot;http://code.google.com/p/plv8js/source/detail?r=bbfae3f019ff5f270239b9cdd19eecdfba4926b3&quot; target=&quot;_blank&quot;&gt;Crash case with non-array in array returning function.&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;We have also put up &lt;b style=&#039;font-size:20pt&#039;&gt;&lt;a href=&quot;http://www.postgis.org/download/windows/#windbinaries&quot; target=&quot;_blank&quot;&gt;binaries&lt;/a&gt;&lt;/b&gt; and &lt;b style=&#039;font-size:20pt&#039;&gt;&lt;a href=&quot;http://www.postgis.org/download/windows/#postgis-installers&quot; target=&quot;_blank&quot;&gt;installers&lt;/a&gt;&lt;/b&gt; for PostGIS 2.0.1 for PostgreSQL 9.2 (32-bit and 64-bit) downloadable from PostGIS website.  We haven&#039;t deployed the installers to Application StackBuilder yet since we are doing some testing before we release to the masses.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sat, 22 Sep 2012 16:24:01 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/271-guid.html</guid>
    <category>plcoffee</category>
<category>pljavascript</category>
<category>pllivescript</category>
<category>plv8</category>

</item>
<item>
    <title>PostGIS 2.0.1 for windows PostgreSQL 9.2 and PostGIS Project changes</title>
    <link>http://www.postgresonline.com/journal/archives/269-PostGIS-2.0.1-for-windows-PostgreSQL-9.2-and-PostGIS-Project-changes.html</link>
            <category>9.2</category>
            <category>editor note</category>
            <category>postgis</category>
            <category>postgresql versions</category>
            <category>winextensions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/269-PostGIS-2.0.1-for-windows-PostgreSQL-9.2-and-PostGIS-Project-changes.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=269</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=269</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;A couple of people have expressed concern that we have not released a PostGIS 2.0.1 for Windows 9.2.  I guess 9.2 really makes people want to jump and scream for joy. Even if they don&#039;t deploy on Windows, Windows is a popular development platform to kick the tires.  We originally were planning to not release one and were hoping people would not notice and just start using the PostGIS 2.1.0SVN.  That plan evidently did not work.  So Yes, we will be releasing a PostGIS 2.0.1 for 9.2 both 32-bit and 64-bit probably late this week.  We&#039;ve got some regression kinks showing in the 9.2 64-bit chain that we are troubleshooting before we release to the masses.&lt;/p&gt; 

&lt;p&gt;We&#039;ve been busy beefing up the PostGIS testing and interim build infrastructure to replace the old PostGIS Hudson CentOS build bot.  If you are in a super rush and really need a 2.0 micro, you can use the &lt;a href=&quot;http://postgis.net/windows_downloads&quot; target=&quot;_blank&quot;&gt;PostGIS 2.0.2SVN&lt;/a&gt; binaries, generated by Winnie the PostGIS windows build bot. If you hang around the PostGIS IRC channel, you may have stumbled on Debbie, Winnie&#039;s younger and more vocal sister (Debian 64-bit hosted on GoGrid) that does all the document builds and tar balls currently.  We are hoping to have Debbie eventually pull PostgreSQL source directly from Git PostgreSQL 9.3, so we can make sure we don&#039;t introduce issues for 9.3 along the way and can catch them early.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Mon, 17 Sep 2012 00:50:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/269-guid.html</guid>
    
</item>
<item>
    <title>Creating GeoJSON Feature Collections with JSON and PostGIS functions</title>
    <link>http://www.postgresonline.com/journal/archives/267-Creating-GeoJSON-Feature-Collections-with-JSON-and-PostGIS-functions.html</link>
            <category>9.2</category>
            <category>application development</category>
            <category>json</category>
            <category>postgis</category>
            <category>postgresql versions</category>
            <category>webservices</category>
    
    <comments>http://www.postgresonline.com/journal/archives/267-Creating-GeoJSON-Feature-Collections-with-JSON-and-PostGIS-functions.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=267</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=267</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;If you do a lot of web-based GIS applications, a common desire is to allow a user to 
draw out an area on the map and then do searches against that area and return back a FeatureCollection
where each feature is composed of a geometry and attributes about that feature. In the past the format
was GML or KML, but the world seems to be moving to prefer JSON/GeoJSON.  Normally you&#039;d throw
a mapping server that talks Web Feature Service 
, do more or less with a webscripting glue, or use a Webservice
such as &lt;a href=&quot;http://cartodb.com/maps&quot; target=&quot;_blank&quot;&gt;CartoDb&lt;/a&gt; that lets you pass along raw SQL.&lt;/p&gt;
&lt;p&gt;In this article we&#039;ll demonstrate how to build GeoJSON feature collections that can be consumed by web mapping apps.
 using
the built in JSON functions in PostgreSQL 9.2 and some PostGIS hugging.  
Even if you
don&#039;t use PostGIS, we hope you&#039;ll come away with some techniques for working with 
PostgreSQL extended types and also how to morph relational data into JSON buckets.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/267-Creating-GeoJSON-Feature-Collections-with-JSON-and-PostGIS-functions.html#extended&quot;&gt;Continue reading &quot;Creating GeoJSON Feature Collections with JSON and PostGIS functions&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Fri, 24 Aug 2012 02:55:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/267-guid.html</guid>
    <category>geojson</category>
<category>json</category>
<category>plv8</category>
<category>postgis</category>
<category>postgresql 9.2</category>

</item>
<item>
    <title>Schemas vs. Schemaless structures and The PostgreSQL Type Farm</title>
    <link>http://www.postgresonline.com/journal/archives/265-Schemas-vs.-Schemaless-structures-and-The-PostgreSQL-Type-Farm.html</link>
            <category>9.2</category>
            <category>editor note</category>
            <category>hstore</category>
            <category>ltree</category>
            <category>postgis</category>
    
    <comments>http://www.postgresonline.com/journal/archives/265-Schemas-vs.-Schemaless-structures-and-The-PostgreSQL-Type-Farm.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=265</wfw:comment>

    <slash:comments>1</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=265</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;There has been a lot of talk lately about &lt;a href=&quot;http://dbdebunk.blogspot.it/2012/08/schema-nosql-and-relational-model-part-1.html&quot; target=&quot;_blank&quot;&gt;schemaless models touted by NoSQL groups&lt;/a&gt; and &lt;A href=&quot;http://archives.postgresql.org/pgsql-advocacy/2012-08/msg00052.php&quot; target=&quot;_blank&quot;&gt;how PostgreSQL fits into this New world order&lt;/a&gt;. 
Is PostgreSQL Object-Relational? Is it &lt;a href=&quot;http://database-explorer.blogspot.com/2012/08/postgresql-multi-model-database-server.html&quot; target=&quot;_blank&quot;&gt;Multi-Model&lt;/a&gt;. We tend to think of PostgreSQL as type liberal and it&#039;s liberalness gets more liberal with each new release. PostgreSQL is fundamentally relational, but has little bias about what data types define each column of related tables. One of PostgreSQL great strengths is the ease with which different types can coexist in the same table and the &lt;a href=&quot;http://www.postgresql.org/docs/9.2/interactive/indexam.html&quot; target=&quot;_blank&quot;&gt;flexible index plumbing&lt;/a&gt; and plan optimizer it provides that allows each type, regardless of how wild, to take full advantage of various index strategies and custom index bindings.  Our 3 favorite custom non-built-in types we use in our workflow are
&lt;a href=&quot;http://www.postgis.org&quot; target=&quot;_blank&quot;&gt;PostGIS (of course)&lt;/a&gt;, &lt;a href=&quot;http://www.postgresql.org/docs/current/static/ltree.html&quot;&gt;LTree (Hierarchical Type)&lt;/a&gt;, and &lt;a href=&quot;http://www.postgresql.org/docs/current/interactive/hstore.html&quot; target=&quot;_blank&quot;&gt;HStore (Key-Value type)&lt;/a&gt;. In some cases, we may use all 3 in the same database and sometimes the same table - where we use PostGIS for spatial location, LTree for logical location, and Hstore just to keep track of random facts about an object that are easier to access than having a separate related table and are too random to warrant devoting a separate column for each. Sometimes we are guilty of using xml as well when we haven&#039;t figured out what schema model best fits a piece of data and hstore is too flat of a type to work. The advent of JSON in PostgreSQL 9.2 does provide for a nested schema-less model similar to what the XML type offers, but more JavaScript friendly.  I personally see JSON as more of a useful transport type than one I&#039;d build my business around or a type you&#039;d use when you haven&#039;t figured out what if any structure is most suitable for your data. When you have no clue what structure a piece of data should be stored, you should let the data tell you what structure it wants to be stored in and only then will you discover by storing it in a somewhat liberal fashion how best to retrofit in a more structural self-descriptive manner. Schemas are great because they are self-describing, but they are not great when your data does not want to sit in a self-described bucket. You may find in the end that some data is just wild and refuses to stay between the lines and then by all means stuff it in xml or json or create a whole new type suit it feels comfortable in.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Sun, 12 Aug 2012 05:18:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/265-guid.html</guid>
    <category>postgis</category>
<category>postgresql 9.2</category>

</item>
<item>
    <title>PLV8JS and PLCoffee Part 1: Upserting</title>
    <link>http://www.postgresonline.com/journal/archives/262-PLV8JS-and-PLCoffee-Part-1-Upserting.html</link>
            <category>9.2</category>
            <category>intermediate</category>
            <category>new in postgresql</category>
            <category>pl programming</category>
            <category>plcoffee</category>
            <category>plv8js</category>
            <category>postgis</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/262-PLV8JS-and-PLCoffee-Part-1-Upserting.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=262</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=262</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;Today&#039;s modern web application workflow in its simplest form looks something like this:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Get dataset as JSON object usually using yet another JSON query object to pass the request using a javascript framework like JQuery/ExtJS/OpenLayers/Leaflet
	etc.&lt;/li&gt;
	&lt;li&gt;Make changes to JSON dataset object and send back to the web server.&lt;/li&gt;
	&lt;li&gt;On webserver unravel the JSON object and save to respective database tables.  This part is really yucky as it often involves the web application
	server side language doing the unraveling and then yet another step of setting up stored procedures or other update logic to consume it.&lt;/li&gt; 
&lt;/ol&gt;
&lt;p&gt;We hate the way people build tiers
for the same reason &lt;a href=&quot;http://www.southparkstudios.com/clips/152796/lines-lines-lines&quot; target=&quot;_blank&quot;&gt;Cartman hates lines&lt;/a&gt; at the amusement park. 
Sure tiers are great for certain things like building connected microcosms, but most of the time they are overkill  
and if applied too early make your application needlessly complicated. In the end all we care about is data: &lt;em&gt;serving data&lt;/em&gt;, &lt;em&gt;analyzing data&lt;/em&gt;, &lt;em&gt;getting good data&lt;/em&gt; and everything else is just peacock feathers.&lt;/p&gt;  
&lt;p&gt;The introduction of JSON type support in PostgreSQL 9.2 and languages &lt;a href=&quot;https://code.google.com/p/plv8js/wiki/PLV8&quot; target=&quot;_blank&quot;&gt;PL/V8&lt;/a&gt; (PL/Javascript) and its Pythoness-like twin &lt;a href=&quot;http://coffeescript.org/&quot;&gt;PL/Coffee&lt;/a&gt;  
provides several options for bringing your data and application closer together since they have native support for JSON.  
In this first part we&#039;ll demonstrate one: &lt;em&gt;An upsert stored procedure that takes a single JSON object instead of separate args and updates existing data and adds missing records&lt;/em&gt;.
In later articles we&#039;ll show
you the front end app and also add a sprinkle of PostGIS in there to demonstrate working with custom types. &lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/262-PLV8JS-and-PLCoffee-Part-1-Upserting.html#extended&quot;&gt;Continue reading &quot;PLV8JS and PLCoffee Part 1: Upserting&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Sat, 21 Jul 2012 13:13:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/262-guid.html</guid>
    <category>json</category>
<category>plcoffee</category>
<category>plv8</category>
<category>postgresql 9.2</category>

</item>
<item>
    <title>Building PLV8JS and PLCoffee for Windows using MingW64 w64-w32</title>
    <link>http://www.postgresonline.com/journal/archives/261-Building-PLV8JS-and-PLCoffee-for-Windows-using-MingW64-w64-w32.html</link>
            <category>9.2</category>
            <category>advanced</category>
            <category>pl programming</category>
            <category>plcoffee</category>
            <category>plv8js</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/261-Building-PLV8JS-and-PLCoffee-for-Windows-using-MingW64-w64-w32.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=261</wfw:comment>

    <slash:comments>8</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=261</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;As mentioned in our previous article &lt;a href=&quot;http://www.postgresonline.com/journal/archives/260-Building-on-MingW-and-deploying-on-VC-compiled-PostgreSQL-Why-and-Why-not.html&quot; target=&quot;_blank&quot;&gt;Building on MingW deploying on VC&lt;/a&gt; we often build on MingW and deploy on Windows servers running EDB distributed VC PostgreSQL builds
for extensions we want that don&#039;t come packaged.  One of the new ones we are really excited about is the PL/V8 and PL/Coffee ones. Could we do it
and would it actually work on a VC build.  YES WE CAN and yes it does. I HAZ Coffee and a V8: &lt;img src=&quot;/images/journal/plv8js_plcoffee.png&quot; /&gt;.&lt;/p&gt;

&lt;p&gt;Here are some instructions we hope others will find useful. Even if you aren&#039;t on
Windows, you might still find them useful since MingW behaves much like other Unix environments.&lt;/p&gt;
&lt;div style=&#039;background-color:yellow&#039;&gt;UPDATE We rebuilt these against 9.2.1 and PLV8 1.3.  Refer to &lt;a href=&quot;http://www.postgresonline.com/journal/archives/280-PLV8-1.3-windows-binaries-for-PostgreSQL-9.2.html&quot; target=&quot;_blank&quot;&gt;PLV8 1.3 windows binaries for PostgreSQL 9.2&lt;/a&gt; for further details.&lt;/div&gt;
&lt;p&gt;If you are on windows, and just want to start using PLV8 and PLCoffee.  We have binary builds for both &lt;a href=&quot;/downloads/pg92plv8jsbin_w32.zip&quot;&gt;PostgreSQL 9.2 Windows 32-bit (pg92plv8jsbin_w32.zip)&lt;/a&gt; and &lt;a href=&quot;/downloads/pg92plv8jsbin_w64.zip&quot;&gt;PostgreSQL 9.2 Windows 64-bit (pg92plv8jsbin_w64.zip)&lt;/a&gt; which you should be able to just extract into your PostgreSQL 9.2 beta windows install.  We quickly tested with EDB VC++ builds and they seem to work fine
on standard VC++ PostgreSQL 9.2beta2 installs. We haven&#039;t bothered building for lower PostgreSQL, but if there is some interest, we&#039;d be happy to try. &lt;/p&gt;  &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/261-Building-PLV8JS-and-PLCoffee-for-Windows-using-MingW64-w64-w32.html#extended&quot;&gt;Continue reading &quot;Building PLV8JS and PLCoffee for Windows using MingW64 w64-w32&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Mon, 16 Jul 2012 18:55:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/261-guid.html</guid>
    <category>coffeescript</category>
<category>postgresql 9.2</category>
<category>v8</category>

</item>
<item>
    <title>Foreign Data Wrap (FDW) Text Array, hstore, and Jagged Arrays</title>
    <link>http://www.postgresonline.com/journal/archives/259-Foreign-Data-Wrap-FDW-Text-Array,-hstore,-and-Jagged-Arrays.html</link>
            <category>9.1</category>
            <category>9.2</category>
            <category>contrib spotlight</category>
            <category>cte</category>
            <category>fdws</category>
            <category>hstore</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/259-Foreign-Data-Wrap-FDW-Text-Array,-hstore,-and-Jagged-Arrays.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=259</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=259</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;As we discussed in &lt;a href=&quot;http://www.postgresonline.com/journal/archives/251-File-FDW-Family-Part-2-file_textarray_fdw-Foreign-Data-Wrapper.html&quot; target=&quot;_blank&quot;&gt;file_textarray_fdw Foreign Data Wrapper&lt;/a&gt;, &lt;a href=&quot;http://people.planetpostgresql.org/andrew/index.php?/archives/271-Deploying-file_text_array-Foreign-Data-wrapper.html&quot; target=&quot;_blank&quot;&gt;Andrew Dunstan&#039;s text array foreign data wrapper&lt;/a&gt; works great for bringing in a delimited file and not having to worry about the column names until they are in.
We had demonstrated one way to tag the field names to avoid having to keep track of index locations, by using hstore and the header column in conjunction.  
The problem with that is it doesn&#039;t work for jagged arrays.  Jagged arrays are when not all rows have the same number of columns. I&#039;ve jury rigged a small example
to demonstrate the issue.  Luckily with the power of PostgreSQL arrays you can usually get around this issue and still have nice names for your columns.  We&#039;ll demonstrate that too.&lt;/p&gt; &lt;br /&gt;&lt;a href=&quot;http://www.postgresonline.com/journal/archives/259-Foreign-Data-Wrap-FDW-Text-Array,-hstore,-and-Jagged-Arrays.html#extended&quot;&gt;Continue reading &quot;Foreign Data Wrap (FDW) Text Array, hstore, and Jagged Arrays&quot;&lt;/a&gt;
    </content:encoded>

    <pubDate>Sun, 15 Jul 2012 02:35:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/259-guid.html</guid>
    <category>array</category>
<category>common table expressions</category>
<category>cte</category>
<category>file_textarray_fdw</category>
<category>foreign data wrapper</category>
<category>postgresql 9.1</category>

</item>
<item>
    <title>PostgreSQL: Up and Running book officially out</title>
    <link>http://www.postgresonline.com/journal/archives/258-PostgreSQL-Up-and-Running-book-officially-out.html</link>
            <category>9.1</category>
            <category>9.2</category>
            <category>editor note</category>
            <category>postgis</category>
            <category>postgresql versions</category>
    
    <comments>http://www.postgresonline.com/journal/archives/258-PostgreSQL-Up-and-Running-book-officially-out.html#comments</comments>
    <wfw:comment>http://www.postgresonline.com/journal/wfwcomment.php?cid=258</wfw:comment>

    <slash:comments>10</slash:comments>
    <wfw:commentRss>http://www.postgresonline.com/journal/rss.php?version=2.0&amp;type=comments&amp;cid=258</wfw:commentRss>
    

    <author>nospam@example.com (Leo Hsu and Regina Obe)</author>
    <content:encoded>
    &lt;p&gt;Our new book &lt;a href=&quot;/store.php?asin=1449326331&quot; target=&quot;_blank&quot;&gt;PostgreSQL: Up and Running&lt;/a&gt; is officially out. It&#039;s available in hard-copy and e-Book version directly from O&#039;Reilly,
Safari Books Online and available from Amazon in Kindle store.  It should be available in hard-copy within the next week or so from other distributors.&lt;/p&gt;
&lt;p&gt;Sadly we won&#039;t be attending &lt;a href=&quot;http://www.oscon.com/oscon2012/&quot; target=&quot;_blank&quot;&gt;OSCON&lt;/a&gt; this year, but there are several PostgreSQL talks going on. If you are speaking at a talk or other PostgreSQL related get together, and would like 
to give out some free coupons of our book or get a free e-book copy for yourself to see if it&#039;s worth effort mentioning, please send us an e-mail: lr at pcorp.us .&lt;/p&gt;

&lt;p&gt;Our main focus in writing the book is demonstrating features that make PostgreSQL uniquely poised for newer kinds of workflows with particular focus on PostgreSQL 9.1 and 9.2. 
Part of the reason for this focus is our roots and that we wanted to write a short book to get a feel for the audience.  We started to use PostgreSQL in 2001 because of
PostGIS, but were still predominantly SQL Server programmers. At the time SQL Server did not have a spatial component that integrated seamlessly with SQL.  
As die-hard SQLers, PostGIS really turned us on. As years went by, we began to use PostgreSQL
not just for our spatial apps, but predominantly non-spatial ones as well that had heavy reporting needs and that we had a choice of platform. 
So we came for PostGIS but stayed because of all the other neat features PostgreSQL had that we found lacking in SQL Server. Three off the bat
are arrays, regular expressions, and choice of procedural languages. Most other books on the market just treat PostgreSQL like it&#039;s any other relational database. 
In a sense that&#039;s good because it demonstrates
that using PostgreSQL does not require a steep learning curve if you&#039;ve used another relational database.  We didn&#039;t spend as much time on these common features as we&#039;d like to 
in the book because it&#039;s a short book and we figure most users familiar with relational databases
are quite knowledgeable of common features from other experience.  It&#039;s true that a lot of people coming to PostgreSQL are looking for cost savings,
ACID compliance, cross-platform support and decent speed
, but as PostgreSQL increases in speed, ease of features, and unique features, we think we&#039;ll be seeing more people migrating 
just because its simply better than any other databases 
for the new kinds of workflows we are seeing today -- e.g. BigData analysis, integration with other datasources, leveraging of domain specific languages in a more seamless way with data.&lt;/p&gt;  

&lt;p&gt;So what&#039;s that creature on the cover? &lt;br /&gt; &lt;a href=&quot;/images/postgresqlup_and_running_big.jpg&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;/images/postgresql_up_running.gif&quot; alt=&quot;PostgreSQL: Up and Running - elephant shrew&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;br /&gt;It&#039;s an &lt;a href=&quot;http://www.trinity.edu/departments/public_relations/news_releases/080306ribblesengi.htm&quot; target=&quot;_blank&quot;&gt;elephant shrew (sengi)&lt;/a&gt; and is neither an elephant nor a shrew, but closest in ancestry to the elephant, sea cow, and aardvark. 
It is only found 
in Africa (mostly East Africa around Kenya) and in zoos. It gets its name from its unusually long nose which it uses for sniffing out insect prey and keeping tabs on its mate. It has some other unusual habits:
it&#039;s a trail blazer building trails it uses to scout insect prey and also builds escape routes on the trail it memorizes to escape from predators. It&#039;s monogamous, but prefers to keep separate quarters from its mate. Males
will chase off other males and females will chase off other females. &lt;a href=&quot;http://animal.discovery.com/animals/life/rufous-sengi.html&quot; target=&quot;_blank&quot;&gt;It&#039;s fast&lt;/a&gt; and can usually out-run its predators.&lt;/p&gt; 
    </content:encoded>

    <pubDate>Tue, 10 Jul 2012 14:53:00 -0400</pubDate>
    <guid isPermaLink="false">http://www.postgresonline.com/journal/archives/258-guid.html</guid>
    <category>book writing</category>
<category>postgresql 9.1</category>
<category>postgresql 9.2</category>

</item>

</channel>
</rss>