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 1sNDSS-007Pio-Nn for pgadmin-support@arkaria.postgresql.org; Fri, 28 Jun 2024 15:24:16 +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 1sNDSQ-005PNs-BR for pgadmin-support@arkaria.postgresql.org; Fri, 28 Jun 2024 15:24:14 +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 1sNAQH-0047E9-Ui; Fri, 28 Jun 2024 12:09:50 +0000 Received: from mail-lf1-x130.google.com ([2a00:1450:4864:20::130]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sNAQF-003Xjb-8n; Fri, 28 Jun 2024 12:09:49 +0000 Received: by mail-lf1-x130.google.com with SMTP id 2adb3069b0e04-52cdfb69724so639186e87.1; Fri, 28 Jun 2024 05:09:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719576585; x=1720181385; darn=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=jjq6CwcQvrhgqhXi8uf3kMSkxmLLabwpgO6QZos858k=; b=OdQkYkS1nWzqEiA31pgOhZTxCy1TDJULw+n7U9+nt41malxRGLa8i+3Pq30HhTBxyr 1H9sJK4vhEhLtWWXzTny2aEGiQsrG15sGKTHpkuXzFQLmgDELh8zjYjM1yR5lH/JZPPs qgIiIyZEqdu9n9DbpTHxMin54RnobXB4PG+VMrdrs3eHvxA0Ysqf+T/A1miHb3doIMLI 01iaHKnCNeUJKK7ICEbspNPOtSD9iZilld44inTVVMglpbuB8pgpIr+QeXqKyVQ4w3g6 Nz/CRQXmXZjH1SlWau7UA2IeAD7nVn5/ZIJGizHX4Yy07dC2s3LBLBCfY80YoW6DegwX D5Hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719576585; x=1720181385; 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=jjq6CwcQvrhgqhXi8uf3kMSkxmLLabwpgO6QZos858k=; b=k/gf7PVAN9KW7L9eyBNjGcakWUcvHOm1zsCKstoIF8iRPUvgxm9148hCaLT6e0iVDs ibOS2C8TA7V1/mchjlvL0x3sEXaQHfRf6MDqZV4YjYWdZl4q5zxMLVS80mDu8nFnp35A Kyr6SsDKaONGAv5+4aVCrfCLoHAOtYrCOSFgZ9pVy5iV+e6wwYciGZJstH9FWESV6fOc 53HkjLCjrVvOPdiFW4FhL+a/DGSxvEz4ki4TnfAHeo9yBfeIVHW25ZNM+LCBFHTGTtFP x683VKzRDtOC4+SF7dGN9K1y0cK2ZClDhXGstCE3xUZ/iL9/uFnh31an8BKtPlBqPC78 3GgA== X-Forwarded-Encrypted: i=1; AJvYcCUGLz4KxrGAWJRBKaYD7vc9jY35tS7woaMNZ5hM+EteH6HKWYKejWqZjh5NVha+0q8z4sN6lgIooJAh9Q8ARImSQBtuNMFxNEF4kO/wHgO2MjXaEvs8oYxS7p5ZVPqAcEyUZ99TKkl7jCYAflsUYg== X-Gm-Message-State: AOJu0YwJsqH5VVGKJaHueQtOLlQlSGEbjKhcPohL9Vb0dE5RvpkN7jCu aRB1y+iQV7r7bOaS/MM6h2GgNgoln8KlGYJURjLPOCera+ATuN/ZQ/H7vhNKcSdxdDUrw566ARo L22q3g0t7xo0ilpeSRsKleIk70dU= X-Google-Smtp-Source: AGHT+IFLAWVXRzMktdVHuJgWng20nso0uVMCkuMcIv6DV8sQFQGPAvkiNidcKd8w3CLOmPFywzscAhQqhTalKABHT6Y= X-Received: by 2002:a05:6512:3d9e:b0:52c:e55e:9a8 with SMTP id 2adb3069b0e04-52ce55e0a98mr12676100e87.25.1719576585295; Fri, 28 Jun 2024 05:09:45 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Muhammad Ikram Date: Fri, 28 Jun 2024 17:09:33 +0500 Message-ID: Subject: Re: Query tool data grid - Infinite scroll vs Pagination To: Aditya Toshniwal Cc: Dave Page , pgAdmin Support , pgadmin-hackers Content-Type: multipart/alternative; boundary="00000000000087dde1061bf21f16" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000087dde1061bf21f16 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Aditya, Pagination approach has my vote Muhammad Ikram On Fri, 28 Jun 2024 at 15:44, Aditya Toshniwal < aditya.toshniwal@enterprisedb.com> wrote: > Hi, > > Unfortunately, there were only 3 responses to this. > In that case, we will discuss internally and decide what to do. > > On Thu, Jun 20, 2024 at 2:46=E2=80=AFPM Aditya Toshniwal < > aditya.toshniwal@enterprisedb.com> wrote: > >> Hi Everyone, >> >> Request you to share your opinion on this and respond on: >> >> https://docs.google.com/forms/d/e/1FAIpQLSdfJhNK8qXSe9mKcubZa8jjjYl0hiZV= xhv6GGJo8WJcYc27ug/viewform?usp=3Dsharing >> >> On Thu, Jun 20, 2024 at 1:36=E2=80=AFPM Dave Page wr= ote: >> >>> Hi >>> >>> On Wed, 19 Jun 2024 at 13:42, Aditya Toshniwal < >>> aditya.toshniwal@enterprisedb.com> wrote: >>> >>>> Hi Hackers, >>>> >>>> Query tool data grid currently pulls the data on load basis in batches= . >>>> For example, it will initially load only 1000 rows and once a user scr= olls >>>> to the 1000th row, it will fetch the next batch of 1000. >>>> Many users who want access in between rows or last row struggle to do >>>> it as the user has to scroll and scroll. If someone grabs the scroller= and >>>> pulls it down still it will be a good UX and the scrollbar may jump. O= ne >>>> reported here - https://github.com/pgadmin-org/pgadmin4/issues/1780 >>>> One more aspect to this is the in memory data of the query tool which >>>> keep on increasing on each scroll, it affects the performance. >>>> >>>> I propose we should use pagination instead of infinite scroll with the >>>> following advantages: >>>> 1. Users can jump to any page they want. >>>> 2. Users can change the page size on the grid directly. >>>> 3. Memory will be used only for visible rows so performance improvemen= t. >>>> 4. Predictable UI, no jumping scrollbars. >>>> >>>> Let me know what you think. >>>> >>> >>> >>> I think there are definite benefits, but there is the downside of havin= g >>> to scroll and click to browse results. Personally I'm fine with that, b= ut I >>> think you should probably poll pgadmin-support for opinions from more u= sers. >>> >>> -- >>> Dave Page >>> pgAdmin: https://www.pgadmin.org >>> PostgreSQL: https://www.postgresql.org >>> EDB: https://www.enterprisedb.com >>> >>> >> >> -- >> Thanks, >> Aditya Toshniwal >> pgAdmin Hacker | Sr. Software Architect | *enterprisedb.com* >> >> "Don't Complain about Heat, Plant a TREE" >> > > > -- > Thanks, > Aditya Toshniwal > pgAdmin Hacker | Sr. Software Architect | *enterprisedb.com* > > "Don't Complain about Heat, Plant a TREE" > --00000000000087dde1061bf21f16 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Aditya,

Pagination approach has my vote

Muhammad Ikram

<= /div>


On Fri, 28 Jun 2024 at 15:44, Aditya Toshniw= al <aditya.toshniwa= l@enterprisedb.com> wrote:
<= div dir=3D"ltr">
Hi,

Unfortunately, there were only 3 responses to this.
In = that case, we will discuss=C2=A0internally and decide what to do.

On T= hu, Jun 20, 2024 at 2:46=E2=80=AFPM Aditya Toshniwal <aditya.toshniwal@enter= prisedb.com> wrote:
On Thu, J= un 20, 2024 at 1:36=E2=80=AFPM Dave Page <dpage@pgadmin.org> wrote:
Hi
On Wed, 1= 9 Jun 2024 at 13:42, Aditya Toshniwal <aditya.toshniwal@enterprisedb.com= > wrote:
Hi Hackers,

Query tool data grid currently pulls the data o= n load basis in batches. For example, it will initially load only 1000 rows= and once a user scrolls to the 1000th row, it will fetch the next batch of= 1000.
Many users who wa= nt access in between rows or last row struggle to do it as the user has to = scroll and scroll. If someone grabs the scroller and pulls it down still it= will be a good UX and the scrollbar may jump. One reported here -=C2=A0https://github.com/pgadmin-org/pgadmin4/issues/1780
One more aspect to this is the in = memory data of the query tool which keep on increasing on each scroll, it a= ffects the performance.
=
I propose we should= use pagination instead of infinite scroll with the following advantages:
1. Users can jump to any = page they want.
2. Users= can change the page size on the grid directly.
3. Memory will be used only for visible rows so per= formance improvement.
4.= Predictable UI, no jumping scrollbars.

Let= me know what=C2=A0you think.

=

I think there are definite benefits, but there is= the downside of having to scroll and click to browse results. Personally I= 'm fine with that, but I think you should probably poll pgadmin-support= for opinions from more users.

--


--
Thanks,
Aditya Toshniwal
pgAdmin Hacker=C2=A0| Sr. Software Architect=C2=A0| enterprisedb.com

--
Thanks,
Aditya Toshniwal
pgAdmin Hacker=C2=A0| Sr. Software Architect=C2=A0| enterprisedb.com