Thursday, 2015-12-03

*** pratikmallya has joined #senlin00:56
*** zhenguo has joined #senlin01:21
*** Yanyanhu has joined #senlin01:28
*** rebase_ has quit IRC01:28
*** lixinhui_ has joined #senlin01:39
*** Qiming has joined #senlin02:03
xuhaiweiQiming, are you woring on the http response fix bp now?02:05
xuhaiweithe second step02:06
Qimingyes, xuhaiwei02:06
Qimingas for the api-site patch02:06
xuhaiweithe patch is on the way?02:06
Qimingit is just a first step to add api docs02:06
Qimingwe have a long way to complete the bp02:06
Qimingbut we are not blocking the api docs because we have plans to revise them02:07
xuhaiweiI mean if you are not writing patch about how to return status code to client, I will write one02:07
xuhaiweican we do it now?02:07
Qimingthat will be good02:07
xuhaiweiok02:07
Qimingwe will have per-api patch proposed and reviewed02:08
xuhaiweiI reviewed the patch you sent to api-ref02:08
Qiming"The http response status code is quite different from what we have fixed in Senlin"02:08
Qimingthis is incorrect02:09
xuhaiweithat is your intension?02:09
Qimingit is creating an impression to the api project that the doc is not mature02:09
Qimingthere is nothing we HAVE FIXED so far02:09
Qimingwe added 'success' to be an intended status code to be returned02:10
Qimingit is not yet effected02:10
xuhaiweiI know that, so the api-ref just keep the current status code, and you will fix it later again?02:10
Qimingalso, if you are reading the wadl file carefully, profile_create.json is the request body, profile_create_resp.json is a response02:11
Qimingif we are saying that we return 201 for profile_create today02:11
Qimingare we telling the truth?02:11
xuhaiweiI think the api-ref should tell the right thing, that means we need to fix them in senlin02:12
Qimingas for the response json files' names, is there any requirement to have them named the same?02:12
xuhaiweiwrite something wrong and then fix them?02:12
Qimingit is not something wrong02:12
Qimingnothing is wrong, man02:12
Qimingwe are improving things02:13
Qimingwhen we have fixed the code, we revise the API doc to reflect the API change02:13
xuhaiweiso why not improve them in one time02:13
Qimingthat will be a step-by-step way02:13
Qimingan API document is supposed to reflect the current code implementation, right?02:13
xuhaiweior fix the code first, and then push the api doc02:14
Qimingit is not a design, not a vision02:14
Qimingthe goal is to have them consistent02:14
Qimingif we wait for all API changes to land and then propose the API doc02:15
Qimingcan you estimate when we can publish an API doc?02:15
xuhaiweiI also saw some of the status code like DELETE action is returning 204, that's not what we are doing now02:15
Qimingif you are seeing things inconsistent, file a bug and fix it02:15
xuhaiweiI mean in the api-ref02:16
QimingI understand02:16
Yanyanhuhi, Qiming, xuhaiwei, IMHO, I think it's right to give an API doc which reflects the REAL status of our CURRENT API implementation02:16
xuhaiweiok02:16
Yanyanhujust feel mark it as OpenStack Clustering API v1 could have some problems02:17
Yanyanhusince that means if we change the API interface later, we have to bump to v202:17
Qimingwe are still working on it02:17
Qimingwe are not doing a formal release yet02:17
Qimingthat means we are supposed to work harder on getting things fixed, improved02:17
Qimingwe are already missing mitaka-1 release today02:18
xuhaiweiabout the json file names, why not keep them consistent?02:18
Qimingthey are just samples, referenced from the wadl02:18
Qimingkeeping them consistent would be good02:18
Qimingbut I don't see it a bug if we have both xxx_resp.json and xxx_response.json, provided we are getting the links right02:19
Yanyanhuok, so the later change to API doc will be treated as fix, not new API design02:19
Qimingyes, those are all fixes02:19
xuhaiweiyes, that's some nits02:19
Qimingif you have been working on fixing api docs previously, you will feel differently02:20
Yanyanhuok, if so, that makes sense.02:20
*** elynn has joined #senlin02:20
xuhaiweiabout other json files like cluster_create.json, they are request body?02:20
Qimingxuhaiwei, check the wadl file and see where they are linked from02:21
Qimingit is refrenced from line 29002:21
Qimingit IS are request body02:21
Qimingline 339 is a link to the sample response02:22
xuhaiweiI think I need to learn how to read the file02:24
Qimingyes, indeed02:24
Qimingor you can start working on fixing the code02:25
openstackgerritYanyan Hu proposed openstack/senlin: Give unique name to all resources created in functional test  https://review.openstack.org/25271302:26
xuhaiweiok02:27
Qimingthere are higher priority things we need to fix02:28
Qimingfor example: https://review.openstack.org/#/c/251204/02:28
Qimingwe are not returning an object02:28
Qimingthis is bad02:28
Qimingneed fix both the code and the doc02:28
Qimingbut if we wait for all these patches to land before proposing the api doc02:28
Qimingit will take forever02:29
Qimingthe only thing that never changes is change02:29
Qiminglifeless was putting that right, see https://review.openstack.org/#/c/226157/11/specs/backwards-compat-libs-clients.rst02:30
Qimingline 47-5202:30
*** rebase_ has joined #senlin02:32
*** rebase_ has quit IRC02:35
xuhaiweimaybe we need to do version management like Nova02:36
xuhaiweiin the future02:36
Qimingyes, we will02:37
Qimingthe first thing first is get the V1 fixed02:37
Qimingmake it as good as we can02:37
xuhaiweiok02:37
Qimingbefore V1 is stabilized, we are not working on version or micro-version management02:38
Qimingbefore we have version management, we are not bumping the API version02:38
xuhaiweiyes, it is not necessary now02:38
Yanyanhuagree that fixing v1 is the most important thing for now02:39
Qimingwe are not confident to invite people to try this thing if we know for sure the API will change a lot02:40
Yanyanhuyes, definitely02:40
Qimingwhat concerns me now is the sdk side support to 20102:40
Qimingand 20202:40
Qimingwe are gonna have a lot of troubles there02:40
Qimingwe need hands to work on them02:40
Yanyanhuwhat is sdk team's opinion about this issue?02:41
Yanyanhuthey want to fix it but just lack of resource?02:41
Qimingwe are still hosting our own models at client side: http://git.openstack.org/cgit/openstack/python-senlinclient/tree/senlinclient/v1/models.py02:41
Qimingall those things are to be removed02:41
Yanyanhuyes, this is a problem02:41
QimingI'm busy like a dog02:41
Yanyanhuunderstand...02:42
lixinhui_everyone like dog02:42
Qimingall lines after this: http://git.openstack.org/cgit/openstack/python-senlinclient/tree/senlinclient/v1/client.py#n26802:42
Qimingshould be removed02:42
Yanyanhuthey should become proxy call?02:43
Yanyanhufunction call02:43
xuhaiweicurrently which one is not landed in SDK?02:43
xuhaiweior all of them?02:43
Qiminghttps://review.openstack.org/#/c/250574/02:43
Qiminghttps://review.openstack.org/#/c/251204/02:44
Qimingwe still need to add cluster_policy model02:44
Qiminga revised version of webhook02:44
Qimingprofile_type02:45
Qimingpolicy_type02:45
Qimingcluster_node02:45
Qimingwhen all these landed, we can delete all lines after this: http://git.openstack.org/cgit/openstack/python-senlinclient/tree/senlinclient/v1/client.py#n3202:46
xuhaiweithese jobs are not related to the API fix I think02:47
Qiming...02:48
xuhaiweithey are also in very high priority?02:48
xuhaiweidon't cry sir02:49
Qimingwithout getting APIs stabilized02:49
Qimingwe are not proposing a stable resource to SDK02:49
Qimingwithou SDK side landing of senlin resources02:49
Qimingwe won't be able to cleanse the senlinclient thing02:50
xuhaiweiso still the api side should be more urgent?02:50
Qimingyes, it is top priority02:51
xuhaiweiok, let's do it02:51
Qimingmake the code work as expected02:51
Qimingmake the document published and reflecting the status quo of code implementation02:51
Qimingannounce in the community: we are releasing our first official version 1.0.0, it is stable02:52
Qimingthen we catch up with the community by tagging senlin as release: milestones_with_intermediaries02:53
xuhaiweistill a long way to go02:55
Qimingyes, xuhaiwei02:56
Qimingso I'm gonna ignore your complaints about the naming of xxx_resp.json or xxx_response.json02:56
xuhaiweiok02:56
Qimingfeel free to file a bug, will jump onto it later02:56
openstackgerritYanyan Hu proposed openstack/senlin: Merge cluster/node list test to other test cases  https://review.openstack.org/25272403:09
*** pratikmallya has quit IRC03:15
openstackgerritMerged openstack/senlin: Give unique name to all resources created in functional test  https://review.openstack.org/25271303:15
*** yuanying_ has joined #senlin03:18
openstackgerritQiming Teng proposed openstack/senlin: Make build-info api return an object  https://review.openstack.org/25272503:19
*** yuanying has quit IRC03:20
*** yuanying_ has quit IRC03:33
*** rebase_ has joined #senlin03:36
*** rebase_ has quit IRC03:37
*** yuanying has joined #senlin03:38
*** pratikmallya has joined #senlin04:01
*** yuanying has quit IRC04:05
*** yuanying has joined #senlin04:08
*** elynn has quit IRC04:15
*** pratikmallya has quit IRC04:23
*** elynn has joined #senlin04:48
openstackgerritxu-haiwei proposed openstack/senlin: Make senlin API return correct status code  https://review.openstack.org/25274104:56
openstackgerritMerged openstack/senlin: Make build-info api return an object  https://review.openstack.org/25272505:46
Qimingpublisher job has been merged05:52
Yanyanhucool!05:52
elynncool!05:52
Qimingstill waiting for doc to show up on docs.openstack.org/developer/senlin/05:52
openstackgerritMerged openstack/senlin: Make senlin API return correct status code  https://review.openstack.org/25274105:55
Qimingokay, now the API is returning the correct status code, have to rework the api doc06:08
Yanyanhuhi, xuhaiwei, I found api resp code doesn't change after applying this patch?06:08
Yanyanhuhttps://review.openstack.org/25274106:08
YanyanhuQiming, so it works well in you env?06:08
Qimingthat is a different thing06:09
xuhaiweidue to my test, it is changed06:09
Yanyanhuok, I guess something wrong in my env06:09
Qimingwe are returning the expected status code now06:09
Qimingsomething will break06:09
Qimingbut the api doc needs a revision06:09
YanyanhuI just pull the latest code and reinstall senlin service06:09
YanyanhuQiming, yes06:09
Qimingif things are broken, it is not the api doc's problem06:09
YanyanhuQiming, time to change API doc now06:09
xuhaiweifor example you create a cluster, the response code is not 202?06:10
Qiming\o/06:10
Qiminghttp://docs.openstack.org/developer/senlin/06:10
Qimingit IS there !!!06:10
Yanyanhunice!06:10
Qimingwelcome to earth, senlin docs!06:10
xuhaiweihere we come!06:10
Yanyanhuhaha06:10
Qimingenjoy it!!!06:11
Yanyanhu:)06:11
Qimingguys, I'm dancing06:12
QimingI'm not crazy, don't worry06:12
xuhaiweiI think that patch is not merged yet, yanyan06:12
Yanyanhu:P06:12
xuhaiweimerged but not landed06:12
Yanyanhuwhat you mean by 'not landed'?06:13
xuhaiweinot into the master branch yet06:13
xuhaiweican you check the source?06:13
Yanyanhuyes, I saw it in my local code06:13
YanyanhuI see the change06:13
Yanyanhuabout use 'success' code as resp status_code06:14
xuhaiweiit still doesn't work?06:14
Yanyanhujust don't know why it doesn't take effect06:14
Yanyanhuyes...06:14
Qimingafter this is merged, we will have links from the index.html : https://review.openstack.org/#/c/252374/06:14
YanyanhuI cleaned all *.pyc and reintall service06:14
QimingYanyanhu, what do you mean by it doesn't work06:15
Qimingwhat doesn't work06:15
xuhaiweithe response code is not changed06:15
xuhaiweihe means06:15
xuhaiweiDEBUG (session) REQ: curl -g -i -X POST http://192.168.11.81:8778/v1/d59cb05324954496b86475cc9afbbd65/clusters -H "User-Agent: python-senlinclient" -H "Content-Type: application/json" -H "X-Auth-Token: {SHA1}b896315a6d8e55aa080a1b13e6e612c9b293cf44" -d '{"cluster": {"name": "cluster2", "parent": null, "profile_id": "pro_nova", "min_size": 0, "desired_capacity": 0, "timeout": null, "max_size": -1, "metadata": {}}}' INFO (connectionp06:15
Yanyanhuyes06:15
QimingYanyanhu, when you do cluster-create06:15
xuhaiweiit works for me06:15
YanyanhuI think something error happened in my env06:15
Qimingyou will get a 20206:15
Qimingthen the client is doing another get06:15
Qimingwhich returns 20006:15
Qimingcheck log output from 'senlin -d cluster-create' carefully06:16
xuhaiweithe 200 is GET method which gets the new cluster06:16
Yanyanhuyes, but when I used --debug mode to test delete, I saw 204 rather than 202 is returned to me06:16
Yanyanhuweird06:17
Qimingsigh06:17
Qimingit is not weird I think06:17
xuhaiweisome DELETE returns 20406:17
Yanyanhuyes, but I think cluster-delete should give 202 as resp code06:17
QimingWe are not cleansing all 'raise exc.HTTPNoContent'06:17
Qimingread the source06:18
Yanyanhuoh06:18
YanyanhuI see06:18
Yanyanhulet me test create06:18
QimingI believe there are a lot of other inconsistency06:18
xuhaiweiI will start the cleaning job06:18
Qimingthanks06:18
Qimingxuhaiwei, please do this slowly, one by one06:19
xuhaiweiok, first to clean UPDATE method06:19
Qimingfor example, when an api is supposed to return a 20206:19
Qimingwe need to add a comment (TODO) there, because we are not returning the proper 'Location' header06:20
Qimingit is a partial fix06:20
xuhaiweiok06:20
Qimingalso please help do some research on 202, whether we are supposed to return something in the body, or we are supposed to return nothing in body06:21
Qimingcannot recall exactly what the api-wg suggests06:21
Qimingiirc, api-wg is not very clear about this06:21
Qiminglet's find out what is the best practice06:21
xuhaiweiI will check api-wg manual again06:22
Yanyanhuwill propose a change in functional test since part API interfaces have changed its response status_code06:22
QimingI'm focusing on making the api doc consistent06:22
Qimingcool06:22
Yanyanhuand haiwei, if you can also revised the functional test each time you remove a "raise" statement in API implementation, that would be best :)06:23
YanyanhuI will try to build a correct based base on this patch https://review.openstack.org/25274106:23
Yanyanhusince functional still doesn't work correctly for some DB sync issues I think06:24
YanyanhuI'm trying to avoid making it more messy...06:24
xuhaiweisorry to bring you trouble Yanyanhu, I will do that06:27
xuhaiweithought I dont know function test very well06:27
Yanyanhuno problem :) I will try to make a revision to make it match current status06:28
*** pratikmallya has joined #senlin07:05
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception raised when update cluster  https://review.openstack.org/25278607:06
Qiminghey, guys07:11
Qimingwhen I'm revising the api doc07:11
QimingI am thinking if we should remove "created_time", "updated_time" and "deleted_time" from the filters for listing07:12
Qimingthey are pretty difficult to input07:12
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception from node update API  https://review.openstack.org/25278707:13
xuhaiweisome time 'created_time' is usefull07:13
Yanyanhuhmm, I think we should since people could use timestamp to do sorting but not filtering I think07:13
Qimingit can be used to do sorting07:13
xuhaiweiwhen clusters or nodes are too many, people may want to know who is newer07:14
Qimingto make 'created_time' based filtering work, basically, you will need to know the exact second when the object was created07:14
QimingI'm not proposing we remove them from the object properties07:14
QimingI'm concerning about use timestamp or time string to do filtering07:15
xuhaiweiyou mean there maybe some resources which have the exact same timestamp???07:15
Qiming...07:16
xuhaiweiare you worried about that?07:16
xuhaiweisometime that happens, because the timestamp is not so exact07:16
QimingI'm concerning how useful it would be07:16
xuhaiweiyou mean if people want to know who is older they can check the create_time by themselves?07:17
Qimingwill you do a cluster list like this? senlin cluster-list -f "created_time=2015-11-23T08:33:13"07:17
xuhaiweiI got you07:18
Qimingmy question " if we should remove "created_time", "updated_time" and "deleted_time" from the filters for listing"07:18
xuhaiweithat's unuseful07:18
Qimingokay07:19
Qimingthen we should remove line 72-74 from http://git.openstack.org/cgit/openstack/senlin/tree/senlin/api/openstack/v1/profiles.py07:19
xuhaiweiI am ok to fail that function07:19
Yanyanhuyes, we should07:20
Qimingif we SHOULD remove them07:21
Qimingthen NOW is the right time07:21
Qimingand the same applies to policies07:22
xuhaiweiok07:24
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception from node update API  https://review.openstack.org/25278707:24
Qimingin future, we can support something like "get me all the profiles created before last Monday"07:25
Qimingthat will be some query string like "/.../profiles?created_time=lt:2015-11-01"07:26
Qiminglike proposed here: http://git.openstack.org/cgit/openstack/api-wg/tree/guidelines/pagination_filter_sort.rst#n9407:26
Qiminganyway, exact matching of timestamps are useless07:27
Qimingneed to remove them07:27
openstackgerritlvdongbing proposed openstack/python-senlinclient: Fix nit in the help msg of cluster-node-del  https://review.openstack.org/25279407:29
openstackgerritMerged openstack/python-senlinclient: Fix nit in the help msg of cluster-node-del  https://review.openstack.org/25279407:45
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception raised when update cluster  https://review.openstack.org/25278607:50
xuhaiweiQiming07:53
xuhaiweiaccording to the api-wg, only creation action return a 'location' header07:53
openstackgerritYanyan Hu proposed openstack/senlin: Change action.start_time and action.end_time data type to REAL  https://review.openstack.org/25280307:54
xuhaiweihttps://github.com/openstack/api-wg/blob/master/guidelines/http.rst#2xx-success-codes07:54
Qimingxuhaiwei, I don't think that is true07:54
Qimingmy understanding is different07:54
xuhaiweiin fact I don't know why the location header should be included07:55
Qimingit only says that a create action should contain a 'location' header if 202 is to be returned07:55
Qimingxuhaiwei, in a HTTP response, you will have a header and a body07:55
xuhaiweiyes07:55
Qimingthe header part is for the software to process, while the body part is for the 'user'07:55
Qimingif there is a 'header' in the response, the client software can decide whether it will loop-wait until the resource status changes07:56
*** pratikmallya has quit IRC07:56
Qimingwhen you are creating a cluster, for example, you return a 202, the body part doesn't matter, because it contains no useful information07:56
Qimingbut the header should contain a pointer to a location where the client software can check if the resource creation has completed07:57
Qimingin the case of cluster-create07:57
Qimingthe header should contain an entry (as suggested by api-wg):07:58
QimingLocation: http://server:port/<tenant_id>/v1/clusters/<cluster_id>07:58
xuhaiweiso in that case, all 202 action should include the location header indeed07:58
Qimingthat is the reason why the guideline says "MUST"07:59
*** lvdongbing has joined #senlin07:59
xuhaiweiso shall we add location header to all 202 actions or talk with the api-wg guys?08:00
Qiminginstead the above location can be about the action, instead of the cluster:08:00
QimingLocation: http://server:port/<tenant_id>/v1/actions/<action_id>08:00
Qimingxuhaiwei, we balance, we may our own judgements here08:01
xuhaiweiWe treat 'action' as a resource?08:01
Qimingactions are resources08:01
Qimingwe can list and show actions08:01
Qimingwe RESPECT the guidelines from the api-wg, but they are not GOD08:02
Qimingfor example, they don't have a lot influences on any projects at all08:03
Qimingwe are just trying to be good citizens, we do what we believe the right things08:03
xuhaiweiok08:03
Qimingif the guidelines doesn't make much senses to use, it is okay to deviate08:04
QimingI believe a lot projects today return 200 for a update command08:04
Qimingor they use PUT instead of PATCH even when they do partial update08:05
Qimingthe world is never perfect08:05
Qimingagain, we want to be the best citizen, to our best08:05
xuhaiweiok08:05
xuhaiweiSo according to your comment, first HTTPAccept exception should be removed, right?08:06
Qimingyes08:06
xuhaiweiand the response body, we should return it, maybe the TODO is not in right place?08:07
Qimingusing exceptions to return 202 is a hack08:07
Qimingwe won't get a chance to insert 'Location' header even if we want to08:07
xuhaiweiI don't understand08:08
Qimingif we are using HTTPAccept exception, we won't get a chance to insert 'Location' header even if we want to08:08
Qimingthis part okay?08:09
xuhaiweigot it08:09
Qimingthen08:09
xuhaiweimiss the context08:09
xuhaiweijust now08:09
xuhaiweimissed08:09
QimingI don't think we will have a perfect solution for everybody08:09
Qimingso my suggestion:08:10
xuhaiweiyes?08:10
Qimingsince api-wg wants us to return the resource in body, we can do that08:10
Qimingcheck the engine-side implementation of cluster-update08:11
Qimingthe api-wg wants a response to PATCH request to contain a body, I mean, then we do it, it is not a big deal, just some overhead08:12
Qimingthe 2nd point08:12
Qimingsince we are returning a 202 for the PATCH verb, there is no guide on this08:13
Qimingwe follow the 202 rule, add a 'Location' header to the response08:13
xuhaiweiok08:13
QimingI don't think there is a requirement that a 202 response cannot contain a body, right?08:14
xuhaiweiyes, currently like creation, we do contain a body08:15
openstackgerritYanyan Hu proposed openstack/senlin: Merge cluster/node list test to other test cases  https://review.openstack.org/25272408:15
openstackgerritYanyan Hu proposed openstack/senlin: Revise functional test to adapt to latest API change  https://review.openstack.org/25281308:15
Qimingwe are not doing that for node-update08:15
Qimingengine side implementation of node-update is only returning {'action': action_id}08:16
Qimingas a first step08:16
Qimingwe have the engine side return both a representation of the resource in question, AND an action id08:16
Qimingthe next step, we will figure out how to build a location pointer at the API layer, based on the action id returned08:17
Qimingsounds a plan?08:17
xuhaiweiabout the location pointer, it should point to the NODE, or ACTION?08:17
xuhaiweifor node-update, seems should be node08:18
Qimingyep08:18
QimingI think so08:18
Qimingbut for cluster-resize ?08:18
xuhaiweidifficult to decide08:19
Qimingyep08:19
Qiminghttps://review.openstack.org/#/c/234994/2/guidelines/actions.rst08:19
Qimingstill under discussion08:19
*** zhangguoqing has quit IRC08:20
Qimingwe can postpone that decision08:20
*** zhangguoqing has joined #senlin08:20
Qimingit says this: If the action is started successfully, the server must respond with a 2019708:21
Qimingstatus code and include a ``Location`` header with the unique URL of the action9808:21
Qimingresource that the client can query for status on the action.08:21
Qiminganyway, let's do it step by step08:21
xuhaiweiso that should be 'action'08:21
xuhaiweiyes08:21
Qiming1st round cleanup of the 'raise HTTPAccept or HTTPNoContent'08:22
xuhaiweiok08:22
Qiming2nd round make sure PATCH contains body as suggested08:22
Qimingwe'd better return the action id from engine to api if we are gonna return a 202 from API08:22
Qiming3rd round we check how to insert 'Location' header08:23
xuhaiweideal08:23
Qimingand if we do this, should it point to the resource or the action08:23
QimingI'm seeing some other problems in the 3rd round08:23
xuhaiweiwhat08:24
Qimingif your senlin-api is running behind a proxy server, you will have to be aware of that08:24
Qimingyou are not supposed to expose your intranet IP directly to the end user08:24
xuhaiweishould be an inner IP?08:25
Qimingthe client sofware is requesting a senlin service on IP1 (a proxy server), which redirects the request to IP2 (internal IP)08:25
Qimingyour senlin-api is on IP2, and you will return a location for the user to check the resource status08:25
Qiminggot what I mean?08:26
Qimingyou cannot say 'Location: http://IP2/.....' in your response08:26
Qimingyour client software won't be able to reach you08:26
xuhaiweiuser can't access to it08:26
Qimingyou cannot say 'Location: http://IP1/.....', because senlin-api never knows whether it is behind a proxy08:27
Qimingthat is getting dirty08:27
QimingI believe this is why people suggest putting location in header instead of body08:28
Qiminga smart proxy server may be able to handle that08:28
Qiminganyway, off topic now08:28
QimingYanyanhu, I hate your patch about changing data types for action08:29
xuhaiweiwe used to work behind our company's proxy, but now the openstack development is not behind proxy08:29
Qimingxuhaiwei, proxy is gonna create a lot problems, :)08:29
QimingI don't think changing from float to REAL is giving you the precision you need08:30
xuhaiweiyes, especially when I was using TripleO to construt environment08:30
Qimingsomething else is wrong along the way, Yanyanhu08:30
QimingYanyanhu,  maybe you can check if the value really only contains the integer part08:31
Qimingif it is, problem won't get solved by changing it to REAL08:31
*** yuanying has quit IRC08:32
*** yuanying has joined #senlin08:32
Yanyanhuhmm, yes, I think it's also include decimal08:32
Yanyanhuhmm, I think you're right, maybe ignore decimal is incorrect08:33
Yanyanhualthough in most cases, the timeout could not be less than 1 second08:33
Yanyanhuwill manually set the precision of float type08:33
Qiminga float suffices regarding time precision08:34
Qimingsomething else is wrong08:34
Yanyanhulooks like with default precision, value will be truncated08:34
Qimingyou may want to check if the values stored only contains the integer part08:34
Yanyanhuif I manually set the precision, it won't happen08:35
Yanyanhuhi, Qiming, it contains both integer and decimal08:35
Qimingokay08:35
Qimingwhat to you mean by manually set the precision?08:35
YanyanhuI mean something like start_time = sqlalchemy.Column(sqlalchemy.Float('24,8'))08:36
Qimingokay, that is dirty08:36
Yanyanhuyes08:36
Qiming'sqlalchemy.Float' sounds better than 'REAL'08:37
YanyanhuI tried to find a 'double' type, but it is not supported08:37
QimingI'm supposing 'double' is a C data type08:37
Qimingnot SQL08:37
Yanyanhuyea08:38
Qimingwhen choosing data type to use, please bear in mind we may need to support DB backends other than mysql08:38
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception from node update API  https://review.openstack.org/25278708:38
Qimingso ... pls avoid using MySQL dialect when possible08:38
Yanyanhuyes08:38
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception raised when update cluster  https://review.openstack.org/25278608:41
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPNoContent from cluster delete API  https://review.openstack.org/25282508:43
QimingGentleman, senlin developer docs is online now!08:47
Qiminghttp://docs.openstack.org/developer/openstack-projects.html08:47
Qimingoh, there are ladies, ;)08:48
QimingLadies and gentleman, senlin developer docs is onlin now!08:48
Yanyanhuhaha08:49
Yanyanhu\o/08:49
*** lvdongbing has quit IRC08:51
*** lvdongbing has joined #senlin08:52
QimingFYI, filed a bug related to timestamps: https://bugs.launchpad.net/senlin/+bug/152232208:52
openstackLaunchpad bug 1522322 in senlin "exact filtering of timestamps are useless, should be removed" [High,Triaged]08:52
Yanyanhuok, anyone can try to fix it :)08:53
*** pratikmallya has joined #senlin08:57
*** pratikmallya has quit IRC09:01
openstackgerritYanyan Hu proposed openstack/senlin: Change data precision of action.start_time and action.end_time  https://review.openstack.org/25280309:02
openstackgerritYanyan Hu proposed openstack/senlin: Revise functional test to adapt to latest API change  https://review.openstack.org/25281309:02
openstackgerritYanyan Hu proposed openstack/senlin: Merge cluster/node list test to other test cases  https://review.openstack.org/25272409:02
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception raised when update cluster  https://review.openstack.org/25278609:07
openstackgerritxu-haiwei proposed openstack/senlin: Remove HTTPAccept exception from node update API  https://review.openstack.org/25278709:09
xuhaiweiYanyanhu09:12
Yanyanhuhi09:12
xuhaiweiI summitted a patch to remove HTTPNoContent, should I also fix the status_code in function test?09:12
xuhaiweiare you doing it?09:12
xuhaiweithe DELETE status code should be 202 now09:13
Yanyanhuah, for update operation, you don't since related test cases have not been added09:13
xuhaiweishould I do it in the same patch?09:13
Yanyanhufor delete or create or action, I guess so09:13
xuhaiweiok, i just need to change the status code to 202?09:14
YanyanhuI just proposed a patch to let functional test match with the latest api change that have been merged09:14
Yanyanhuhttps://review.openstack.org/25281309:14
Yanyanhuyes, I think so09:14
Yanyanhuyou can do more change after this patch is in09:14
Yanyanhuyou just need to change something like this: http://git.openstack.org/cgit/openstack/senlin/tree/senlin/tests/functional/api.py#n2109:15
Yanyanhueach time you make revision on an API interface09:15
xuhaiweisince you have submitted https://review.openstack.org/252813, I dont need to do it in my patch09:15
Yanyanhuyes, for those API change that have been merged, you don't need to do it now09:16
Yanyanhubut for some new change like this https://review.openstack.org/25282509:16
xuhaiweiwe are depending each other09:16
YanyanhuI guess you may need to change this status_code http://git.openstack.org/cgit/openstack/senlin/tree/senlin/tests/functional/api.py#n7009:17
Yanyanhuah...09:17
Qiming... hoho09:17
xuhaiweiyou already changed it in your patch09:17
QimingYanyanhu, I think funtional tests are yours09:17
Qimingxuhaiwei can focus on unit tests09:17
xuhaiweione of us need to rebase after one patch is merged09:17
Qimingthat will make things smooth09:18
Yanyanhuok, I'm ok with it09:18
xuhaiweiok09:18
Yanyanhuso each time you change an API, I will propose a change to functional test09:18
xuhaiweiok09:18
xuhaiweiotukare09:18
Yanyanhunp09:18
Yanyanhudoitashimashita09:19
Yanyanhu:)09:19
xuhaiweisogoi09:20
Yanyanhudoitashimashite09:20
Yanyanhuwe are making other people crazy09:20
Yanyanhu:P09:20
xuhaiweior you can fix the function test after all the api fix done09:20
Yanyanhusure09:21
Yanyanhujust want to follow the API change more tightly to avoid increasing the difficulty of debug09:22
xuhaiweiok, do what you like09:22
Yanyanhuyea. since we hope to rely on functional test to find possible issues in some important changes.09:23
Yanyanhualthough there are still some issue in functional test :)09:23
*** lvdongbing has quit IRC09:34
openstackgerritxu-haiwei proposed openstack/senlin: Make node delete request return no body  https://review.openstack.org/25285109:53
*** pratikmallya has joined #senlin09:58
*** pratikmallya has quit IRC10:03
*** zhenguo has quit IRC10:05
*** lixinhui_ has quit IRC10:05
Yanyanhuprepare to leave, see U guys tomorrow10:07
*** Yanyanhu has quit IRC10:13
*** lvdongbing has joined #senlin10:29
*** elynn has quit IRC10:40
Qimingbig bang: https://review.openstack.org/#/c/252245/10:50
Qimingsee you10:54
*** Qiming has quit IRC10:58
*** yuanying_ has joined #senlin11:11
*** yuanying has quit IRC11:11
*** pratikmallya has joined #senlin11:13
*** yuanying_ has quit IRC11:17
*** pratikmallya has quit IRC11:33
*** Qiming has joined #senlin11:43
*** lvdongbing has quit IRC12:08
*** lvdongbing has joined #senlin12:24
openstackgerritBertrand Lallau proposed openstack/senlin: Remove kombu as a dependency for Senlin  https://review.openstack.org/25292412:31
*** openstackgerrit has quit IRC12:32
*** zhangguoqing has quit IRC12:33
*** openstackgerrit has joined #senlin12:33
*** zhangguoqing has joined #senlin12:33
*** pratikmallya has joined #senlin12:34
*** lixinhui_ has joined #senlin12:47
*** pratikmallya has quit IRC12:54
*** openstackgerrit has quit IRC13:17
*** openstackgerrit has joined #senlin13:17
*** elynn has joined #senlin13:18
*** pratikmallya has joined #senlin13:53
openstackgerritMerged openstack/senlin: Change data precision of action.start_time and action.end_time  https://review.openstack.org/25280314:02
openstackgerritMerged openstack/senlin: Merge cluster/node list test to other test cases  https://review.openstack.org/25272414:02
openstackgerritMerged openstack/senlin: Remove HTTPAccept exception raised when update cluster  https://review.openstack.org/25278614:02
openstackgerritMerged openstack/senlin: Remove HTTPAccept exception from node update API  https://review.openstack.org/25278714:02
*** pratikmallya has quit IRC14:14
*** lixinhui_ has quit IRC14:17
*** lvdongbing has quit IRC14:39
*** Qiming has quit IRC15:02
*** pratikmallya has joined #senlin15:14
*** pratikmallya has quit IRC15:19
*** elynn has quit IRC15:31
*** elynn has joined #senlin15:34
*** pratikmallya has joined #senlin15:59
*** pratikma_ has joined #senlin16:14
*** pratikmallya has quit IRC16:17
*** elynn has quit IRC16:21
*** pratikma_ has quit IRC18:01
*** pratikmallya has joined #senlin19:00
*** openstackgerrit has quit IRC20:47
*** openstackgerrit has joined #senlin20:47
*** pratikma_ has joined #senlin20:49
*** pratikmallya has quit IRC20:49
*** pratikmallya has joined #senlin21:34
*** pratikma_ has quit IRC21:36
*** yuanying has joined #senlin23:21
*** Qiming has joined #senlin23:21
*** pratikmallya has quit IRC23:24
*** lixinhui_ has joined #senlin23:36
*** lixinhui_ has quit IRC23:44
*** lixinhui_ has joined #senlin23:47
*** Qiming has quit IRC23:52
*** pratikmallya has joined #senlin23:55

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!