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 1tVw25-00Clte-AD for pgsql-pkg-debian@arkaria.postgresql.org; Thu, 09 Jan 2025 17:09:21 +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 1tVw24-004zGF-Qf for pgsql-pkg-debian@arkaria.postgresql.org; Thu, 09 Jan 2025 17:09:20 +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 1tVw1d-004yOE-1d for pgsql-pkg-debian@lists.postgresql.org; Thu, 09 Jan 2025 17:08:52 +0000 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tVw1Z-000lb9-2o for pgsql-pkg-debian@lists.postgresql.org; Thu, 09 Jan 2025 17:08:52 +0000 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-216395e151bso14551795ad.0 for ; Thu, 09 Jan 2025 09:08:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ardentperf-com.20230601.gappssmtp.com; s=20230601; t=1736442528; x=1737047328; darn=lists.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=Uz8r6wchZH6NT0AYSksUMhQ8IqluIS6GOtyL+EJ+NpY=; b=iYrUMTYwvcTzSZv9p2rghkR+jnnZZiFdjmNdSf0SgUCcwP8Mj7CTrCJYDcV2LSbqrt /+cPBUNVwKToibUZQoQGRUbxiOvWzabp7UP8mO82PkIw1KqkdjXLXzqtKXNmCPznwSU/ oW5HoQFShKuSBUZPledYB81hq4NC0jt3jSh52xRSdQVdKstJrIPzXbgqhrcW2mYGHQqx x6HG8pn7xURyGCziU7IZVX/WdHw+MGjtlHDtjH3d9Ize26bxr5WnBJYOta24gWKfgcAC QXP0t296xTKsnfkPYrgVtEdpBCwOYJ2idbLEASpDGEnu+CvODhLoOmcTJZnBQv8zm2FK gE8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736442528; x=1737047328; 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=Uz8r6wchZH6NT0AYSksUMhQ8IqluIS6GOtyL+EJ+NpY=; b=uBTClznM6WA7evqIQbXVu2J6tyKNgsTsm6VRHNSjbQket1vEqcAaAsOrX0k3CH2yZm ZDHpXyOLRM1lXuSfGlpyurnIEez0mbKgcBxwgWeXa2amBCy+CUlM6tCUW2YBuu0a+Par xteO5896zAhBeHsEB+iPb6uwfQJ/kLU+nzkWrUWGGPLZsK3IqrVLzKVh5olLbQx5awla QYIAase5he5P+5DopAQI8Tb86WDtLhJZriBQqPpXDFLwI3da654NB6pZgmrlm7v5L8I6 7Z0BC1u4NleAqZdfGYe//wOx8+zSkAcNG9X3X2UA6Fckgr/pUpPEEIJlp327T/TfCcCP S33w== X-Forwarded-Encrypted: i=1; AJvYcCVDdDsIrZ842AtYzW0HorV2QZIGbm0aXk3ojj0JZt+8MUra6mLrXWNqzLZ22WNvAv/3qLU2d0seL9LId0Ha0dJk@lists.postgresql.org X-Gm-Message-State: AOJu0YySnVvo5KORIMANapHQo68/MFe5q2PIwxKpsWHjovWceqrxdML6 vPEq6WYCQoEyPDpQoCBwkL0fS4l1yFCYXZccOWeK5NTL9TlRuepaiolbTo840w== X-Gm-Gg: ASbGncvgd88+XnXClQGDgZDwxL/c+7GBti5/zwPi1hcFRCwtRHxzP7LQOljkHKXdlXn cXUz5PFfmIg/pooFSdLEveqMOVf4fmr9nHXIWkCceQ56Vgx3xc1F9IzMq6VjfzsNRUfoMaUNW8C 2O4ZnK2sm9HiKz77JDjRd54RWYOFm0GRtVJeyR30U8W5VruICdAIwq+wqdjt+PLCjkDTMHSZQCF wdYtDEaITv9qDiSReJbKK1UYWQUrpp53R5/0Js73QjuSXce6PGujCejWqQz5/pfbKi0bi5DQXGT 5RaUJnLFpZix3kswtT8zSnXvb3x0 X-Google-Smtp-Source: AGHT+IFJpCR0RMKm354Kysa/YtehvrIsuWRCw13BADW+XdAU4GfGtRAA1QDawZubkyWmJoIPMmtxIA== X-Received: by 2002:a17:902:b194:b0:215:5600:18cc with SMTP id d9443c01a7336-21a8d6b4dd2mr53872575ad.22.1736442527941; Thu, 09 Jan 2025 09:08:47 -0800 (PST) Received: from jeremy-ThinkPad-T430s (97-113-74-110.tukw.qwest.net. [97.113.74.110]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-21a9f10e011sm386355ad.3.2025.01.09.09.08.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 09 Jan 2025 09:08:47 -0800 (PST) Date: Thu, 9 Jan 2025 09:08:45 -0800 From: Jeremy Schneider To: =?UTF-8?B?w4FsdmFybyBIZXJuw6FuZGV6?= Cc: Christoph Berg , pgsql-pkg-debian@lists.postgresql.org Subject: Re: deb package sizes Message-ID: <20250109090845.24e1df6e@jeremy-ThinkPad-T430s> In-Reply-To: References: <20250109005301.3b145092@jeremy-ThinkPad-T430s> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, 9 Jan 2025 17:06:57 +0100 =C3=81lvaro Hern=C3=A1ndez wrote: > On 9/1/25 10:07, Christoph Berg wrote: > > Re: Jeremy Schneider =20 > >> I'm wondering if there might be any support for providing a > >> "postgresql-slim" package on PGDG which excludes llvm and python? I > >> think this might almost cut the total install size in half, and I > >> think there might be many users who would value having the option. > >> =20 > > Hi, > > > > could you explain why 250 MB is too much? Disk space these days is > > ultra cheap =20 >=20 > =C2=A0=C2=A0=C2=A0 Hi Christoph. >=20 > =C2=A0=C2=A0=C2=A0 Container images allow (are meant to) contain only th= e necessary=20 > files needed to run the process that will be run when the image is > run. As such, any additional file poses two main problems: >=20 > * Disk space is cheap. Bandwidth not so much. Time to start a >=20 > * Security analysis. Unneeded files (specially binaries, but not Another concern is the impact of image rebuilds as dependencies are updated. Tianon (a primary maintainer of the docker images) has noted that they limit frequency of the debian base containers, because every rebuild of the base container triggers an avalance of downstream rebuilds. CNPG was doing daily rebuilds for awhile, and every time any python dependency was updated you'd get a new image - boto3 was notorious for very frequent updates. So with a different image version for every day, a single server running multiple copies of postgres might easily end up with multiple image versions on the server as copies are slowly updated. >=20 > > and removing functionality (query JITing) does have cost > > as well. =20 >=20 > =C2=A0=C2=A0=C2=A0 If it can be made optional, then users can decide whe= ther they > want container images with this functionality or not. To be clear, I definitely don't want the "default" postgres packages to not have JIT. I was just suggesting a non-default "slim" alternative. Honestly I don't know if this is going to introduce a bunch of complexity in dependency management between debian packages, and how feasible it would be actually do it... but wanted to ask the question and raise the topic. > >> Even though ICU is a larger package, I would argue for still > >> including it in a "slim" build. Because of the drama around glibc > >> collation I view ICU as especially important to make available. =20 > > Note that ICU does not fix the collation drama either, you will have > > to reindex on ICU upgrades as well. =20 >=20 > =C2=A0=C2=A0=C2=A0 Agreed that it doesn't solve the whole drama, but rei= ndexes are > not needed if container images for upgrades are provided while > keeping the ICU version constant (which is doable). Yes, I'm definitely well aware of how ICU isn't really changing anything about rebuild requirement - I've said many times that people should default to builtin C collation starting with pg17, and set linguistic collation at a table or query level. The big advantage of this is that it's much easier to know everything that needs rebuilding, since postgres does good dependency tracking of objects using nondefault collation. But with ICU there is at least the option that someone could rebuild an old version and run it on the new debian release. That's nearly impossible with glibc. -Jeremy