Tuesday, October 22, 2013

Looking forward to Triangle PUG kickoff

The Triangle PUG has got 31 members since starting less than a month ago, and 20 have said they will attend the kickoff meeting tomorrow (Wednesday) evening. I'm quite excited!

Monday, October 14, 2013

Triangle PUG kickoff meeting, 7.00 pm Oct 23rd

After a little time spent trying to get a good venue, I've scheduled the kickoff meeting for the Triangle PUG for Oct 23rd at 7.00 pm. Robert Treat will be in town and attending, and I'm going to reprise my PostgresOpen talk on PostgreSQL 9.3 and JSON. Details are at meetup.com.

Tuesday, October 1, 2013

NC Triangle PUG moving along

We're up to about 19 members with very little effort, so I think this will be viable. We have a group on meetup, and I hope to be able the schedule the first meeting, which will be a week or two from now, very soon.

Extra functions needed

I'm trying to collect a list of things that people need for handling JSON, particularly in generating JSON.

For example, Josh gave me this little problem yesterday:

given: 
serial | name | type 
847001 | t15 | GE1043 
847002 | t16 | GE1043 
847003 | sub-alpha | GESS90 

I want to produce: 
  { "turbines" : 
    { 
       847001 : { "name" : "t15", "type" : "GE1043" }, 
       847002 : { "name" : "t16", "type" : "GE1043" }, 
       847003 : { "name" : "sub-alpha", "type" : "GESS90" } 
    } 
  }

I think this is going to call for a small addition to the json_build package, a json object aggregator. With that we'd be able to do this with:

select json_build_object("turbines",
        json_object_agg(serial, json_build_object("name",name,"type",type)))
from mytable;

Probably we'd want a similar aggregator for arrays. This would be different from the builtin json_agg function which takes a record as its argument and always produces an array of hashes.

Saturday, September 28, 2013

Features still wanted

I was uploading my recent slide decks to SlideShare and noticed I had the deck there from a talk I gave about 4 years ago at TriLug about new features in Postgres 8.4. In there is a slide (#24) labeled "Major missing SQL features" and containing these two items:
  • grouping sets
  • merge
Sadly, four years later those features are still missing. And they are still the thing I think are the most urgent new SQL features we should provide.  Both are hard to do well, and probably both require major funding kicks to have any chance of being done.

Friday, September 20, 2013

Interesting new technologies

A couple of things I heard about at Postgres Open that deserve closer inspection are Docker, a nice container toolkit, leveraging among other things Linux LXC, and OpenShift, another containerization platform. Today I discovered that while I was travelling home yesterday (and taking far too long about it), a major announcement was made of collaboration between Docker and RedHat, the principal sponsors of OpenShift. This is pretty cool stuff. OpenShift already has "cartridge" for PostgreSQL, and I am going to play with it the first opportunity I get.

NC Triangle PUG here we go

Quite by chance I and two other people from the NC Triangle area (Raleigh, Durham, Chapel Hill and surrounds) went to the 2ndQuadrant sponsored dinner (thanks guys) at Postgres Open on Monday night. Out of that came a proposal for a Triangle Postgres Users Group. I set a few things in motion on that today, and I hope it will be a reality very soon. Please email me if you are interested and live in the area, so I can make sure we don't miss you when everything gets set up.

Slides from Postgres Open - 9.3 JSON and Blackhole FDW

Here are the slides from my talk at Postgres Open about JSON in Postgres 9.3

I also reprised my pgCon lightning talk about the Blackhole Foreign Data Wrapper.

Wednesday, September 4, 2013

Yet another reason to hate subversion ...

Yesterday, a family member who is new to subversion fat-fingered a commit and instead of committing just one file committed a whole large directory. It's an easy enough thing to do. My initial reaction was "OK, it shouldn't be too hard to roll that back." After all, I use git reset on a fairly regular basis.

Turns out this is actually quite hard to do. Here is one description of how to do it. Yuck.

Thursday, July 25, 2013

Better info in Building with Mingw/Msys on Windows

I've improved the information on setting up a PostgreSQL development environment on Windows. It now covers building from git as well as from tarballs, and a bunch of other changes.

What does a DBA do?

Someone was asking on IRC about what a DBA does, and I found this link. It's fairly Oracle-centric, understandably since it's from an Oracle FAQ, but still quite a good description of all the things a DBA has to do.

Friday, July 19, 2013

More info on the Buildfarm dashboard page

I'm fairly conservative about adding things to the Buildfarm dashboard page. Probably screens are mostly wider than they used to be back when the buildfarm was written, but I try to make sure there won't be any line wrap.

But today I did add something - each line now shows the git HEAD ref of the build in question. That makes it easier to see which builds contain a certain commit. This was at the request of Stephen Frost. I think we can afford the extra line width.

The changes to the web app were tiny. The database required a bit more - the dashboard is driven by a bespoke manually refreshed materialized view, and that table and the view used to refresh it had to have the extra column added.

I hope this proves useful.