Commit Graph

1090 Commits

Author SHA1 Message Date
Aditya Toshniwal
c353135a3a Add support for INCLUDE columns on indexes and index constraints with PG 11+. Fixes #3462 2018-07-19 13:13:37 +01:00
Akshay Joshi
ce768c7f8a Support SSH tunneling with keys that don't have a passphrase. Fixes #3468 2018-07-18 14:15:05 +01:00
Khushboo Vashi
8869fd6eb3 Fix a number of debugger execution issues. Fixes #3191
1. EPAS packages' function/procedure does not honour INOUT arguments, it converts INOUT to OUT.

2.  Packages' functions and procedures are not getting listed in their respected nodes in some scenarios like procedure having INOUT argument and function with void return type

3. The Reverse engineering SQL is not correct for Packages' functions/procedures

4. In case of INOUT argument, debugger asks for mendatory input which should not.

5. Re-executing a procedure whilst direct debugging doesn't work.
2018-07-17 12:51:24 +01:00
Akshay Joshi
39b41d7b24 Various procedure/function related fixes for EPAS/PG 11. Fixes #3446
- Fix the RM #3446 "plpgsql keyword should displayed in SQL pane for EPAS-11".
- Procedures for EPAS 11 always created as 'edbspl', even though language is sql or plpgsql.
- Not able to create Function/Procedure/Trigger function if the language is "C" for all supported database server.
- Function creation for EPAS 9.6 and above when set "Window?" flag to "Yes".
- Disable Volatility, Strict, Parallel, Estimated cost and Leak prof while creating procedures in EPAS 11 when language is not 'edbspl'.
- Rename "default" folder to "11_plus" inside "pg" directory for procedures, as procedures are supported from PG11 onwards.
- Creating/Deleting parameter in Procedure for PG 11.
- Drop procedures with arguments for PG/EPAS 11.
pg_proc table has added default value 'v' for Volatility, 100 for Cost and 'u' for Parallel for any language. All the three are not supported for Procedures in PG/EPAS 11 (excluding 'edbspl' language for EPAS). Fixed the issue where it is visible in properties panel if we create procedure using language 'plpgsql' or 'sql'.
2018-07-17 12:43:46 +01:00
Aditya Toshniwal
2b9c0a63fb Ensure CodeMirror always has a non-zero font size. Fixes #3480 2018-07-10 13:58:44 +01:00
Aditya Toshniwal
3b862bd70b More jQuery 3 updates. 2018-07-10 10:59:53 +01:00
Aditya Toshniwal
41a8333145 Replace deprecated success, error callbacks in $.ajax call with new functions .done and .fail. 2018-07-09 13:54:00 +01:00
Aditya Toshniwal
73530c05aa Add missing files related to previous commit: Infrastructure and changes to the Query Tool for realtime preference handling. Refs #3294 2018-07-05 11:41:01 +01:00
Aditya Toshniwal
bdb7e3fde2 Infrastructure and changes to the Query Tool for realtime preference handling. Refs #3294
Highlights of this patch include:
- Changes will affect SQL Editors in Create dialog boxes, SQL tab of the main screen, Query tool, History entries in the query tool, Query tool opened in New Tab/Window
- All the components of SQL editor will refer to single source of preferences which is cached in the Browser object. All other redundant ajax get preference calls are removed.
- SQL editor will not refer template JS variables anymore, once all the references are removed the template variables will also be removed.
- Code refactoring wherever possible.
- Covered JS test cases wherever possible.
2018-07-05 11:38:43 +01:00
Aditya Toshniwal
82d77c4608 Don't create a session when the /misc/ping test endpoint is called. Fixes #3371 2018-07-05 11:12:03 +01:00
Akshay Joshi
57c054fb0e Fix various Drop menu options that were broken during the treeview refactoring.
Fixes #3442. Fixes #3443. Fixes #3444
2018-06-25 15:52:12 +01:00
Akshay Joshi
4a71c6d7af Various EPAS/PG11 function & procedure fixes. Fixes #3421. Fixes #3422 2018-06-25 14:58:02 +01:00
Akshay Joshi
560e5f225a Allow dropping of Procedures in PG 11. Fixes #3423 2018-06-21 16:36:10 -04:00
Akshay Joshi
480fe6b9fc Fixed issue of detection of EPAS server 11 and above. Version string is changed in EPAS 11 2018-06-21 18:30:37 +05:30
Joao Pedro De Almeida Pereira
155f82676d Fix the RE-SQL generation for GreenPlum external tables. Fixes #3431 2018-06-19 20:01:45 -04:00
Akshay Joshi
7a06acb678 Allow the connection timeout to be configured on a per-server basis. Fixes #3388 2018-06-19 19:58:46 -04:00
Dave Page
9821e28da5 Fix file permissions per Devrim 2018-06-19 16:09:49 -04:00
Dave Page
717637c5b9 Fix indent. 2018-06-18 13:47:39 -04:00
Akshay Joshi
a45c33cf76 Ensure that template0 and template1 are available as tempates when creating databasesa. Fixes #3361
[regardless of the Show System Objects? option]
2018-06-18 13:41:14 -04:00
Ashesh Vashi
f2cef38364 Flask 1.0.2 does not allow a dot (.) in the view_func name, which we use
during generting the routes for the node.

