Wednesday, 2017-05-03

*** catintheroof has joined #openstack-swift00:00
*** catintheroof has quit IRC00:01
*** catintheroof has joined #openstack-swift00:04
*** catintheroof has quit IRC00:33
*** catintheroof has joined #openstack-swift00:39
*** tone_z has joined #openstack-swift00:50
tone_ztone_zrt01:02
*** tone_z is now known as tone_zrt01:03
*** cam has quit IRC01:05
*** mingyu has joined #openstack-swift01:07
*** catintheroof has quit IRC01:09
*** mingyu has quit IRC01:13
*** zhurong has joined #openstack-swift01:50
*** aleph1 has quit IRC01:51
*** JimCheung has quit IRC01:55
*** JimCheung has joined #openstack-swift01:55
*** bkopilov_ has quit IRC01:58
*** JimCheung has quit IRC02:00
*** jamielennox is now known as jamielennox|away02:03
*** zhurong has quit IRC02:07
*** JimCheung has joined #openstack-swift02:14
*** jamielennox|away is now known as jamielennox02:17
*** mingyu has joined #openstack-swift02:18
*** JimCheung has quit IRC02:19
*** flwang1 has quit IRC02:21
*** flwang has joined #openstack-swift02:25
*** arunman has joined #openstack-swift02:37
*** psachin has joined #openstack-swift02:51
*** Mype has joined #openstack-swift03:06
*** mingyu has quit IRC03:06
MypeHello, to add object to Swift do I need to generate a token each time ? Or is there another solution like an one time token setup or something like that ? Thanks in advance03:07
*** vint_bra has joined #openstack-swift03:09
klrmnMype: there are several possible auth systems, but most of them can provide a token that will last some amount of time03:17
*** mingyu has joined #openstack-swift03:18
MypeSo the best way to use OpenStack Swift is to generate a token for each request ?03:19
*** bkopilov_ has joined #openstack-swift03:20
*** winggundamth has joined #openstack-swift03:22
*** dja has quit IRC03:24
*** dja has joined #openstack-swift03:27
*** zhurong has joined #openstack-swift03:37
*** zhurong has quit IRC03:40
*** mingyu has quit IRC03:46
*** mingyu has joined #openstack-swift03:48
*** links has joined #openstack-swift03:49
*** mingyu has quit IRC03:52
*** mingyu has joined #openstack-swift03:59
*** mingyu has quit IRC04:04
*** vint_bra has quit IRC04:13
*** clayg has quit IRC04:22
*** chlong has joined #openstack-swift04:22
*** gyee has quit IRC04:23
*** mingyu has joined #openstack-swift04:23
*** mingyu has quit IRC04:25
*** mingyu has joined #openstack-swift04:27
openstackgerritMahati Chamarthy proposed openstack/swift master: Always check for unexpected requests in mocked_http_conn  https://review.openstack.org/46148304:29
mahaticcommit msg typo edit ^^04:29
*** zhurong has joined #openstack-swift04:37
*** mingyu has quit IRC04:47
*** mingyu has joined #openstack-swift04:53
*** chsc has joined #openstack-swift04:53
*** chsc has joined #openstack-swift04:53
*** klrmn has quit IRC04:54
*** flwang has quit IRC04:55
*** chsc has quit IRC04:58
*** mingyu has quit IRC05:05
*** winggundamth has quit IRC05:45
*** newmember has joined #openstack-swift05:52
*** ChubYann has quit IRC05:52
*** mingyu has joined #openstack-swift06:05
*** mingyu has quit IRC06:11
*** tovin07_ has joined #openstack-swift06:12
*** tovin07 has joined #openstack-swift06:13
*** mingyu has joined #openstack-swift06:17
*** jaosorior_away is now known as jaosorior06:19
*** newmember has quit IRC06:26
*** pcaruana has joined #openstack-swift06:27
*** hseipp has joined #openstack-swift06:39
*** hseipp has left #openstack-swift06:40
*** bkopilov has joined #openstack-swift06:41
*** mingyu has quit IRC06:44
*** mingyu has joined #openstack-swift06:46
*** mingyu has quit IRC06:47
*** mingyu has joined #openstack-swift06:47
*** lchabert2 has joined #openstack-swift06:49
*** JimCheung has joined #openstack-swift06:56
*** JimCheung has quit IRC07:00
*** mingyu has quit IRC07:01
*** lchabert2 has quit IRC07:02
*** Mype has quit IRC07:07
*** mingyu has joined #openstack-swift07:11
*** zhurong has quit IRC07:24
*** geaaru has joined #openstack-swift07:26
*** psachin has quit IRC07:29
*** zhurong has joined #openstack-swift07:43
*** adriant has quit IRC07:43
acolesgood morning07:47
*** silor has joined #openstack-swift08:01
*** cbartz has joined #openstack-swift08:04
*** mingyu has quit IRC08:17
*** mingyu has joined #openstack-swift08:23
*** joeljwright has joined #openstack-swift08:23
*** ChanServ sets mode: +v joeljwright08:23
*** mingyu has quit IRC08:25
*** mingyu has joined #openstack-swift08:26
*** mingyu has quit IRC08:34
mahaticacoles: o/08:34
*** mingyu has joined #openstack-swift08:34
*** mingyu has quit IRC08:45
*** zhurong has quit IRC08:47
openstackgerritNgo Quoc Cuong proposed openstack/swift master: Trivial fix warnings in docstring  https://review.openstack.org/46204008:53
*** mingyu has joined #openstack-swift08:54
*** mingyu has quit IRC08:57
*** mingyu has joined #openstack-swift08:59
*** zhurong has joined #openstack-swift09:01
*** mingyu has quit IRC09:12
*** mingyu has joined #openstack-swift09:19
*** Jeffrey4l has quit IRC09:25
*** Jeffrey4l has joined #openstack-swift09:27
*** zhurong has quit IRC09:41
*** flwang has joined #openstack-swift09:54
*** tesseract has joined #openstack-swift09:56
*** tovin07_ has quit IRC10:04
*** mingyu has quit IRC10:17
*** mingyu has joined #openstack-swift10:19
*** zhurong has joined #openstack-swift10:19
*** mvk has quit IRC10:22
openstackgerritNgo Quoc Cuong proposed openstack/swift master: Trivial fix warnings in docstring  https://review.openstack.org/46204010:23
*** zhurong has quit IRC10:30
*** mingyu has quit IRC10:35
openstackgerritMerged openstack/swift master: Use LogRecord.msg instead of LogRecord.message in tests  https://review.openstack.org/46117810:36
*** mingyu has joined #openstack-swift10:46
openstackgerritAlistair Coles proposed openstack/swift master: Trivial fix for decrypter docstrings  https://review.openstack.org/46207510:48
*** mingyu has quit IRC10:55
*** tone_zrt has quit IRC10:56
*** mingyu has joined #openstack-swift11:02
*** bkopilov has quit IRC11:03
*** bkopilov_ has quit IRC11:04
*** mingyu has quit IRC11:07
*** mingyu has joined #openstack-swift11:09
*** goutham has joined #openstack-swift11:14
gouthamHi all11:14
gouthami need a small help11:15
gouthami have setup devstack with swift... to save images with the help swift.11:15
gouthamglance images ***11:16
gouthammy devstack is up and glance images are also active but when i want to see in which container the images are stored im unable to fetch the details11:16
gouthamcan anyone help??11:16
acolesgoutham: can you elaborate on "im unable to fetch" - do you mena you don;t know what the container name is, or a request fails, or...?11:18
gouthamhi i mean the images are active and i cant find them in my local file system so i am hoping that the images are with swift11:19
gouthamhow can i find them??11:19
gouthamENABLED_SERVICES+=,s-proxy,s-object,s-container,s-account ----> kept these things in my local.conf11:20
*** mvk has joined #openstack-swift11:20
gouthamhttps://hastebin.com/ramehimepa.ini --- my glance_store section after succesful stack in glance-api.conf11:21
gouthamhttps://hastebin.com/amaqaboron.pl -- swift stat11:21
gouthamhttps://hastebin.com/itosexoxoh.ini ----> etc/glance/glance-swift-store.conf11:22
acolesgoutham: you'll probably do better asking in #openstack-glance, at least at first, to understand which *account* and container glance is using in swift to store images. IIRC glance can either putsimages in the user's swift account or in a glance service swift account, depending on config, but I can't tell you which way devstack is set up.11:23
gouthamok i will ask them any person in particular who can help me out??11:24
acolesgoutham: sorry I don't know anyone specifically on glance these days11:25
gouthamits okay thanks for the help acoles :)11:25
*** mingyu has quit IRC11:28
*** mingyu has joined #openstack-swift11:29
*** mingyu has quit IRC11:29
*** mingyu has joined #openstack-swift11:48
*** mingyu has quit IRC11:48
*** pcaruana has quit IRC11:53
*** pcaruana has joined #openstack-swift11:57
*** links has quit IRC12:00
gouthamacoles: it worked12:01
*** zhurong has joined #openstack-swift12:01
acolesgoutham: great! so what was the answer?12:02
gouthamthere was a mistake from my side in my /etc/glance/glance-swift-store.conf there is a parameter12:02
gouthamuser = service:glance-swift12:02
gouthamso i sourced my openrc with source openrc glance-swift service12:03
gouthamthen swift list gave a response12:03
gouthamglance12:03
gouthamswift list glance 08c2edb8-426e-4868-9661-739516eeae7f 08c2edb8-426e-4868-9661-739516eeae7f-00001 e25ac606-cf03-42f0-929b-b8e0f495f146 e25ac606-cf03-42f0-929b-b8e0f495f146-00001 f13d4fc4-4d6b-4591-917c-4e27d9f6a3f3 f13d4fc4-4d6b-4591-917c-4e27d9f6a3f3-0000112:03
gouthamhttps://hastebin.com/apasijobop.go --> this gave the images list12:04
gouthami have a doubt acoles why is that we have to items like <image-id> and <image-id-0001>  what are these two things??12:05
acolesgoutham: IDK. If I had to guess I'd say glance is uploading images as SLO and that 'id' is a manifest and 'id-0001' is a segment, in this case only one segment.12:10
*** vint_bra has joined #openstack-swift12:10
acolesgoutham: try adding --lh to the swift list command and you'll get more details12:10
acoles'swift list glance --lh'12:10
gouthamyes it showed 32MB glance12:11
gouthamwhere can i find python-sdk for swift client any idea ??12:11
acolesgoutham: https://github.com/openstack/python-swiftclient12:13
acolesthere's a link to docs on that page ^^12:13
acolesyou can pip install python-swiftclient12:15
gouthamyes yes swift client is there i wanted python-sdk something like this https://docs.openstack.org/developer/python-novaclient/api.html\12:17
gouthamhttps://docs.openstack.org/developer/python-novaclient/api.html ***12:17
*** klamath has joined #openstack-swift12:18
*** klamath has quit IRC12:18
*** klamath has joined #openstack-swift12:19
acolesgoutham: https://docs.openstack.org/developer/python-swiftclient/client-api.html ?12:19
gouthamyes exactly what i wanted12:20
gouthamthanks acoles12:20
acolesgoutham: this layers more features on the basic client api https://docs.openstack.org/developer/python-swiftclient/service-api.html12:21
acolesgoutham: note thay are both part of same project as the CLI ^^12:21
*** vint_bra has quit IRC12:22
gouthamok thanks acoles will get back to you in case of any help ... :)12:23
gouthamthanks for all the help12:23
openstackgerritOpenStack Proposal Bot proposed openstack/swift master: Updated from global requirements  https://review.openstack.org/8873612:24
*** catintheroof has joined #openstack-swift12:30
*** f0o has joined #openstack-swift12:32
f0oHi, I was wondering which TLS wrapper is recommended for running in front of swift-proxy. I usually use nginx but I'm open to alternatives. Any comments?12:33
tdasilvaf0o: I see a lot of recommendations for haproxy12:38
tdasilvaf0o: also, that's what tripleo (and I belive openstack-ansible) uses FWIW12:39
f0otdasilva: I think most use haproxy because it comes with loadbalancing... not sure. hard to find any benchmark around the various deployments. I've also seen some swearing on stud, but everything seems rather vague12:40
*** links has joined #openstack-swift12:41
f0otdasilva: what do you run for production load?12:41
tdasilvaf0o: that's a valid point. I work for redhat, so we use tripleo12:42
rledisezf0o: we use haproxy. with proper hardware, you can go up to 15Gb/s in SSL on one server12:43
f0ooh nice12:44
f0owe have 3 proxy nodes that are connected to 4x 1G LACP for public network, I was planing on running them in a DNS-RR setup rather than pushing them through a loadbalancer12:45
f0obut if haproxy does a good job at terminating TLS I might just give it a go12:45
*** mingyu has joined #openstack-swift12:49
*** mingyu has quit IRC12:54
*** bkopilov_ has joined #openstack-swift13:00
*** bkopilov has joined #openstack-swift13:00
*** ouchkernel has quit IRC13:10
*** mingyu has joined #openstack-swift13:14
*** cbartz has quit IRC13:15
*** geaaru has quit IRC13:21
openstackgerritJoel Wright proposed openstack/swift master: Add Preamble and Postamble to SLO and SegmentedIterable  https://review.openstack.org/36537113:24
*** tongli has joined #openstack-swift13:26
*** zhurong has quit IRC13:28
*** chlong has quit IRC13:28
openstackgerritGábor Antal proposed openstack/swift master: Use more specific asserts in test/unit/obj tests  https://review.openstack.org/34283013:29
*** vint_bra has joined #openstack-swift13:38
*** jaosorior is now known as jaosorior_away13:41
*** psachin has joined #openstack-swift13:45
*** _JZ_ has joined #openstack-swift13:47
*** JimCheung has joined #openstack-swift13:56
*** links has quit IRC13:58
*** JimCheung has quit IRC14:01
*** zhurong has joined #openstack-swift14:02
*** NM has joined #openstack-swift14:02
*** ouchkernel has joined #openstack-swift14:04
*** klrmn has joined #openstack-swift14:10
*** openstackgerrit has quit IRC14:18
*** joeljwright has quit IRC14:26
*** jordanP has joined #openstack-swift14:44
*** zhurong has quit IRC14:52
*** joeljwright has joined #openstack-swift14:58
*** ChanServ sets mode: +v joeljwright14:58
*** tovin07_ has joined #openstack-swift15:10
*** chlong has joined #openstack-swift15:15
*** tovin07_ has quit IRC15:15
*** tovin07_ has joined #openstack-swift15:15
*** klrmn has quit IRC15:26
notmynamegood morning15:33
*** ouchkernel has quit IRC15:37
notmynameanyone familiar with http://crystal-sds.org ?15:37
notmynameor http://iostack.eu ?15:38
*** geaaru has joined #openstack-swift15:40
tovin07_hi notmyname15:45
tovin07_can you take a look at https://blueprints.launchpad.net/swift/+spec/osprofiler-support-in-swift15:45
tovin07_thank you :D15:45
tovin07_btw, i’m not familiar with crystal-sds/iostack :v15:45
acolesnotmyname: http://crystal-sds.org/?page_id=23 mentions Eran15:45
notmynameacoles: yeah, I saw storlets on their block diagram15:46
notmynamehmm.. but that's IBM eran. not post-ibm eran15:46
notmynametovin07_: ok, what about it15:46
tovin07_notmyname: it’s about integrating OSprofiler into Swift15:47
tovin07_an small example with glance https://tovin07.github.io/glance/glance-image-list-highlight.html15:48
tovin07_Can you approve it? I hope that I can make it land to Swift in this Pike15:52
notmynametovin07_: it seems that the basic integration is to add the osprofiler middleware into the (front of?) the wsgi pipeline?15:52
*** caccola has joined #openstack-swift15:52
notmynametovin07_: there's not thing to approve. we don't use blueprints. http://lists.openstack.org/pipermail/openstack-dev/2016-May/094026.html15:53
tovin07_notmyname: not really, wsgi middleware is just a small piece. We can trace RPC, DB request too15:53
tovin07_oh, thanks for the link15:53
notmynametovin07_: do you have a patch worked up yet?15:54
tovin07_currently, I’m working on my local testbed15:54
tovin07_I will publish it to gerrit soon for review :D15:54
notmynametovin07_: from https://specs.openstack.org/openstack/oslo-specs/specs/mitaka/osprofiler-cross-service-project-profiling.html I got the impression that adding it to the pipeline would enable it. what other integration points are there? (swift doesn't call other openstack projects other than keystone)15:55
notmynametovin07_: also, what are the dependencies osprofiler will pull in?15:55
notmynameeg from patch 254703 it seems that it depends on oslo.config. swift doesn't currently use oslo.config, so that might be a challenge15:57
patchbothttps://review.openstack.org/#/c/254703/ - nova - Integrate OSProfiler and Nova (MERGED)15:57
tovin07_what other integration points are there? -> swift do not need to be starting point of tracing at all15:58
tovin07_what are the dependencies osprofiler will pull in? -> https://git.openstack.org/cgit/openstack/osprofiler/tree/requirements.txt15:58
notmynameI mean, the nova patch adds a bunch of decorators, but I dont' see that mentioned on https://specs.openstack.org/openstack/oslo-specs/specs/mitaka/osprofiler-cross-service-project-profiling.html at all15:58
notmynamejust trying to understand what the code impact will be15:59
*** tongli has quit IRC15:59
notmynamehmm... that's a lot of new dependencies15:59
*** chsc has joined #openstack-swift16:00
*** chsc has joined #openstack-swift16:00
tovin07_yes, that spec do not cover decorator things16:00
*** ganders has joined #openstack-swift16:00
tovin07_this one has: https://docs.openstack.org/developer/osprofiler/api.html#five-ways-to-add-a-new-trace-point16:00
notmynametovin07_: ok, so the basic idea is to decorate the code at all the points that could be traced and then add the middleware so that it can respond to the "trace this request" header. also, any calls to other openstack services should be modified to pass along any trace info, if present16:05
notmynametovin07_: is that a decent summary?16:05
tovin07_yes (y)16:05
tovin07_the basic idea is that16:06
notmynametovin07_: ok. can you tell me more about where the trace info goes? I see a dependency on oslo.messaging, so is it putting stuff on a rabbit queue or something?16:06
tovin07_It canbe rabbitmq (if we use with messaging), redis, mongodb, loginsight, elasticseach, … or even file if we want. A list of supported “driver” (where traces are stored) here: https://git.openstack.org/cgit/openstack/osprofiler/tree/osprofiler/drivers16:08
notmynametovin07_: what's the current state of the patch you've been working on? how far have you gotten?16:09
tovin07_I started working on it early this week, sadly, it’s just a beginning —> there is no output yet16:13
*** caccola has quit IRC16:14
notmynameok, that's fine. I was curious about how successful or not you'd been at integrating this into swift16:14
*** caccola has joined #openstack-swift16:14
tovin07_ok, thank you! I will continue to work on it.16:16
notmynametovin07_: the extra dependencies you're adding are going to be a major hurdle to overcome in review. not only the oslo libraries, but also webob itself (something that swift explicitly replaced years ago). I really like the sample output from glance that you provided. it looks really cool, and it seems like osprofiler could be a really useful tool16:16
notmynamealso, many years ago we added an "xprofile" middleware that offers some degree of profiling https://docs.openstack.org/developer/swift/middleware.html#module-swift.common.middleware.xprofile16:16
notmyname(honestly, xprofile isn't used or looked at much as far as I know. but it's important to mention in this conversation)16:17
*** chsc has quit IRC16:18
tovin07_yep16:18
tovin07_people tend to use OSprofiler for benchmarking, find bottle-neck or trouble-shoot OpenStack services16:19
notmynametovin07_: but I want you to know before you get too far into this that (1) because of the existing xprofile and (2) because of the large list of new dependencies you'd be adding, getting osprofile integration merged into swift would be very difficult16:19
tovin07_(2) I know that too16:20
*** ganders has quit IRC16:20
*** jordanP has quit IRC16:21
*** ganders has joined #openstack-swift16:23
*** pcaruana has quit IRC16:24
*** clayg has joined #openstack-swift16:25
*** JimCheung has joined #openstack-swift16:30
notmynametovin07_: let me be explicit (just to make sure there's no confusion or incorrect expectations)16:32
f0oI got my swift behind haproxy with TLS now and although I can create containers and upload files to it, I get `precondition failed` if I try to list containers or their contents. I can download the contents just fine by URL (assuming they're public). any ideas?16:33
*** arunman has quit IRC16:33
*** JimCheung has quit IRC16:33
*** arunman has joined #openstack-swift16:34
*** arunman has quit IRC16:34
notmynametovin07_: as is, because of the extra dependencies, there is zero chance that osprofile integration will land. however, if you were able to make it work with no new dependencies, chances would be *much* higher (even if it adds a decorator to a bunch of places throughout the codebase)16:35
*** NM has quit IRC16:35
notmynamef0o: in the 412 response, there should be an x-trans-id header. if so, grep the swift logs for that and look at the request that is actually getting to the proxy server. check to see if it looks well-formed. if there is no x-trans-id header, then the error is not coming from swift and is probably from haproxy itself16:37
notmyname412 is precondition failed, right?16:37
notmynameyes16:37
f0onotmyname: yeah it's a 412 but I cant find the x-trans-id16:38
*** tesseract has quit IRC16:38
notmynamef0o: then it's not from swift16:38
*** NM has joined #openstack-swift16:38
notmynamef0o: every response from swift will include an x-trans-id header in the response16:38
f0olet me just tcpdump16:38
notmynameso you can now focus your attention on the haproxy layer16:38
f0ogot it16:38
f0ook seems like something is off with replication, only one node replies with 200 - the rest is going 412 on the nodes16:40
f0ofix one thing, another breaks haha16:41
*** xinli has joined #openstack-swift16:41
notmynamef0o: was this a cluster that you had verified to be working before setting up haproxy?16:41
notmynamef0o: you might try `swift-recon --validate-servers` to do a basic check that the rings are right16:42
f0oyeah it was working fine16:43
f0oand I only proxified the public endpoint with haproxy16:43
notmynameok16:43
f0o3/3 hosts ok, 0 error[s] while checking hosts.16:43
notmynameok16:44
notmynamewell, ok assuming you expected only 3 results. might be a big problem if you have 300 servers in your cluster ;-)16:44
f0oI also made sure that the TLS certificate is trusteed bt all parties16:44
f0onah just a small setup for now, 3 hosts, each in it's own DC stacked with 24 hdds16:45
notmynamecool16:45
*** gyee has joined #openstack-swift16:45
*** mvk has quit IRC16:47
f0ochecked the logs and replication runs were successful just some seconds ago16:48
tovin07_notmyname: yes, thanks for clarifying, i’ll follow those points16:49
*** jordanP has joined #openstack-swift16:49
mingyuHi all, I was benchmarking a swift cluster with Cosbench. I found that when cosbench wrote small objects into the cluster with high concurrency (100~150 workers), the performance fluctuated heavily. I tried to increase the number of workers of object servers and proxy servers, but didn't get any improvement.16:49
notmynamemingyu: there's a lot of things that you could check. could be something a simple as being bottlenecked by memcache connections (try raising memcache_max_connections). could be you were limited by drive throughput. could be a cpu limitation on the proxy server16:51
notmynamemingyu: I'd point you to pdardeau, but he doesn't seem to be around (actually, he was part of the OSIC layoffs at intel :-( )16:52
notmynamemingyu: but the basic steps with any benchmarking apply. measure everything, find the bottleneck, see what you can tune to avoid that bottleneck16:52
*** tovin07_ has left #openstack-swift16:52
zaitcevnotmyname: maybe post this on a blog instead http://lists.openstack.org/pipermail/openstack/2017-April/019291.html16:54
notmynamezaitcev: yeah, I realize I end up writing a blog post to answer stuff on the ML :-)16:54
notmynamezaitcev: actually, I think adding it to the in-tree docs would be good16:54
mingyuthank you @notmyname ! I'll try to raise memcache_max_connections. I have 90 hdds in this cluster and the cpu usage was below 80% when benchmarking.16:56
notmynamemingyu: I only mention that setting because I saw some other benchmark requests that were improved by raising that value16:57
* notmyname is off to a morning of meetings...16:57
f0onotmyname: I feel stupid, horizon had a typo on the max limit... that caused the issue. tcpdump got me the full response after switching abck to non-tls and it stated `limit\=100001` in the request and `Maximum limit is 10000` in the response16:57
*** psachin has quit IRC17:05
*** joeljwright has quit IRC17:07
*** chsc has joined #openstack-swift17:07
*** klrmn has joined #openstack-swift17:08
*** ganders has quit IRC17:09
timburke:-/ one more reason i wish you guys would let me land https://review.openstack.org/#/c/391932/ -- i hate that 412 rarely means "precondition failed" in our codebase17:12
patchbotpatch 391932 - swift - Return 400 on bad requests (ABANDONED)17:12
*** SkyRocknRoll has joined #openstack-swift17:26
*** zul has quit IRC17:26
*** ganders has joined #openstack-swift17:28
*** zul has joined #openstack-swift17:29
*** ChubYann has joined #openstack-swift17:29
*** SkyRocknRoll has quit IRC17:31
*** NM has quit IRC17:40
*** NM has joined #openstack-swift17:45
*** mtreinish has quit IRC17:46
*** NM has quit IRC17:47
*** SkyRocknRoll has joined #openstack-swift17:47
*** NM has joined #openstack-swift17:49
*** mvk has joined #openstack-swift18:04
*** mtreinish has joined #openstack-swift18:05
*** jordanP has quit IRC18:17
*** openstackgerrit has joined #openstack-swift18:31
openstackgerritMerged openstack/swift master: Trivial fix warnings in docstring  https://review.openstack.org/46204018:31
-openstackstatus- NOTICE: Gerrit on review.openstack.org is being restarted to accomodate a memory leak in Gerrit. Service should return shortly.18:54
*** jordanP has joined #openstack-swift18:56
*** mingyu has quit IRC18:56
*** mingyu has joined #openstack-swift18:58
*** SkyRocknRoll has quit IRC19:25
*** flwang has quit IRC19:31
*** gyee has quit IRC19:55
notmynameoh. right. wednesday. we have a meeting (in an hour). I almost forgot19:57
*** vint_bra has quit IRC20:03
*** ganders has quit IRC20:06
*** silor has quit IRC20:09
*** vint_bra has joined #openstack-swift20:12
*** jordanP has quit IRC20:20
*** catinthe_ has joined #openstack-swift20:21
*** catintheroof has quit IRC20:24
*** m_kazuhiro has joined #openstack-swift20:27
*** joeljwright has joined #openstack-swift20:37
*** ChanServ sets mode: +v joeljwright20:37
*** caccola has quit IRC20:44
*** pdardeau has joined #openstack-swift20:44
*** catinthe_ has quit IRC20:45
*** ChanServ sets mode: +v clayg20:55
claygis that *today* !?20:55
notmynameit's today!20:56
*** _JZ_ has quit IRC20:57
kota_ggood morning20:58
joeljwrightkota_: morning!20:58
kota_hi joeljwright20:58
mattoliverauMorning20:59
joeljwrighto/20:59
notmynamemeeting time in #openstack-meeting21:00
openstackgerritTim Burke proposed openstack/pyeclib master: Avoid segfault when raising exceptions  https://review.openstack.org/38518621:03
*** NM has quit IRC21:10
openstackgerritMerged openstack/swift master: Fix (un)patch_policies  https://review.openstack.org/44093621:11
*** vint_bra has quit IRC21:12
clayglooks like the meeting's topic has moved on21:14
claygjoeljwright: I'm confused by the TODO in patch 456205 (We need to pass the session here) - that plus the statement "All the client requests should be made through the Keystone session" leave me very confused ...21:15
patchbothttps://review.openstack.org/#/c/456205/ - python-swiftclient - WIP: Use keystone session when possible21:15
claygjust what *is* this session object?21:15
*** vint_bra has joined #openstack-swift21:15
*** NM has joined #openstack-swift21:15
joeljwrightit's like a requests session that handles the auth21:15
joeljwrightclayg: ^^^21:15
claygit's made out to be some wapper over requests that has the property of catching 401/403 and ...21:15
claygyeah, great that's what I thought :\21:15
timburkehttps://github.com/openstack/keystoneauth/blob/master/keystoneauth1/session.py21:15
*** chlong has quit IRC21:17
claygtimburke: knows how I like this21:19
*** mingyu has quit IRC21:20
*** mingyu has joined #openstack-swift21:21
claygseems like the one out of three case where where is-a would be better than has-a; none of this should be *required* tho?  it's not like the Keystone API only works if you use python class?21:21
*** mingyu has quit IRC21:22
joeljwrightclayg: not sure I can parse that…21:22
*** mingyu has joined #openstack-swift21:22
*** _JZ_ has joined #openstack-swift21:24
claygwhich part?  is-a vs. has-a?  I think it's odd that the keystone session object implements the request session api21:24
*** gyee has joined #openstack-swift21:25
joeljwrightclayg: do you really not like it?21:25
*** Sukhdev has joined #openstack-swift21:25
joeljwrightclayg: we use a requests session and handle auth/reauth/headers manually21:26
claygi just... I feel the coupling... if things are getting painful somewhere because we're not proxying all of our requests through this keystone session object - something is off the rails - because like what does a client library that's not even written in python do?  Or what if I have service I want to use keystone to auth a- but my API is RPC instead of21:27
claygREST?21:27
joeljwrightyeah, I see your point21:28
joeljwrightI think not-python is a non-issue though21:28
claygjoeljwright: and that's working for us right?  What if someone remembers that ever since we switched over the requests we lost our 100-Continue support for uploads and goes to make it right only to find out they have to bypass the keystone session - or even the request session object to fix it21:28
joeljwrightyou'd have to auth however made most sense there21:28
openstackgerritOpenStack Proposal Bot proposed openstack/swift master: Updated from global requirements  https://review.openstack.org/8873621:29
claygsweet - and we can't do that for why?21:29
joeljwrightclayg: I don't know what to say tbh… I think it could clean things up and make life easier in certain respects, but I share some of your concerns too…21:30
* clayg shrugs21:31
*** NM has quit IRC21:31
joeljwrightI'm also concerned that with keystone APIs being deprecated that at least some of this could be forced upon us21:32
openstackgerritTim Burke proposed openstack/pyeclib master: Avoid segfault when raising exceptions  https://review.openstack.org/38518621:32
joeljwrightwell, it's there as a point of discussion now :)]21:32
timburkeclayg: we keep lamenting the loss of 100-continue support for swiftclient... but i'm not sure we ever really had it. we have to work around httplib itself to get it in swift :-(21:34
claygi guess in another worldview we could just use keystone sessions cause that what everyone else does and then patch keystone sessions if we find it to be lacking for our usecase or have a bad interface somewhere...21:34
claygtimburke: I think it used to import swift's buffered http21:35
notmynameyeah, IIRC it did21:35
timburkeclayg: so...we had swift the *client* importing from swift the *server*? ugh21:36
notmynamejoeljwright: hmm... I didn't realize the keystone session changes had the impact clayg brings up. I agree that "it only works if every request goes through a keystone class" is wrong21:36
notmynametimburke: remember that they used to be the same codebase ;-)21:36
timburkenotmyname: ...and so you'd have to install the *whole thing* to get a blessed client21:37
timburkeimagine it now: wanna put some data? go install libec!21:37
* mattoliverau goes to breakfast21:38
notmynamesure sure. that doesn't seem like a good idea now21:38
*** m_kazuhiro has quit IRC21:38
notmynamebut I want to get back to keystone sessions21:39
claygnotmyname: it only just *sounds* insane - in reality it's probably fine - you wouldn't mind it every request in swiftclient went though a swiftclient.Connection class - just think of keystone as being part of the swiftclient code base21:39
notmynamejoeljwright: so *everything* goes through keystone?21:39
notmynameclayg: right!21:40
notmynamebut I can easily change the swiftclient code21:40
joeljwrightnotmyname: well… not necessarily… not if you're not using keystone for auth21:40
joeljwrightwe've got duck typing after all… we could just make a swiftclient.Connection class that looks like a requests session and a keystone session :)21:41
notmynamehmmm21:41
notmynameyeah, does keystone know what to do with a 498 response code?21:41
timburkejoeljwright: no, even if you're using v1 auth, we'll want a keystone session with *our* v1 plugin, and everything still goes through it21:41
notmynamedoes keystone ever look at the response body?21:41
joeljwrighttimburke: we can do it that way, but nothing is forcing us21:41
joeljwrightjust sayin21:42
claygnotmyname: I mean... true - decoupling enables agility - but *coupling* enables *consistency* - do you want to go fast or do you want every client everywhere to do it *right*?21:42
notmynameclayg: yes, of course21:42
timburkenotmyname: does swiftclient know what to do with a 498?21:43
joeljwrightlooks like this will require exactly as much discussion as I thought :)21:43
notmynametimburke: I don't know, but I hope so since it's a response code we invented21:43
clarkbclayg: the big issue ifnra ran into with swiftclient not using the sessions stuff was tokens were used even if they had expired21:43
clarkbeventually some api request related to the upload would fail because it assumed the token would be valid for the lifetime of the logical upload21:44
notmynamejoeljwright: (1) new change proposed (2) swift devs yell about how terrible it will be (3) swift devs ignore it for a long time (4) swift devs see a use case and begrudgingly rewrite the previously proposed solution to integrate into swift (5) swift devs continue to yell a lot21:44
joeljwrightnotmyname: :D21:45
timburkenotmyname: but hey, at least we've got a *process*!21:45
timburkeISO 9000 here we come!21:45
clarkbclayg: and what we found was NONE of the clients did any of that properly and it was an issue everywhere21:45
clarkbso it got solved in one place and now things are happier. You are correct that python isn't required and you could write the same mechanism in $implementation21:46
*** flwang has joined #openstack-swift21:46
notmynamedoes the current "pass in a session" functionality we have get us any closer to a good place? joeljwright?21:47
joeljwrightthe current 'pass in a session' just allows us to get tokens from a session21:48
joeljwrightwe still handle the requests and reauth manually21:48
notmynameand that's broken?21:49
joeljwrightthreading the session through to replace the surrent requests session and letting it handling the reauthentication looks like a lot of work21:49
notmynamefor the case clarkb says?21:49
claygI have recent memory of api tokens expiring within a logical request in middleware - but that's not really the clients fault - i'm not sure I'm aware of a 401 response that wouldn't get reauth'd and retried?21:50
joeljwrighttokens would certainly expire, but then the client should reauth21:50
claygi did a quick search through open bugs and didn't see it21:50
notmynamewhat's the case where swiftclient is broken today that is fixed when we pass everything through a keystone session class?21:50
claygit probably buys us something like... and I'm guessing here "Token support" ???21:51
notmynameclayg: what do we have today, if not "token support"?21:51
timburkeuser gives us some creds with an unversioned endpoint and says "here, you figure it out"21:51
notmynametimburke: that would be great to solve (ie handle transparently for the user)21:52
claygthere's like ks_auth_plugin.Token and ks_auth_plugin.Password ???21:52
joeljwrightthe unversioned stuff is certainly a potential problem, and the explicitly versioned keystoneauth.session.vX are deprecated as far as I'm aware too21:52
claygmaybe... like we don't know how re-auth if you only give us a Token?  maybe the ks_auth_plugin.Token thing knows how to reauth from a token!?21:53
joeljwrightthe push is to let keystoneauth figure it out, which was the abandoned patch that brought all this up again21:53
claygbut that sounds silly - because then tokens don't really expire - so what's the point of a token21:53
claygjoeljwright: but do you really need a whole bucket of python code just to use the auth api?  It's one thing to say "oh sure you *could* write it in another language" and another to say "it's *literally* this simple; you could write it in Java and it'd still be less than 50 lines"21:55
notmynameclayg: a while back I learned that what we refer to as "token" is actually the "token id" in keystone. keystone's "token" is a whole data structure packed with all kinds of stuff (the whole service catalog IIRC)21:55
claygnotmyname: gtk!21:55
joeljwrightnotmyname: there's certainly a lot going on in keystone v321:56
notmynameclayg: but you have an excellent point that if you can reauth from an old token, then tokens don't actually ever expire21:56
clayganyway - it seems like "throw some creds at at unversioned endpoint and let keystone figure it out" should be orthogonal to "all http requests to the service are proxied through a keystone class"21:56
notmynameclayg: it seems that way to me too21:57
claygnotmyname: sorry - i don't really know *what* the ks_auth_plugin.Token does - it may not support reauth - i have no idea21:57
notmynameclayg: I feel like I should stop typing, because I agree with everything you are typing21:57
claygi'll stop typing!21:58
notmynamelol21:58
joeljwright:)21:58
clarkbya its the session that supports reauth and I think actual creds are erquired for that21:58
notmynamewe'll all stop typing!21:58
joeljwrighthave fun in Boston, I'm sure this will come up again :)21:59
timburkei'm curious about how well keystone's session can be adapted to a signature-based auth mechanism a la boto and s3...22:01
joeljwrightI thought we all agreed to stop typing? ;)22:01
openstackgerritTim Burke proposed openstack/pyeclib master: Switch from pep8 to flake8 for linting  https://review.openstack.org/46230422:08
timburkei feel like we ought to stay on top of https://review.openstack.org/#/q/is:open+(project:openstack/pyeclib+OR+project:openstack/liberasurecode)+-label:Code-Review-1%252Cself+-label:Code-Review%252B2%252Cself better than we do...22:11
timburkebut then, i might be biased22:11
*** joeljwright has quit IRC22:13
*** vint_bra has quit IRC22:13
*** xinli has quit IRC22:19
*** klrmn1 has joined #openstack-swift22:23
*** Sukhdev has quit IRC22:23
*** ediardo_ has joined #openstack-swift22:23
*** blairo has joined #openstack-swift22:26
*** chsc_ has joined #openstack-swift22:26
*** _JZ_ has quit IRC22:27
*** htruta` has joined #openstack-swift22:27
*** tdasilva- has joined #openstack-swift22:28
*** lcurtis has joined #openstack-swift22:28
*** zaitcev_ has joined #openstack-swift22:28
*** ChanServ sets mode: +v zaitcev_22:28
*** ediardo has quit IRC22:28
*** htruta has quit IRC22:28
*** chsc has quit IRC22:28
*** blair has quit IRC22:28
*** klrmn has quit IRC22:28
*** tdasilva has quit IRC22:28
*** zaitcev has quit IRC22:28
*** d0ugal has quit IRC22:28
*** ediardo_ is now known as ediardo22:29
*** klamath has quit IRC22:34
claygyou can kota should just start merging stuff - or tell me or tdasilva- when you have a change that's ready to go and just needs a +A22:44
claygI feel like some of that stuff (esp. the older stuff e.g. patch 408259) is more like "this might be useful" kinda of stuff and I don't really have a good sense of maintainer-ship on that project to make the call?22:46
patchbothttps://review.openstack.org/#/c/408259/ - pyeclib - Install isa-l from source when testing liberasure-...22:46
claygwhere as stuff that could have a bug attached to it (like the segfault patch 385186) would be easier to say objectively "yeah this makes the project better for sure"22:47
patchbothttps://review.openstack.org/#/c/385186/ - pyeclib - Avoid segfault when raising exceptions22:47
claygpersonally - pyeclib isn't given me any grief - I am sorta freaked out about the zlib checksum stuff - but still don't have my head around it - I guess I'm hoping you'll eventually tell me what to +A and package so I don't have to be scared anymore22:48
clayg... i'm so scared ...22:48
patchbot/me gives clayg a hug22:49
timburkefwiw, that's not the only segfault lying in wait -- https://review.openstack.org/#/c/425471/22:49
patchbotpatch 425471 - liberasurecode - Jerasure: Handle initialization errors correctly22:49
timburkeand without https://review.openstack.org/#/c/459028/ i haven't had much luck compiling on OS X lately22:50
patchbotpatch 459028 - liberasurecode - Un-inline get/set_metatdata_chksum22:50
openstackgerritMerged openstack/pyeclib master: Fix error message with invalid parity number  https://review.openstack.org/43059922:52
*** d0ugal has joined #openstack-swift22:53
*** mingyu has quit IRC22:53
*** lcurtis has quit IRC22:56
timburkeand i really want to eventually get to https://review.openstack.org/#/c/431794/ being merged (which means i'll need to resolve the current conflict), but it's like five-deep on a chain to have that be an isolated change, so you don't have to track the cleanup that shook out from my getting there22:57
patchbotpatch 431794 - liberasurecode - Use preprocessor to build test suites22:57
timburkeand i'm not really looking forward to rebasing *all* of those22:57
claygtimburke: but that's just an issue for jerasure?  so who cares?23:09
timburkeanytime my c extension can bomb out the python interpreter, i kinda care23:11
claygidk, if a c extension segfaults with a plugin you don't use does it make it sound?23:15
claygcc tdasilva- maybe +A patch 425471?23:15
patchbothttps://review.openstack.org/#/c/425471/ - liberasurecode - Jerasure: Handle initialization errors correctly23:15
notmynameis the pope catholic? does a bear poop in the woods? does an african swallow grip the coconut by the husk?23:16
notmynameI'm sure there are now some non-english/non-american people in this channel who have no idea what's going on23:16
openstackgerritMerged openstack/swift master: Move EC-specific unit test to EC Test class  https://review.openstack.org/45797023:20
*** chsc_ has quit IRC23:39
*** vint_bra has joined #openstack-swift23:46
openstackgerritTim Burke proposed openstack/pyeclib master: Add tox environment to test against liberasurecode master  https://review.openstack.org/40782923:50
*** mingyu has joined #openstack-swift23:54
*** mingyu has quit IRC23:58

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