Friday, 2015-07-31

*** jruano has joined #senlin00:00
xuhaiweijruano, hi00:02
jruanohey how are you00:03
xuhaiweistill there, it is late in your place?00:03
xuhaiweiabout your patch
xuhaiweiline 134, it worked in my environment if you just set side_effect=Exception()00:05
jruanolet me check it again00:09
jruanoah, i usually work late here00:09
jruanoi think that was the one where pep8 checks complain, but let me verify00:11
xuhaiweiI think we should not import .ProfileOperationTimeout exception here00:13
jruanook... np. the patch 2 checks the general exception case, but when i ran pep8 checks it complained about being too general00:14
xuhaiweioh, jruano, yes, I got the error00:15
jruanoso i tried to be more specific so it would pass pep800:15
jruanoit throws a ProfileOperationTimeout in the nova_v2 driver for server_delete00:17
jruanoand HTTPException, but no common base :(00:18
jruanoother than Exception00:18
xuhaiweimock twice, test both ProfileOperationTimeout and HTTPException?00:19
xuhaiweinot sure about this00:19
jruanoha, yeah thats what i was thinking too00:19
jruanoi know there is some work to clean up exceptions, not sure if this will be related? possibly short term is to test both exceptions00:20
xuhaiweithis should be covered I think00:21
jruanocool, yeah i think best approach now is to cover both exceptions. ill make the changes shortly00:21
xuhaiweiok, thanks00:22
xuhaiweiI think it's better to do them in seperated test cases00:23
xuhaiweiin fact, HttpException is also a headache00:25
*** Qiming has joined #senlin00:25
xuhaiweiQiming, just come in time00:25
xuhaiweican you review patches?00:26
Qimingyes, any problem?00:30
xuhaiweithis patch
xuhaiweiwhen testing line 214
xuhaiweipep8 will complains " H202  assertRaises Exception too broad", if you just do self.assertRaises(Exception, delete_server, xx)00:33
xuhaiweiso the exception should be specific00:34
Qimingyes, agree00:34
Qimingneed to revise the profile anyway, right?00:34
xuhaiweithere are two kind of exceptions happens in the drive side00:34
xuhaiweiexception.ProfileOperationTimeout and sdk.exc.HttpException00:36
Qimingbased on the current code, you are right00:37
xuhaiweibut in fact sdk is not raising HttpException directly, they are raising exceptions.ResourceNotFound00:37
Qimingthe problem it was changed to a generic Exception catch is that there are other subtle cases00:37
jruanoah, i see... these 2 are just the known ones from the driver?00:38
jruanothere could be others00:39
Qimingright, there could be others00:39
Qimingone of them is actually caused by authentication error00:40
Qimingwhen creating the connection to nova, the authentication may fail00:40
openstackgerritQiming Teng proposed stackforge/senlin: Unit test cases for nova driver
Qimingalso refer to the patch here ^00:42
Qimingthis file:
QimingI'm trying to sort out these messy exception handling things00:43
Qimingit is an attempt to centralize all kinds of driver (sdk) exception handling00:44
jruanoah ok yes, that is what i was thinking00:44
jruanothis is much cleaner00:44
xuhaiweithe translate_exception method?00:45
jruanocan i just hold off on testing the exception path in this unit test case until the exception cleanup settles?00:45
Qimingyes, decorate all interactions with sdks with a translate_exception method00:45
jruanoi can just add a todo for now to follow-up00:45
Qimingjruano, it would be a separation of concern00:45
Qimingthe test of the 'translate_exception' method would be part of the test case for sdk.py00:46
jruanoah ok, right00:46
Qimingas for the specific exception types we need to handle ... we leave it to the functional tests00:47
jruanoso i am going to remove checking the exception in the unit test. i should probably do the same for the ResourceNotFound path i added as well00:47
Qimingwe cannot predict what kind of exceptions sdk will throw, what kind of exceptions will escape00:47
Qimingjruano, I agree00:48
Qiminghold on00:48
Qimingare you referring to the nova server profile test case?00:48
Qimingokay, I'd suggest we keep it that way00:49
Qimingthe test case is supposed to test the code as is00:49
Qimingwe will revise the test case when we are revising the profile00:50
jruanogotcha... so the approach was to test both known exceptions HTTPException and ProfileOperationTimeout00:50
Qimingwe have some more work to do regarding the connection creation00:52
jruanook, i think that works for now00:52
Qimingthat is why we are doing a broad exception catch in the server profile code, need to improve that00:52
jruanoill revisit as the code changes00:52
Qimingokay, thanks00:52
*** Yanyanhu has joined #senlin00:58
*** Chris-IBM has joined #senlin01:00
*** Yanyanhu has quit IRC01:02
*** Yanyanhu has joined #senlin01:11
*** Chris-IBM has quit IRC01:13
*** Tiancheng has joined #senlin01:27
*** Chris-IBM has joined #senlin01:31
*** Qiming has quit IRC01:31
*** Qiming_ has joined #senlin01:31
*** Chris-IBM has quit IRC01:31
*** Tiancheng has quit IRC01:31
*** Yanyanhu has quit IRC01:31
*** Tiancheng has joined #senlin01:32
*** Yanyanhu has joined #senlin01:33
*** Zhenqi has joined #senlin01:39
Yanyanhuhi, Qiming_ , just registered a bp for adding functional test. Will start working on it.
Qiming_functional tests is a big effort01:42
Qiming_just noticed that a bug is filed as well?01:42
Yanyanhuok, let me have a check01:42
Yanyanhuyes, I reported the bug yesterday. Should I will close this bug since I think bp is more proper for this job?01:43
*** mathspanda has joined #senlin01:46
*** Qiming_ has quit IRC01:55
*** Qiming has joined #senlin02:05
*** mathspanda has quit IRC02:17
*** mathspanda has joined #senlin02:18
openstackgerritQiming Teng proposed stackforge/senlin: Unit test cases for nova driver
*** openstackgerrit has quit IRC02:31
*** openstackgerrit has joined #senlin02:32
*** LinPeiyu has joined #senlin02:33
*** LinPeiyu is now known as ChrisSen02:33
*** ChrisSen has quit IRC02:34
*** ChrisSen has joined #senlin02:35
*** mathspanda has quit IRC02:52
*** mathspanda has joined #senlin02:58
*** ChrisSen has quit IRC03:04
*** ChrisSen has joined #senlin03:06
*** mathspanda has quit IRC03:19
*** mathspanda has joined #senlin03:20
*** Tiancheng has quit IRC03:23
*** Tiancheng has joined #senlin03:23
*** Tiancheng_ has joined #senlin03:58
*** Yanyanhu has quit IRC03:58
*** Tiancheng has quit IRC03:58
*** Yanyanhu has joined #senlin03:59
*** mathspanda has quit IRC04:12
xuhaiweiQiming, are you around?04:37
*** Tennyson has joined #senlin04:42
*** Zhenqi has quit IRC04:58
*** mathspanda has joined #senlin05:04
*** Zhenqi has joined #senlin05:04
*** Tennyson has quit IRC05:22
*** Tennyson has joined #senlin05:25
*** jruano has quit IRC05:29
Qimingxuhaiwei, yes, just back05:35
xuhaiweilet me check the source, a little more, I just fix one place, but another error happens05:36
xuhaiweiQiming, I just converted the HTTPAccepted response to JSON format, but it still not sufficent, SDK still want it to have a resource_key like 'cluster', 'node' in the body05:44
xuhaiweibecause sdk treats the resp as an error05:44
Qiminghow are other exceptions handled?05:45
Qiminge.g. 40105:45
xuhaiweinot checked yet05:46
xuhaiweiI am afraid the exceptions which are not webob.exc.HTTPError type face the same problem05:50
xuhaiweithis is sdk's fault I think05:51
Qimingit is because they are not handling 202?05:52
Qimingbut if they are basing their transport on 'requests', how could that happen?05:52
xuhaiweisee this line05:53
*** Tennyson has quit IRC05:53
xuhaiweiin 202's case , resp = resp[cls.resource_key] will fail, because resp doesn't have the resource_key05:54
*** Tennyson has joined #senlin05:56
openstackgerritxu-haiwei proposed stackforge/senlin: Make HTTPAccepted exception response in JSON format
xuhaiweiwill go out now, bye06:01
openstackgerritMerged stackforge/senlin: Fix cluster-resize operation param checking in server side
openstackgerritQiming Teng proposed stackforge/senlin: DB support for triggers
*** Tennyson has quit IRC06:19
*** Tennyson has joined #senlin06:20
openstackgerritQiming Teng proposed stackforge/senlin: DB support for triggers
*** Zhenqi has quit IRC06:35
*** jqiu has joined #senlin06:41
*** Tennyson has quit IRC06:48
*** Tennyson has joined #senlin06:48
*** Zhenqi has joined #senlin07:10
*** Tennyson has quit IRC07:16
*** Tennyson has joined #senlin07:16
*** Zhenqi has quit IRC07:40
*** mathspanda has quit IRC07:41
*** Tennyson has quit IRC07:41
Yanyanhuhi, Qiming, about running functional test in gate side, I think before we have a senlinclient release and add it to test-requirement, we can only prepare the client manually? e.g. git clone from and pip install08:04
Yanyanhuwrap this progress into the script of env_prepare08:05
Qimingdon't think we need senlinclient for functional tests08:05
Yanyanhuem, so how we sen request to senlin service08:06
Qimingprogram the REST API I think08:06
Yanyanhuthat could make the progress very complext I think08:06
Qimingno server functional tests is supposed to use the client package08:06
Yanyanhuespecially when we need to handle spec file08:07
Qimingokay, Heat is a virus08:09
Yanyanhufor other cases, I think API is ok08:09
Qimingwe don't test that part08:09
Yanyanhu:) nova use API request08:09
Qimingit is not our job08:09
Qimingit makes just no sense to have a server integration test require a client package08:10
QimingHeat is sick in this space08:10
Qimingit is relying on quite some logic at client side to do 'get_file' function parsing08:10
Yanyanhuok, let me think through this08:10
QimingHeat is not using SDK, so it is interacting all other services with xxxclient08:12
Yanyanhubut I think we also can't rely on sdk since it only provides limited support for Senlin service08:13
YanyanhuI will try Rest API way08:13
QimingYanyanhu, what do you mean by 'FIXED_PRIORITY' in the TODO.rst file?08:18
Yanyanhuoh, it means we place node into different regions with a fixed sequence, e.g. region1 first, when region1 has no free capacity, then region208:20
Qimingthat is a PRIORITY or WEIGHTED policy08:20
Qimingthere will by DYNAMIC_PRIORITY in your mind?08:21
Yanyanhuhmm, yes, I was not sure whether I should use weighted when propose this08:21
YanyanhuI think dynamic_priority means the sequence could be changed based the current status of system08:22
openstackgerritQiming Teng proposed stackforge/senlin: Update TODO list
Yanyanhuhi, Qiming, just saw the TODO patch, could you please help to add the functional test workitem and you can mark current worker is me08:27
Yanyanhuso I don't need to propose another one :)08:27
openstackgerritQiming Teng proposed stackforge/senlin: Update TODO list
Qimingat your service08:28
Qiminggate is too slow08:29
Qiminghave to switch from one topic to another08:29
Yanyanhua patch has been queued there for more than 6 hours08:29
Yanyanhuanother is about 5...08:30
Qimingthose ones are blocking me ... sigh08:30
Yanyanhuhope it can recover soon08:31
Qimingall branches are blocked:08:32
Qiming  ceilo-trigger08:32
Qiming  env-trigger08:32
Qiming  fix-policy-checking08:32
Qiming* master08:32
Qiming  plugin-exception08:32
Qiming  scaling-policy08:32
Qiming  senlin-driver08:32
Qiming  test-ceilometer08:32
Qiming  test-nova-driver08:32
Qiming  trigger-db08:32
Qiming  trigger-samples08:32
YanyanhuI guess infra team are now very busy on this...08:33
Yanyanhunot sure about the reason08:33
*** Tiancheng_ has quit IRC09:27
*** Tiancheng has joined #senlin09:28
*** Tiancheng has quit IRC09:36
openstackgerritQiming Teng proposed stackforge/senlin: API docs for webhooks
Qimingwant to call it a day now09:57
Qimingvery tired09:57
Yanyanhuem, take a break09:57
Yanyanhuhave a good weekend ;)09:57
Qiminginstead of Voice of America, we have Voice of China09:59
QimingYao has better stay at home, he is sooooooo different10:00
Yanyanhuhope we can succeed10:01
Qimingand ....10:01
Qiminghe is smiling!!!!10:01
Yanyanhuhe is really fat now, haha10:02
Qimingthere is no photos showing Yao standing next to our leaders, :)10:03
Qimingthat is a pity actually10:04
Yanyanhuyes, maybe they are shy :)10:04
Qimingno one will take such kind of a photo and publish it10:04
Yanyanhuwill be blocked?10:05
Qimingyou just cannot find such a phtot10:05
Qimingshowing Yao shaking hands with any leaders10:06
Yanyanhuem, that's true10:06
Qimingbye guys10:06
Yanyanhusee U next week10:07
*** Qiming has quit IRC10:11
*** Yanyanhu has quit IRC10:19
*** ChrisSen has quit IRC10:27
*** Tiancheng has joined #senlin11:02
*** Qiming has joined #senlin11:18
*** Qiming has quit IRC11:24
*** Qiming has joined #senlin11:25
*** Tiancheng has quit IRC11:28
*** jruano has joined #senlin14:21
*** jruano has quit IRC15:37
openstackgerritQiming Teng proposed stackforge/senlin: Add config reload capability to wsgi
*** Qiming has quit IRC16:12
*** Qiming has joined #senlin16:39
*** Qiming has quit IRC16:39
*** Qiming has joined #senlin16:40
openstackgerritMerged stackforge/senlin: Make HTTPAccepted exception response in JSON format
openstackgerritMerged stackforge/senlin: Refactor plugin name checking logic
*** Qiming has quit IRC16:57
*** jruano has joined #senlin18:46
*** openstack has joined #senlin19:35
*** jruano has quit IRC22:40

Generated by 2.14.0 by Marius Gedminas - find it at!