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.96) (envelope-from ) id 1wZQKh-0011mY-2p for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jun 2026 09:43:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wZQKg-00GXGH-1F for pgsql-hackers@arkaria.postgresql.org; Tue, 16 Jun 2026 09:43:46 +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.96) (envelope-from ) id 1wZQKf-00GXG6-2j for pgsql-hackers@lists.postgresql.org; Tue, 16 Jun 2026 09:43:46 +0000 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wZQKe-00000000cck-20rq for pgsql-hackers@lists.postgresql.org; Tue, 16 Jun 2026 09:43:44 +0000 Received: by mail-lf1-x135.google.com with SMTP id 2adb3069b0e04-5aa63628d26so4203502e87.0 for ; Tue, 16 Jun 2026 02:43:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1781603022; cv=none; d=google.com; s=arc-20240605; b=YP20P5KqAd99PlItNk0Rg6Y5nGsfBKh58//sM7QvJ2BxCEplePERKreviqWLv4ygTB Nr0LDosW8kFNSaBskPGlqdOgnW2fK4p6ycbBhy5kTRrgvkCsU4krsezg1koK5640wYZ9 ZLW6IkK3GdZXaOk4JNm4uJxmYa2/w0g3qrzmBTl4K6JmJ1ejyCUFTh6LlBM0BcuGOPTS Gwobv4XNkdwFE0OTLYN9WS0ARIVbfIifygbZQrK/An8n8wX86CFue0CZgT4X5et6DEza 0qLT14Y1/Wr0ZuW+WLNY5BL6XjDqKi+FDo3DdiMVsKId+ze2KYnehYgsmWyN11MFepqb H0Jg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=6LrPGcfBXxVJLjkNHj49VYFF55gsKsKM9a/ETOpxpb0=; fh=5WIEWD7MWuJrKkl3g7GdaLXnOTFoZ1mgKNx8OWbtg8g=; b=W02/nnR8yx/IVa3OhFr/3XIK0fYjZOy9WL8vPN7FAnLI79xH8mlle6mj1NKcBiMw1N cQJ2xkNpKgYzwJ/E4KKAqb72OSPNDX7rLcABR1LJUtGJc+ka7oBAtpJ4RnGpllksYqPR eAFVMAjJMFnfCWbkcdIJwDdpg51PZ13biwiLNvT2xNFk3e8+i51eorlYYGYabroQ4Xv8 34i+opNzIST3naI6NWK46VJ05+ms45udnFOrSm+yR2vpK8nV9C+yz8FHw/4QijFSEPZV UukD0c0JGWkL0+RivSvzR0P8POHPXIxiEqDC3Kvyvj5K1XVgKV5pH2keXm8fmIqkGfEx 5Y4A==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1781603022; x=1782207822; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=6LrPGcfBXxVJLjkNHj49VYFF55gsKsKM9a/ETOpxpb0=; b=PFSAf+QU+TT+4AsaP0mCKplxO1fKXJ5ctsgUYmMUMfE6RtfvhqJeGgCn8OGjO3ANa7 nKN155PzoiuH5H/dVwh4wSSC1YE+xZm2bKQ37qjq3DU1ZcZd2UHOsXJ0ao8MwuRZ+16m lTTv9xW7/hfYnU/joUoGMdPp+AXaJ4+GM1BxNQYwAazxbnOs8odwG0sWckLMZmJ/0l35 zclZeSyFJbfFeCEqGGA8hP6aqhwyVSMyHzXH/VYCBvU19ja4I7XRHrcqEUZUC9nyqjCM Tb9QPzhIbmR7Bcq5uDwyu5xo3Ulx79wD0q9jG5oyQotVD75g00/mD4IXonAGpYTs1QbV M+yA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1781603022; x=1782207822; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=6LrPGcfBXxVJLjkNHj49VYFF55gsKsKM9a/ETOpxpb0=; b=qQRVbh0vaA8SoZgULLhe3A+ki7UScDf6ZrkrTZCrWjzu1F054E9ZmGINzPcnt/TKDz m0bjugnBVisi6lGczrhQMxVNurEIOWEM1kl9uG4Y0VbPnRsX9zV3bVgbStp9lpPY4OiC zMgk1xUdc2AVLycAFkT57Eglez78ZC0Z+LP0/cv5ViDrpwNgXNnqkd46WmrLBkTc35lW 3/llDIxVVRH/0HpA9/xShKDrjRCRCUWT96bcYmIi9V2aOAryrh6veSIhSjGELp4RaYww 57ErvSUYNY7Mht5nOmphSSSX0+oXyiqCW6kBTxSfJ1o8pzJCKZtpBy9fkfkLEmdKn+d4 dJRQ== X-Forwarded-Encrypted: i=1; AFNElJ8Tkez9tNEHDqTkOS/3yQOu6d1VE5c+dC6WJ/UX540WudlttuaXwYetij23TU11kgF4xEV0w2SwYaWU8ksb@lists.postgresql.org X-Gm-Message-State: AOJu0Yw7pq2arwk86mHaQVkBt9HeW9rNF/PXol/drfFTUveDb9LU/+fm MA2ySdEyOOWy2Qt1ST8WWPv6KRcjW4V+qYWoCdmrzy/yB4YuKkBRrtPa4j+ChjRGr5Rrel0JzZF vJ1ftf5MPmfi9vRP2nNSGjXBv5zReQH4= X-Gm-Gg: Acq92OG7gFmZgVjwxIY/1+r8kf8X7/+vXknzGiUfayZpSPgWOucps3pR/+3KRvdRwI2 6HxpBhpkcZK5U8slPCv4qxJzgGeIIEMpJwjgtXwqbka9uC97xDsEM9FSk7SKfzV5XbNWfJqa9mV KE4i2Kjn7ISxtvROC48PJOItA9GWA/Dppk1h5vCC6HQ7/r5G8M6IqD2XAbKgPrmsYmJ457hOwZz +lWo7vWBUmqURYU0iC4uLw5cULkzx3GBkjQ9EY/tu+xbUX/0ICu1xY424OZYok7B7NXvxasiLYR uf7B8uxcjmOZtio/WAyV7KsE+S7yy4kSEik1VDip X-Received: by 2002:a05:6512:63c8:10b0:5aa:74f8:72f4 with SMTP id 2adb3069b0e04-5ad30dc3216mr2942726e87.32.1781603022218; Tue, 16 Jun 2026 02:43:42 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Dilip Kumar Date: Tue, 16 Jun 2026 15:13:24 +0530 X-Gm-Features: AVVi8Ce7LnPXa9WGN7STGlOwB-la58Gb_ySJxFaq7-lkIy6p7n7JaVzCE_ch6F0 Message-ID: Subject: Re: Proposal: Conflict log history table for Logical Replication To: shveta malik Cc: Amit Kapila , vignesh C , Nisha Moond , Peter Smith , Masahiko Sawada , Bharath Rupireddy , PostgreSQL Hackers Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tue, Jun 16, 2026 at 10:30=E2=80=AFAM shveta malik wrote: > > On Tue, Jun 16, 2026 at 10:21=E2=80=AFAM Amit Kapila wrote: > > > > On Tue, Jun 16, 2026 at 9:56=E2=80=AFAM Dilip Kumar wrote: > > > > > > On Tue, Jun 16, 2026 at 9:27=E2=80=AFAM vignesh C wrote: > > > > > > > > Shouldn=E2=80=99t creating a view also be allowed for the same reas= on? > > > > > > > > The function is permitted because it only performs a SELECT on the > > > > conflict log table, and such read operations are allowed. A view > > > > likewise represents a stored query definition and does not modify t= he > > > > conflict schema or its underlying tables. Given that direct queries= on > > > > the conflict log tables are already permitted, allowing users to > > > > define views over them is consistent with the same rationale applie= d > > > > to functions. > > > > > > Whats is the behavior of toast table w.r.t the function vs view? > > > > > > > I think sticking to the minimum set of commands that are required for > > the user to monitor/maintain CLT should be a good goal for the first > > version. We can evaluate to allow other commands based on real user > > need and its impact on the functionality. So, it is okay to block even > > the view on CLT for now. > > > > A view is essentially just a stored SELECT query, I think it should be > allowed in the first version itself. Rest (functions, indexes, > statistics etc) can be decided and implemented later based on user's > feedback. IMHI, while we could allow view creation, it is unlikely users will perform operations critical enough to require views or stored procedures on the CLT. For the initial version, providing SELECT, DELETE, and TRUNCATE permissions should be sufficient. We can introduce support for views and user- or system-created indexes in subsequent releases. --=20 Regards, Dilip Kumar Google