Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uQAoK-0067H4-CA for pgsql-admin@arkaria.postgresql.org; Fri, 13 Jun 2025 20:15:36 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1uQAnK-005EHU-5s for pgsql-admin@arkaria.postgresql.org; Fri, 13 Jun 2025 20:14:34 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uQAnJ-005EHL-Qg for pgsql-admin@lists.postgresql.org; Fri, 13 Jun 2025 20:14:34 +0000 Received: from mail-ed1-x52f.google.com ([2a00:1450:4864:20::52f]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1uQAnI-001tgw-0w for pgsql-admin@lists.postgresql.org; Fri, 13 Jun 2025 20:14:34 +0000 Received: by mail-ed1-x52f.google.com with SMTP id 4fb4d7f45d1cf-607873cc6c4so5100460a12.1 for ; Fri, 13 Jun 2025 13:14:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1749845670; x=1750450470; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=XDvNio0UXyE2S1XIeB/nbniwIJixS5lpEiR9EGhNj6I=; b=Dy4QejBpmDRNg+m97HPCE5kQ5JhaIJz7CmWEOzAgN6eWp3L0Y7Zh4Dher4FYXzZEL8 AJfRWnq4JbQADsMF3GGrOy77nWJWwOxHzp90e0H8YYycHhpYTh2AYOeCCDmGZBum3atx F3Hqj+ehgnNAEpSJo7EeiXStnxuw2MGmZmPrKSr5ALaI/lC4GpYWBv440zwhi7CBrM50 UwU4uaxintA7XmmB3M959uSnRzeuKWp1Oah6QPbtkRmA0hrwRez+ONLKDjQWRoKVTjib mwobLmmeJLCCYGuQE575PGcC4pTE3wNV38VrBk5iubyDrAw4PLlxZHGKhIgb1bqzMRL2 sdew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749845670; x=1750450470; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=XDvNio0UXyE2S1XIeB/nbniwIJixS5lpEiR9EGhNj6I=; b=NswSjmp5R/A2ljpbuZvcb6lIIzpfV6pXsPmoDmKXvvNibQi3KLrzWF2Qw7ZhJN1JsX 2FLUoG4xeGHI8mWDx1Z+5pJIVyDXDcUQ/nbxLLxOcKpdapjQpNOB7XVov1wUxSmDlgCs A9VQU7hPseR19L9T6RRPDgG/LIHxUn0NwA2MI3fAU9gEtDFquelSg6KXcUH0Fi9tRM94 zs8ETNXAkVMSXKrPrKtiq1OpSVkH9BpyjUxlloSJMNDcYmVL6VX9tfHF0Edtx33mOwki UJOIhnWErdCwrrQSApMyTmgne3aO3I19ePjtDiq2b0neWtWje2omcZpSSDbwHVg/1o2n z5jw== X-Forwarded-Encrypted: i=1; AJvYcCXKf0DjdZFGpmYTGJn0kAx9yNJ0mpCIgGKRGI8wuvw/ui30qj/vaZYr9uaUMRqQlfP1ykRNougFsAKD0A==@lists.postgresql.org X-Gm-Message-State: AOJu0Yzne04Sk7MlpC1zVEoeD4eFTmuIqX2VnVDdVbMiZ7J+XsLRVGcA kVTl/8LHuv4eO2HHcTDnGYVyx2mgbd/o1VPjmLJYHgnqs1BTybjQYxB4uyKRZSMVr/Tc+/S6gGr qt3xl70EM+Wfiw03tZaFEJaW5z7hRhrA= X-Gm-Gg: ASbGncvUrHTUpGMQrgmcfAkqdnjYqxhUmdAjjJcNW2SBCxrRxTRVUFemYRhpGIUCIe9 7v5EYeX6il+duUuQ8GAANTwBG9mUSJ88ys4uLLHt9Mf5ju6gpy/O1orDYru5ZwfhGCPg2NeepfV ikvfEiF9njld9MhnutyHUMFbLEGDATE3AysaZad+Rq3UWP X-Google-Smtp-Source: AGHT+IG90HlzsxXNaZqv6d9jsFEyAd3hG1+oHcZNGKxnsBoeNiOEY3Y6/ej4Cs4mh+wqnZ46XkRLw2qN8vuGGIw8ojE= X-Received: by 2002:a05:6402:2115:b0:600:29cc:e061 with SMTP id 4fb4d7f45d1cf-608c76a4e26mr1699601a12.13.1749845670346; Fri, 13 Jun 2025 13:14:30 -0700 (PDT) MIME-Version: 1.0 References: <61b6cfb6ae03b5ad6512d0d167a5cb409ae58f21.camel@cybertec.at> In-Reply-To: <61b6cfb6ae03b5ad6512d0d167a5cb409ae58f21.camel@cybertec.at> From: Eduardo Barbachan Date: Fri, 13 Jun 2025 17:14:17 -0300 X-Gm-Features: AX0GCFtCUGZf_XLWrbTe445wsP8aYXLsG06cpUm6BTAi9jMpjD9-1Lc8YaTyj-4 Message-ID: Subject: Re: PostgreSQL Upgrade (v9.5 to v12) with Django 2.0 To: Laurenz Albe Cc: Kushal Shri , pgsql-admin@lists.postgresql.org Content-Type: multipart/alternative; boundary="00000000000097c3f6063779b1fb" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000097c3f6063779b1fb Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable I'm sorry if this part of the answer should not be given in this context, but I happen to be in this list (as a lurker for most of the time) and be a Django user. Till Django 4.2 (LTS) postgres 12 is supported. Django 5.2 (LTS also) supports postgres 17+. Em qui., 12 de jun. de 2025 =C3=A0s 10:19, Laurenz Albe escreveu: > On Wed, 2025-06-11 at 16:39 +0545, Kushal Shri wrote: > > We are in the process of planning a PostgreSQL upgrade and would greatl= y > > appreciate any insights, best practices, or lessons learned from your > experiences. > > > > Current Setup: > > - PostgreSQL version: 9.5 > > - Django version: 2.0 > > - Database size: ~3 TB > > - One Master 4 Replicas(Streaming Replication) > > > > We are taking a phased approach to this upgrade. In Phase 1, our goal i= s > to > > upgrade PostgreSQL from v9.5 to v12, ensuring compatibility with our > current > > Django 2.0 application. > > That's already wrong. PostgreSQL v12 is out of support. Upgrade to v17 > or v18. > > > As part of this, I would like to understand: > > > > - What is the highest PostgreSQL version reliably supported with Django > 2.0? > > You'll have to ask Django what they support. > > > - What upgrade strategies or methods have worked well for you in simila= r > environments? > > pg_upgrade --link > > > - Any gotchas or performance considerations to keep in mind with large > databases > > during such upgrades? > > Make sure you don't have millions of Large Objects, otherwise the upgrade > will be very slow and memory consuming. > > Yours, > Laurenz Albe > > > --=20 Att. Eduardo Barbachan --00000000000097c3f6063779b1fb Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
I'm sorry if this part of the answer should not b= e given in this context, but I happen to be in this list (as a lurker for m= ost of the time) and be a Django user.=C2=A0
Till Django 4.2 (LTS) postg= res 12 is supported. Django 5.2 (LTS also) supports postgres 17+.


Em qui., 12 de jun. de 2025 =C3=A0s 10:19,= Laurenz Albe <laurenz.albe@= cybertec.at> escreveu:
On Wed, 2025-06-11 at 16:39 +0545, Kushal Shri wrote:
> We are in the process of planning a PostgreSQL upgrade and would great= ly
> appreciate any insights, best practices, or lessons learned from your = experiences.
>
> Current Setup:
> =C2=A0 =C2=A0- PostgreSQL version: 9.5
> =C2=A0 =C2=A0- Django version: 2.0
> =C2=A0 =C2=A0- Database size: ~3 TB
> =C2=A0 =C2=A0- One Master 4 Replicas(Streaming Replication)
>
> We are taking a phased approach to this upgrade. In Phase 1, our goal = is to
> upgrade PostgreSQL from v9.5 to v12, ensuring compatibility with our c= urrent
> Django 2.0 application.

That's already wrong.=C2=A0 PostgreSQL v12 is out of support.=C2=A0 Upg= rade to v17 or v18.

> As part of this, I would like to understand:
>
> - What is the highest PostgreSQL version reliably supported with Djang= o 2.0?

You'll have to ask Django what they support.

> - What upgrade strategies or methods have worked well for you in simil= ar environments?

pg_upgrade --link

> - Any gotchas or performance considerations to keep in mind with large= databases
>=C2=A0 =C2=A0during such upgrades?

Make sure you don't have millions of Large Objects, otherwise the upgra= de
will be very slow and memory consuming.

Yours,
Laurenz Albe




--

A= tt.

Eduardo =C2=A0Barbachan

--00000000000097c3f6063779b1fb--