-
Notifications
You must be signed in to change notification settings - Fork 28.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SPARK-7403][WebUI] Link URL in objects on Timeline View is wrong in case of running on YARN #5947
Conversation
Merged build triggered. |
Merged build started. |
Test build #32015 has started for PR 5947 at commit |
Test build #32015 has finished for PR 5947 at commit
|
Merged build finished. Test FAILed. |
Test FAILed. |
retest this please |
@@ -19,7 +19,8 @@ div#application-timeline, div#job-timeline { | |||
margin-bottom: 30px; | |||
} | |||
|
|||
#application-timeline div.legend-area { | |||
#application-timeline div.legend-area , |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no space before ,
Thanks @sarutak LGTM. |
By the way, it's a separate issue but when I open the JS console I see some errors with
Do you know what's wrong? |
Merged build triggered. |
Merged build started. |
Test build #32050 has started for PR 5947 at commit |
Test build #32050 has finished for PR 5947 at commit
|
Merged build finished. Test FAILed. |
Test FAILed. |
Merged build triggered. |
Merged build started. |
Test build #32066 has started for PR 5947 at commit |
@andrewor14 Thanks for letting me know another issue. I found the reason is Source Maps is used for symbol resolution for abbreviated symbols in *.min.js when we debug (http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/).
|
Test build #32066 has finished for PR 5947 at commit
|
Merged build finished. Test PASSed. |
Test PASSed. |
@@ -35,6 +35,7 @@ dagre-d3.min.js | |||
graphlib-dot.min.js | |||
sorttable.js | |||
vis.min.js | |||
vis.js |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this needed now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's because vis.js
is referred by vis.map
and vis.map
is referred by vis.min.js
.
vis.js
is only downloaded when Source Maps is enabled for debug.
Firefox or Chrome support SourceMaps and browsers which don't support Source Maps just ignore the reference directive in vis.min.js.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why does that affect the Spark source tree though? Maybe dumb question
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's because we can't expect the cluster to have network access to the external world so we need to bundle it.
But @sarutak what do we use vis.map
for? The timeline seems to work fine even without vis.js
. What are the specific UI differences?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it's just for debuging. See https://developer.chrome.com/devtools/docs/javascript-debugging
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Search "Using Source Maps" in this page
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But I think we don't need to include "vis.js" in Spark since it's just for debuging. The developers can add them by themselves locally.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In that case I would prefer to leave it out if possible. This is bringing in a 30k lines file into our repo, not to mention that it slows down the page load speed.
@sarutak could you also add |
@sarutak this issue only happens in the |
@sarutak sorry I wasn't being clear. I would prefer that this patch only address the YARN issue so we can merge it more easily. We should address the missing |
I think Source Maps doesn't affect page load speed because non-compressed Anyway, I'll remove |
@zsxwing Yes, I think it happens only |
bda684e
to
5d91d0d
Compare
Merged build started. |
Test build #32164 has started for PR 5947 at commit |
Test build #32164 has finished for PR 5947 at commit
|
Merged build finished. Test PASSed. |
Test PASSed. |
b1052e7
to
aaf40e1
Compare
Merged build triggered. |
Merged build started. |
Test build #32293 has started for PR 5947 at commit |
Test build #32293 has finished for PR 5947 at commit
|
Merged build finished. Test FAILed. |
Test FAILed. |
retest this please. |
Merged build triggered. |
Merged build started. |
Test build #32298 has started for PR 5947 at commit |
Test build #32298 has finished for PR 5947 at commit
|
Merged build finished. Test PASSed. |
Test PASSed. |
… case of running on YARN When we use Spark on YARN and have AllJobPage via ResourceManager's proxy, the link URL in objects which represent each job on timeline view is wrong. In timeline-view.js, the link is generated as follows. ``` window.location.href = "job/?id=" + getJobId(this); ``` This assumes the URL displayed on the web browser ends with "jobs/" but when we access AllJobPage via the proxy, the url displayed does not end with "jobs/" The proxy doesn't return status code 301 or 302 so the url displayed still indicates the base url, not "/jobs" even though displaying AllJobPages.  Author: Kousuke Saruta <[email protected]> Closes #5947 from sarutak/fix-link-in-timeline and squashes the following commits: aaf40e1 [Kousuke Saruta] Added Copyright for vis.js 01bee7b [Kousuke Saruta] Fixed timeline-view.js in order to get correct href (cherry picked from commit 12b95ab) Signed-off-by: Sean Owen <[email protected]>
… case of running on YARN When we use Spark on YARN and have AllJobPage via ResourceManager's proxy, the link URL in objects which represent each job on timeline view is wrong. In timeline-view.js, the link is generated as follows. ``` window.location.href = "job/?id=" + getJobId(this); ``` This assumes the URL displayed on the web browser ends with "jobs/" but when we access AllJobPage via the proxy, the url displayed does not end with "jobs/" The proxy doesn't return status code 301 or 302 so the url displayed still indicates the base url, not "/jobs" even though displaying AllJobPages.  Author: Kousuke Saruta <[email protected]> Closes apache#5947 from sarutak/fix-link-in-timeline and squashes the following commits: aaf40e1 [Kousuke Saruta] Added Copyright for vis.js 01bee7b [Kousuke Saruta] Fixed timeline-view.js in order to get correct href
… case of running on YARN When we use Spark on YARN and have AllJobPage via ResourceManager's proxy, the link URL in objects which represent each job on timeline view is wrong. In timeline-view.js, the link is generated as follows. ``` window.location.href = "job/?id=" + getJobId(this); ``` This assumes the URL displayed on the web browser ends with "jobs/" but when we access AllJobPage via the proxy, the url displayed does not end with "jobs/" The proxy doesn't return status code 301 or 302 so the url displayed still indicates the base url, not "/jobs" even though displaying AllJobPages.  Author: Kousuke Saruta <[email protected]> Closes apache#5947 from sarutak/fix-link-in-timeline and squashes the following commits: aaf40e1 [Kousuke Saruta] Added Copyright for vis.js 01bee7b [Kousuke Saruta] Fixed timeline-view.js in order to get correct href
… case of running on YARN When we use Spark on YARN and have AllJobPage via ResourceManager's proxy, the link URL in objects which represent each job on timeline view is wrong. In timeline-view.js, the link is generated as follows. ``` window.location.href = "job/?id=" + getJobId(this); ``` This assumes the URL displayed on the web browser ends with "jobs/" but when we access AllJobPage via the proxy, the url displayed does not end with "jobs/" The proxy doesn't return status code 301 or 302 so the url displayed still indicates the base url, not "/jobs" even though displaying AllJobPages.  Author: Kousuke Saruta <[email protected]> Closes apache#5947 from sarutak/fix-link-in-timeline and squashes the following commits: aaf40e1 [Kousuke Saruta] Added Copyright for vis.js 01bee7b [Kousuke Saruta] Fixed timeline-view.js in order to get correct href
When we use Spark on YARN and have AllJobPage via ResourceManager's proxy, the link URL in objects which represent each job on timeline view is wrong.
In timeline-view.js, the link is generated as follows.
This assumes the URL displayed on the web browser ends with "jobs/" but when we access AllJobPage via the proxy, the url displayed does not end with "jobs/"
The proxy doesn't return status code 301 or 302 so the url displayed still indicates the base url, not "/jobs" even though displaying AllJobPages.