Skip to main content
πŸŽ“ Claude Code Masterclass Learn AI-assisted development on Udemy β€” plus the companion book on Leanpub & Amazon. Start Learning
AWS RDS PostgreSQL minor version deprecation upgrade guide
DevOps

AWS RDS PostgreSQL Minor Version Deprecation Guide

Amazon RDS is deprecating several PostgreSQL minor versions on May 31, 2026. How to upgrade proactively with Blue/Green Deployments to cut downtime.

LB
Luca Berton
Β· 3 min read

The Deadline

May 31, 2026 β€” Amazon RDS will automatically upgrade PostgreSQL instances running deprecated minor versions during their next scheduled maintenance window. This is a mandatory engine upgrade with downtime.

If you have not upgraded proactively by this date, AWS will do it for you β€” at a time you may not control.

Affected Versions

Major VersionDeprecated MinorsAuto-Upgrade Target
PostgreSQL 1414.14, 14.15, 14.16, 14.1714.20+
PostgreSQL 1515.9, 15.10, 15.11, 15.1215.15+
PostgreSQL 1616.5, 16.6, 16.7, 16.816.11+
PostgreSQL 1717.1, 17.2, 17.3, 17.417.7+
PostgreSQL 1111.22-RDS.20241121End of life

Since May 1, 2026, you can no longer create new instances on these versions via Console or CLI.

Why This Matters

Minor version upgrades usually include:

  • Security patches for known CVEs
  • Bug fixes that prevent data corruption or crashes
  • Performance improvements from the PostgreSQL community
  • Compliance alignment β€” running deprecated versions may violate your security baseline

The risk of not upgrading proactively is simple: AWS picks the maintenance window, and you get downtime when you are not ready.

AWS Blue/Green Deployments create a staging environment that replicates your production database, applies the upgrade, and then switches over with minimal downtime.

Step-by-Step

# 1. Create a Blue/Green deployment
aws rds create-blue-green-deployment \
  --blue-green-deployment-name pg-upgrade-june2026 \
  --source arn:aws:rds:us-east-1:025066287134:db:my-production-db \
  --target-engine-version 16.11

# 2. Monitor the Green environment
aws rds describe-blue-green-deployments \
  --blue-green-deployment-identifier pg-upgrade-june2026

# 3. Run your test suite against the Green endpoint

# 4. Switchover when ready (typically under 1 minute of downtime)
aws rds switchover-blue-green-deployment \
  --blue-green-deployment-identifier pg-upgrade-june2026

# 5. Delete the old Blue environment after validation
aws rds delete-blue-green-deployment \
  --blue-green-deployment-identifier pg-upgrade-june2026 \
  --delete-target

Benefits

  • Minimal downtime β€” switchover typically completes in under 1 minute
  • Rollback capability β€” if something goes wrong, the Blue (original) is still there
  • Test before cutover β€” run your full test suite against the Green environment
  • No snapshot restore needed β€” replication keeps Green in sync

Option 2: Manual Minor Version Upgrade

For simpler setups or dev/staging environments:

# Apply immediately (causes downtime)
aws rds modify-db-instance \
  --db-instance-identifier my-database \
  --engine-version 16.11 \
  --apply-immediately

# Or schedule for next maintenance window
aws rds modify-db-instance \
  --db-instance-identifier my-database \
  --engine-version 16.11 \
  --no-apply-immediately

Option 3: Terraform/IaC Update

If you manage RDS with Infrastructure as Code:

resource "aws_db_instance" "production" {
  engine         = "postgres"
  engine_version = "16.11"  # Updated from 16.8
  
  # Apply during maintenance window
  apply_immediately = false
}

Run terraform plan to preview, then terraform apply during your scheduled maintenance.

Pre-Upgrade Checklist

Before upgrading any production database:

  1. Take a manual snapshot β€” safety net regardless of method
  2. Check extension compatibility β€” SELECT * FROM pg_extension; and verify versions
  3. Review pg_upgrade release notes β€” check for breaking changes between your current and target version
  4. Test application queries β€” run your ORM migrations and critical queries against the new version
  5. Check connection pooler compatibility β€” PgBouncer, RDS Proxy, or application-level pools
  6. Verify parameter group compatibility β€” custom parameters may need adjustment
  7. Schedule during low-traffic window β€” even Blue/Green has a brief switchover moment
  8. Notify your team β€” communicate the maintenance window

Finding Affected Instances

Check your AWS Health Dashboard:

# List all RDS PostgreSQL instances and their versions
aws rds describe-db-instances \
  --query "DBInstances[?Engine=='postgres'].{ID:DBInstanceIdentifier,Version:EngineVersion,Status:DBInstanceStatus}" \
  --output table

Or check the Affected resources tab in the AWS Health Dashboard.

PostgreSQL 11: End of Life

If you are still running PostgreSQL 11.22, this is not just a minor upgrade β€” PostgreSQL 11 reached community end of life in November 2023. You need a major version upgrade to 14, 15, 16, or 17.

Major version upgrades require more testing:

  • Data type changes between major versions
  • Deprecated functions and syntax
  • Extension compatibility (PostGIS, pg_stat_statements, etc.)
  • Application code changes for removed features

Use Blue/Green Deployments for major version upgrades as well β€” they handle the pg_upgrade process transparently.

Timeline Summary

DateWhat Happens
May 1, 2026Cannot create new instances on deprecated versions
May 31, 2026Deprecation deadline
After May 31Auto-upgrade during next maintenance window

Free 30-min AI & Cloud consultation

Book Now