Uh oh!
There was an error while loading. Please reload this page.
[SPARK-22837][SQL]Session timeout checker does not work in SessionManager. - #20025
[SPARK-22837][SQL]Session timeout checker does not work in SessionManager.#20025zuotingbing wants to merge 4 commits into
Conversation
| } | ||
| } | ||
| private void initSessionTimeoutCheckerConfig() { |
There was a problem hiding this comment.
should we refactor createBackgroundOperationPool to call this?
There was a problem hiding this comment.
Thanks @felixcheung . In my opinion you can create a new or follow-up PR if it is necessary. This PR is to fix the bug about the Session Timeout Checker does not work currently.
There was a problem hiding this comment.
felixcheung
commented
Dec 22, 2017
Jenkins, ok to test |
SparkQA
commented
Dec 22, 2017
Test build #85299 has finished for PR 20025 at commit
|
Could you please merge this to Master? Thanks @felixcheung@srowen |
felixcheung
left a comment
There was a problem hiding this comment.
@cloud-fan@gatorsmile would you like a look please?
| } | ||
| } | ||
| private void initSessionTimeoutCheckerConfig() { |
There was a problem hiding this comment.
Currently we do not call the i fix this bug refer to |
@zuotingbing I think all the code in SparkSQLSessionManager.scala should be gone because they are just some reflection hacks. It is possible to call |
zuotingbing
commented
Dec 29, 2017
@liufengdb I think the class |
zuotingbing
commented
Dec 29, 2017
@rxin Could you please to review this? Thanks. In my opinion we can create a new or follow-up PR if refactor is necessary. This PR is to fix the bug about the Session Timeout Checker does not work currently. |
My understanding is that the reflection was used originally because we don't control what is done inside the init method of the super class, given that different hive versions can be used. However, after we inlined the hive code, it is safe to call the init method directly now. This is a cleaner way to fix the referred and other potential bugs, IMO. |
zuotingbing
commented
Jan 8, 2018
@gatorsmile What is your opinion about this? Thanks! |
ping @gatorsmile |
zuotingbing
commented
Jan 16, 2018
ping @liufengdb |
SparkQA
commented
Jan 16, 2018
Test build #86167 has finished for PR 20025 at commit
|
SparkQA
commented
Jan 17, 2018
Test build #86231 has finished for PR 20025 at commit
|
zuotingbing
commented
Jan 17, 2018
@cloud-fan@gatorsmile@liufengdb@felixcheung@srowen@vanzin Is anybody could make further contact and discuss this PR? Thanks! |
| keepAliveTime, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>(poolQueueSize), | ||
| new ThreadFactoryWithGarbageCleanup(threadPoolName)); | ||
| backgroundOperationPool.allowCoreThreadTimeOut(true); | ||
There was a problem hiding this comment.
I think we can keep this file unchanged. Looks like the hive thread pool is more flexible than the spark one.
There was a problem hiding this comment.
yes, i will update it . Thanks!
liufengdb
commented
Jan 18, 2018
@gatorsmile@felixcheung I left one comment, otherwise lgtm. |
gatorsmile
commented
Jan 18, 2018
ok to test |
SparkQA
commented
Jan 18, 2018
Test build #86349 has finished for PR 20025 at commit
|
…ead pool is more flexible than the spark one.
SparkQA
commented
Jan 19, 2018
Test build #86370 has finished for PR 20025 at commit
|
| import java.util.concurrent.Future; | ||
| import java.util.concurrent.LinkedBlockingQueue; | ||
| import java.util.concurrent.ThreadPoolExecutor; | ||
| import java.util.concurrent.TimeUnit; |
| } | ||
| createBackgroundOperationPool(); | ||
| addService(operationManager); | ||
| super.init(hiveConf); |
There was a problem hiding this comment.
hmm, I think we revert keep this line too.
There was a problem hiding this comment.
yes, we could keep super.init() here and remove initCompositeService in SparkSQLSessionManager.init(). thanks
SparkQA
commented
Jan 23, 2018
Test build #86508 has finished for PR 20025 at commit
|
zuotingbing
commented
Jan 24, 2018
@gatorsmile@liufengdb Anything else? Thanks! |
liufengdb
commented
Jan 24, 2018
lgtm |
felixcheung
left a comment
There was a problem hiding this comment.
LGTM so long as @gatorsmile approves.
gatorsmile
commented
Jan 24, 2018
Thanks! Merged to master/2.3 |
…nager. ## What changes were proposed in this pull request? Currently we do not call the `super.init(hiveConf)` in `SparkSQLSessionManager.init`. So we do not load the config `HIVE_SERVER2_SESSION_CHECK_INTERVAL HIVE_SERVER2_IDLE_SESSION_TIMEOUT HIVE_SERVER2_IDLE_SESSION_CHECK_OPERATION` , which cause the session timeout checker does not work. ## How was this patch tested? manual tests Author: zuotingbing <zuo.tingbing9@zte.com.cn> Closes#20025 from zuotingbing/SPARK-22837. (cherry picked from commit bbb87b3) Signed-off-by: gatorsmile <gatorsmile@gmail.com>
What changes were proposed in this pull request?
Currently we do not call the
super.init(hiveConf)inSparkSQLSessionManager.init. So we do not load the configHIVE_SERVER2_SESSION_CHECK_INTERVAL HIVE_SERVER2_IDLE_SESSION_TIMEOUT HIVE_SERVER2_IDLE_SESSION_CHECK_OPERATION, which cause the session timeout checker does not work.How was this patch tested?
manual tests