Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nEkKv-0003Z0-Dm for pgsql-bugs@arkaria.postgresql.org; Tue, 01 Feb 2022 04:00:09 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nEkKt-00049F-Uj for pgsql-bugs@arkaria.postgresql.org; Tue, 01 Feb 2022 04:00:07 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nEkKt-000496-KT for pgsql-bugs@lists.postgresql.org; Tue, 01 Feb 2022 04:00:07 +0000 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1nEkKr-0003ob-0z for pgsql-bugs@lists.postgresql.org; Tue, 01 Feb 2022 04:00:07 +0000 Received: by mail-lf1-x135.google.com with SMTP id u14so31088971lfo.11 for ; Mon, 31 Jan 2022 20:00:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=hCCNAuQsnkYJFM8NPdDPdNbuqEUzzxWN/03qGERLcQM=; b=i92Eoj8FyquL3L3JoC8e03dJfXNZYA9YtivdaGl9psVs9m6RHrlPb35iC+biRFYHA9 tx6AtlMqtuUAT4XwCLhB4Wz5ttVpNrbMta965CXmRlsbQyd8dnClXpQSJYkxP+nDGhhb 2LsIH/bQV+0Tl5Jt6aU9gqOZ/qXWkVO6D/HWOPcXlxzRU12nF51M3XaCADcJi+IpKhkW D1JdPbUE9JQrlYHSKWd6UdIHmPMXCs+hE+lR3oRtN42JBZqHvxt50uTEUyP33TSG9nIM D+RfMeVnR8tcerXjh84oWyXlNmRICF3yuBD5yx/QJLN1m6yv+7AkrTRj8yf/28XFXM3I titw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=hCCNAuQsnkYJFM8NPdDPdNbuqEUzzxWN/03qGERLcQM=; b=Q73X9F+wEYsvXFl8AcE5MyQPOQmQLmdXEbUY40khqhE8YFy0fkOlE40LLU/qtnlwRJ 9tGMon9NVG6ZV/ugV3tW7Z7iIY0vO8uVSNgGCaVuvT7C//plnrwiwwNTuPzSldUjr4p6 SS0D5smhhb1GO9u6346y0LXCYxxA9ShTf16ZRnd6qZautbVhRnEobznxJHaUbONFvxaO Msh2mv+dDidkihcZSZcU7psZ8/1+bOv2gokxpObXLtrWHB8zn1TVV62pCnkoi/33Po8m OS3Jl6WgnqrWBEmaz3fVdcipjui4xEjyorkxtbo3J/E6Dyx3azOnkkmpjUb5pcqFnYjN ZG4A== X-Gm-Message-State: AOAM530FfeSxn2xkFghfySzp9Tn8hKfXqdZjUK1BZeQRw1eEp4KLofyb ZGuBQAqN69LrPhVFDHwstBVrYf8+RJE= X-Google-Smtp-Source: ABdhPJzLyX+jewR4RHWujEcrdB7DOuJ26tEb8OXmVFyiOwIfzIoMRuVqqrAqsQupuQSfyDILUwhCXQ== X-Received: by 2002:ac2:55ad:: with SMTP id y13mr17721968lfg.38.1643688002342; Mon, 31 Jan 2022 20:00:02 -0800 (PST) Received: from [1.0.0.7] ([178.155.6.184]) by smtp.gmail.com with ESMTPSA id q14sm2143101lfm.120.2022.01.31.20.00.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 31 Jan 2022 20:00:01 -0800 (PST) Subject: Re: BUG #17355: Server crashes on ExecReScanForeignScan in postgres_fdw when accessing foreign partition To: Etsuro Fujita Cc: pgsql-bugs@lists.postgresql.org References: <17355-de8e362eb7001a96@postgresql.org> <9a8d0f3f-430d-024c-09f5-88a7519e9495@gmail.com> From: Alexander Lakhin Message-ID: Date: Tue, 1 Feb 2022 07:00:00 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hello Etsuro-san, 30.01.2022 13:59, Etsuro Fujita wrote: >> (Besides that I've observed an infinite waiting for ShareLock with >> step "s1i" { INSERT INTO pt VALUES (2000); } >> This doesn't happen with a regular (not foreign) table.) > You mean the lock wait occurs on the remote side, not on the local > side? If so, I think that that is expected behavior because a write > conflict occurs on the remote side in that case. Maybe I don’t fully > understand your words, so could you elaborate a bit more on your > observation? Yes, you are right, that was expected behavior. I didn't realize that the isolationtester itself resolves blocking when the target table is local. The isolationtester controls the step execution using pg_isolation_test_session_is_blocked(), but when the target table is foreign, it can not determine correctly whether one step blocking other (cause it checks local, not remote session pids) and just hangs. Sorry for the noise. Best regards, Alexander