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 1p7jPr-0005pR-UU for pgsql-hackers@arkaria.postgresql.org; Tue, 20 Dec 2022 20:40:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1p7jOs-0004qw-Rj for pgsql-hackers@arkaria.postgresql.org; Tue, 20 Dec 2022 20:39:46 +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 1p7jOs-0004qn-IJ for pgsql-hackers@lists.postgresql.org; Tue, 20 Dec 2022 20:39:46 +0000 Received: from mail-lf1-x12b.google.com ([2a00:1450:4864:20::12b]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1p7jOl-0006nh-TO for pgsql-hackers@postgresql.org; Tue, 20 Dec 2022 20:39:46 +0000 Received: by mail-lf1-x12b.google.com with SMTP id bf43so20391274lfb.6 for ; Tue, 20 Dec 2022 12:39:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=w7xJ0PGeXMlCkCt+jcnZNGEuEeoBTaJ4mc1KbsJ9Nm0=; b=GFlPEMpOUWSp7olfijS9McZxlv+nplb85upJEu2chvGna+2zBdkvEctP9XKJsuJSH5 Hq0NlaS3Hr/s/Tga4NhxxXzP466zJqsDO2syw1Y//9hwcFq6rKx9msPOz3NF8BrvCi85 1ymkfsbbfNIa/73ylWfjR+vEuL/DjDv6TR8OFYQa0CNsi9RggYUUemCUZVN5hRPNsAOI 4UAFtVyOSHH8a9oaK62D05tyn78QOwsGkI8DNpvbnCbkLiMkLoIL+N9jrfN9xNnxntsY YJ8WPyRW++xkVK1+ukUaTi5EAyvPsT4wL/ODofVRDX4o1lfJk1/gNYs1+XMgBubg8o6j bQyQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=w7xJ0PGeXMlCkCt+jcnZNGEuEeoBTaJ4mc1KbsJ9Nm0=; b=oQtjb/q5MTWsNzMiSBVeUhccEmmULjtnCXfKudxUur7qcb5P76Uf5ubhzKBu7VuXat /YQkEhaB3roINCcoOkmKZQ8cP5B1vyh0VkdjCtGmGg26/IphdgSI11PxqSMcSYgO+MrO EZM43M1PKvM9iuE0uGmqIlK3Ch/IxRU+QhZdXSR48BMoJAHBxR1MiKVtjfQTFZweYSms XPt2fELc/XfJs3OLccnPA6n3wwn98bLHyXTfDTlWXvw6ETk4vrQU9uXvaaxKaswJUY0f wME1RHtMbzV8XmVtQj/m2gxXFv45Epcg+RBglLte8Y1XROvzVq1JhBLMvvrqsjc7Dt+H v/Jw== X-Gm-Message-State: AFqh2krFMJ7YPZV8jsinAvQIhx604JYWmHyG6DpQS+DbKXmR2PYoT/P6 Sq2ze7ZvyQZ2gePsgi0eVlHO9IEeemra3OSfg1E= X-Google-Smtp-Source: AMrXdXucmaowNqSogAIUXQsAx78z3SeG7jfWIbvwcOcZDk4lQzPb9ma22/MrTJNgY5fpHLSw7B1h7tuP2T3+2I0UAGs= X-Received: by 2002:a05:6512:398b:b0:4c9:3161:824c with SMTP id j11-20020a056512398b00b004c93161824cmr791085lfu.618.1671568778616; Tue, 20 Dec 2022 12:39:38 -0800 (PST) MIME-Version: 1.0 References: <4b19419f-2e7c-a76b-c948-26d10af6693d@gmail.com> <20221207175824.apmc5clnj2fdjkaq@awork3.anarazel.de> <09c26df0-c5f9-eae0-5a6a-10fb00b0522e@gmail.com> <9f0a021e-40e1-0ae6-8086-a4457c99749e@gmail.com> <0ae83e69-bda0-0eb8-ef4a-d169292e3f66@gmail.com> <47f5faf0-6a6d-602a-5d5b-9449ca74c6ad@gmail.com> <20221214173552.sshklqvwezeo52h3@alap3.anarazel.de> In-Reply-To: From: Robert Haas Date: Tue, 20 Dec 2022 15:39:26 -0500 Message-ID: Subject: Re: Minimal logical decoding on standbys To: Andres Freund Cc: "Drouvot, Bertrand" , Alvaro Herrera , Ibrar Ahmed , Amit Khandekar , fabriziomello@gmail.com, tushar , Rahila Syed , pgsql-hackers Content-Type: multipart/mixed; boundary="00000000000044fa5105f0486f2c" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000044fa5105f0486f2c Content-Type: text/plain; charset="UTF-8" On Tue, Dec 20, 2022 at 1:25 PM Robert Haas wrote: > I'm going to go through all the record types one by one before > commenting further. OK, so xl_hash_vacuum_one_page, at least, is a live issue. To reproduce: ./configure echo 'COPT=-fsanitize=alignment -fno-sanitize-recover=all' > src/Makefile.custom make -j8 make install initdb postgres Then in another window: pg_basebackup -D pgstandby -R # edit postgresql.conf, change port number postgres -D pgstandby Then in a third window, using the attached files: pgbench -i -s 10 psql -f kpt_hash_setup.sql pgbench -T 10 -c 4 -j 4 -f kpt_hash_pgbench.sql With the patch, the standby falls over: bufpage.c:1194:31: runtime error: load of misaligned address 0x7fa62f05d119 for type 'OffsetNumber' (aka 'unsigned short'), which requires 2 byte alignment 0x7fa62f05d119: note: pointer points here 00 00 00 00 e5 00 8f 00 00 00 00 87 00 ab 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ^ Without the patch, this doesn't occur. I think this might be the only WAL record type where there's a problem, but I haven't fully confirmed that yet. -- Robert Haas EDB: http://www.enterprisedb.com --00000000000044fa5105f0486f2c Content-Type: application/octet-stream; name="kpt_hash_setup.sql" Content-Disposition: attachment; filename="kpt_hash_setup.sql" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lbwomkwh1 YWx0ZXIgdGFibGUgcGdiZW5jaF9icmFuY2hlcyBkcm9wIGNvbnN0cmFpbnQgcGdiZW5jaF9icmFu Y2hlc19wa2V5OwphbHRlciB0YWJsZSBwZ2JlbmNoX3RlbGxlcnMgZHJvcCBjb25zdHJhaW50IHBn YmVuY2hfdGVsbGVyc19wa2V5OwphbHRlciB0YWJsZSBwZ2JlbmNoX2FjY291bnRzIGRyb3AgY29u c3RyYWludCBwZ2JlbmNoX2FjY291bnRzX3BrZXk7CmNyZWF0ZSBpbmRleCBwZ2JlbmNoX2JyYW5j aGVzX2JpZCBvbiBwZ2JlbmNoX2JyYW5jaGVzIHVzaW5nIGhhc2ggKGJpZCk7CmNyZWF0ZSBpbmRl eCBwZ2JlbmNoX3RlbGxlcnNfdGlkIG9uIHBnYmVuY2hfdGVsbGVycyB1c2luZyBoYXNoICh0aWQp OwpjcmVhdGUgaW5kZXggcGdiZW5jaF9hY2NvdW50c19haWQgb24gcGdiZW5jaF9hY2NvdW50cyB1 c2luZyBoYXNoIChhaWQpOwo= --00000000000044fa5105f0486f2c Content-Type: application/octet-stream; name="kpt_hash_pgbench.sql" Content-Disposition: attachment; filename="kpt_hash_pgbench.sql" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lbwomkw60 XHNldCBhaWQgcmFuZG9tKDEsIDEwMDAwMCAqIDpzY2FsZSkKXHNldCBiaWQgcmFuZG9tKDEsIDEg KiA6c2NhbGUpClxzZXQgdGlkIHJhbmRvbSgxLCAxMCAqIDpzY2FsZSkKXHNldCBkZWx0YSByYW5k b20oLTUwMDAsIDUwMDApCkJFR0lOOwpTRUxFQ1QgYWJhbGFuY2UgRlJPTSBwZ2JlbmNoX2FjY291 bnRzIFdIRVJFIGFpZCA9IDphaWQ7ClVQREFURSBwZ2JlbmNoX2FjY291bnRzIFNFVCBhaWQgPSBh aWQgKyA6ZGVsdGEgV0hFUkUgYWlkID0gOmFpZDsKU0VMRUNUIHRiYWxhbmNlIEZST00gcGdiZW5j aF90ZWxsZXJzIFdIRVJFIHRpZCA9IDp0aWQ7ClVQREFURSBwZ2JlbmNoX3RlbGxlcnMgU0VUIHRp ZCA9IHRpZCArIDpkZWx0YSBXSEVSRSB0aWQgPSA6dGlkOwpTRUxFQ1QgYmJhbGFuY2UgRlJPTSBw Z2JlbmNoX2JyYW5jaGVzIFdIRVJFIGJpZCA9IDpiaWQ7ClVQREFURSBwZ2JlbmNoX2JyYW5jaGVz IFNFVCBiaWQgPSBiaWQgKyA6ZGVsdGEgV0hFUkUgYmlkID0gOmJpZDsKSU5TRVJUIElOVE8gcGdi ZW5jaF9oaXN0b3J5ICh0aWQsIGJpZCwgYWlkLCBkZWx0YSwgbXRpbWUpIFZBTFVFUyAoOnRpZCwg OmJpZCwgOmFpZCwgOmRlbHRhLCBDVVJSRU5UX1RJTUVTVEFNUCk7CkVORDsK --00000000000044fa5105f0486f2c--