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