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 1t8WaR-004hXM-Tl for pgsql-hackers@arkaria.postgresql.org; Wed, 06 Nov 2024 03:20:03 +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 1t8WaN-002uCJ-Pk for pgsql-hackers@arkaria.postgresql.org; Wed, 06 Nov 2024 03:20:00 +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 1t8WaN-002uCB-Dp for pgsql-hackers@lists.postgresql.org; Wed, 06 Nov 2024 03:20:00 +0000 Received: from mail-vk1-xa30.google.com ([2607:f8b0:4864:20::a30]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1t8WaL-000PCn-FU for pgsql-hackers@lists.postgresql.org; Wed, 06 Nov 2024 03:19:58 +0000 Received: by mail-vk1-xa30.google.com with SMTP id 71dfb90a1353d-50d34db4edeso346325e0c.0 for ; Tue, 05 Nov 2024 19:19:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1730863196; x=1731467996; 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=8WMBBgl4xa9KlP6AHlrquiEfFdiH6Npo1YBd0fpboGI=; b=I6zubXdTH0nbqLI1C0O4MTVbbpBUvw8wsCqI0omzHxgWFEk+mNZc0VnwU1UTaVZE3I InhVv44jpx+xkk2HrwQskhtzHWjMnPgZl9YwKbG+lQpYGTjLX1w+m+NgsfOv8hIXwgFX GDMhncDktSPnqoNcHO6OKd9ZvHmP2fdW+sP6jm742UIyrFCgBgWQZta/c/7y3wSWDlBs 2t4ziNDiGWHEZyqFj1s0HcgTwc8a7eYbbgz11vvmmtLOQFP13zCVBJF82MMZ7W5MX8Fa fNNdZ+dHID5ZeyClfaSE1L8ki9HuOVVRf6ofNBEowm8oBj4un3zL4cosP2MNbDvAiD5H dAYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730863196; x=1731467996; 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=8WMBBgl4xa9KlP6AHlrquiEfFdiH6Npo1YBd0fpboGI=; b=Ady/PualJU8MNWITOg9YEDOUaggiRTJ5U7g+zM920NlexOfszndvM/rKLDk+vDZj7J IKBxiH0TjmqHMMHnorR+r4EHtqPaVdNh/94/xrr4vpeuNjOniLFD+7pBJFQ8HIMS87s5 JSSanO8RXAqPLpRg6B0yCixF+PWYKTuxdRvXvXqb6slUFHk7bDGZY7oMI3zLI06KaHfE wU1fnDpGeS+4EMP940W/Go1s+O+BGGpQjsdFqps4porE1fW2Oz9UIgTsDjw/wzwMOyjF eo31iSqq/SQcQKOSFDv2pD89S+JuOoIFYuiHxZGQR+5WaJYg92mNlCLLTIytOllqH3PJ +nfg== X-Forwarded-Encrypted: i=1; AJvYcCWEZdcqOZjFH77wE0/fPSRIRvrcp40iBYCSx09igjvVytuuXgqy9FqiPotN/hGNcqumD3tlusgwIjjpuI9S@lists.postgresql.org X-Gm-Message-State: AOJu0YydhBPQqDLk6wXwdSQyH4TAEwFJ8kfBjWl5/t0Uj6ebH+5/6yiS /CHZIyYyCADa6kuyJ84stNv1M/mZr3q5lLmvxCF3FA6TEP9UUnjFG6nmiGCSQLrnEXEn1X3ClF9 3tUsWJxD5C2cDMMXD/cdRsgguqV8= X-Google-Smtp-Source: AGHT+IEWiHJTCA1nQNBOM8voGGzllcI+azmT66iYx3uEfUqSos9LYeZ+kMmKrIaFm0uXQUv/xg6P/sJIptuzMgZBM6Q= X-Received: by 2002:a05:6122:1e08:b0:50d:2aca:3b13 with SMTP id 71dfb90a1353d-513e31d50damr643431e0c.3.1730863196410; Tue, 05 Nov 2024 19:19:56 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: jian he Date: Wed, 6 Nov 2024 11:19:45 +0800 Message-ID: Subject: Re: Wrong result when enable_partitionwise_join is on if collation of PartitionKey and Column is different. To: Amit Langote Cc: Junwang Zhao , Tender Wang , PostgreSQL Hackers , Ashutosh Bapat Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk looks good to me. I didn't find any issue. group_by_has_partkey can even cope with: EXPLAIN (COSTS OFF, settings) SELECT c collate "C" collate case_insensitive collate "C", count(c) FROM pagg_tab3 GROUP BY c collate "C" collate case_insensitive collate "C" ORDER BY 1; so i guess in group_by_has_partkey if (IsA(groupexpr, RelabelType)) groupexpr = ((RelabelType *) groupexpr)->arg; should be enough. not need while loop. while (IsA(groupexpr, RelabelType)) groupexpr = (Expr *) (castNode(RelabelType, groupexpr))->arg;