Skip to content

Google Summer of Code 2020 started

The PostgreSQL Project participates in Google Summer of Code (GSoC) 2020, with 3 projects. After the “Community Bonding” period finished last week, we are now in the active development phase - “Coding” as Google calls it. All three projects make good progress!

 

Performance Farm

The project defined a number of milestones, and evaluated the current database structure. Modifications are required on this front, and will be applied over the following days. Also the structure for sending data from the client to the project server is re-evaluated and modified. The student started with the database design modifications, and also with documenting the changes and terminology used.

 

PL/Java build system

Thanks to the ongoing work setting up the continuous integration, PL/Java's master branch - which will become the 1.6 release - is now getting regular CI builds against several PostgreSQL and Java versions on amd64 Ubuntu and Mac OS X, and the student has moved on to setting up the same for Windows. We had a goal to enable test options in the CI builds that were otherwise impractically strict, and identify ways to filter the output down to a manageable volume which is exposing real issues. Through a combination of fixes to some real PL/Java warnings, and a small state machine now keeping known non-PL/Java ones out of the log, the project now builds -Xcheck:jni clean. The first actual bug found through the students work got fixed before the bonding period ended - the bug had been there for fifteen years.

The later part of the work will involve more straight-up coding, to replace a Maven plugin now used in PL/Java's build that isn't quite suited to the need. The proposal outlined a few reasons for that and the preliminary work has already uncovered more reasons. It was already a goal of that work to improve the signal-to-noise ratio of diagnostics from that plugin, so already solving a similar problem for -Xcheck:jni was a good warmup.

 

WAL-G performance

First 2 weeks are going almost as we planned, the student started working on the first task during the phase of proposals. In the first week he updated his PR and we merged it. The first feature already works. This week he updated it with several improvements (mostly refactorings) and started working on test coverage of the first feature and also making some drafts on the second feature. Now we have discussion about design details of the second feature. I hope it will help to implement it according to the current plan.

 

Thank you to all mentors for the status update!

  • Twitter
  • Bookmark Google Summer of Code 2020 started at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg Google Summer of Code 2020 started
  • Bloglines Google Summer of Code 2020 started
  • Technorati Google Summer of Code 2020 started
  • Fark this: Google Summer of Code 2020 started
  • Bookmark Google Summer of Code 2020 started at YahooMyWeb
  • Bookmark Google Summer of Code 2020 started at Furl.net
  • Bookmark Google Summer of Code 2020 started at reddit.com
  • Bookmark Google Summer of Code 2020 started at blinklist.com
  • Bookmark Google Summer of Code 2020 started at Spurl.net
  • Bookmark Google Summer of Code 2020 started at Simpy.com
  • Bookmark Google Summer of Code 2020 started at blogmarks
  • Bookmark Google Summer of Code 2020 started with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

Related Projects

The PostgreSQL main website has a new page: "Related Projects".

This page lists the projects which help running and maintaining the PostgreSQL project, the infrastructure, and other things like the translations for press releases. For each project it lists links to the source, as well as information where to send updates, patches, or input.

If you want to get involved in one of the projects, that's your starting point. If a project is missing, please send a note or a patch to pgsql-www.

Many thanks to Jonathan S. Katz for polishing the patch, and making it look nice!

  • Twitter
  • Bookmark Related Projects at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg Related Projects
  • Bloglines Related Projects
  • Technorati Related Projects
  • Fark this: Related Projects
  • Bookmark Related Projects at YahooMyWeb
  • Bookmark Related Projects at Furl.net
  • Bookmark Related Projects at reddit.com
  • Bookmark Related Projects at blinklist.com
  • Bookmark Related Projects at Spurl.net
  • Bookmark Related Projects at Simpy.com
  • Bookmark Related Projects at blogmarks
  • Bookmark Related Projects with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

SELECT pg_sleep_until('#800Monies');

Pavlo recently pointed out that the pg_sleep() function in PostgreSQL has two alternatives: pg_sleep_for() and pg_sleep_until().

What do they do?

 

