Heya! I this article we are going to explore two of the major features commited in
the upcoming PostgreSQL release: Logical Replication and Partitioning. Needeless to
say that these features aren’t yet available in the stable release, so they are prune
to change or extended.
Advertising warning!
The current article is just a sneak peak of the upcoming talk Demystifying Logical
Replication on PostgreSQL at Percona Live Santa Clara 2017. Get your tickets!
Golang is an awesome language, but I found it pretty unstable within the environment variables (at least in macOS Sierra/El Capitan). gvm is your friend btw, and it helped me to fix some of the issues by installing the latest release candidate of the 1.7.1 series.
Keep in mind that if you want to upgrade your macOS to Sierra, you’ll need to backup all of your environment variables and reinstall gvm.
IMPORTANT NOTE:
This has been already addressed in PostgreSQL core, but this option
is still available in RDS.
What does it change and why is so important?
Tracking databases and not just tables counters in Postgres isn’t cheap, but since some time ago there were workarounds involving the setup of a ramdisk to place the directory pointed by stat_temp_directory GUC variable. That directory places a global.stat and a per-database stat files called like db_<oidOfDB>.stat. Although the mechanism for writing into these files avoids extra or unnecessary flushes, it is very write intensive.
This article is not an introductory explanation of docker,however it’s scope if for docker’s beginners. You can consider it as an extension of the well documented Percona docker hub doc. For the source code of the image, the repository is at github.
Here is the all what you need to do for start:
docker run --name percona57 -e MYSQL_ROOT_PASSWORD=<a_password> -d percona:5.7
For checking the container status log, you can execute docker logs percona57.
For the whole article and the Shinyapp application is available here.
Some initial thoughts
A couple of days ago one of our customers came up with a question regarding FTS
over InnoDB engine. Although the question is not answered in the current article,
I came up with the conclusion that FTS is sometimes misunderstood.
Some systems have a bug that makes xbstream fail to create the destination directory, you need to force its creation.
This is the reason, that in this post, I’ll be adding extra steps prior to open the xbstream process.
The POC on this article was developed before the releasing of the Key Management service
for RDS.
I totally discourage to use the current approach for encrypting data. Use REST.
Introduction
I’ve been dealing with an issue that came into my desktop from people of the
community, regarding RDS and HIPAA rules. There was a confusing scenario whether
PostgreSQL was using FTS and encryption on RDS. There are a lot of details regarding
the architecture, however I think it won’t be necessary to dig into
very deeply to understand the basics of the present article moto.