Subject: [pgAdmin4] RM5965 Couldn't download file of Marcos query results

From: Rahul Shirsat <[email-masked]>
Date: Mon, 7 Dec 2020 14:55:15 +0530

Hi Hackers,

Please find the attached patch which resolves the issue of macros query
results download, have used async cursor to achieve this functionality,
where for downloading the results, cursor is scrolled back to 0 and end of
the records, and reset again while user scrolling on Data Output table.

QA/Reviewer needs to observe below issues if it occurs:

   1. If records are more like 5000 or 10000, try to fetch records by
   scrolling at least (2000), now save the results by clicking the download
   button, it should save the file, and now try scrolling again, the data
   should be shown continuously and not any abrupt end or unexpected records
   order.
   2. Also, the download button is now "Save results to CSV/TXT" where it
   will only get enabled when there are valid records in the Data Output.

Also a minor fix of the add folder icon issue is also added into this patch.

-- 
*Rahul Shirsat*
Senior Software Engineer | EnterpriseDB Corporation.

---

From: Rahul Shirsat <[email-masked]>
Date: Mon, 7 Dec 2020 15:09:53 +0530

Hi Hackers,

Please find the updated patch below.

-- 
*Rahul Shirsat*
Software Engineer | EnterpriseDB Corporation.

---

From: Akshay Joshi <[email-masked]>
Date: Wed, 9 Dec 2020 13:53:00 +0530

Hi Aditya

Can you please review this patch?

On Mon, Dec 7, 2020 at 3:10 PM Rahul Shirsat <[email-masked]>
wrote:

> On Mon, Dec 7, 2020 at 2:55 PM Rahul Shirsat <
> [email-masked]> wrote:
>
>> Hi Hackers,
>>
>>    2. Also, the download button is now "Save results to CSV/TXT" where
>>    it will only get enabled when there are valid records in the Data Output.
>>
>>

-- 
*Thanks & Regards*
*Akshay Joshi*
*pgAdmin Hacker | Principal Software Architect*
*EDB Postgres <http://edbpostgres.com>*

*Mobile: +91 976-788-8246*

---

From: Aditya Toshniwal <[email-masked]>
Date: Wed, 9 Dec 2020 14:58:38 +0530

Hello Rahul,

Found below issues:
1) The data grid is not fetching more than 1000 records now, gives a
console error:
sqleditor.js:1264 Uncaught TypeError: self.enable_disable_download_btn is
not a function
    at child.fetch_next (sqleditor.js:1264)

2) The sqleditor test cases are failing.
3) Fix pep8 issues.
4) Fix linter issues.
5) Please check the doc changes again, it's not clear to me.

I didn't check but make sure the GUI tests for the sqleditor runs fine
since the behaviour has changed now.

On Wed, Dec 9, 2020 at 1:53 PM Akshay Joshi <[email-masked]>
wrote:

> On Mon, Dec 7, 2020 at 3:10 PM Rahul Shirsat <

-- 
Thanks,
Aditya Toshniwal
pgAdmin hacker | Sr. Software Engineer | *edbpostgres.com*
<http://edbpostgres.com>
"Don't Complain about Heat, Plant a TREE"

---

From: Rahul Shirsat <[email-masked]>
Date: Thu, 10 Dec 2020 18:54:56 +0530

Hi Aditya/Akshay,

>     at child.fetch_next (sqleditor.js:1264)
 *Fixed*

> 2) The sqleditor test cases are failing.
 *This has been taken care of, and added more test cases. *

> 4) Fix linter issues.
 *Sorry for these issues, last minute code changes* 😣

> 5) Please check the doc changes again, it's not clear to me.
 *This has been corrected now.*

> since the behaviour has changed now.
 *These are fixed now.*

---

From: Aditya Toshniwal <[email-masked]>
Date: Mon, 14 Dec 2020 11:55:21 +0530

Hi Rahul,

The file in the patch -
*web/regression/javascript/sqleditor/query_tool_preferences.js* is a copy
of *web/pgadmin/static/js/sqleditor/query_tool_preferences.js* and is not a
test case file.

@committer - Please remove the file
*web/regression/javascript/sqleditor/query_tool_preferences.js* before
committing.
Apart from this, the patch looks good to me.

On Thu, Dec 10, 2020 at 6:55 PM Rahul Shirsat <
[email-masked]> wrote:

>> On Wed, Dec 9, 2020 at 1:53 PM Akshay Joshi <
>> [email-masked]> wrote:
>>
>>> Hi Aditya
>>>
>>>>> Please find the attached patch which resolves the issue of macros
>>>>> query results download, have used async cursor to achieve this
>>>>> functionality, where for downloading the results, cursor is scrolled back
>>>>> to 0 and end of the records, and reset again while user scrolling on Data
>>>>> Output table.
>>>>>
>>>>>    2. Also, the download button is now "Save results to CSV/TXT"
>>>>>    where it will only get enabled when there are valid records in the Data
>>>>>    Output.
>>>>>
>>>>>

---

From: Akshay Joshi <[email-masked]>
Date: Mon, 14 Dec 2020 12:35:01 +0530

Thanks, patch applied.

On Mon, Dec 14, 2020 at 11:55 AM Aditya Toshniwal <
[email-masked]> wrote:

> of *web/pgadmin/static/js/sqleditor/query_tool_preferences.js* and is not
> a test case file.
>
>>> sqleditor.js:1264 Uncaught TypeError: self.enable_disable_download_btn
>>> is not a function
>>>>>>    1. If records are more like 5000 or 10000, try to fetch records
>>>>>>    by scrolling at least (2000), now save the results by clicking the download