Hi Dave,

On Thu, Feb 20, 2025 at 3:22 PM Dave Page <dp...@pgadmin.org> wrote:

>
>
> On Thu, 20 Feb 2025 at 03:52, Aditya Toshniwal <
> aditya.toshni...@enterprisedb.com> wrote:
>
>> Hi Dave,
>>
>> On Wed, Feb 19, 2025 at 6:55 PM Dave Page <dp...@pgadmin.org> wrote:
>>
>>>
>>>
>>> On Wed, 19 Feb 2025 at 12:24, Yogesh Mahajan <
>>> yogesh.maha...@enterprisedb.com> wrote:
>>>
>>>>
>>>> Hi,
>>>>
>>>> On Wed, Feb 19, 2025 at 5:12 PM Dave Page <dp...@pgadmin.org> wrote:
>>>>
>>>>> Hi
>>>>>
>>>>> On Thu, 16 Jan 2025 at 06:37, Aditya Toshniwal <
>>>>> aditya.toshni...@enterprisedb.com> wrote:
>>>>>
>>>>>> Hi Anil/Dave,
>>>>>>
>>>>>> Why not use browser localStorage for saving this information? It
>>>>>> persists when the browser closes and is based on the URL. It is safer to
>>>>>> store at the user's machine than on our server.
>>>>>> For Electron also it should work.
>>>>>> This will reduce load on the pgAdmin server.
>>>>>>
>>>>>
>>>>> Because it stores it at the users machine and not on the pgAdmin
>>>>> server, and thus state cannot be restored if the user is on a different
>>>>> machine. I think that's a compelling feature.
>>>>>
>>>>> That said, I think this is largely irrelevant until the fundamental
>>>>> problem is solved. e.g. how do we restore the state of the session
>>>>> (spoiler: it's almost certainly not possible, unless we can figure out all
>>>>> the session-changing side effects of every query, stored 
>>>>> procedure/function
>>>>> etc. that may have been directly or indirectly called).
>>>>>
>>>>> Or, we make a decision not to bother with that, and to give the user
>>>>> suitable warnings such as we do when we perform a reconnect.
>>>>>
>>>>
>>>> If I understand correctly, Users are complaining about losing unsaved
>>>> data in the query tool and not about data output or session state. Hence
>>>> just reopening the query tool with only data should be suffice.
>>>>
>>>
>>> I'm sure that will suffice for 95%+ of users. The ones I'm concerned
>>> about are those who (for example) have done SET search_path = ... and then
>>> performed some destructive operation that worked as expected because of the
>>> earlier SET, but might cause data loss or unexpected consequences if run
>>> without the SET.
>>>
>>> Granted, that class of issues is likely to affect only a small number of
>>> users in reality, but the consequences could easily be data loss.
>>>
>>
>> It may be compelling to restore your workspace on any browser in the
>> world but is it worth it? I mean think about the overhead it will put on
>> the pgAdmin server. Plus the storage it will require on the server side.
>> Already people are asking to make pgAdmin storage free by putting sessions
>> in db instead of file based and so on. Also, the information cannot be
>> saved as is, it needs to be encrypted (more overhead).
>> On a slower internet, restoring might take a long time. We'll have an
>> advantage of storing on the client side and it will cover most of the users
>> with good performance.
>>
>
> How big do you think the average SQL query/script is? Even in outlier
> cases where they might run into a megabyte or two, that's still trivial
> compared to what people download browsing Facebook on their phone for
> example.
>
In server mode, the user count may go up. The number of open SQL editor
tabs may go up. And there is encryption/decryption that is needed as well.
Users changing a browser is also less likely. The feature is most useful
for desktop users.

>
> --
> Dave Page
> pgAdmin: https://www.pgadmin.org
> PostgreSQL: https://www.postgresql.org
> pgEdge: https://www.pgedge.com
>
>

-- 
Thanks,
Aditya Toshniwal
pgAdmin Hacker | Sr. Staff SDE II | *enterprisedb.com*
<https://www.enterprisedb.com/>
"Don't Complain about Heat, Plant a TREE"

Reply via email to