[JIRA] (JENKINS-33975) On demand slave shows misleading offline cause message
Title: Message Title Oleg Nenashev updated an issue Jenkins / JENKINS-33975 On demand slave shows misleading offline cause message Change By: Oleg Nenashev Component/s: slave-utilization-plugin Add Comment This message was sent by Atlassian JIRA (v7.3.0#73011-sha1:3c73d0e) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[JIRA] (JENKINS-33975) On demand slave shows misleading offline cause message
Title: Message Title Gene Smith edited a comment on JENKINS-33975 Re: On demand slave shows misleading offline cause message I can describe an imperfect test, and a way to implement it. But I am not very comfortable with this code, so I will describe it here and see what people say... (as I am not a significant contributor to this project, I am not eager to jump into its asynchronous threaded methods).This is an imperfect test because "Computer" does not have a reallymethod to say if its "offline state" is voluntary and clean, or involuntary anda problem. {{ //'c' is an instance of hudson.model.Computer;//RetentionStrategy is hudson.slaves.RetentionStrategyif ( RetentionStrategy.Demand.class.isInstance(c.getRetentionStrategy()) &&c.isIdle() && ( c.isOffline() || c.isConnecting() ) ) {//do something smart} }} To put the test in place...* AbstractAsyncNodeMonitorDescriptor's "monitor" method...** would do the test before trying to do start a call** put a different message in "data" to reflect the different state* Then ResponseTimeMonitor's "monitor"** would handle different message from "data"As the code is now, I have had to turn off the monitoring on my Jenkins instances, because I see no way to prevent ResponseTimeMonitor from calling disconnect() when the slave comes on line during the time the asynchronous call is waiting for it. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci
[JIRA] (JENKINS-33975) On demand slave shows misleading offline cause message
Title: Message Title Gene Smith edited a comment on JENKINS-33975 Re: On demand slave shows misleading offline cause message I can describe an imperfect test, and a way to implement it. But I am not very comfortable with this code, so I will describe it here and see what people say... (as I am not a significant contributor to this project, I am not eager to jump into its asynchronous threaded methods).This is an imperfect test because "Computer" does not have a reallymethod to say if its "offline state" is voluntary and clean, or involuntary anda problem.{{ //'c' is an instance of hudson.model.Computer;//RetentionStrategy is hudson.slaves.RetentionStrategyif ( RetentionStrategy.Demand.class.isInstance(c.getRetentionStrategy()) &&c.isIdle() && ( c.isOffline() || c.isConnecting() ) ) {//do something smart} }}To put the test in place...* AbstractAsyncNodeMonitorDescriptor's "monitor" method...** would do the test before trying to do start a call** put a different message in "data" to reflect the different state* Then ResponseTimeMonitor's "monitor"** would handle different message from "data"As the code is now, I have had to turn off the monitoring on my Jenkins instances, because I see no way to prevent ResponseTimeMonitor from calling disconnect() when the slave comes on line during the time the asynchronous call is waiting for it. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-iss
[JIRA] (JENKINS-33975) On demand slave shows misleading offline cause message
Title: Message Title Gene Smith commented on JENKINS-33975 Re: On demand slave shows misleading offline cause message I can describe an imperfect test, and a way to implement it. But I am not very comfortable with this code, so I will describe it here and see what people say... (as I am not a significant contributor to this project, I am not eager to jump into its asynchronous threaded methods). This is an imperfect test because "Computer" does not have a really method to say if its "offline state" is voluntary and clean, or involuntary and a problem. {{ //'c' is an instance of hudson.model.Computer; //RetentionStrategy is hudson.slaves.RetentionStrategy if ( RetentionStrategy.Demand.class.isInstance(c.getRetentionStrategy()) && c.isIdle() && ( c.isOffline() || c.isConnecting() ) ) { //do something smart } }} To put the test in place... AbstractAsyncNodeMonitorDescriptor's "monitor" method... would do the test before trying to do start a call put a different message in "data" to reflect the different state Then ResponseTimeMonitor's "monitor" would handle different message from "data" As the code is now, I have had to turn off the monitoring on my Jenkins instances, because I see no way to prevent ResponseTimeMonitor from calling disconnect() when the slave comes on line during the time the asynchronous call is waiting for it. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
[JIRA] (JENKINS-33975) On demand slave shows misleading offline cause message
Title: Message Title Gene Smith commented on JENKINS-33975 Re: On demand slave shows misleading offline cause message This is a reflection of another underlying problem. An On Demand Slave may lose their connection in this sequence the slave is offline a ping cycle starts and an attempt is made against the slave the slave comes online (because a job wants it) the job starts the ping cycle ends and the slave is "marked offline" the slaves state updates and the channel is closed because it has been "marked offline" If ResponseTimeMonitor.java is going to check slaves which are offline, then when a slave comes online something needs to remove it from the list or queue which is waiting for a response which will never arrive. Add Comment This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c) -- You received this message because you are subscribed to the Google Groups "Jenkins Issues" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.