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 1rmalw-008nvF-T8 for pgsql-hackers@arkaria.postgresql.org; Tue, 19 Mar 2024 14:49:01 +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 1rmalv-00FPnr-47 for pgsql-hackers@arkaria.postgresql.org; Tue, 19 Mar 2024 14:48:59 +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 1rmalu-00FPnj-QJ for pgsql-hackers@lists.postgresql.org; Tue, 19 Mar 2024 14:48:59 +0000 Received: from mail-pf1-x430.google.com ([2607:f8b0:4864:20::430]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1rmalr-005Kvw-RQ for pgsql-hackers@lists.postgresql.org; Tue, 19 Mar 2024 14:48:58 +0000 Received: by mail-pf1-x430.google.com with SMTP id d2e1a72fcca58-6e74bd85f26so329175b3a.1 for ; Tue, 19 Mar 2024 07:48:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1710859735; x=1711464535; darn=lists.postgresql.org; h=to:references:message-id:date:cc:in-reply-to:from:subject :mime-version:content-transfer-encoding:from:to:cc:subject:date :message-id:reply-to; bh=JtG510QVF5+2IiOKR+i7qfadrkjkXXXH/EbA9lJr7rg=; b=J/nrZzyIHbo5VWruo/zmlURFcRpC8wy+FxqNcV3pBzCGZZGu8bL+IUiHjlHU9pj16B WFSI94x0KFQ1wsUOknwyLxEgNkvuultEyuhgISmJFN/+M44r7aWL0mMtZRuFBDGEgDse PAH8nyH/WyDc8pjyXlF6fllYyy5XRxypHVp2x/m1Z4xIghKYcSB/1Xz9awXdG+ekuEGC TL9SnYTFcMRAQ+UBnovDl460neoWCyiXYhYZscHME6frw4vrghpya79FBhCeu9iZM7tw TuX1fskMZmrNhkT7unyCCeV3a3bi2SOW6MXGwqul4XgRiymvIBQpR/lnSOfteJzAkPup HjSQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710859735; x=1711464535; h=to:references:message-id:date:cc:in-reply-to:from:subject :mime-version:content-transfer-encoding:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=JtG510QVF5+2IiOKR+i7qfadrkjkXXXH/EbA9lJr7rg=; b=jRw0+YYpB+DoVUtwTn4c3wkPT2FCAYgogj26ZXZQtDUklhXOxKv2MF9rYADopvmjV2 YpCKXdhQyiKAUv1Gh8JwAxfxbYJQplamv5EzNw1kpGikwc+OTiYrhZeSxrTTF/978WOo Y+WPWQ3no3rWZoQrcZgIxpGzkKmmd5Dd76vS/Yf7VwDnUywFS2pF8Ugn3/k+mRn3evxQ hw/rgxtj3Udru5plwpfeKHtIwGzlatV7Zg82UgP6TSeZOEzWUsz9ZSN92b1KvyqNaQ3G M2fUZox+Cy8dH6+2q1L4ahFjb3Rc+kuIh1lqmpa+y2LXXHSUP2Jy+Q+yc+POXrsvrCsY wYng== X-Gm-Message-State: AOJu0YzlDKZnPaG7T5XBo3o+wtA/axFccyLLoaURaL3B78upH4sVqfCb mHIiK8lBEqC+joyNfHdvCRbwLP44AAtSuT+Pgyb/pUsk0/ekuY1jo73YOs3/ X-Google-Smtp-Source: AGHT+IHGN9llYQOHBgicD+ClX74dT8acsfYBk108QIKWuWTCUGx++cCeWpiXu+q3e/25ZmDeqABACA== X-Received: by 2002:a05:6a00:22d3:b0:6e4:1a29:732f with SMTP id f19-20020a056a0022d300b006e41a29732fmr15874267pfj.12.1710859735083; Tue, 19 Mar 2024 07:48:55 -0700 (PDT) Received: from smtpclient.apple ([122.171.20.74]) by smtp.gmail.com with ESMTPSA id gu25-20020a056a004e5900b006e7040519a1sm6418013pfb.216.2024.03.19.07.48.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 19 Mar 2024 07:48:54 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (1.0) Subject: Re: Read data from Postgres table pages From: Sushrut Shivaswamy In-Reply-To: Cc: pgsql-hackers@lists.postgresql.org Date: Tue, 19 Mar 2024 20:18:42 +0530 Message-Id: <14539F92-C199-4B6E-9E9F-9287046F1B0C@gmail.com> References: To: Alexander Korotkov X-Mailer: iPhone Mail (21D61) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk If we query the DB directly, is it possible to know which new rows have been= added since the last query? Is there a change pump that can be latched onto? I=E2=80=99m assuming the page data structs are encapsulated in specific head= ers which can be used to list / read pages. Why would Postgres need to be stopped to read the data? The read / query pat= h in Postgres would also be reading these pages when the instance is running= ?=