Commit Graph

74 Commits (a0a31e55aeadf96cfe3c33c2ebb17de687c59a68)

Author SHA1 Message Date
Sarah McAlear a0a31e55ae Move 3rd party client code into vendor/ directories for ease of maintenance. 2017-02-24 17:01:21 +00:00
Harshal Dhumal 1c09b57a1a Fix casting issue with dependents queries. 2017-02-24 10:48:46 +00:00
George Gelashvili 6d05302ca1 Rename the 9.1_plus templates to "default" to more appropriately support Greenplum which is based on 8.3. 2017-02-01 09:57:49 +00:00
Atira Odhner c6b67fc66a Bypass recovery checks with older servers. This is required for Greenplum which is based on PG 8.3 at present. 2017-01-30 17:02:55 +00:00
George Gelashvili 19be3529f8 Create a template loader for SQL templates.
This will automatically find the correct version of a template for the server version, and allows us to remove templates that were previously duplicated for different server versions.

Patch by George & Tira at Pivotal. Review by me and Murtuza from EDB.

Discussion: https://www.postgresql.org/message-id/flat/CAHowoHaU9_pkCt%2B1g8dpY3hsXXZmsJZiJH-3-_Hd%2BC1MxiGhtA%40mail.gmail.com#CAHowoHaU9_pkCt+1g8dpY3hsXXZmsJZiJH-3-_Hd+C1MxiGhtA@mail.gmail.com
2017-01-30 11:25:03 +00:00
Murtuza Zabuawala bdf9761472 Improve consistency of dialogue controls offered. Fixes #1364 2017-01-08 16:05:34 +05:30
Murtuza Zabuawala f48f806657 Fix stats on PG 9.6. Fixes #1719 2016-09-22 14:17:47 +01:00
Ashesh Vashi b6f307256b Sorting the data during tree data loading using the natural sort
algorithm.

This patch takes care of:
* Consistent behaviour during create, update operation on any node.
  - It should return the node data during creating a new object, or
    updating the existing one.
* Now that - we have consistent behaviour during these operations, we
  can consistently move, update the tree item based the node data from
  the server.
* Implemented the methods for each node to get the information about
  that particular node only.
* Using the above changes to implement the 'refresh' operation on tree
  node properly.

I must thank Surinder, and Harshal for helping me implement the 'node'
method, and also changed the behaviour of create & update methods to
return the node data for most of the nodes.

Fixes #1244
2016-08-29 20:06:58 +05:30
Ashesh Vashi f12d981a9d Handling the bad/lost connection of a database server.
Made backend changes for:
* Taking care of the connection status in the psycopg2 driver. And, when
  the connection is lost, it throws a exception with 503 http status
  message, and connection lost information in it.
* Allowing the flask application to propagate the exceptions even in the
  release mode.
* Utilising the existing password (while reconnection, if not
  disconnected explicitly).
* Introduced a new ajax response message 'service_unavailable' (http
  status code: 503), which suggests temporary service unavailable.

Client (front-end) changes:
* To handle the connection lost of a database server for different
  operations by generating proper events, and handle them properly.

Removed the connection status check code from different nodes, so that
- it generates the proper exception, when accessing the non-alive
  connection.

Fixes #1387
2016-08-29 12:01:35 +05:30
Dave Page 2b13d55016 Add missing updates from the previous commit. 2016-08-09 12:17:02 +01:00
Harshal Dhumal dfceb63986 Add save password option in sever create mode. Fixes #1450
Do a little string/layout cleanup whilst passing.
2016-08-03 15:55:45 +01:00
Murtuza Zabuawala b6e8d195dc Security label providers are an optional parameter. Fixes #1478. 2016-07-27 15:01:16 +01:00
Dave Page 790b28fb61 Flask-Babel 0.11+ compatibility. Fixes #1496 2016-07-25 17:23:10 +01:00
Harshal Dhumal c7d25c33f2 Make the Parameter grid use a workflow consistent with other grids. Fixes #1241
1. Altered variable control to make its UI consistent with privileges and Security labels.
2. Changed datamodel.js to handle duplicate rows at datamodel level and not UI/Control level. (See variable control for example)
2016-07-18 11:50:42 +01:00
Murtuza Zabuawala f79ca32e45 Allow selection of 'PUBLIC' as a role in privileges. Fixes #1416 2016-07-13 14:51:25 +01:00
Dave Page 7d0fe669ca Code tidy. 2016-06-21 14:21:06 +01:00
Dave Page 3bcc5a4bd3 Further string improvements. 2016-06-17 14:51:01 +01:00
Harshal Dhumal 6b95d6ac75 Added connect now option in server create dialog. Fixes #1313 2016-06-14 17:23:25 +01:00
Murtuza Zabuawala 9ed2530b1f Fixes #1110 - Proper validation for the security labels. 2016-06-06 18:07:13 +05:30
Ashesh Vashi 8313bc9b8a Do proper validation of the server node. 2016-06-03 06:29:23 +05:30
Murtuza Zabuawala 70cca42d61 Fixes #1147 - 65536 is valid port for PostgreSQL. 2016-05-29 16:04:10 +05:30
Ashesh Vashi 7e51a8fd56 Improvement in the security tab for each of the nodes.
* Hide the security tab for the objects under the catalog schema.
  Patched by Surinder Kumar, vastly improved by me.

