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 1tZPck-008qfM-O8 for pgsql-general@arkaria.postgresql.org; Sun, 19 Jan 2025 07:21:35 +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 1tZPbj-005ONe-H8 for pgsql-general@arkaria.postgresql.org; Sun, 19 Jan 2025 07:20:32 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tZPbj-005ONW-2m for pgsql-general@lists.postgresql.org; Sun, 19 Jan 2025 07:20:31 +0000 Received: from mail-pj1-x1029.google.com ([2607:f8b0:4864:20::1029]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tZPbg-000Leb-31 for pgsql-general@postgresql.org; Sun, 19 Jan 2025 07:20:30 +0000 Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-2f43d17b0e3so6360458a91.0 for ; Sat, 18 Jan 2025 23:20:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ardentperf-com.20230601.gappssmtp.com; s=20230601; t=1737271228; x=1737876028; darn=postgresql.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=URqN9t+TtJdVSbPRYr8TuOlBlaofPKuA7sSyDHChW8c=; b=GWft5ANVqZZuPVCjFw/AXWxOX0tjtJM0EQS0yTliJl5UwmUcEGefsaqYIxR9lp6AEH Xbhcg2GS8HX6W3RaV/etl6gVrKLPLpgbjb3kg2gk3CGfZjStqPlEPeg26FbJxP9kM1pQ hy1Mo5TNOmj7sKfoOK6BXL64oN+6Rk6N5BtTkJeipmXgyhND8eTR0L3EcYhLCK66n2zo d0/CQ5z+6MvM5BxHkTfcz9qAwvbNl/tn+ndiMwIzDWmER61HTdyVXRmrilInvu0+TKzZ gZ30W9/H7gFzKyTIrxfnzOSn5tF/6KHEoFSu9L5zl9soHnYwUFcea+mjCzLTUhxJfRyA ceXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737271228; x=1737876028; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=URqN9t+TtJdVSbPRYr8TuOlBlaofPKuA7sSyDHChW8c=; b=LHMuBf0GEhe1oEsmQKNhPvAnehdb6IgqhDGEtP5NzFKd8ITcK9pogJWalxQvMQ6IEN YBBcisA84LUutfmbmEeY0xRsrmTi2kQXhdm6zkKbCfs5+e/hdVQU5Xx/ZYePji6XqYhG cjt2sfb+Rl2pGfpzSlfdZleMtWRzZeWkb8zc5sKzV3VHv/Mh5PdjbQe98aq4uWbtkWnO fCXMx1Zf3BKi7nstv3doDUNuWYJLQF0Ra/gyzk+5M8NRksBf6kILDyNIzomihd+0kdpN TvzUivWETocvVVV2OZhrYo2UiE/6mEhqku+DcF9DE7iIBB8ec3yIA2XNXoVjBNxP2DMU ViEQ== X-Forwarded-Encrypted: i=1; AJvYcCXuJ2Ah+IpG6kMKIW0dDxUNR2W3J5Tw3B/GbbGlmGAdT5bBMs0z4dqx7yPued3qRRZCIdYMaDG7tp3wEvmP@postgresql.org X-Gm-Message-State: AOJu0Yx8g5st4BlqjSxoFv+tH5u8H0U86Hm+C7m24LAt7l5BUNF0QWSt ekytlKHyGH/OoKT6Y8IqZ4APqw082KAkXBA+uMix3K8RSq0u0EdVqoGltVOytQ== X-Gm-Gg: ASbGncvu0aldoqEF1dVzTylwup1wv0kbWOsHiElFeXXzMKtaFnbKAKMaqk27CM7b/IF dErEfdkbLDVXvgJtL41Cbjff8ZJ1huhMx3f4ITarqN9DTx0YchbOxWsHfea5BsWbTsy9uWFQY9Y 7cvAnLc7qk1KRm86imZtYOmTFeJkT1HJ/+Gf1qeorLyTi+lmGvzChmgGOqwWEodcy5AE4tjbOn0 KoV1Av7rh5XUL35bVvEounSFCeNgJ7+clPjzfeiy97oIGymWshQ5UclcOSGWAuJNSSNF2v5a77Z v/mK+GYDJsD3sK28/O0s4G718HdzDA== X-Google-Smtp-Source: AGHT+IFsyMWAjdsy/ofI4J7FaS4G8+l0i/bBpIbRg+uFUA8bFvJU21SDFmeV6H2VLNcJc/CyGLWVUw== X-Received: by 2002:a05:6a21:99a2:b0:1db:eb82:b22f with SMTP id adf61e73a8af0-1eb21476705mr12452380637.5.1737271226432; Sat, 18 Jan 2025 23:20:26 -0800 (PST) Received: from ardentperf.com (97-113-76-71.tukw.qwest.net. [97.113.76.71]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bcc322a55sm4530916a12.27.2025.01.18.23.20.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 18 Jan 2025 23:20:25 -0800 (PST) Date: Sat, 18 Jan 2025 23:20:25 -0800 From: Jeremy Schneider To: Tom Lane Cc: Kamen Kalchev , pgsql-general@postgresql.org, abubakarm94@gmail.com Subject: Re: glibc 2.35-2.39 upgrade requirements Message-ID: <20250118232025.412c5033@ardentperf.com> In-Reply-To: <2246963.1737127624@sss.pgh.pa.us> References: <2246963.1737127624@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, 17 Jan 2025 10:27:04 -0500 Tom Lane wrote: > Kamen Kalchev writes: > > Hi everyone, we're planning to upgrade the OS running Postgres from > > ubuntu jammy to ubuntu noble. As part of the OS change, the glibc > > version will be changed from glibc 2.35 to glibc 2.39.. > > Can someone confirm if changing the glibc between those versions > > will require a full reindex of the Postgres cluster? > > Maybe, maybe not. According to [1], the last glibc collation change > that the PG community really noticed was in glibc 2.28. So maybe > there weren't any significant changes between 2.35 and 2.39. The > conservative path would certainly be to reindex all textual columns > (though you can skip any that have collation "C"). I haven't run 2.39 through the scan yet [1]; I should do that because someone was asking the same question on postgres slack. But note that every single ubuntu LTS and every single RHEL major release in the last 10 years has had collation changes, except for ubuntu 14.04 ... so it's worth being cautious. Collations are a bit like time zones - small changes are always happening, but you might not always notice. Jeff Davis and I did a talk at the last pgconf about this, the recording is online [2]. Personally I would recommend using the builtin C collation as database default starting in pg17, and using ICU to do linguistic collation at the table or query level when needed. With ICU there's at least the option to rebuild old versions on new operating system majors, if needed. (Though rebuilding objects - not just indexes, but anything depending on the collation - is the best course.) And be careful about hot standbys, FDWs, and other places where you can get little surprises with different OS majors. The YouTube recording has lots of info. -Jeremy 1: https://github.com/ardentperf/glibc-unicode-sorting 2: https://www.youtube.com/watch?v=KTA6oau7tl8