References:
2f57a0b917
https://github.com/pallets/flask/issues/2790

Fixes #3360
Reported by: Marcelo Mendes
Investigated by: Khushboo Vashi
2018-06-18 09:58:16 +05:30
Akshay Joshi
766b389001 Include the schema name on RE-SQL for packages. Fixes #3356 2018-06-15 10:40:14 +01:00
Akshay Joshi
df7b4d55c6 Remove an extra space in Procedure templates. 2018-06-15 09:16:00 +01:00
Dave Page
087db8a75e Fix stored procedure test cases so they don't fail on EPAS 9.4 2018-06-13 17:01:19 +01:00
Khushboo Vashi
d1ecba56b8 Function and procedure support for PG11. Fixes #3362 2018-06-13 15:03:17 +01:00
Joao De Almeida Pereira
e5048b4d0b Disable ACLs for the database objects for the Greenplum due to
performance issue.

Reviewed By: Ashesh
Fixes #3415
2018-06-12 10:07:23 +05:30
Victoria Henry
226c872a84 Avoid an exception on GreenPlum when retrieving RE-SQL on a table. Fixes #3409 2018-06-11 16:56:39 +01:00
Joao De Almeida Pereira
7dd6372eeb Extract the tests and refactor some of the methods.
Extract some of the ACI Tree functionalities, and decouple it from the
main source. Also - create some abstractions from the repeated code
around the enable/disable the schema children object create/edit/delete
functionalities, and also created the dialog wrappers for backup and
restore dialogs.

Reviewed by: Khushboo and Ashesh
Refactored by: Ashesh
2018-06-05 16:42:59 +05:30
Murtuza Zabuawala
f877de6a1f Fix an issue where a change to any field in server dialog causes the 'tunnel_identity_file' model value to get included unnecessarily in the update request. Fixes #3389 2018-05-31 10:10:43 -04:00
Akshay Joshi
08990cb1de Handle errors properly if they occur when renaming a database. Fixes #3353 2018-05-28 17:35:33 -04:00
Aditya Toshniwal
9f13865777 Update jQuery to 3.3.1. Fixes #3271
Patch by Aditya, with test enhancements from Anthony and Joao at Pivotal.
2018-05-25 16:26:37 +01:00
Aditya Toshniwal
a4ed9d6976 Allow connections to servers with port numbers < 1024 which may be seen in container environments. Fixes #3307 2018-05-18 11:12:38 +01:00
Akshay Joshi
719938a14c Fixed issue where 'Identity file' control of SSH Tunnel tab is enabled when database is connected and 'Use SSH tunneling' flag is set to No. 2018-05-17 17:18:00 +05:30
Anthony Emengo
ab27b9d118 Fix template handling in tests for Windows. 2018-05-14 15:47:38 +01:00
Joao De Almeida Pereira
bc4d16eb83 Initial version of the new tree implementation.
This is the first version of our Tree implementation. At this point is a
very simple tree without no abstractions and with code that eventually
is not very performant, but this is only the first iteration and we are
trying to follow the 'Last Responsible Moment Principle' [1].