Continue reading "SELECT pg_sleep_until('#800Monies');"
  • Twitter
  • Bookmark SELECT pg_sleep_until('#800Monies'); at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg SELECT pg_sleep_until('#800Monies');
  • Bloglines SELECT pg_sleep_until('#800Monies');
  • Technorati SELECT pg_sleep_until('#800Monies');
  • Fark this: SELECT pg_sleep_until('#800Monies');
  • Bookmark SELECT pg_sleep_until('#800Monies'); at YahooMyWeb
  • Bookmark SELECT pg_sleep_until('#800Monies'); at Furl.net
  • Bookmark SELECT pg_sleep_until('#800Monies'); at reddit.com
  • Bookmark SELECT pg_sleep_until('#800Monies'); at blinklist.com
  • Bookmark SELECT pg_sleep_until('#800Monies'); at Spurl.net
  • Bookmark SELECT pg_sleep_until('#800Monies'); at Simpy.com
  • Bookmark SELECT pg_sleep_until('#800Monies'); at blogmarks
  • Bookmark SELECT pg_sleep_until('#800Monies'); with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

PostgreSQL @ FOSDEM 2020

The PostgreSQL Project is present with a booth at FOSDEM ever since 2007. Since 2008 we organize a Devroom, since 2013 we have our own PGDay on the Friday before FOSDEM. This year marks the 8th FOSDEM PGDay.

This blog post presents useful information about the PGDay, the booth and Devroom at FOSDEM.

 

Continue reading "PostgreSQL @ FOSDEM 2020"
  • Twitter
  • Bookmark PostgreSQL @ FOSDEM 2020 at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg PostgreSQL @ FOSDEM 2020
  • Bloglines PostgreSQL @ FOSDEM 2020
  • Technorati PostgreSQL @ FOSDEM 2020
  • Fark this: PostgreSQL @ FOSDEM 2020
  • Bookmark PostgreSQL @ FOSDEM 2020 at YahooMyWeb
  • Bookmark PostgreSQL @ FOSDEM 2020 at Furl.net
  • Bookmark PostgreSQL @ FOSDEM 2020 at reddit.com
  • Bookmark PostgreSQL @ FOSDEM 2020 at blinklist.com
  • Bookmark PostgreSQL @ FOSDEM 2020 at Spurl.net
  • Bookmark PostgreSQL @ FOSDEM 2020 at Simpy.com
  • Bookmark PostgreSQL @ FOSDEM 2020 at blogmarks
  • Bookmark PostgreSQL @ FOSDEM 2020 with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

Google Summer of Code 2019 - PostgreSQL participates with 5 projects

For the 13th year, the PostgreSQL Project is participating in Google Summer of Code (GSoC). This project is a great opportunity to let students learn about Open Source projects, and help them deliver new features. It is also a chance to engage the students beyond just one summer, and grow them into active contributors.

In GSoC, students first learn about the Open Source organization, and either pick a summer project from the list provided by the org, or submit their own idea for review. After a “community bonding” period, the students have time to implement their idea, under supervision of mentors from the Open Source organization. There is also an incentive: first, Google pays the students for their work on improving Open Source projects. And second, having a completed GSoC project in a CV is well recognized.

Continue reading "Google Summer of Code 2019 - PostgreSQL participates with 5 projects"
  • Twitter
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg Google Summer of Code 2019 - PostgreSQL participates with 5 projects
  • Bloglines Google Summer of Code 2019 - PostgreSQL participates with 5 projects
  • Technorati Google Summer of Code 2019 - PostgreSQL participates with 5 projects
  • Fark this: Google Summer of Code 2019 - PostgreSQL participates with 5 projects
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at YahooMyWeb
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at Furl.net
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at reddit.com
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at blinklist.com
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at Spurl.net
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at Simpy.com
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects at blogmarks
  • Bookmark Google Summer of Code 2019 - PostgreSQL participates with 5 projects with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

How long will a 64 bit Transaction-ID last in PostgreSQL?

At FOSDEM someone asked how long 64 bit Transaction-IDs will last.

