19:03:29 <amitgandhinz> #startmeeting Poppy Weekly Meeting 19:03:31 <openstack> Meeting started Thu Aug 27 19:03:29 2015 UTC and is due to finish in 60 minutes. The chair is amitgandhinz. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:03:32 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:03:34 <amitgandhinz> #topic Roll Call 19:03:35 <openstack> The meeting name has been set to 'poppy_weekly_meeting' 19:04:19 <malini> o/ 19:04:21 <cathR> o/ 19:04:30 <sriram> o/ 19:04:38 <tonytan4ever> o/ 19:04:41 <amitgandhinz> #topic Last Week Recap 19:04:43 <amitgandhinz> #link http://eavesdrop.openstack.org/meetings/poppy_weekly_meeting/2015/poppy_weekly_meeting.2015-08-20-19.03.html 19:04:59 <amitgandhinz> malini to resurrect https://review.openstack.org/169611 19:05:08 <amitgandhinz> look slike its still in conflict 19:05:22 <malini> we have another patch to supersede this one 19:05:31 <amitgandhinz> does this need to be abandoned? 19:05:32 <malini> I'll kill it after the other is merged 19:05:43 <amitgandhinz> where is the other one? 19:05:46 <malini> Or just track the new patch & I'll abandon this? 19:05:55 <amitgandhinz> just track the new patch IMO 19:06:15 <malini> https://review.openstack.org/#/c/207988/ 19:06:55 <amitgandhinz> go ahead an abandon it. i dont see a reason to wait 19:07:14 <amitgandhinz> abandoned patches still live in a secret area 19:07:20 <amitgandhinz> and can be reclaimed 19:08:05 <amitgandhinz> malini to abandom 169611 after Henry's patch is merged 19:08:08 <amitgandhinz> we just covered this 19:08:15 <amitgandhinz> amitgandhinz to resurrect https://review.openstack.org/143192 19:08:22 <amitgandhinz> #action amitgandhinz to resurrect https://review.openstack.org/143192 19:08:26 <amitgandhinz> i have not done this 19:08:32 <amitgandhinz> rolling it over 19:09:04 <amitgandhinz> #topic Liberty 3 19:09:09 <amitgandhinz> #link https://launchpad.net/poppy/+milestone/liberty-3 19:09:24 <amitgandhinz> so one week left in the liberty 3 cycle. 19:09:39 <amitgandhinz> https://blueprints.launchpad.net/poppy/+spec/gate-api-tests 19:09:47 <amitgandhinz> this still has very slow progress, no updates on this 19:10:06 <amitgandhinz> https://blueprints.launchpad.net/poppy/+spec/akamai-ssl-driver 19:10:08 <amitgandhinz> tonytan4ever: ^ 19:10:30 <tonytan4ever> This one is in good progress. The first one PR is ready for review 19:10:44 <tonytan4ever> https://review.openstack.org/#/c/209648/ 19:11:17 <tonytan4ever> It's a huge PR so we'd better start early and review it 19:11:31 <amitgandhinz> yes everyone please review 19:11:33 <tonytan4ever> Maybe I will start hounding people review it again. 19:11:58 <amitgandhinz> please hound 19:12:02 <amitgandhinz> tonytan4ever: https://blueprints.launchpad.net/poppy/+spec/geo-restrictions 19:12:14 <tonytan4ever> This one is in review as well 19:12:29 <tonytan4ever> I am actively working on it today, adding api tests there. 19:12:39 <tonytan4ever> It should be ready by today. 19:12:43 <amitgandhinz> cool 19:13:06 <amitgandhinz> any thing else on bugs and bps? 19:13:44 <amitgandhinz> #topic Open Discussion 19:14:06 <amitgandhinz> so one of our talks has been accepted in Tokyo 19:14:08 <amitgandhinz> yay! 19:14:13 <malini> yayyy.. 19:14:13 <sriram> awesome 19:14:18 <cathR> Woot! 19:14:25 <tonytan4ever> Congrats 19:14:36 <amitgandhinz> https://openstacksummitoctober2015tokyo.sched.org/event/d8c883ae776168eae3283f0b740b0027?iframe=yes&w=i:0;&sidebar=yes&bg=no#?iframe=yes&w=i:100;&sidebar=yes&bg=no 19:14:59 <malini> poppy is coming to Tokyo - be careful with the customes 19:15:17 <cathR> ;) 19:15:53 <sriram> tonytan4ever: do you want to bring up the issue with regards to purge_url hard and all? 19:16:01 <amitgandhinz> its a shame its the last session of the summit though 19:16:02 <tonytan4ever> Oh yes 19:16:11 <amitgandhinz> hopefully we have stackers show up 19:19:23 <amitgandhinz> what is the issue with the purgeurl/ 19:19:52 <tonytan4ever> So we have an issue when we are doing cache invalidation on Akamai driver. 19:20:52 <tonytan4ever> Our protocol of doing purge/cache invalidation is when we pass in purge_url with None, we treat it as purge/cache invalidate "ALL" 19:21:46 <tonytan4ever> This brings a problem, when the user pass in a purge_url with a string "None" and doing cache invalidation, it will blow up. 19:22:04 <amitgandhinz> why do we support "None"? 19:22:09 <amitgandhinz> i dont see that in the docs 19:22:13 <sriram> tonytan4ever: no, that is not the current functionality, but one of the suggested things right? 19:22:18 <amitgandhinz> we have ?all=true 19:22:45 <tonytan4ever> Yes, we do have all=true. 19:22:50 <amitgandhinz> url=None does not seem valid 19:22:57 <amitgandhinz> url=/* would be valid 19:23:11 <amitgandhinz> or url=/images/cat.jpg 19:23:23 <sriram> amitgandhinz: hard purging, looks at purge_url and if its find to be None, then raises a RunTimeError 19:23:45 <tonytan4ever> I think url=None can be valid, a user could have /None as a url 19:23:58 <sriram> tonytan4ever: yeah 19:24:11 <amitgandhinz> if a user enters ?url=None, shouldnt poppy translate that into purging url=/None 19:24:18 <amitgandhinz> where it thinks the url is /None 19:24:21 <sriram> it does 19:24:32 <amitgandhinz> does poppy throw the error, or akamai? 19:25:03 <sriram> we threw the error, but thats been fixed in a follow up patch.. 19:25:16 <sriram> which is in review right now. 19:25:43 <sriram> I think what tonytan4ever is trying to point out, is that we transform "None" to None in case of hard purge.. 19:25:55 <sriram> but not in the case of soft purge. 19:25:59 <sriram> well ok 19:26:03 <sriram> im confused. 19:26:16 <amitgandhinz> i dont understand why 19:26:30 <amitgandhinz> if the user passes a value of None,it should be a valid url. 19:26:37 <sriram> ok what we have in the patch now works.. 19:26:37 <amitgandhinz> what if i happen to have a file called "None" 19:26:46 <amitgandhinz> and i want to purge it 19:26:53 <sriram> amitgandhinz: that scenario works.. 19:27:33 <sriram> we allow url to be set to "None" 19:28:12 <amitgandhinz> this is setting the purge url to None though - https://review.openstack.org/#/c/217739/3/poppy/distributed_task/taskflow/task/purge_service_tasks.py 19:28:30 <amitgandhinz> as opposed to purging a file called "/None" 19:28:41 <tonytan4ever> That is a problem 19:29:18 <tonytan4ever> We don't know if the parameter is passed as None object or "None" string 19:29:24 <amitgandhinz> None and "None" should be different. one is reserved in python, one is a string 19:30:20 <tonytan4ever> The root cause of this problem is that when we pass parameters in taskflow tasks, we cannot pass None object. 19:30:26 <amitgandhinz> so if i enter url="None", will it purge everything or purge my file called "/None" 19:30:26 <tonytan4ever> We can only pass string 19:31:15 <sriram> neither, we will raise a runtimeError there. 19:31:20 <sriram> and that is the bug. 19:31:25 <amitgandhinz> ok, so when we set all=true, in that scenario, url=None, and taskflow changes that to "None", and then blows up? 19:31:26 <tonytan4ever> Yeah 19:31:44 <sriram> in case of cache invalidation -> everything works. 19:31:58 <amitgandhinz> so why dont we set it to "/*" instead of "None" as the default? 19:32:24 <amitgandhinz> that way we arent overloading the meaning on "None" 19:32:29 <tonytan4ever> We need to confirm /* works with purge and cache invalidation. 19:32:34 <sriram> that is one of the suggested solutions. 19:32:43 <tonytan4ever> Which is not the case with purge. 19:32:45 <sriram> but malini suggested that it doesnt work. 19:32:47 <amitgandhinz> it wont work with purge as purge requires a file 19:33:04 <amitgandhinz> but our validation should catch that 19:33:16 <amitgandhinz> purge should always require a url path 19:33:24 <amitgandhinz> invalidate can have the wildcards 19:33:43 <malini> But purge can have wild cards for other providers - eg. fastly 19:33:53 <malini> thx to sriram for tht info ^ 19:34:08 <amitgandhinz> true 19:34:12 <sriram> the issue is, if we enforce it at transport 19:34:26 <sriram> it might seem like we are biased towards providers 19:34:39 <amitgandhinz> ya 19:34:44 <sriram> we shouldnt retrofit provider needs into transport. 19:35:05 <amitgandhinz> so lets default it to "/*" and if the provider doesnt support the wildcard purge then it fails 19:35:24 <amitgandhinz> today we do that with defaulting it to None right? 19:35:36 <sriram> yeah 19:36:15 <amitgandhinz> by defaulting the url = "/*" we remove the overloading of the word None/"None", we become more explicit, and we arent changing overall behavior 19:37:00 <sriram> we would still need to have a case for None though.. 19:37:14 <sriram> because the user can still give a url of None 19:37:17 <sriram> tonytan4ever: ^ 19:37:34 <amitgandhinz> in which case we pass a string to taskflow which is "/None" as we have to add the preceding slash 19:37:35 <tonytan4ever> If a user give a url of None, we treat it as normal url right > 19:37:38 <amitgandhinz> the url is now always a string 19:37:48 <amitgandhinz> and never the None object 19:38:04 <amitgandhinz> the code where we default url=None now becomes url="/*" so always is a string 19:38:35 <tonytan4ever> Another thought: 19:38:50 <tonytan4ever> if we default url to "/*", do we still need all though > 19:38:51 <tonytan4ever> ? 19:38:53 <sriram> yeah, its always a string, since we put it into zookeeper 19:38:56 <tonytan4ever> all=true ? 19:39:09 <sriram> tonytan4ever: again that depends on the provider 19:39:19 <sriram> some provider will have an all option 19:39:23 <sriram> some might not 19:40:07 <tonytan4ever> I understand that part. But url /* means purge all right > 19:40:08 <tonytan4ever> ? 19:40:17 <sriram> it shoud 19:40:26 <sriram> malini: ^^ 19:41:01 <malini> yes 19:41:41 <amitgandhinz> all=true is technically redundant, but we have to support it now since its out there 19:42:50 <malini> we can inform our clients ;) 19:43:09 <sriram> testing for purge_url as None inside purge_task will need to change then.. 19:43:22 <sriram> if that changes, we should be able to fix the rest. 19:43:41 <amitgandhinz> yup 19:44:01 <amitgandhinz> so everyone agree to default to /* and get rid of None ? 19:44:08 <tonytan4ever> +1 19:44:17 <amitgandhinz> +2 19:44:34 <sriram> +22,345 19:44:48 <tonytan4ever> We will need to adjust akamai driver though since it does not support /* 19:44:56 <tonytan4ever> raise an exception when url is /* 19:45:13 <sriram> yeah we can do the same runtime error thing 19:45:20 <tonytan4ever> Yup 19:45:22 <amitgandhinz> ya, do whatever we do now if i say PURGE url="/images/*" 19:45:30 <amitgandhinz> shouldnt really be a change 19:45:44 <amitgandhinz> ok next topic 19:45:53 <sriram> im done. 19:46:04 <amitgandhinz> my head hurts 19:46:10 <sriram> mine too 19:46:13 <amitgandhinz> need water 19:46:16 <malini> I preserve mine 19:46:21 <amitgandhinz> or poppy 19:46:36 <sriram> I hear preservatives are bad. 19:46:48 <amitgandhinz> chutneys are good tho 19:46:53 <sriram> ? 19:47:19 <malini> Alcohol preserves well 19:47:28 <sriram> ok I think we are derailing, anyone have anything else to discuss? 19:47:32 <amitgandhinz> i think this is what malini really meant by preserving her head 19:47:33 <amitgandhinz> http://s3.hipertextual.com/wp-content/blogs.dir/6/files/2011/07/futurama.s06e20.hdtv_.xvid-fqm.avi_000153361-e1311964381808.jpg 19:47:36 <tonytan4ever> http://www.ebay.com/itm/281130301682?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT 19:47:41 <tonytan4ever> I actually bought this from ebay 19:48:02 <amitgandhinz> im ending this meeting 19:48:04 <amitgandhinz> its derailed 19:48:11 <amitgandhinz> #nedmeeting 19:48:11 <malini> tht explains ur behavior tonytan4ever 19:48:11 <sriram> well done tonytan4ever 19:48:14 <amitgandhinz> ugh 19:48:17 <sriram> lolol 19:48:19 <amitgandhinz> #endmeeting