Implemention details:
- Creation of PGBrowser.treeMenu
- Initial version of the Tree Adaptor 'pgadmin/static/js/tree/tree.js'
- TreeFake test double that can replace the Tree for testing purposes
- Tests, As an interesting asside because Fake’s need to behave like
  the real object you will noticed that there are tests for this type
  of double and they the same as of the real object.

[1] https://medium.com/@aidanjcasey/guiding-principles-for-an-evolutionary-software-architecture-b6dc2cb24680

Patched by: Victoria && Joao
Reviewed by: Khushboo & Ashesh
2018-05-14 18:00:23 +05:30
Dave Page
8937375885 Standardise the error handling for parsing of JSON response messages from the server. Fixes #3238 2018-05-04 16:56:15 +01:00
Akshay Joshi
b7fb01ab04 Add support for SSH tunneled connections. Fixes #1447 2018-05-04 11:27:27 +01:00
Khushboo Vashi
732d8d903d F5 key should work to refresh Browser tree. Fixes #3284
Refactoring by:  Joao Pedro De Almeida Pereira
2018-05-02 11:43:42 +05:30
Joao De Almeida Pereira
966279c1b3 Fixed issue where icon for Partitioned tables was the same as Non Partitioned tables for GreenPlum database. Fixes #3308 2018-04-26 17:05:56 +05:30
Joao De Almeida Pereira
2ace6a60f3 Fixed display SQL of table with index for GreenPlum database. Fixes #3306 2018-04-25 12:36:41 +05:30
Ashesh Vashi
b653b742ed Close button added to the alertify message box, which pops up in case of backend error. Fixes #3290 2018-04-24 18:57:31 +05:30
Aditya Toshniwal
d5fdd32971 Fix an error generating SQL for trigger functions. Fixes #3179 2018-04-12 14:10:35 +01:00
Murtuza Zabuawala
f5e474e4ec Ensure the query tool will open properly under MS Edge. 2018-04-10 11:09:59 +01:00
Murtuza Zabuawala
8ec51412c3 Add a (configurable) limit to the number of pgAgent job history rows displayed on the statistics tab. Fixes #3072 2018-04-06 10:00:25 +01:00
Murtuza Zabuawala
be055ce57d Update Python and JS modules. Fixes #3154 2018-04-04 10:47:01 +01:00
Khushboo Vashi
7805170783 Add the ability to enable/disable UI animations. Fixes #1978 2018-04-03 14:52:13 +01:00
Akshay Joshi
61eb94a23c Fix index node display on PG 10. Fixes #3180 2018-03-29 15:09:29 +02:00
Khushboo Vashi
413709fc78 Simplify cookie domain/path settings, per discussion. Instead of trying to be smart, just let the user specify them in the config, e.g.
COOKIE_DEFAULT_DOMAIN = None
SESSION_COOKIE_DOMAIN = None
2018-03-23 10:14:02 +00:00
Khushboo Vashi
534f1f35fe Appropriately set the cookie path. Fixes #3197 2018-03-19 17:09:19 +00:00
Murtuza Zabuawala
34f1ebc88e Ensure the host parameter is correctly pickup up from the service file. Fixes #3200 2018-03-19 12:38:44 +00:00
Dave Page
93d44d5643 Revert "Ensure the cookie domain and path are properly set. Fixes #3197"
This reverts commit 9c4edb4a28.

