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 1seMz2-006OVH-9D for pgsql-hackers@arkaria.postgresql.org; Wed, 14 Aug 2024 23:00:48 +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 1seMyz-00DPVV-M7 for pgsql-hackers@arkaria.postgresql.org; Wed, 14 Aug 2024 23:00:45 +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 1seMyz-00DPVN-Bf for pgsql-hackers@lists.postgresql.org; Wed, 14 Aug 2024 23:00:45 +0000 Received: from mail-pg1-x52b.google.com ([2607:f8b0:4864:20::52b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1seMyw-004lmK-Qf for pgsql-hackers@postgresql.org; Wed, 14 Aug 2024 23:00:43 +0000 Received: by mail-pg1-x52b.google.com with SMTP id 41be03b00d2f7-76cb5b6b3e4so357186a12.1 for ; Wed, 14 Aug 2024 16:00:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=j-davis-com.20230601.gappssmtp.com; s=20230601; t=1723676442; x=1724281242; darn=postgresql.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:from:to:cc:subject :date:message-id:reply-to; bh=E2ZbjRY3JV6r9eKqjsCQcPIoUwDuSF6SzyUOAJQ0Kyk=; b=AsxpzNoLHC9NymqPPB4wXyj+uotDWgNkEY6E9kVg4civ0vaJX7kn85+Kml8+7PbPfF fj0xBJn96ZvlhBshjiIRtVQC0mfbbhFb/0BZUDrR8gtMG/Lx/SfeD3mqtp3kcF3buRcX 69qwrplHnWpyU98CKPhMVSev+s8oQjNfOvXCvTqErolOlQ98WbI8uYPKeFzcQ5QYZiCV YoDHwatwxrhZmnIXls94UCaUyaGFZUI9r6NbwpqUCo7725R6cN3UCvd0hRlDjVOwqzG4 5Yc8r7Cm4u1906CaUbJAlGbgRtd3+h5jJ0xDj4w+HbPjrgIn9a6jwFZVRAo7w59Bx6St Ra+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723676442; x=1724281242; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:cc:to:from:subject:message-id:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=E2ZbjRY3JV6r9eKqjsCQcPIoUwDuSF6SzyUOAJQ0Kyk=; b=aheW+4OyVXj7k8OMvIPp1Cl3p5WvTiVpiiXqfIU+jS5OQHGOv0oa/hDey5Ero47wwC jeZ0XxqT3vJU1+KQ+Ed76zDzI7ciqE5PqnWBj5VI9nBv2ediH7Vdb1ir5eabLIrFelkk bxsfFAMMTafs43YhrMUYuqC0ZI/9aYGH23evuSdv/H5YVKQ5Tx0cjw7bdyNZn/yu1wWB XJ3cFhe98pWw/A4ySf8hv0AcPghcb7PzoAIO2wwY35bie/TxNg5sDPK6L4/OgWURTv/l w4tUYawjoTJjOe2J7G3jceuQhngAlm8Czh9Q8lI2IM9hzalB4bErw/DyY76g+txMejU1 cQaA== X-Gm-Message-State: AOJu0YwKXj3UBxjn4SeFtIQRgpFp/OffeAjWum5pgvDTNvACJD+cNUAL J7ivXvUy0bn0s3Yut13VgA2rQQGJZKw+MXrrpeUDLLEqk+b5qopgqffu9PdMbQ== X-Google-Smtp-Source: AGHT+IF0HNG+ECaJ6M4FADbeM0DKw3h0pHy51euyrwnLH/j4AM83OR+uEsgKFGGN3R0oLd/wh0MyGA== X-Received: by 2002:a05:6a20:4392:b0:1c2:8efc:88e9 with SMTP id adf61e73a8af0-1c8eaf555e5mr5407056637.40.1723676441515; Wed, 14 Aug 2024 16:00:41 -0700 (PDT) Received: from jeff-laptop.lan (c-76-102-242-158.hsd1.ca.comcast.net. [76.102.242.158]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-7127ae07583sm90463b3a.60.2024.08.14.16.00.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Aug 2024 16:00:40 -0700 (PDT) Message-ID: Subject: Re: Remaining dependency on setlocale() From: Jeff Davis To: Thomas Munro , Tom Lane Cc: pgsql-hackers@postgresql.org Date: Wed, 14 Aug 2024 16:00:39 -0700 In-Reply-To: References: <4c5da86af36a0d5e430eee3f60ce5e06f1b5cd34.camel@j-davis.com> <1841102.1722982989@sss.pgh.pa.us> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.44.4-0ubuntu2 MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Thu, 2024-08-15 at 10:43 +1200, Thomas Munro wrote: > So I think the solution could perhaps be something like: in some > early > startup phase before there are any threads, we nail down all the > locale categories to "C" (or whatever we decide on for the permanent > global locale), and also query the "" categories and make a copy of > them in case anyone wants them later, and then never call setlocale() > again. +1. Regards, Jeff Davis