13:01:53 <ruijie_> #startmeeting senlin
13:01:53 <openstack> Meeting started Tue Nov 14 13:01:53 2017 UTC and is due to finish in 60 minutes.  The chair is ruijie_. Information about MeetBot at http://wiki.debian.org/MeetBot.
13:01:54 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
13:01:56 <openstack> The meeting name has been set to 'senlin'
13:02:19 <Qiming> evening
13:02:22 <ruijie_> hi all, this is the agenda: https://wiki.openstack.org/wiki/Meetings/SenlinAgenda#Agenda_.282017-11-14_1300_UTC.29
13:02:29 <ruijie_> hi Qiming
13:05:14 <ruijie_> ok, let's get started :)
13:06:22 <ruijie_> do we have any summit experience sharing?
13:07:35 <ruijie_> well,https://etherpad.openstack.org/p/senlin-11-17
13:08:09 <ruijie_> I drafted a etherpad page about the questions we met this week
13:08:20 <ruijie_> 1. about the health policy
13:08:59 <ruijie_> the polling mode should work well
13:09:29 <ruijie_> just need to improve to use user defined recovery action
13:09:57 <ruijie_> but for the listening mode, we are not able to stop the listener after health policy detached
13:10:20 <Qiming> yes
13:11:34 <Qiming> listener cannot be stopped?
13:11:37 <ruijie_> seems like the creation and starting of listener is asynchronous
13:12:02 <ruijie_> no Qiming
13:12:40 <Qiming> alright, have to check oslo.messaging for the correct sequence on doing that
13:13:48 <ruijie_> http://git.openstack.org/cgit/openstack/senlin/tree/senlin/engine/health_manager.py#n298
13:14:19 <Qiming> yes, that is where we added a thread
13:14:22 <ruijie_> the return value is the thread itself, but the thread will be released after start the listener
13:18:05 <Qiming> thread is released?
13:19:51 <chenyb4_> yes, I've tested it multiple times.
13:21:51 <Qiming> then check the oslo_service.threadgroup for correct usage?
13:22:25 <chenyb4_> https://github.com/openstack/oslo.service/blob/master/oslo_service/threadgroup.py#L101 in this, will be appear remove error
13:24:26 <chenyb4_> use code pdb, self.threads get {}
13:27:19 <chenyb4_> scheduler call self.threads.append-->listener call self.threads.append-->scheduler call self.threads.remove
13:27:46 <Qiming> okay, can we try just call listener.stop() here: senlin/tests/unit/engine/actions/test_action_base.py
13:28:01 <Qiming> or we call listener.stop() first
13:28:59 <Qiming> listener.stop() may invoke the link established by thread group
13:29:13 <Qiming> then thread_done() will be invoked automatically
13:34:58 <XueFeng> hi
13:35:19 <ruijie_> actually the thread already been released after invoke listener.start()
13:36:24 <ruijie_> as I concerned, the logic of 'lister.start()' == threadpool.add(task)
13:37:26 <Qiming> no it cannot be released
13:37:35 <Qiming> read the logic
13:38:38 <Qiming> only a thread link was added
13:43:49 <XueFeng> hi, Qiming ,ruijie_
13:44:02 <Qiming> I was talking about oslo.service side
13:44:07 <Qiming> not oslo.messaging side
13:44:25 <Qiming> the event listening logic was learnt from ceilometer
13:45:28 <Qiming> I cannot recall whether seting executor to 'eventlet' rather than 'threading' would help
13:45:40 <Qiming> you may want to give it a try though
13:50:26 <ruijie_> sure, will dig this problem
13:50:47 <ruijie_> hi XueFeng
13:51:29 <ruijie_> the second one is about how to use user defined action to recover the physical resources
13:52:14 <ruijie_> as we discussed, we can let the health policy support node_recover action so that decision will be made when checking health poliy
13:52:39 <ruijie_> or we can set the recovery action to HealthRegistry directlly
13:54:04 <XueFeng> hi, ruijie_.you are discussing a health policy bug?
13:54:15 <ruijie_> yes XueFeng
13:55:17 <XueFeng> Which problem? any bug report?
13:55:42 <ruijie_> no bug reported yet
13:56:18 <ruijie_> the problem now is that: 1. recovery action will recreate the resource by default, 2. we are not able to close/stop the listener after policy detached
13:57:44 <Qiming> there is no conflict ruijie
13:57:55 <Qiming> we should persist the action into db
13:58:14 <Qiming> then retrieve it, send it as part of the recover action
13:58:22 <Qiming> have to leave to join a call
13:58:30 <ruijie_> sure
13:59:03 <ruijie_> Gentlemen, time's run out
13:59:09 <ruijie_> we can discuss it in #senlin
13:59:25 <XueFeng> ok
13:59:27 <ruijie_> #stopmeeting senlin
13:59:35 <ruijie_> #stopmeeting
13:59:43 <ruijie_> :(
14:00:02 <davidsha> Its end meeting
14:00:06 <davidsha> :)
14:00:18 <ruijie_> #endmeeting