Jenkins really doesn't like this.
2018-03-15 14:54:14 -04:00
Khushboo Vashi
9c4edb4a28 Ensure the cookie domain and path are properly set. Fixes #3197 2018-03-15 13:59:29 -04:00
Joao Pedro De Almeida Pereira
876ce1799a Skip tests where appropriate on GPDB. Fixes #3190
Victoria & Joao @ Pivotal.
2018-03-13 15:32:35 -04:00
Victoria Henry
6b03cb78af Refactor server dialogue validation for better unit testing.
Victoria & Joao @ Pivotal.
2018-03-13 14:47:32 -04:00
Dave Page
156b308fd3 Fix template paths for Windows. Fixes #3139
Joint work from Joao and Murtuza.
2018-03-13 12:45:14 -04:00
Murtuza Zabuawala
03b772bf64 Add support for connecting using pg_service.conf files. Fixes #3140 2018-03-12 16:45:56 -04:00
Murtuza Zabuawala
985a004766 Fix SQL generated when dropping NOT NULL from a "char" column. Fixes #2989 2018-03-09 15:23:49 +00:00
Joao Pedro De Almeida Pereira
3a6994f719 Final PEP-8 fixes 2018-03-08 09:33:43 +00:00
Murtuza Zabuawala
abf0b1a7ae Allow admins to disable the use of Gravatar if they choose. Fixes #3037 2018-03-07 16:35:33 +00:00
Joao Pedro De Almeida Pereira
d1ab47c10c Disable function statistics on Greenplum. Fixes #3176 2018-03-07 11:52:02 +00:00
Murtuza Zabuawala
06ff05762e PEP8 fixes. Fixes #3175 2018-03-07 11:47:01 +00:00
Joao Pedro De Almeida Pereira
427314cfdf Support for external tables in GPDB. Fixes #3168 2018-03-02 16:49:25 +00:00
Khushboo Vashi
905cdafe90 PEP8 changes for the FDW modules. 2018-03-02 14:46:13 +00:00
Murtuza Zabuawala
8964e511bf PEP8 fixes for the Casts, Event triggers, Extensions and Languages modules. Fixes #3161 2018-03-02 11:59:11 +00:00
Harshal Dhumal
7cdb489a47 Fix handling of tie/datetime array types when adding columns to a table. Fixes #3079 2018-03-02 11:51:53 +00:00
Murtuza Zabuawala
78e2ff4f56 Ensure the pgAgent job start/end time grid fields synchronise with the subnode control and validate correctly. Fixes #3073 2018-03-02 11:11:26 +00:00
Murtuza Zabuawala
cca6504d54 PEP8 fixes. Fixes #3156 2018-02-27 15:38:50 +00:00
Murtuza Zabuawala
f5afd5fdb4 Fix block indent/outdent with configurable width. Fixes #3002 2018-02-27 15:20:30 +00:00
Harshal Dhumal
055f7abc9e PEP8 fixes for the server and server group modules. 2018-02-27 11:22:14 +00:00
Harshal Dhumal
aa1849c13a Support tab navigation in dialogs. Fixes #2898 2018-02-27 11:18:36 +00:00
Joao Pedro De Almeida Pereira
3be22383b8 Fix function reserve SQL for GPDB. Fixes #3150 2018-02-27 11:05:15 +00:00
Murtuza Zabuawala
6753cd7334 PEP8 fixes for the pgAgent and Tables nodes (and subnodes). Fixes #3148 2018-02-26 19:24:17 +00:00
Harshal Dhumal
43d3e0ca64 PEP8 fixes. 2018-02-26 15:58:48 +00:00
Joao Pedro De Almeida Pereira
5ebd9ee8d3 Fix table statistics for Greenplum. Fixes #3059 2018-02-26 09:38:00 +00:00
Murtuza Zabuawala
54dd6aae83 Add a test for sequence validation. 2018-02-23 12:02:57 +00:00
Murtuza Zabuawala
55875f0cfa PEP8 cleanups for the sequences module. 2018-02-21 17:37:34 +00:00
Murtuza Zabuawala
51cc04b5b0 Fix tablespace tests for Python 3.x. Fixes #3138 2018-02-21 17:34:18 +00:00
Murtuza Zabuawala
f8771d5585 Fix validation of sequence parameters. Fixes #3014 2018-02-21 17:32:04 +00:00
Khushboo Vashi
b49d625c2d Don't depend on standards_conforming_strings being enabled. Fixes #3077 2018-02-21 17:18:00 +00:00
Joao Pedro De Almeida Pereira
ba70634e5f Hide tablespace node on GPDB. Fixes #3107 2018-02-20 17:40:56 +00:00
Harshal Dhumal
c91a597df9 Fix alignment issues in keyboard shortcut options. Fixes #3080 2018-02-20 16:49:59 +00:00
Khushboo Vashi
9a498c2877 Ensure column names on indexes on views are properly quoted in RE-SQL. Fixes #3066 2018-02-20 16:47:33 +00:00
Khushboo Vashi
c85e14dc25 Add missing reverse-engineered SQL header and drop statement for sequences. Fixes #3081 2018-02-19 11:41:19 +00:00
Joao Pedro De Almeida Pereira
15862e903a Fix creation of tables and columns in GPDB. Fixes #3099 2018-02-19 10:40:10 +00:00
Khushboo Vashi
258b064963 Add configurable shortcut keys for various common options in the main window. Fixes #2899 2018-02-09 12:07:57 +00:00
Joao Pedro De Almeida Pereira
e16a952753 Support EXPLAIN on Greenplum. Fixes #3097
- Extract SQLEditor.execute and SQLEditor._poll into their own files and add test around them
 - Extract SQLEditor backend functions that start executing query to their own files and add tests around it
 - Move the Explain SQL from the front-end and now pass the Explain plan parameters as a JSON object in the start query call.
 - Extract the compile_template_name into a function that can be used by the different places that try to select the version of the template and the server type
