Skip to content

Conversation

@PavithraRamachandran
Copy link
Contributor

What changes were proposed in this pull request?
Some of the columns of JDBC/ODBC tab Session info in Web UI are hard to understand.

Add tool tip for Start time, finish time , Duration and Total Execution

Screenshot from 2019-10-16 12-33-17

Why are the changes needed?
To improve the understanding of the WebUI

Does this PR introduce any user-facing change?
No

How was this patch tested?
manual test

"Session end time, after closing the session."

val THRIFT_SESSION_DURATION =
"Active duration of the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add tooltips for all columns. You can refer to our web-ui documentation:

spark/docs/web-ui.md

Lines 416 to 447 in d334fee

The second section contains information about active and finished sessions.
* **User** and **IP** of the connection.
* **Session id** link to access to session info.
* **Start time**, **finish time** and **duration** of the session.
* **Total execute** is the number of operations submitted in this session.
<p style="text-align: center;">
<img src="img/JDBCServer2.png" title="JDBC/ODBC sessions" alt="JDBC/ODBC sessions">
</p>
The third section has the SQL statistics of the submitted operations.
* **User** that submit the operation.
* **Job id** link to [jobs tab](web-ui.html#jobs-tab).
* **Group id** of the query that group all jobs together. An application can cancel all running jobs using this group id.
* **Start time** of the operation.
* **Finish time** of the execution, before fetching the results.
* **Close time** of the operation after fetching the results.
* **Execution time** is the difference between finish time and start time.
* **Duration time** is the difference between close time and start time.
* **Statement** is the operation being executed.
* **State** of the process.
* _Started_, first state, when the process begins.
* _Compiled_, execution plan generated.
* _Failed_, final state when the execution failed or finished with error.
* _Canceled_, final state when the execution is canceled.
* _Finished_ processing and waiting to fetch results.
* _Closed_, final state when client closed the statement.
* **Detail** of the execution plan with parsed logical plan, analyzed logical plan, optimized logical plan and physical plan or errors in the the SQL statement.
<p style="text-align: center;">
<img src="img/JDBCServer3.png" title="JDBC/ODBC SQL Statistics" alt="JDBC/ODBC SQL Statistics">
</p>

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wangyum in the same page statistics table does not have tooltip for all the column. Should we address that too?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wangyum i have added tooltip for all the columns in session table. Could you review?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need tooltips for every single column. "IP of the session" does not add anything over the column name. We should only add tooltips where they add something meaningful, like, clarifying for duration fields what the start and end time are exactly.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duration tooltips can basically specify one useful thing: what is the start and end time? this isn't telling the user anything more right now

@wangyum
Copy link
Member

wangyum commented Oct 24, 2019

ok to test

@SparkQA
Copy link

SparkQA commented Oct 24, 2019

Test build #112588 has finished for PR 26138 at commit 029ec03.

  • This patch fails Scala style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Oct 24, 2019

Test build #112597 has finished for PR 26138 at commit 35e6918.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Nov 4, 2019

Test build #113208 has finished for PR 26138 at commit 0028ccd.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

Copy link
Member

@srowen srowen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same here, these are basically repeating the title and I don't think we need to clutter the UI with that kind of popup tooltip

@PavithraRamachandran
Copy link
Contributor Author

@srowen do you suggest that we have tooltips only for columns like
Start time, finish time , Duration and Total Execution
and remove
User, IP, Session ID - which are self explanatory?

</a>
</th>
if (tooltip.nonEmpty) {
<th width={colWidthAttr}>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we avoid duplicating the th and a elements in both branches?

</th>
if (tooltip.nonEmpty) {
<th width={colWidthAttr}>
<a href={headerLink}>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same

"Number of operations submitted in this session."

val THRIFT_SESSION_START_TIME =
"Session Start time,on launching the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: space after ,

"Session Start time,on launching the session."

val THRIFT_SESSION_FINISH_TIME =
"Session end time, after closing the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How about "Time that the session was closed"

"Number of operations submitted in this session."

val THRIFT_SESSION_START_TIME =
"Session Start time,on launching the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Time that the session was started"?

"Session end time, after closing the session."

val THRIFT_SESSION_DURATION =
"Active duration of the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Duration tooltips can basically specify one useful thing: what is the start and end time? this isn't telling the user anything more right now

@SparkQA
Copy link

SparkQA commented Nov 13, 2019

Test build #113708 has finished for PR 26138 at commit 33c0a4e.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Nov 16, 2019

Test build #113925 has finished for PR 26138 at commit 49df510.

  • This patch fails Scala style tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Nov 16, 2019

Test build #113934 has finished for PR 26138 at commit 064ab01.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@PavithraRamachandran
Copy link
Contributor Author

@srowen i have changed according to the review comments. Could you review?


val THRIFT_SESSION_DURATION =
"Total duration the session has been active, from the time session" +
" was lauched till it was closed."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lauched till -> launched until
But should we say 'started' instead anyway, to be consistent with the above?

<th width={colWidthAttr}>
<a href={headerLink}>
{
if (tooltip.nonEmpty) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The indents are too deep and a little inconsistent - just use 2 space indents

@PavithraRamachandran
Copy link
Contributor Author

@srowen i have reworked on the review comments. Could you review?

"Time that the session was closed."

val THRIFT_SESSION_DURATION =
"Total duration the session has been active, from the time session" +
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does it show while it's active, time from start until now?

Maybe finally: Elapsed time since session start, or until closed if the session was closed.

"Number of operations submitted in this session."

val THRIFT_SESSION_START_TIME =
"Session Start time, on launching the session."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Time the session was started." But I'd just delete this and the next tooltip. It doesn't add much.

{header}
</span>
} else {
{header}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: unindent

@SparkQA
Copy link

SparkQA commented Nov 16, 2019

Test build #113938 has finished for PR 26138 at commit 839dd12.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@PavithraRamachandran
Copy link
Contributor Author

@srowen I have reworked. kindly verify the changes.

@SparkQA
Copy link

SparkQA commented Nov 17, 2019

Test build #113957 has finished for PR 26138 at commit 09ee0d4.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@srowen
Copy link
Member

srowen commented Nov 17, 2019

Merged to master

@srowen srowen closed this in a9959be Nov 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants