14:01:38 #startmeeting glance 14:01:39 Meeting started Thu Oct 25 14:01:38 2018 UTC and is due to finish in 60 minutes. The chair is jokke_. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:01:40 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:01:44 The meeting name has been set to 'glance' 14:01:46 o/ 14:01:47 #topic roll-call 14:01:52 #link https://etherpad.openstack.org/p/glance-team-meeting-agenda 14:01:54 o/ 14:01:57 o/ 14:02:02 o/ 14:02:10 o/ 14:02:34 #topic updates 14:02:52 First of all, we have S-1 deadline today 14:03:09 that snuck up quickly 14:03:12 there shouldn't be anything burning waiting to be merged but now is the last moments to yell 14:03:26 rosmaita: indeed 14:03:41 I think we should have my functional tests timeout patch in 14:04:20 also, this would be the last chance to revert the image status change from queued -> active from PATCH add location 14:04:41 rosmaita: you mean replace? 14:05:01 sorry, you are correct, replace 14:05:20 yes so are we going to keep that or revert it? 14:06:19 i am in favor of keeping it 14:06:26 me too 14:06:36 I still think it's unnecessary api change 14:07:01 i don't see it as an api change, i see it as a bugfix 14:07:03 I don't have enough knowledge there to vote one way or the other. 14:07:37 but but taken into account where it is, I really don't have interest to fight about it 14:08:00 yeah, pretty low traffic in that part of the api 14:08:14 need to bump the api version for that 'though 14:08:42 not for S-1, though, i wouldn't think 14:09:14 you recon it's nuf to do it at the end of the cycle? 14:09:46 generally we do it at the end of the cycle, right? 14:09:59 i really don't think it's necessary for this at all, but i think that's the usual practice, end of cycle 14:10:08 no one has complained before 14:10:20 or at least, i haven't payed attention if they have :) 14:10:24 k, I guess we should be good to go then with S-1 14:10:48 next thing is, Summit is approaching, fast 14:10:53 abhishekk: do you have your func test update patch link handy? 14:10:56 (I am talking about this, https://review.openstack.org/#/c/608856/) 14:11:03 which means spec freeze is approaching fast 14:11:07 rosmaita, ^^ 14:12:02 so lets get them specs reviewed and merged what we are going to accept 14:12:14 which gives us nice brindge to the next topic 14:12:19 bridge 14:12:43 #topic validation_data in image locations patch call 14:13:29 imacdonn has been chasing this actively and has new revision out 14:13:29 new revision looks good to me, does it going to add new discovery call? 14:14:30 abhishekk: it doesn't mention that, i think the idea is rely on the local operator docs for now 14:14:51 rosmaita, ack 14:15:22 since the admin has to allow use of locations anyway, should not be a big deal 14:15:27 we shoud definitely look to include these details when expanding the discovery endpoint 14:15:37 i mean the admin/operator 14:15:44 jokke_: ++ 14:16:06 that said I don't think this will be widely used due to the fact that it opens such a can of worms 14:16:20 also ++ 14:16:28 so it will just check it against config set in glance-api.conf and if does not match then returns 409 14:16:47 agree 14:16:57 right 14:17:09 got it 14:17:29 ok, cool 14:17:53 lets read it through once more with good thought but I think it's getting there (again) 14:18:20 next up is showing store IDs in image listing 14:18:35 #topic show store ID in image listing with -vv 14:18:43 LiangFang: you're up 14:18:43 hi erno 14:19:25 I prepared the spec, and at this moment, the conclution is to add --include-stores option to image-list 14:19:59 openstack client just have -long, not option like -vv 14:20:27 so try to use --include-stores 14:20:54 erno, are you agree with this? 14:21:27 LiangFang: are you thinking the --include-stores will work with both "regular" image-list and also image-list -v calls? 14:21:36 so are you proposing thing change to python-glanceclint or openstackclient? 14:22:04 the change is in python-glanceclient 14:22:19 glance -v image-list --include-stores 14:22:35 glance image-list --include-stores 14:22:38 all can work 14:22:42 excellent 14:23:05 jokke_: osc comes into play from a comment I made about it not really fitting with the standardization they are doing there. 14:23:13 ok, I have one concern which might be just language thing in the spec 14:23:19 I think this new option fits better and is probably easier for a user to discover and use. 14:23:41 i think smcginnis had a good point about that 14:24:36 You're mentioning listing store type, I think that needs to change to store ID (and use those, "fast", "cheap", "reliable" as example) ... we are not going to leak the backend information to the user unless that's how the operator decides to set it 14:25:04 OK 14:25:12 so we're not listing the store type, but it's ID 14:25:13 jokke_: Good point. 14:25:15 I will update 14:25:26 other than that, the proposal looks good to me 14:25:26 good catch, i missed that 14:25:56 thanks 14:26:07 and I also updated the related code 14:26:32 and the review is:https://review.openstack.org/#/c/605014/ 14:27:05 thanks, anything else about this? 14:27:11 no more 14:27:13 thanks 14:27:32 #topic image size to prevent backend resizes 14:27:38 this is yours as well 14:28:08 about this, last week you mentioned we should consider other component as well, not only cinder 14:28:09 and first of all I have to say this keeps slipping on me, so no I haven't got to test it yet :( 14:28:31 that's fine:) 14:29:05 yes so we need to make sure that this addresses any applicable backends (if others than cinder is affected) 14:29:37 considering this, I think solution 1 is better 14:29:41 #link https://review.openstack.org/#/c/608400/ 14:29:45 solution 1 is: 14:29:46 ^^ is the spec 14:30:06 cinder calculate the image size 14:30:29 python-glanceclient: convey the image size via http header 14:30:58 glance: extract the image size in request deserialize phase 14:31:39 Sean mentioned previously that, move the work did in cinder to python-glanceclient 14:32:11 let python-glanceclient to calculate the image size 14:32:35 I take a look again this week, seems this is workable 14:32:44 Quick question: the point of this is to provide info that the glance backend driver can use in allocating how much space to store the image, but the 'size' in glance will still be computed as it is now? 14:34:00 how this will fit in case of web-download import method? 14:34:00 in current code, size is returned by backend when it finished all the data upload 14:34:51 So iirc we can't access the request body before all the data has been uploaded to glance (this was either webop or wsgi thing). Whic means that we should know the size before we upload it to backend 14:35:11 abhishekk: let me take a think 14:35:15 also it's definitely the case with image import 14:35:54 LiangFang, yes 14:36:06 so I don't think we should offload the work to glanceclient specially as there is cases when glanceclient can't determine the size before it's iterated the whole image 14:37:00 those being if the data is streamed to the client from command line or the fd is socket 14:37:32 agree 14:37:58 so should let the user of glanceclient to give the size 14:38:10 and these were the reasons why the decision was made not to send the size from client in v2 like it was done in v1 14:38:39 we should let glance-api to calculate the data before upload to the backend 14:38:56 Are there any DoS issues with user supplied size input to glanceclient? 14:39:01 and make sure our upload is not streaming it from local disk in very small chunks 14:40:12 smcginnis: not really, there is the max image size parameter that eliminates any crazy calls 14:40:20 OK, good. 14:40:56 but yet I think we have all the needed data in the api before we do the upload call, it's just not utilized 14:41:57 I seems glance-api don't know the size 14:42:04 so we update the image size based on the info we got from the backend instead of telling the backend "We have this much data we're dumping into you" 14:42:54 I did experiment with ceph as backend, if give size, it can save 30% uploading time 14:43:13 yeah, I thought that might be the case 14:44:30 one of the problems we have and this is hitting the edge usecases hard is that we always thought the backends are somewhere close by. We're using extremely small chunks when doing backend transactions. like 4k which is even small for disk writes 14:45:39 the chunk size using by ceph is 8M 14:45:46 lvm is 64K 14:45:55 so really, for this purpose, we don't need to know the image size exactly, 14:46:13 yeah, well with ceph we use rdb which takes care of it 14:46:42 when ever we chnk it ourselves it's very very small 14:48:03 sorry erno, I may not catched your point 14:48:17 rosmaita: well I'm not sure how cinder behaves if you try to shrink the volume ... the problem is atm, that when we don't know the size, behind the scenes we end up calling cinder resize to expand for each chunk we're sending 14:48:50 same happens with other backends that actually allocate the space 14:48:53 Cinder will never shrink, only extend. 14:49:25 yeah, so we can't just estimate and shrink back to size after we get to the end of the data 14:49:26 yes, downsize is not allowed 14:50:31 ok, we're running out of time. Lets keep investigating this 14:50:39 OK 14:50:52 #topic python-glanceclient release 14:50:57 rosmaita: the stage is yours 14:51:10 I send something to the ML about this 14:51:16 #link http://lists.openstack.org/pipermail/openstack-dev/2018-October/135902.html 14:52:32 master contains the multihash validation code 14:52:59 at the moment 2nd option looks more convenient 14:53:19 yes, and smcginnis already has a patch up for that 14:53:58 and now that we've decided that iain's validation_data will use the configured hash algo, i'm not so worried 14:54:30 We can hold the release patch or update it. There's also one up for glance_store. 14:54:41 ok, this looked like it could be an issue at the end of last week, not so much now. 14:55:19 let's go with option 2 14:55:32 so we don't have the multihash validation in rocky client and we never ended up backporting that to rocky branch 14:55:45 jokke_: correct 14:56:41 ok, crap 14:56:54 I thought it had been done, just not tagged 14:57:10 give me a minute to check, pretty sure i;m right though 14:57:30 just looked the rocky branch, didn't see it there 14:58:06 yeah, not there 14:58:24 so yeah, I guess we need to do the same trickstery we did at the start of rocky 14:59:11 which is backport, cut 2.13.0 from the stable branch and then 2.14 from master before towards end of the cycle cutting 3.0.0 14:59:46 last minute to go 14:59:59 that way we get it for those who insists using the client from rocky branch on their rocky deployment 15:00:15 abhishekk: are you handling glance s-1 release, or do you want me to do it? 15:00:24 yup, we're out of time, lets wrap this client plan together in #os-glance 15:00:33 #endmeeting