* Make the securtiy label across all the nodes, using the same backbone
  model across the nodes, and make changes in the backend code for the
  same.
2016-05-29 15:19:36 +05:30
Dave Page 238da58732 Helpfile refactoring. 2016-05-20 16:39:35 -04:00
Akshay Joshi 3a9b331df6 Change the priority of Tools menu item 2016-05-19 13:53:49 +05:30
Dave Page 1606f1d8e8 Link online help to dialogs 2016-05-16 22:35:27 -04:00
Neel Patel 4dc7f84761 Added functionality to Pause/Resume replay of WAL on the database
server.

Tweaked a little bit by Ashesh.
2016-05-14 01:41:20 +05:30
Harshal Dhumal 4816f5ed12 Change server password feature 2016-05-13 13:21:20 +05:30
Harshal Dhumal 180630ce0e Fixed variable scope issue in server.js 2016-05-10 18:16:08 +05:30
Murtuza Zabuawala 83b6a04763 Added input validation and title of the prompt for 'Named Restore point' functionality 2016-05-10 16:04:47 +05:30
Murtuza Zabuawala 23f0cf07ca Allow creation of named restore points. 2016-05-11 16:13:14 +01:00
Neel Patel 8cfca280d4 Fixed issue 'Reload Configuration' option is also enabled on database node while it should only be enabled on server node 2016-05-09 23:22:35 +05:30
Neel Patel 4190933909 Allow the server config to be reloaded. 2016-05-06 15:08:22 +01:00
Karen Blatchley 949e536bae First round of string review and cleanup. 2016-05-06 13:53:48 +01:00
Dave Page 0628ee0425 Dashboards v1 2016-05-05 16:42:16 +01:00
Neel Patel 37699a9820 Don't try to use the template engine's gettext on Javascript variables, as it won't work as the templates are evaluated before any JS is executed. 2016-04-18 08:39:25 -04:00
Ashesh Vashi 09cc78bd0a Adding missing query templates required for the server module. 2016-04-18 14:57:35 +05:30
Seçkin Alan 290e6949f8 Require a server hostname/address to be specified. 2016-04-14 21:46:01 +01:00
Ashesh Vashi 8a39b3a700 Backend changes to fetch the statistics for the database and server
nodes, along with the front-end changes for those node.

NOTE:
We've not yet added the support to show them on the front-end.
2016-04-14 16:45:34 +05:30
Murtuza Zabuawala 0e044e1216 Fixed the refresh issue when a server gets disconnected. 2016-03-23 16:52:21 +05:30
Khushboo Vashi 8a99282e07 Add support for domain dependencies/dependents. 2016-03-18 15:20:41 +00:00
Neel Patel 3969e91563 Add support for Foreign data wrappers, servers and user mappings. 2016-03-17 11:39:38 +00:00
Dave Page 2fb6ccf5b2 Re-shuffle server properties. 2016-03-16 09:58:14 +00:00
Ashesh Vashi 4adea4dc25 Resolved an issue related to no proper valid/invalid event was
generated for the privilege control. Also, made changes in the
PrivilegeRoleModel, to allow to select a grantee only once for the
current user (as grantor), and omit them from other cell objects.

Valid/Invalid event was not properly triggered, whenever the child
attribute is a collection/model within a model (nested mode/collection
within model). This patch tried to take care of all such scenarios in
general.
2016-03-15 19:00:58 +05:30
Dave Page f95b9f06ca Add some default connection parameters. 2016-03-10 15:58:17 +00:00
Murtuza Zabuawala 8a7ec6b452 Update "parse_priv_to_db" function to return list a instead of a string.
This will also allow us to operate on individual privileges & also we
needed this functionality for column nodes.

For example,

*Earlier:* priv was string

GRANT {{ priv }} ON {{ type }} TO {{ conn|qtIdent(role) }};

*Now:* priv will be List, which we need to handle in jinja templates.

GRANT *{{ priv|join(', ') }}* ON {{ type }} TO {{ conn|qtIdent(role) }};
2016-03-09 17:10:03 +00:00
Ashesh Vashi 41e85fd631 Make the default privileges jinja2 template macros to generate more
consistent SQL.
i.e.
Put 4 spaces after every new line (wherever required).
2016-02-28 12:15:08 +05:30
Akshay Joshi c153032e3b Add support for displaying dependency and dependents info. 2016-02-22 13:07:16 +00:00
Dave Page 131043d7cb Don't ask before connecting to servers or databases, just do it like pgAdmin 3. 2016-02-12 16:46:56 +00:00
Murtuza Zabuawala dc51baefcc Adding more jinja2 template macros for the default previleges. 2016-02-10 13:00:19 +05:30
Murtuza Zabuawala 79cd9d518c Modified the variable jinja2 macros to allow to set/reset multiple
options in a single command, instead of multiple commands.
2016-02-03 16:35:46 +05:30