2018-02-09 11:54:42 +00:00
Navnath Gadakh
db92907fe9 Fix quoting of function names in RE-SQL. Fixes #3060 2018-02-09 10:15:41 +00:00
Dave Page
4d69764869 Don't quote variable values used by SET. It's usually going to be wrong. Fixes #3027 2018-02-02 14:58:29 +01:00
Khushboo Vashi
262d01bf01 Add keyboard navigation options for the main browser windows. Fixes #2895 2018-02-02 14:28:37 +01:00
Harshal Dhumal
2042f89ce0 Don't include sizes on primitive datatypes that shouldn't have them when modifying columns. Fixes #3052 2018-02-01 16:27:36 +01:00
Murtuza Zabuawala
6ad44cb51e Fix on-click handling of treeview nodes that wasn't refreshing SQL/Dependencies/Dependents in some circumstances. Fixes #3058 2018-02-01 14:44:12 +01:00
Harshal Dhumal
e0da9c5a0c Significantly improve connection loss detection and handling in the query tool. Fixes #2815 2018-02-01 14:29:18 +01:00
Joao Pedro De Almeida Pereira
de1c767e88 Update the regression tests to fix issues with Python 3.5 and PG 9.2. Fixes #3057 2018-01-26 16:45:09 +00:00
Joao Pedro De Almeida Pereira
7c985695b7 Correct display of RE-SQL for partitioned tables in Greenplum. Fixes #3050 2018-01-25 12:37:17 +00:00
Joao Pedro De Almeida Pereira
65337daeba Display functions in Greenplum. Fixes #3044 2018-01-23 11:10:46 +00:00
Joao Pedro De Almeida Pereira
678699c408 Display partitions in Greenplum. Fixes #3036 2018-01-23 10:41:36 +00:00
Joao Pedro De Almeida Pereira
284adbbb90 Correctly display SQL of multiple objects on the SQL tab in GPDB. 2018-01-22 11:04:49 +00:00
Khushboo Vashi
ca80cfa04a Ensure clickable images/buttons have appropriate tooltips for screen readers. Fixes #2904 2018-01-22 10:37:56 +00:00
Joao Pedro De Almeida Pereira
56e922f5ab Support Properties on Greenplum databases. Fixes #3015 2018-01-15 14:44:40 +05:30
Murtuza Zabuawala
8520871bc6 Monitor connection and transaction status in the query tool. Fixes #2475 2018-01-12 14:34:39 +00:00
Joao Pedro De Almeida Pereira
ed3e374df6 Support server and database statistics on Greenplum. Fixes #3004 2018-01-12 10:02:46 +00:00