17,084 reputation
11340
bio website blog.ringerc.id.au
location Western Australia, Australia
age
visits member for 3 years
seen 4 hours ago

I'm a PostgreSQL admin/developer, sysadmin, multi-language programmer (lately mostly Java and Java EE, previously C, C++, Python and good old bash) and general IT JOAT.

I work for 2nd Quadrant, a global PostgreSQL consultancy.

I maintain a technical blog at blog.ringerc.id.au. My PostgreSQL writing now appears on the 2nd quadrant blog.

I'll work in most programming languages with varying degrees of competence, though I'll only reluctantly touch PHP or Perl code. I'm more interested in the libraries, tools, and the code that's built on top of the language.

Most of my scrap code lives on https://github.com/ringerc . Most of my open source code is in the form of scattered patches across too many different bugzillas and JIRAs, rather than single new projects. Over time I've done a lot of work on Scribus and PoDoFo, but have moved away from both projects as my focus and interests changed. I contribute patches - rather infrequently - to PostgreSQL and to various Java EE 6 infrastructure components. Most of my contribution is now non-code, in the form of:

  • Detailed bug reporting with test cases, which I spend an unpleasant proportion of my development time preparing and submitting, mostly against JBoss and java.net projects.
  • User support for PostgreSQL on mailing lists and here on SE
  • PostgreSQL patch review and beta testing
  • Usability review of Java EE libs/tools, as well as usability review of PostgreSQL and its tools
  • Writing, editing and enhancing documentation, HOWTOs, etc
  • Blogging in detail on topics likely to be useful to others.

I've turned into a git fiend and no longer understand why anybody uses anything else. I'm also becoming increasingly obsessive about testing, particularly with the advent of Jenkins CI and Arquillian.


4h
comment Query that was working on MySQL is not working on PostgreSQL
@tblPhil It's legal in SQL to have an integer in quotes anyway.
4h
comment Linking SQL Server tables to a PostgreSQL Server
@ZQL Once installed, you're supposed to follow the generic PostgreSQL documentation for foreign data wrappers I think. CREATE FOREIGN DATA WRAPPER, CREATE SERVER, CREATE USER MAPPING (if necessary), CREATE FOREIGN TABLE. See postgresql.org/docs/current/static/… and the see-also links there.
16h
comment Couldn't setup postgresql cluster with heartbeat pgsql ra
Why on earth would you do a new deployment with PostgreSQL 9.1?
2d
awarded  replication
2d
revised Can I setup database triggers to run on a defined secondary set of servers only?
added 255 characters in body
2d
answered Can I setup database triggers to run on a defined secondary set of servers only?
2d
comment Can't get Dell PE T420 (Perc H710) perform better than a MacMini with PostgreSQL
I was about to ask about disk flush, but you already covered that. That makes things stranger. Are the queries you're running doing writes? Because RAID 5 is often horribly slow for writes. The disk cache should help, but only to a point. When you add query plans, please make a comment here so I get a notification.
2d
answered Migrating from 32 bit using pg_basebackup
2d
comment PostgreSQL pg_upgrade --link mode performance issue after upgrade
Show explain (buffers, analyze, verbose) select ... please.
2d
revised Migration From Oracle to PostgreSQL Encoding Errors
added 72 characters in body
2d
revised Migration From Oracle to PostgreSQL Encoding Errors
added 72 characters in body
2d
answered Migration From Oracle to PostgreSQL Encoding Errors
2d
answered Linking SQL Server tables to a PostgreSQL Server
Mar
26
comment DB space vs query complexity tradeoff
You seem to be talking about a huge materialized view. Are there any filtering predicates (WHERE clause entries other than join conditions) applied to this query? Please show the query and the explain (analyze, verbose, buffers). Also, PostgreSQL version?
Mar
25
comment How to sync postgres roles between multiple servers
There's really no facility for this at this point in time. It's a concern for the BDR project too, since we need roles to be the same across nodes.
Mar
25
comment how to install a database cluster in postgresql
PostgreSQL version? Where did you download the installer? Is the destination drive NTFS, or something else? (PostgreSQL cannot run with the data directory on FAT32 or EXFAT).
Mar
24
awarded  postgresql-9.3
Mar
24
answered Maximum Partitioning PostgreSQL
Mar
24
comment Why do we need partitions in PostgresSQL? (or any other RDBMS)
Yes. You can't have foreign keys referring to the parent table of partitions. Or rather, you can, but they'll be useless because they'll only "see" the values directly in the parent table (usually empty) not in the partitions. You get foreign keys or inheritance, pick one. There are also some fun issues around constraints and triggers on inherited tables.
Mar
23
comment Why do we need partitions in PostgresSQL? (or any other RDBMS)
A sufficiently sophisticated system could transparently partition data up behind the scenes, but in practice that's hard to do. Partitions are really workarounds for insufficiently smart query planners, index combination, table layout management, etc. They help you reduce the impact of heavyweight lock operations, etc, but they're really mostly just a hack. In the case of PostgreSQL specifically, it doesn't really support partitioning, so we emulate it with hacks around table inheritance. It doesn't support it because it's hard to do and nobody's done the work yet.