To refresh: PostgreSQL is currently using 32 bits for the TXID, and is good for around 4 billion transactions:

fosdem=# SELECT 2^32;
  ?column?  
------------
 4294967296
(1 row)

That will not last very long if you have a busy database, doing many writes over the day. MVCC keeps the new and old versions of a row in the table, and the TXID will increase with every transaction. At some point the 4 billion transactions are reached, the TXID will overrun, and start again at the beginning. The way transactions are working in PostgreSQL, suddenly all data in your database will become invisible. No one wants that!

To limit this problem, PostgreSQL has a number mechanism in place:

  • PostgreSQL splits transaction ids into half: 2 billion in the past are visible, 2 billion in the future are not visible - all visible rows must live in the 2 billion in the past, at all times.
  • Old, deleted row versions are enevtually removed by VACUUM (or Autovacuum), the XID is no longer used.
  • Old row versions, which are still live, are marked as "freezed" in a table, and assigned a special XID - the previously used XID is no longer needed. The problem here is that every single table in every database must be Vacuumed before the 2 billion threshold is reached.
  • PostgreSQL uses lazy XIDs, where a "real" transaction id is only assigned if the transaction changes something on disk - if a transaction is read only, and does not change anything, no transaction id is consumed.

 

 

Continue reading "How long will a 64 bit Transaction-ID last in PostgreSQL?"
  • Twitter
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg How long will a 64 bit Transaction-ID last in PostgreSQL?
  • Bloglines How long will a 64 bit Transaction-ID last in PostgreSQL?
  • Technorati How long will a 64 bit Transaction-ID last in PostgreSQL?
  • Fark this: How long will a 64 bit Transaction-ID last in PostgreSQL?
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at YahooMyWeb
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at Furl.net
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at reddit.com
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at blinklist.com
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at Spurl.net
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at Simpy.com
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? at blogmarks
  • Bookmark How long will a 64 bit Transaction-ID last in PostgreSQL? with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

Google Code-In 2018 - Halftime

The PostgreSQL Project participates in Google Code-In (GCI) 2018. This is a program which allows pre-university students to pick up tasks defined by the partnering open source projects, learn about these projects, and also win a prize (certificates, t-shirts, hoodies, but also a trip to Google HQ).

 

Every project creates a number different tasks, some technical, some design based, some about updating documentation, or validating bugs. Whatever is useful in order to get to know the project better. Students can select tasks and submit their work. Mentors from the project then evaluate the work, and either approve it or send it back to the student because more work is needed.

 

Now we are halfway into this year's competition, it's time to run the numbers.

 

Continue reading "Google Code-In 2018 - Halftime"
  • Twitter
  • Bookmark Google Code-In 2018 - Halftime at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg Google Code-In 2018 - Halftime
  • Bloglines Google Code-In 2018 - Halftime
  • Technorati Google Code-In 2018 - Halftime
  • Fark this: Google Code-In 2018 - Halftime
  • Bookmark Google Code-In 2018 - Halftime at YahooMyWeb
  • Bookmark Google Code-In 2018 - Halftime at Furl.net
  • Bookmark Google Code-In 2018 - Halftime at reddit.com
  • Bookmark Google Code-In 2018 - Halftime at blinklist.com
  • Bookmark Google Code-In 2018 - Halftime at Spurl.net
  • Bookmark Google Code-In 2018 - Halftime at Simpy.com
  • Bookmark Google Code-In 2018 - Halftime at blogmarks
  • Bookmark Google Code-In 2018 - Halftime with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

Using Makefiles to build PostgreSQL

For a long time I was using a Makefile to quickly build, start, stop and then wipe a predefined PostgreSQL version. That comes handy if you just want to test something on an older version, without actually installing the software. Everything happens in a single directory, even a different port is assigned.

When I needed that setup recently, I ran into unrelated build errors:

relpath.c:21:10: fatal error: catalog/pg_tablespace_d.h: No such file or directory
 #include "catalog/pg_tablespace_d.h"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Can't be - pg_tablespace_d.h is included in the tarball I'm using.

 

 

