Fixes # 4778 - Implement the query plan analyzer
Look 'n' Feel and implementation logic are inspired from
'http://explain.depsez.com'.
It now creates three tabs under the 'Explain' panel when executing a
query using the Explain Analyze/Explain button from the toolbar of the
Query tool.
Graphical
---------
-> Graphical Explain Plan
Analysis
--------
-> Table to show details of the explain plan analyse.
-> Each row represents the statistics per Explain Plan Node
-> It may contains columns like node information, exclusive timing
(time spent for this explain node excluding the child nodes),
inclusive timing, actual rows, plan rows,
rowsx (misestimation between planned vs actual rows), loop.
-> Background color of exclusive, inclusive, rows changes based on
their values.
i.e.
If Percentage of exclusive, and inclusive timings of total query time
is:
> 90 - Red Color
> 50 - Orange (Between Red & Yellow Color)
> 10 - Yellow color
If planner misestimation for the rows is
> 1000 times - Red Color
> 100 times - Orange (Between Red & Yellow Color)
> 10 times - Yellow Color
Also - if actual rows <= planned rows then it shows up arrow, else it
shows down arrow.
Statistics
----------
-> It contains a HTML table for the statistics per Node Type, and
a HTML table for the statistics per table.
Reviewed by: Akshay Joshi
Branch
------
master
Details
-------
https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=6e4923d7621a9a00d96a7e7d1632795dafbc3243
Modified Files
--------------
.../images/query_explain_analyze_statistics.png | Bin 0 -> 255936 bytes
docs/en_US/images/query_explain_analyze_table.png | Bin 0 -> 225653 bytes
docs/en_US/images/query_output_explain_details.png | Bin 124416 -> 169989 bytes
docs/en_US/images/query_output_explain_options.png | Bin 0 -> 50441 bytes
docs/en_US/images/query_toolbar_explain.png | Bin 0 -> 80494 bytes
docs/en_US/query_tool.rst | 81 +-
docs/en_US/release_notes_4_14.rst | 3 +-
web/pgadmin/misc/static/explain/css/explain.css | 50 -
web/pgadmin/misc/static/explain/js/explain.js | 1117 +++++++++++++++-----
web/pgadmin/misc/static/explain/scss/_explain.scss | 139 ++-
web/pgadmin/static/js/pgadmin.js | 46 +
web/pgadmin/static/scss/_pgadmin.style.scss | 14 +
12 files changed, 1104 insertions(+), 346 deletions(-)