I am experiencing really weird behaviour with my TriviaBot:
This is code sample:
def question_unanswered():
if(expect[0]==1):
server.privmsg(CHANNEL,"Noone answered right. Sorry folks, time is over!")
expect[0]=0
del answer[:]
server.privmsg(CHANNEL,"Add some questions to Trivia. Visit "+WEBURL)
def question_posture(connection,event):
if(event.arguments()[0]=="!trivia" and expect[0]==0):
connection.privmsg(CHANNEL,"Trivia question for "+str(result[0][3])+" point(s) will appear in 3 seconds...")
time.sleep(3)
connection.privmsg(CHANNEL,result[0][1])
posture.append(time.time())
connection.execute_delayed(11,question_unanswered)
sometimes, instead of waiting 11 seconds to execute question_unanswered() it's executed directly (same time.time() )
It occurs randomly about 1/6 of all tests...
Thanks for your time
I am experiencing this as well. I am using a simple threading.Timer implementation for fn_to_add_timeout. I have verified that the callback of the timer (that calls process_timeout) is not being called but the command function does execute immediately. I think it has something to do with the combination of process_once calling process_timeout and bug ID: 3518508.
Now that #3518508 is fixed, is this still an issue?
I'm marking this as closed, assuming it is fixed in 0.6.4 and 0.7. If it is not, please re-open or leave a comment indicating that it is not fixed in those releases.