openstackgerrit | xu-haiwei proposed openstack/python-senlinclient: Remove 'level', 'cooldown' and 'priority' properties in client https://review.openstack.org/267458 | 00:15 |
---|---|---|
*** xuhaiwei has joined #senlin | 00:15 | |
*** dixiaoli has joined #senlin | 00:31 | |
*** dixiaoli has quit IRC | 00:36 | |
openstackgerrit | Merged openstack/python-senlinclient: Remove 'level', 'cooldown' and 'priority' properties in client https://review.openstack.org/267458 | 01:11 |
*** Qiming has joined #senlin | 01:21 | |
openstackgerrit | xu-haiwei proposed openstack/python-senlinclient: Remove 'permission' from senlin client https://review.openstack.org/267883 | 01:31 |
openstackgerrit | xu-haiwei proposed openstack/python-senlinclient: Remove 'permission' from senlin client https://review.openstack.org/267883 | 01:38 |
*** Yanyanhu has joined #senlin | 01:40 | |
*** cschulz has quit IRC | 01:41 | |
*** elynn has joined #senlin | 02:00 | |
*** Qiming_ has joined #senlin | 02:00 | |
elynn | Morning | 02:01 |
*** Qiming__ has joined #senlin | 02:02 | |
*** Qiming has quit IRC | 02:03 | |
*** Qiming_ has quit IRC | 02:05 | |
*** Qiming__ is now known as Qiming | 02:07 | |
*** yuanying has joined #senlin | 03:19 | |
openstackgerrit | Merged openstack/python-senlinclient: Remove 'permission' from senlin client https://review.openstack.org/267883 | 03:19 |
*** yuanying_ has quit IRC | 03:21 | |
openstackgerrit | Cindia-blue proposed openstack/senlin: Add Recover into RPC API https://review.openstack.org/267922 | 03:37 |
*** Yanyan has joined #senlin | 03:48 | |
*** Yanyanhu has quit IRC | 03:48 | |
*** yuanying has quit IRC | 03:59 | |
*** yuanying has joined #senlin | 04:00 | |
*** yuanying has quit IRC | 04:02 | |
*** yuanying has joined #senlin | 04:03 | |
*** yuanying has quit IRC | 04:05 | |
*** yuanying has joined #senlin | 04:08 | |
*** Mayur_ has joined #senlin | 04:16 | |
Mayur_ | Hi | 04:16 |
openstackgerrit | Ethan Lynn proposed openstack/python-senlinclient: Remove node join/leave from senlinclient https://review.openstack.org/267926 | 04:17 |
xuhaiwei | hi | 04:17 |
Mayur_ | I have reported a bug related to webhook creation using create_receiver method. https://bugs.launchpad.net/senlin/+bug/1534444. Can anyone look into this matter. | 04:19 |
openstack | Launchpad bug 1534444 in senlin "resource Forbidden: You are not authorized to complete this action. (HTTP 403) for 'create_receiver' method." [Undecided,New] | 04:19 |
openstackgerrit | Ethan Lynn proposed openstack/python-senlinclient: Remove node join/leave from senlinclient https://review.openstack.org/267926 | 04:19 |
xuhaiwei | Mayur_, thank you for reporting this | 04:23 |
xuhaiwei | are you trying to scale out a heat stack by webhook? | 04:23 |
xuhaiwei | elynn, I think Mayur_ is using heat resource to create a receiver, does Heat support it now? | 04:25 |
xuhaiwei | can you have a look of this bug report? | 04:26 |
*** Mayur_ has quit IRC | 04:54 | |
openstackgerrit | Cindia-blue proposed openstack/senlin: Add Recover into RPC API https://review.openstack.org/267922 | 05:08 |
elynn | Hi Mayur_ | 05:32 |
xuhaiwei | he is gone | 05:32 |
elynn | Hi xuhaiwei | 05:32 |
xuhaiwei | you can comment in the launchpad | 05:33 |
openstackgerrit | Merged openstack/python-senlinclient: Remove node join/leave from senlinclient https://review.openstack.org/267926 | 05:33 |
elynn | heat resource doesn't support webhook | 05:33 |
xuhaiwei | ok | 05:33 |
elynn | heat only support cluster and profile for now. | 05:33 |
xuhaiwei | so he is doing in the wrong way | 05:33 |
elynn | I haven't add node/policy/receiver in heat | 05:34 |
xuhaiwei | it seems he requests receiver api directly from heat | 05:35 |
Qiming | hi, forwarded you all the email | 05:36 |
Qiming | let's see how we can help solve the problem | 05:37 |
xuhaiwei | I think we can test it in senlin first, without using Heat | 05:38 |
Qiming | yep | 05:39 |
Qiming | lixinhui, there? | 06:00 |
lixinhui | Yes, Qiming | 06:05 |
Qiming | lixinhui, looking at your cluster recover patches | 06:05 |
Qiming | overall looks good to me | 06:05 |
lixinhui | Thanks, I saw your comments | 06:05 |
Qiming | though I do have some concerns in the details | 06:06 |
lixinhui | yes | 06:06 |
lixinhui | I saw your replay on service.py | 06:06 |
lixinhui | and wonder in what way to get error node | 06:07 |
Qiming | I'd suggest we devise the APIs as individual calls and leave the composition of workflows or usage scenarios to higher level of logics | 06:08 |
lixinhui | you mean, find error nodes, recover node and cluster | 06:09 |
Qiming | at the RPC API layer, we expose cluster_check(), cluster_recover(), node_check() and node_recover() | 06:09 |
Qiming | these will serve the primitives someone can call | 06:09 |
Qiming | with cluster_check() we are enabling users to check (unconditionally) the health status of all nodes on a cluster | 06:10 |
Qiming | with cluster_recover(), we allow users to recover all nodes inside that cluster | 06:11 |
Qiming | the CLUSTER_RECOVER action will fork NODE_RECOVER actions | 06:11 |
Qiming | each node will decide whether it should do something based on its current status | 06:12 |
lixinhui | okay | 06:12 |
Qiming | providing a subset of cluster nodes for recovery would be cool | 06:12 |
Qiming | and it can be something we can add later on | 06:12 |
lixinhui | got it | 06:13 |
Qiming | at the moment, just make the logic simple and stupid would be okay | 06:13 |
lixinhui | yes, I see | 06:13 |
Qiming | making recover_object return a physical_id is a smart move! | 06:14 |
lixinhui | :) | 06:14 |
Qiming | let's do it in a step by step way | 06:16 |
Qiming | for node handling | 06:16 |
Qiming | we don't have node.do_check() yet, right? | 06:16 |
lixinhui | not yet | 06:17 |
lixinhui | I will add it from inner to external | 06:18 |
Qiming | okay, it's your call | 06:18 |
lixinhui | :) | 06:18 |
Qiming | you can start by working out a simple do_recover() logic then improve it | 06:19 |
Qiming | or you can start with adding do_check() and implement a do_recover() based on it | 06:19 |
Qiming | both roads lead to Roma | 06:20 |
Qiming | Rome | 06:20 |
lixinhui | okay, I will think about it | 06:20 |
lixinhui | then build the Rome | 06:21 |
Qiming | and then destroy it | 06:21 |
lixinhui | even a small market first | 06:21 |
lixinhui | haha | 06:22 |
openstackgerrit | EldonZhao proposed openstack/python-senlinclient: Input of update_policy using error Fix Bug #1534072 https://review.openstack.org/267960 | 06:25 |
openstack | bug 1534072 in senlin "Input of update_policy using error" [Undecided,New] https://launchpad.net/bugs/1534072 - Assigned to EldonZhao (xyz-213083464) | 06:25 |
Qiming | Yanyan, there? | 06:33 |
*** lixinhui has quit IRC | 06:39 | |
Yanyan | hi, Qiming | 06:39 |
Qiming | hi, as API liaison, want to know your opinion on two things | 06:40 |
Qiming | one is about getting node details: https://review.openstack.org/#/c/262367/ | 06:40 |
Qiming | without this patch we won't be able to get node details from client side | 06:40 |
Qiming | another workaround would be to add a NodeDetail resource that directs us to a GET of '.../<node_id>/details' | 06:41 |
Yanyan | I think the first one is better | 06:41 |
Qiming | I think it doesn't worth the effort | 06:41 |
Yanyan | yes | 06:42 |
Qiming | okay, will keep on pushing that | 06:42 |
Yanyan | agree, extra resource for this purpose is not needed I think | 06:42 |
Qiming | a second topic | 06:42 |
Qiming | https://review.openstack.org/#/c/254895/1/guidelines/versioning.rst | 06:42 |
Qiming | though this is still under review, we may need to add a version entry and a versions endpoint | 06:43 |
Yanyan | yes, I noticed keystone tried to provide this support before? | 06:43 |
Yanyan | about the api version it supported | 06:43 |
Qiming | not sure | 06:43 |
Yanyan | a discover module in its client | 06:44 |
Qiming | even if senlin has only one version at the moment or near future | 06:44 |
Qiming | we should be returning a dict in a format that is understandable by all consumers | 06:44 |
Yanyan | yes, this is necessary | 06:44 |
Qiming | okay, I'll push on that too | 06:44 |
Yanyan | thanks. will check these two patches and leave comments or talk with you guys | 06:45 |
Qiming | great | 06:45 |
*** Qiming has quit IRC | 06:46 | |
*** Yanyan has quit IRC | 06:46 | |
*** Qiming has joined #senlin | 06:46 | |
*** Yanyan has joined #senlin | 06:46 | |
Yanyan | network was broken | 06:47 |
Yanyan | BTW, I'm trying to search a solution for query cross tables with 1 to n relationship as you sugguested | 06:47 |
Yanyan | hope can propose a patch for it soon | 06:47 |
*** lixinhui has joined #senlin | 06:47 | |
openstackgerrit | xu-haiwei proposed openstack/senlin: Add refresh_zone_data method to update cluster zone info https://review.openstack.org/267969 | 06:51 |
Qiming | Yanyan, http://git.openstack.org/cgit/openstack/heat/tree/heat/db/sqlalchemy/api.py#n420 | 06:59 |
Qiming | this one? | 06:59 |
openstackgerrit | EldonZhao proposed openstack/python-senlinclient: (Bug #1534072)Input of update_policy using error https://review.openstack.org/267973 | 06:59 |
openstack | bug 1534072 in senlin "Input of update_policy using error" [Undecided,New] https://launchpad.net/bugs/1534072 - Assigned to EldonZhao (xyz-213083464) | 06:59 |
Yanyan | Qiming, yes, I guess so. But when I tried some filtering like this "query.filter(tag_alias.tag == tag)", I got an sql error | 07:00 |
Yanyan | I guess I didn't use it right | 07:00 |
Yanyan | will check it | 07:00 |
Yanyan | thanks | 07:00 |
openstackgerrit | Qiming Teng proposed openstack/senlin: RPC unit tests for cluster_policy_attach/detach https://review.openstack.org/267978 | 07:14 |
openstackgerrit | xu-haiwei proposed openstack/senlin: Add refresh_zone_data method to update cluster zone info https://review.openstack.org/267969 | 07:20 |
Yanyan | hi, Qiming, it works, I didn't use join method correctly | 07:36 |
Yanyan | thanks for the hint :) | 07:36 |
openstackgerrit | EldonZhao proposed openstack/python-senlinclient: Input of update_policy using error Fix Bug #1534072 https://review.openstack.org/267960 | 07:38 |
openstack | bug 1534072 in senlin "Input of update_policy using error" [High,New] https://launchpad.net/bugs/1534072 - Assigned to EldonZhao (xyz-213083464) | 07:38 |
openstackgerrit | Qiming Teng proposed openstack/python-senlinclient: Fix meta var problem in cluster-policy-list https://review.openstack.org/267987 | 07:39 |
Qiming | Yanyan, cool | 07:41 |
Qiming | it is a much cleaner way to handle multi-table operations I guess | 07:41 |
Yanyan | yes, absolutely | 07:42 |
openstackgerrit | Qiming Teng proposed openstack/python-senlinclient: Remove cluster-policy-enable/disable https://review.openstack.org/267990 | 07:44 |
Yanyan | hi, Qiming, do I need to define an inner function '_cluster_policy_get_all' and let cluster_policy_get_all and cluster_policy_get_all_by_policy_type invoke it? | 07:49 |
Yanyan | like what heat is doing now | 07:49 |
Yanyan | or just put this logic into cluster_policy_get_all_by_policy_type | 07:50 |
Qiming | emm, don't see the need to change other functions | 07:50 |
Yanyan | ok | 07:50 |
Qiming | cluster_policy_get_by_type would suffice | 07:50 |
Yanyan | will just add cluster_policy_get_all_by_policy_type function for this support | 07:50 |
Yanyan | got it | 07:50 |
Qiming | it is a join query, not expecting it to be used all over the places | 07:51 |
Yanyan | I see | 07:51 |
Qiming | when that requirement comes, we can try refine the code | 07:51 |
Yanyan | yes | 07:52 |
openstackgerrit | EldonZhao proposed openstack/python-senlinclient: Follow Up https://review.openstack.org/267993 | 07:54 |
openstackgerrit | Cindia-blue proposed openstack/senlin: Expose Check Function in Profile https://review.openstack.org/267994 | 07:58 |
openstackgerrit | Merged openstack/senlin: RPC unit tests for cluster_policy_attach/detach https://review.openstack.org/267978 | 08:04 |
openstackgerrit | Yanyan Hu proposed openstack/senlin: Add cluster_policy_get_by_type method to db_api https://review.openstack.org/267422 | 08:08 |
*** junxu has joined #senlin | 08:09 | |
*** elynn has quit IRC | 08:11 | |
openstackgerrit | EldonZhao proposed openstack/python-senlinclient: Fix update_policy parameter passing error https://review.openstack.org/267960 | 08:12 |
openstackgerrit | Merged openstack/senlin: Expose Check Function in Profile https://review.openstack.org/267994 | 08:46 |
openstackgerrit | Merged openstack/python-senlinclient: Fix update_policy parameter passing error https://review.openstack.org/267960 | 08:46 |
openstackgerrit | Yanyan Hu proposed openstack/senlin: Add cluster_policy_get_by_type method to db_api https://review.openstack.org/267422 | 08:47 |
Qiming | hi, all | 08:53 |
Qiming | important changes coming | 08:54 |
Qiming | 69 | 08:54 |
Qiming | currently | 08:54 |
Qiming | a node can be an orphan node if a cluster_id is set to None | 08:54 |
Qiming | this is wrong | 08:55 |
Qiming | it will cause some problems when we are retrieving a list of nodes | 08:55 |
Qiming | for example, node_get_all(cluster_id=None) | 08:55 |
Qiming | this function is becoming ambiguous | 08:56 |
Qiming | it can be interpreted as a retrieval of all orphan nodes | 08:56 |
Qiming | or it can be interpreted as retrieving all nodes without caring which cluster a node belongs to | 08:56 |
Yanyan | IMO, node_get_all(cluster_id=None) means getting all orphan nodes | 08:58 |
Qiming | cluster_id=None can be interpreted into a default value | 08:58 |
Yanyan | if we want to retrieve all nodes without caring parent cluster, we shouldn't specify cluster_id parameter? | 08:59 |
Qiming | so node_get_all() will return all nodes or all orphan nodes? | 08:59 |
Yanyan | no, cluster_id=None and cluster_id parameter is not provided are two cases I think | 08:59 |
Qiming | get the differences? | 08:59 |
Yanyan | so node_get_all() may need to be redefined | 09:00 |
Qiming | so ... | 09:00 |
Qiming | there is no clean way to revise that method | 09:00 |
Yanyan | as you said, now it's ambiguous | 09:00 |
Yanyan | or we add a new method | 09:00 |
Qiming | I can do a check if cluster_id is None | 09:00 |
Qiming | the 'if cluster_id is None' can be interpreted as 'I do not care' or 'I want orphan nodes' | 09:01 |
Qiming | so ... | 09:01 |
Qiming | I'm proposing a change | 09:02 |
Yanyan | or maybe we put it into filter? | 09:02 |
Qiming | for orphan nodes, we set cluster_id to '' | 09:02 |
Yanyan | ok, will check it | 09:02 |
Qiming | then 'if cluster_id is None' means 'I don't care' | 09:02 |
Qiming | "if cluster_id == ''" means a retrieval of orphan nodes | 09:03 |
Yanyan | this is for erasing ambiguousness in db api layer? | 09:06 |
Qiming | yes | 09:06 |
Yanyan | if so, why we don't put cluster_id into filter | 09:07 |
Yanyan | I think the function name 'node_get_all' actually shows this is a method about node query | 09:07 |
*** elynn has joined #senlin | 09:07 | |
Qiming | database won't be able to do some comparison against None columns | 09:08 |
Qiming | I believe we have encountered similar problems before | 09:08 |
Yanyan | let me see | 09:08 |
Qiming | if you examine the _query_node_get_all() function closely, you will find the difference | 09:09 |
Qiming | it is very subtle | 09:09 |
Yanyan | yes | 09:09 |
openstackgerrit | Qiming Teng proposed openstack/senlin: Optimize node query at DB layer https://review.openstack.org/268020 | 09:09 |
Yanyan | what I mean is, the key problem is there is a cluster_id input parameter and it has a default value of None | 09:10 |
Qiming | 'if cluster_id' there can mean different thing | 09:10 |
Qiming | yep | 09:10 |
Qiming | but we are not supposed to change the default value to '' or something else | 09:10 |
Yanyan | yes, so it is always there inside node_get_all function | 09:11 |
Yanyan | no matter what value it is | 09:11 |
Qiming | yes | 09:11 |
Yanyan | Qiming, ok, I think there is no better way for this issue | 09:11 |
Qiming | it will yield confusing results | 09:11 |
Qiming | that is why we have a node_get_all_by_cluster function | 09:11 |
Yanyan | ok, I think using '' and None to differentiate two cases is ok | 09:12 |
Qiming | that function is useless now, just a wrapper of the internal _query_node_get_all | 09:12 |
Qiming | see patch #268020 | 09:12 |
Yanyan | Just I feel maybe letting cluster=None means search for orphan node is better? | 09:12 |
Qiming | I'm ringing an alarm here because I'm not 100% sure the patch has covered all cases | 09:12 |
Yanyan | since if not, user need to change DB record again if they have orphan nodes created before | 09:13 |
Qiming | cluster=None is a default value | 09:13 |
*** elynn has quit IRC | 09:13 | |
Qiming | the way to check it is ambiguous | 09:13 |
Qiming | the only thing you can do is 'if cluster_id is None' or 'if cluster_id' | 09:14 |
Qiming | neither one is that clear about the semantics | 09:14 |
Yanyan | yes | 09:14 |
openstackgerrit | Cindia-blue proposed openstack/senlin: Add Check and Recover into Node Action https://review.openstack.org/264568 | 09:14 |
Qiming | it is not about the function interface, it is about the interpretation of the parameter | 09:14 |
Yanyan | I see | 09:15 |
*** Qiming_ has joined #senlin | 09:17 | |
openstackgerrit | Merged openstack/senlin: Add cluster_policy_get_by_type method to db_api https://review.openstack.org/267422 | 09:18 |
*** Qiming has quit IRC | 09:20 | |
*** Qiming_ has quit IRC | 09:24 | |
openstackgerrit | Merged openstack/senlin: Optimize node query at DB layer https://review.openstack.org/268020 | 09:30 |
*** Yanyan has quit IRC | 09:41 | |
*** Qiming has joined #senlin | 10:15 | |
openstackgerrit | junxu proposed openstack/senlin: Fix logic broken of lb policy https://review.openstack.org/268051 | 10:18 |
*** xuhaiwei has quit IRC | 10:41 | |
*** gongysh has quit IRC | 10:48 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: DISRUPTIVE: add version to profile/policy types https://review.openstack.org/268115 | 12:37 |
*** openstackgerrit has quit IRC | 12:50 | |
*** openstackgerrit has joined #senlin | 12:51 | |
*** Yanyanhu has joined #senlin | 14:08 | |
*** pratikmallya has joined #senlin | 14:13 | |
*** Yanyanhu has quit IRC | 14:15 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: Refactor modules used by senlin-api https://review.openstack.org/268170 | 14:50 |
openstackgerrit | Merged openstack/senlin: DISRUPTIVE: add version to profile/policy types https://review.openstack.org/268115 | 14:57 |
openstackgerrit | Qiming Teng proposed openstack/senlin: Refactor modules used by senlin-api https://review.openstack.org/268170 | 15:02 |
*** pratikma_ has joined #senlin | 15:09 | |
openstackgerrit | Doug Hellmann proposed openstack/senlin: Revert "Pass environment variables of proxy to tox" https://review.openstack.org/268182 | 15:10 |
*** pratikmallya has quit IRC | 15:13 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: Refactor modules used by senlin-api https://review.openstack.org/268170 | 15:19 |
openstackgerrit | Merged openstack/python-senlinclient: Remove cluster-policy-enable/disable https://review.openstack.org/267990 | 15:21 |
*** jun_ has joined #senlin | 15:25 | |
*** junxu has quit IRC | 15:29 | |
openstackgerrit | Qiming Teng proposed openstack/senlin: Simplify API resource creation https://review.openstack.org/268205 | 15:51 |
openstackgerrit | Merged openstack/senlin: Revert "Pass environment variables of proxy to tox" https://review.openstack.org/268182 | 15:55 |
openstackgerrit | Merged openstack/python-senlinclient: Fix meta var problem in cluster-policy-list https://review.openstack.org/267987 | 15:57 |
openstackgerrit | Merged openstack/senlin: Refactor modules used by senlin-api https://review.openstack.org/268170 | 16:00 |
*** Qiming has quit IRC | 16:31 | |
*** cschulz has joined #senlin | 17:08 | |
*** pratikma_ has quit IRC | 17:40 | |
*** pratikmallya has joined #senlin | 18:51 | |
*** pratikmallya has quit IRC | 22:27 | |
*** pratikmallya has joined #senlin | 22:48 | |
*** pratikmallya has quit IRC | 23:04 | |
*** pratikmallya has joined #senlin | 23:29 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!