Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hDXDq-0007ad-3e for pgsql-hackers@arkaria.postgresql.org; Mon, 08 Apr 2019 16:34:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hDXDo-0005BV-HY for pgsql-hackers@arkaria.postgresql.org; Mon, 08 Apr 2019 16:34:12 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hDXDo-0005BO-5s for pgsql-hackers@lists.postgresql.org; Mon, 08 Apr 2019 16:34:12 +0000 Received: from mail-qt1-f177.google.com ([209.85.160.177]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hDXDg-0002Oe-Se for pgsql-hackers@lists.postgresql.org; Mon, 08 Apr 2019 16:34:11 +0000 Received: by mail-qt1-f177.google.com with SMTP id z17so16120316qts.13 for ; Mon, 08 Apr 2019 09:34:04 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:reply-to:cc:from:subject:organization :message-id:date:user-agent:mime-version:content-language :content-transfer-encoding; bh=DanKO6iMWp1XaDMMmKAJOBO9f4897exqthCtWsBf5Oc=; b=YhBOv6UvvcH+48CEAnsTB+jvZdkVRF+TdQ4fNt4jdhPY88dUNt4/hn1x8aDjp8gICO J0oHxguUnnDQLTDC+XUCJzjfNITAwTpp+9SFhsb8L/UoU2ZaFWsp2p8VRNwPFsBsUnaz Kx9214Pt8M/yi0NbazF4QLGs9J492yPS/RrivzAk9UaJ+W//xKl8oXEl55I7zEc5ElDW Dld2/BcGzvwe8wDBULMHYKHzEo29Rtibefh1wvZ6Jtss0IraCZmB+wAKmICTQEq7xKO1 dbnYAjR2WGqxI8yi6Quox9GAmi/twNAzLJ8KvM+XKKP9iZnEHNdMPSudUq14wwBvxXUR 5PTA== X-Gm-Message-State: APjAAAU4Z5qJHNSZNnhqx+BZvdS//koxXkdCJX1JDxm7XBfkl3c8DKJE RIDHT+/hNBFrOevbU7cXx6R27s2XkSA= X-Google-Smtp-Source: APXvYqzPrJmxetYOXyfj6Si7jHglLAg94spKlytS/R6TRP0/W3K4taAn3fKNcLJ2Czx2yscodpAgAw== X-Received: by 2002:ac8:2368:: with SMTP id b37mr25502953qtb.50.1554741243467; Mon, 08 Apr 2019 09:34:03 -0700 (PDT) Received: from localhost.localdomain (c-24-61-8-151.hsd1.ma.comcast.net. [24.61.8.151]) by smtp.gmail.com with ESMTPSA id v30sm9380481qta.4.2019.04.08.09.34.01 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 08 Apr 2019 09:34:02 -0700 (PDT) To: PostgreSQL Developers Reply-To: jesper.pedersen@redhat.com Cc: Peter Eisentraut From: Jesper Pedersen Subject: COLLATE: Hash partition vs UPDATE Organization: Red Hat Message-ID: Date: Mon, 8 Apr 2019 12:33:55 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Hi, The following case -- test.sql -- CREATE TABLE test (a text PRIMARY KEY, b text) PARTITION BY HASH (a); CREATE TABLE test_p0 PARTITION OF test FOR VALUES WITH (MODULUS 2, REMAINDER 0); CREATE TABLE test_p1 PARTITION OF test FOR VALUES WITH (MODULUS 2, REMAINDER 1); -- CREATE INDEX idx_test_b ON test USING HASH (b); INSERT INTO test VALUES ('aaaa', 'aaaa'); -- Regression UPDATE test SET b = 'bbbb' WHERE a = 'aaaa'; -- test.sql -- fails on master, which includes [1], with psql:test.sql:9: ERROR: could not determine which collation to use for string hashing HINT: Use the COLLATE clause to set the collation explicitly. It passes on 11.x. I'll add it to the open items list. [1] https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=5e1963fb764e9cc092e0f7b58b28985c311431d9 Best regards, Jesper