Continue reading "Using Makefiles to build PostgreSQL"
  • Twitter
  • Bookmark Using Makefiles to build PostgreSQL at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg Using Makefiles to build PostgreSQL
  • Bloglines Using Makefiles to build PostgreSQL
  • Technorati Using Makefiles to build PostgreSQL
  • Fark this: Using Makefiles to build PostgreSQL
  • Bookmark Using Makefiles to build PostgreSQL at YahooMyWeb
  • Bookmark Using Makefiles to build PostgreSQL at Furl.net
  • Bookmark Using Makefiles to build PostgreSQL at reddit.com
  • Bookmark Using Makefiles to build PostgreSQL at blinklist.com
  • Bookmark Using Makefiles to build PostgreSQL at Spurl.net
  • Bookmark Using Makefiles to build PostgreSQL at Simpy.com
  • Bookmark Using Makefiles to build PostgreSQL at blogmarks
  • Bookmark Using Makefiles to build PostgreSQL with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

How we manage the PostgreSQL FOSDEM devroom

The PostgreSQL Project was assigned a devroom at FOSDEM again this year. We got a room with approx. 200 seats, and as usual every last seat was taken for many of the talks. This requires that we manage the room very effectively and carefully, both to avoid that people walk in and out at all times and disturb the speaker, but also in order to keep the exits free at all times.

 

For a speaker it is quite disturbing if the door in the back opens, someone walks in, down all the way to the front, tries to find a seat, walk around to the other side, maybe leaves again, or just stays somewhere and blocks the exit. The worst case is when there is a free seat somewhere in the middle of a row, and everybody has to get up to let the new attendee in.

 

The FOSDEM team requires that we keep the exits free, in case the room needs to be evacuated. If people are staying on the steps along the wall, it is not possible to clear the room effectively and quickly.

 

 

Continue reading "How we manage the PostgreSQL FOSDEM devroom"
  • Twitter
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg How we manage the PostgreSQL FOSDEM devroom
  • Bloglines How we manage the PostgreSQL FOSDEM devroom
  • Technorati How we manage the PostgreSQL FOSDEM devroom
  • Fark this: How we manage the PostgreSQL FOSDEM devroom
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at YahooMyWeb
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at Furl.net
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at reddit.com
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at blinklist.com
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at Spurl.net
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at Simpy.com
  • Bookmark How we manage the PostgreSQL FOSDEM devroom at blogmarks
  • Bookmark How we manage the PostgreSQL FOSDEM devroom with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca

PostgreSQL @ FOSDEM 2018

For more than 10 years, the PostgreSQL Project is present at FOSDEM. We also organize a separate PostgreSQL Day on Friday.

This blog post presents useful information about both the PGDay and the booth and devroom at FOSDEM.

 

Continue reading "PostgreSQL @ FOSDEM 2018"
  • Twitter
  • Bookmark PostgreSQL @ FOSDEM 2018 at del.icio.us
  • Facebook
  • Google Bookmarks
  • FriendFeed
  • Digg PostgreSQL @ FOSDEM 2018
  • Bloglines PostgreSQL @ FOSDEM 2018
  • Technorati PostgreSQL @ FOSDEM 2018
  • Fark this: PostgreSQL @ FOSDEM 2018
  • Bookmark PostgreSQL @ FOSDEM 2018 at YahooMyWeb
  • Bookmark PostgreSQL @ FOSDEM 2018 at Furl.net
  • Bookmark PostgreSQL @ FOSDEM 2018 at reddit.com
  • Bookmark PostgreSQL @ FOSDEM 2018 at blinklist.com
  • Bookmark PostgreSQL @ FOSDEM 2018 at Spurl.net
  • Bookmark PostgreSQL @ FOSDEM 2018 at Simpy.com
  • Bookmark PostgreSQL @ FOSDEM 2018 at blogmarks
  • Bookmark PostgreSQL @ FOSDEM 2018 with wists
  • wong it!
  • Bookmark using any bookmark manager!
  • Stumble It!
  • Identi.ca