Thursday, 2015-08-27

*** CR7 has joined #openstack-swift00:12
*** trifon has quit IRC00:14
*** kevinc_ has quit IRC00:22
*** esker has quit IRC00:27
*** m_kazuhiro has joined #openstack-swift00:30
*** rjaiswal has quit IRC00:40
*** asd112z has joined #openstack-swift00:41
*** wshao has joined #openstack-swift00:45
openstackgerritVictor Stinner proposed openstack/swift: py3: Update pbr and dnspython requirements  https://review.openstack.org/21742300:48
*** shri has left #openstack-swift01:07
*** lpabon has joined #openstack-swift01:10
*** flwang has quit IRC01:11
*** m_kazuhiro has quit IRC01:12
*** m_kazuhiro has joined #openstack-swift01:13
*** barker has joined #openstack-swift01:32
*** barker has quit IRC01:37
*** jrichli has joined #openstack-swift01:40
*** flwang has joined #openstack-swift01:40
*** lpabon has quit IRC01:50
*** lpabon has joined #openstack-swift01:58
*** haomaiwa_ has joined #openstack-swift02:03
*** jlk has left #openstack-swift02:04
*** ccavanna_ has joined #openstack-swift02:07
*** haomaiwa_ has quit IRC02:09
*** haomaiwang has joined #openstack-swift02:10
*** ccavanna has quit IRC02:10
*** pberis has joined #openstack-swift02:21
*** wshao has quit IRC02:30
*** wshao_ has joined #openstack-swift02:31
*** wshao_ has quit IRC02:31
jrichliclayg: around?02:32
*** baojg has joined #openstack-swift02:39
*** asd112z has quit IRC02:50
notmynamegood evening02:50
*** jlk has joined #openstack-swift02:50
notmynamedidn't get a chance to get online earlier today02:50
jrichlinotmyname: good evening02:50
notmynamethere, there, clayg. it will be ok :-)02:51
jrichlilol, I didn't know if the 'q' was a mistake, or a statement :-)02:54
*** haomaiwang has quit IRC03:01
*** haomaiwang has joined #openstack-swift03:01
mattoliveraunotmyname: evening03:03
mattoliveraujrichli: hi03:03
mattoliveraunotmyname: how's openstack silicon valley? if thats where you are :)03:03
jrichlimattoliverau: hello!03:04
*** lpabon has quit IRC03:07
notmynamemattoliverau: yeah, that's where I was today (back at home right now)03:11
notmynamemattoliverau: it was ... ok03:11
notmynamenot too technical. good to talk to some people. I saw some companies on name badges that I assume are openstack users03:12
notmynameI'll be going to the office tomorrow instead of back to day 2 of the event :-)03:12
notmynamemattoliverau: oh! I got another arduino from one of the vendors, so that was nice ;-)03:13
notmynameoh, wow. look at the gate. our CVE patches still haven't landed after nearly 9 hours!!03:15
ccavanna_notmyname: Hi.03:16
notmynamehttps://www.openstack.org/summit/tokyo-2015/schedule/design-summit is the schedule for tokyo03:16
notmynameccavanna_: hi03:16
ccavanna_notmyname: Can I ask for your "reviewing" expertise for https://review.openstack.org/#/c/202657/ ?03:17
ccavanna_Samuel reviewed it, and I was hoping ... :-)03:17
ccavanna_Or anybody else online who wishes to do one review ....03:17
ccavanna_Do we need one or two cores to review? I don't remember.03:18
notmynameyeah. normally we have 2 cores review something03:18
ccavanna_You were talking about an Arduino earlier, I just finished assembling an Arduino robotic arm with my daughter.03:19
ccavanna_(not wired yet)03:19
notmynamecool03:19
mattoliveraunotmyname: \o/ free stuff! At least you stayed for one day :)03:23
*** sanchitmalhotra has joined #openstack-swift03:27
notmynameccavanna_: honestly, I'm not likely to get to that review tonight03:27
ccavanna_notmyname: not a problem.03:27
ccavanna_Thanks anyway! I leave it open for anyone wishing to review.03:28
*** CR7 has quit IRC03:35
*** CR7 has joined #openstack-swift03:36
*** pberis has quit IRC03:48
*** chenhuayi has joined #openstack-swift03:51
*** flwang has quit IRC03:58
*** swat30 has quit IRC03:58
*** haomaiwang has quit IRC04:01
*** haomaiwa_ has joined #openstack-swift04:01
*** jamielennox is now known as jamielennox|away04:04
*** swat30 has joined #openstack-swift04:04
*** jamielennox|away is now known as jamielennox04:05
*** jlk has left #openstack-swift04:09
*** jrichli has quit IRC04:15
*** links has joined #openstack-swift04:38
*** trifon has joined #openstack-swift04:38
*** CR7 has quit IRC04:44
*** changbl has quit IRC04:46
*** trifon has quit IRC04:49
*** _hrou_ has joined #openstack-swift04:59
*** haomaiwa_ has quit IRC05:01
*** haomaiwang has joined #openstack-swift05:01
*** zaitcev has quit IRC05:02
*** hrou has quit IRC05:02
*** ppai has joined #openstack-swift05:08
*** flwang has joined #openstack-swift05:13
*** sanchitmalhotra1 has joined #openstack-swift05:16
*** openstackgerrit has quit IRC05:16
*** openstackgerrit has joined #openstack-swift05:16
*** flwang has quit IRC05:18
*** sanchitmalhotra has quit IRC05:18
*** trifon has joined #openstack-swift05:25
*** SkyRocknRoll has joined #openstack-swift05:25
*** rjaiswal has joined #openstack-swift05:27
*** m_kazuhi_ has joined #openstack-swift05:29
*** m_kazuhiro has quit IRC05:29
*** albertom has quit IRC05:29
*** albertom has joined #openstack-swift05:31
*** silor has joined #openstack-swift05:42
*** silor1 has joined #openstack-swift05:43
*** baojg has quit IRC05:45
*** silor has quit IRC05:46
*** silor1 is now known as silor05:46
*** baojg has joined #openstack-swift05:52
*** baojg has quit IRC05:52
*** haomaiwang has quit IRC06:01
*** 5EXABZ8QP has joined #openstack-swift06:01
*** _hrou_ has quit IRC06:12
*** sanchitmalhotra has joined #openstack-swift06:16
*** sanchitmalhotra1 has quit IRC06:18
*** baojg has joined #openstack-swift06:22
*** sanchitmalhotra1 has joined #openstack-swift06:28
*** m_kazuhiro has joined #openstack-swift06:29
*** m_kazuhi_ has quit IRC06:29
*** sanchitmalhotra has quit IRC06:31
*** dimasot has joined #openstack-swift06:33
dimasotHi, i have some problem with container_sync at master version06:34
*** albertom has quit IRC06:34
*** albertom has joined #openstack-swift06:40
*** SkyRocknRoll has quit IRC06:47
dimasotthe problem that I see is:06:54
dimasotat lines 501-504 of sync.py06:55
dimasotput_object(sync_to, name=row['name'], headers=headers,06:55
dimasotthe sync_to contains the full url that includes "https://<ip address>" part06:56
dimasotand it cause to error 500 at remote proxy since it failed to pars such a path at utils.py06:57
dimasotwhen I change the line 501 of sync.py to this one06:58
dimasotput_object(urlparse(sync_to).path, name=row['name'], headers=headers,06:59
dimasotI mean I use urlparse(sync_to).path instead sync_to06:59
dimasoteverything is worked06:59
dimasotmy question is if it is a real bug or I did something wrong at configuration, and thre exists fix that avoids code changes07:00
*** 5EXABZ8QP has quit IRC07:01
*** haomaiwang has joined #openstack-swift07:02
*** SkyRocknRoll has joined #openstack-swift07:02
*** rledisez has joined #openstack-swift07:04
*** sanchitmalhotra has joined #openstack-swift07:28
*** sanchitmalhotra1 has quit IRC07:30
*** rjaiswal has quit IRC07:40
*** geaaru has joined #openstack-swift07:43
*** SkyRocknRoll_ has joined #openstack-swift07:55
*** SkyRocknRoll_ has quit IRC07:56
*** haomaiwang has quit IRC08:01
*** haomaiwang has joined #openstack-swift08:01
*** baojg has quit IRC08:02
*** jordanP has joined #openstack-swift08:14
*** jistr has joined #openstack-swift08:15
*** baojg has joined #openstack-swift08:16
*** mahatic has joined #openstack-swift08:24
dimasotHi, i have some problem with container_sync at master version08:25
dimasotat lines 501-504 of sync.py08:26
dimasot put_object(sync_to, name=row['name'], headers=headers,08:26
dimasot                           contents=FileLikeIter(body),08:26
dimasot                           proxy=self.select_http_proxy(), logger=self.logger,08:26
dimasot                           timeout=self.conn_timeout)08:26
dimasotthe sync_to contains the full url that includes "https://<ip address>" part08:26
dimasotand it cause to error 500 at remote proxy since it failed to pars such a path at utils.py08:26
dimasotwhen I change the line 501 of sync.py to this one08:27
dimasotput_object(urlparse(sync_to).path, name=row['name'], headers=headers08:27
dimasoteverything is worked08:27
dimasotmy question is if it is a real bug or I did something wrong at configuration, and thre exists fix that avoids code changes08:27
cschwededimasot: what is your setting in container-sync-realms.conf?08:36
cschwedehttp://docs.openstack.org/developer/swift/overview_container_sync.html#configuring-container-sync08:36
cschwededimasot: ^^ have a look at that section; probably you put a url in the X-Container-Sync-To header instead of the realm settings?08:37
*** haomaiwang has quit IRC08:51
*** haomaiwang has joined #openstack-swift08:51
*** jistr has quit IRC08:54
*** jistr has joined #openstack-swift08:56
*** wuhg has joined #openstack-swift09:00
*** haomaiwang has quit IRC09:01
*** jistr has quit IRC09:01
*** haomaiwang has joined #openstack-swift09:02
*** dmorita has quit IRC09:04
*** jistr has joined #openstack-swift09:05
*** dimasot has quit IRC09:05
*** mfalatic has quit IRC09:12
*** sanchitmalhotra1 has joined #openstack-swift09:32
openstackgerritMerged openstack/swift: Disallow unsafe tempurl operations to point to unauthorized data  https://review.openstack.org/21725309:32
*** sanchitmalhotra has quit IRC09:34
*** ho has quit IRC09:45
*** baojg has quit IRC09:50
openstackgerritJiri Suchomel proposed openstack/swift: Let object-info find files in a given directory  https://review.openstack.org/18925809:56
*** haomaiwang has quit IRC10:01
*** haomaiwang has joined #openstack-swift10:02
*** jistr has quit IRC10:06
*** eandersson has joined #openstack-swift10:10
*** jistr has joined #openstack-swift10:18
*** dimasot has joined #openstack-swift10:20
*** mahatic has quit IRC10:21
*** [1]dimasot has joined #openstack-swift10:26
*** dimasot has quit IRC10:26
*** [1]dimasot is now known as dimasot10:26
openstackgerritMerged openstack/swift: Disallow unsafe tempurl operations to point to unauthorized data  https://review.openstack.org/21725910:26
openstackgerritMerged openstack/swift: Better scoping for tempurls, especially container tempurls  https://review.openstack.org/21726010:28
*** [1]dimasot has joined #openstack-swift10:32
*** dimasot has quit IRC10:34
*** [1]dimasot is now known as dimasot10:34
*** Kennan has quit IRC10:38
dimasotcschwede: thanks, it looks like I really added the container-sync-realms.conf but did not removed the  X-Container-Sync-To header, will try to remove it and check that it works10:38
dimasotcschwede: I re-read the container sync configuration section (the link that you sent previously)10:44
dimasotand found that section: Any values in the realm section whose names begin with cluster_ will indicate the name and endpoint of a cluster and will be used by external users in their containers’ X-Container-Sync-To metadata header values with the format “//realm_name/cluster_name/account_name/container_name”. Realm and cluster names are considered case insensitive.10:44
dimasotso it is how my X-Container-Sync-To header looks like  Sync To: //par-tor/tor_proxy1/AUTH_5b4569e1a2f94c252376243a4ec9934e/mycontainers300110:48
dimasotand at /etc/swift/container-sync-realms.conf10:48
dimasotI have [par-tor]10:50
dimasotkey=key10:50
dimasotkey2=key210:50
dimasotcluster_par_proxy1=https://ip1/v1/10:50
dimasotcluster_par_proxy2=https://ip2/v1/10:50
dimasotcluster_tor_proxy1=https://ip3/v1/10:50
dimasotcluster_tor_proxy2=https://ip4/v1/10:50
dimasotby the way it worked this way with swift 2.210:51
dimasotand now with master it doesn't10:51
dimasotbtw I even did not got any requests at the remote cluster before I added the "sync_proxy = http://ip3:80,http://ip4:80" to teh container-server.conf file at the origin cluster10:54
*** Kennan has joined #openstack-swift10:55
*** haomaiwang has quit IRC11:01
*** haomaiwa_ has joined #openstack-swift11:02
*** aix has quit IRC11:02
*** haomaiwa_ has quit IRC11:11
*** m_kazuhiro has quit IRC11:23
*** aix has joined #openstack-swift11:33
cschwededimasot: oh, that doesn’t sound good if it worked before. i will check it locally later and get back to you11:38
dimasotcschwede: thanks, eran also thinks that maybe the addition of sync_proxy = http://ip3:80,http://ip4:80 to the container-server.conf caused to this problem, so I will try to remove it and to see wha thappen there11:44
haypohello. i splitted my python3 patch in smaller patches, easier to review: https://review.openstack.org/#/q/owner:%22Victor+Stinner%22+status:open+project:openstack/swift,n,z (ignore Work in progress patches)11:50
*** haomaiwang has joined #openstack-swift11:53
*** haomaiwang has quit IRC12:01
*** haomaiwang has joined #openstack-swift12:02
*** dimasot has quit IRC12:08
*** haigang has joined #openstack-swift12:22
*** haigang has quit IRC12:26
*** jsuchome has joined #openstack-swift12:27
openstackgerritJiri Suchomel proposed openstack/swift: Let object-info find files in a given directory  https://review.openstack.org/18925812:29
*** jsuchome has left #openstack-swift12:29
*** annegentle has joined #openstack-swift12:31
*** openstackgerrit has quit IRC12:31
*** openstackgerrit has joined #openstack-swift12:31
*** wuhg has quit IRC12:41
openstackgerritMerged openstack/swift: Disallow unsafe tempurl operations to point to unauthorized data  https://review.openstack.org/21725412:44
*** km has quit IRC12:49
*** kei_yama has quit IRC12:53
*** hrou has joined #openstack-swift12:55
*** haomaiwang has quit IRC13:01
*** haomaiwang has joined #openstack-swift13:02
*** trifon has quit IRC13:03
*** dustins has joined #openstack-swift13:06
*** changbl has joined #openstack-swift13:06
*** I has joined #openstack-swift13:06
*** I is now known as Guest6274913:07
*** pgbridge has joined #openstack-swift13:09
*** trifon has joined #openstack-swift13:23
*** ccavanna_ has quit IRC13:28
openstackgerritJiri Suchomel proposed openstack/swift: Let object-info find files in a given directory  https://review.openstack.org/18925813:34
*** Guest62749 has quit IRC13:39
*** pushkarajthorat has joined #openstack-swift13:43
*** petertr7_away is now known as petertr713:51
*** breitz has quit IRC13:52
*** breitz has joined #openstack-swift13:52
*** macleanal has joined #openstack-swift13:54
*** ppai has quit IRC13:57
macleanalHello, I'm having trouble listing the containers of my Openstack object  store with s3curl. The swift command line client works fine and I can list the objects in a container with s3curl but a call to list the containers with s3 curl returns no content found.13:57
*** trifon has quit IRC14:00
*** petertr7 is now known as petertr7_away14:01
*** haomaiwang has quit IRC14:01
*** kairo has joined #openstack-swift14:01
*** ccavanna has joined #openstack-swift14:02
*** 7GHAA12OT has joined #openstack-swift14:02
*** Kennan has quit IRC14:02
*** minwoob has joined #openstack-swift14:03
*** Kennan has joined #openstack-swift14:03
*** ppai has joined #openstack-swift14:06
*** ppai has quit IRC14:06
*** jrichli has joined #openstack-swift14:08
*** jlhinson has joined #openstack-swift14:13
*** proteusguy_ has quit IRC14:26
VinshWhy is it that when I set web-listints: true on a container... I can no longer list the container using swift client OR view the container contents in horizon?14:26
VinshIndeed it enables web-listings in a browser of that container.  But I lose any other ability to read the container.14:27
notmynameVinsh: can you give a pastbin of the headers on that container?14:28
Vinshby headers.. do you mean what swift stat shows on it?14:28
Vinshwhen I set set-listings to true.. it hides all of that in swift stat.14:28
notmynamethen get your auth creds with `swift auth -v` and use `curl -I ...` to get the headers14:29
VinshOK, i'll get that. here is more of an example: http://paste.openstack.org/show/429716/14:30
Vinshnotmyname: When I curl.. I get no headers back.  Unless I set --header "X-Container-Meta-Web-Listings:"14:33
Vinshthen I get headers back.14:34
notmynameVinsh: ok. interesting. you've got a publicly readable container that you also are wanting the auto-generated web-listings for14:34
VinshThats correct14:34
Vinshhowever enabling web-listings disables all other listing methods on the container.14:34
notmynamewhile I'm starting up my VM, try this. add "--header "x-web-mode: true" to the request when you have web listings turned on14:34
notmynameto the stat request14:35
*** links has quit IRC14:37
Vinshto the stat request?14:39
VinshCan't seem to get the syntax right for that14:39
*** petertr7_away is now known as petertr714:40
notmynameso it seems to be working for me so far14:40
notmynamegive me amoment to get my kdis out the door to school. then I'll paste an example14:40
VinshOk!14:41
*** proteusguy_ has joined #openstack-swift14:43
notmynameok, they're off14:45
jordanPguys, I have a 'requirements' question related to python-swiftclient. it requires futures>=2.1.3 so if I install it, I could get futures in version 3.0.3 (latest). But taskflow Juno needs futures<=2.2.014:47
jordanPso I could get a " pkg_resources.DistributionNotFound: The 'futures<=2.2.0,>=2.1.6' distribution was not found and is required by taskflow"14:48
notmynamejordanP: a backport to juno should have already landed to fix that14:48
jordanPnotmyname,thanks. in taskflow or in swiftclient ?14:48
*** dustins has quit IRC14:48
Vinshnotmyname: Should containers continue to list with swift-client and horizon if web-listings is set to true?14:50
VinshIs that expected?14:50
notmynamejordanP: oh. looks like the gate is being very slow https://review.openstack.org/#/c/215786/14:50
cschwedeVinsh: that should be the case only for unauthenticated requests, or not? „swift list <containername>“ still works for me14:50
cschwedeVinsh: what swift version are you using?14:51
Vinsh2.3.114:51
jordanPnotmyname, that's great, thanks ! I'll just seat and relax until this get merged :)14:51
Vinsh2.3.1 client.14:51
notmynameVinsh: a couple of fat-finger typos in there, but https://gist.github.com/notmyname/f8696896fb8f47b8d53b14:52
Vinsh2.2.2-0 server14:52
notmynamejordanP: actually, it's at the top of the gate queue with an estimated 0 minutes left. been there for nearly 16 hours14:53
jordanPnotmyname, yep I just saw that too. 0 minute, not even time for a coffee...14:53
Vinsh2.3.1 client must have an issue here.... it hits a traceback trying to list a container with x-container-meta-web-listings: true14:55
openstackgerritMerged openstack/python-swiftclient: Update from global requirements  https://review.openstack.org/21578614:56
notmynamejordanP: ^14:57
Vinsha curl of the same request yields "301 Moved Permanently"14:57
notmynameVinsh: yeah, that sounds right14:57
jordanP\O/14:57
notmynameVinsh: add a slash14:57
*** dustins has joined #openstack-swift14:57
notmynamejordanP: I believe the plan is to add a release tag there14:57
*** hrou has quit IRC14:57
cschwedeVinsh: „swift list <containername>“  works in python-swiftclient 2.3.1 for me too14:58
Vinsha slash to what?14:58
cschwedeVinsh: url in your curl command14:58
Vinshyeah14:59
Vinshthat seems to work for curl now.. adding the slash14:59
Vinshbut http://paste.openstack.org/show/429736/15:00
Vinshpython swift client no likey15:00
Vinshand I am pretty sure our horizon is using 2.3.1 also. :-/15:00
openstackgerritTristan Cacqueray proposed openstack/swift: Get better at closing WSGI iterables.  https://review.openstack.org/21775015:01
*** 7GHAA12OT has quit IRC15:01
*** haomaiwa_ has joined #openstack-swift15:02
Vinshnotmyname: so by "that sound right" you have seen this with client 2.3.1?15:02
notmynameVinsh: oh, no. the 301 is correct (that you got with curl)15:02
Vinshswift stat even comes back empty with out adding the "/"15:03
VinshWhy do I have a lack of slashes? :)15:04
notmynameVinsh: what does `swift stat -v` return?15:04
Vinshreturns 0/nothing for all the header items.15:04
Vinshunless i disable web-listings.. then it shows them again.15:04
VinshOR if I add the "/" to the curl.15:05
notmynamewait. it shows up again if you add the / ?15:06
VinshIf I curl stat with web-listings enabled.  I get an empty return content-length 015:07
Vinshif I do that same curl but add a "/" at the end of the url15:07
VinshI get a content-length of non-zero15:07
*** miurahr has joined #openstack-swift15:08
Vinshthat curl command is the one I get from swift stat in verbose mode15:08
Vinshthe same curl python swift client generates uses.  seems to be missing a needed "/" in what it generates to list web-listings enabled containers.15:08
notmynameright. without the / you end up getting a 30115:09
Vinshwhich you see in the pastebin. busts 2.3.115:09
notmynamebut it works for cschwede with 2.3.115:09
*** ccavanna has quit IRC15:11
*** mfalatic has joined #openstack-swift15:11
*** petertr7 is now known as petertr7_away15:11
Vinshthat traceback my client sees. whats that about?15:13
Vinsh"simplejson.scanner.JSONDecodeError: Expecting value: line 1 column 1 (char 0)"15:13
*** petertr7_away is now known as petertr715:15
*** lcurtis has joined #openstack-swift15:18
Vinshusing client 2.5.0 the traceback changes to: ValueError: No JSON object could be decoded15:18
Vinshits not JSON anymore.. its HTML with web-listings turned on right?15:18
Vinshso?15:18
notmynameVinsh: so from what I can see, our clusters are acting the same way. the oddness is in what your client is doing15:19
VinshI see this on an ubuntu 14.04 node as well as on my mac laptop.15:20
VinshSo, you also see that traceback?15:20
notmynameno15:21
Vinsh:-/15:21
notmynameI used curl to hit your url. the responses there look exactly like what I see when I hit my url without a token. ie they have the same info15:21
notmynameand when I set web-listings on my container, swift stat works just fine15:22
*** links has joined #openstack-swift15:22
Vinshis this a wrong way to set web-listings? --> "swift post -m 'web-listings: true' <container>  ?15:22
notmynameya, that's fine15:22
notmynamemoreover, the behavior I'm seeing with curl and without using auth tokens is the expected and correct bahavior15:23
Vinshsomething in our cluster is different then... causing the swift-client to be upset with what's returned.15:24
notmynamemaybe, but what I'm saying is that your cluster and my cluster are doing the same thing (to the extent I can compare them--ie no auth token)15:25
VinshAh, I get ya15:25
notmynameVinsh: also, you said that curl seems to be doing the right thing for you15:25
Vinshonly if I add an extra "/" to the request15:25
Vinshthe curl that the client generates in verbose.. has no extra "/" at the end.15:26
Vinshif I do that same curl. I get 0 conent length back15:26
Vinshif I add a '/' to it.. I get content.15:26
VinshI wonder why that curl command the client prints in verbose lacks the "/" ?15:26
VinshYou get what I mean?15:27
notmynameyeah, that's interesting. if you use curl, have and auth token, and don't have a trailing /, then you get odd results15:27
*** dustins has quit IRC15:28
notmynameVinsh: ok, let's focus on just one thing at a time15:30
VinshOk, what first?15:31
notmynameVinsh: only use curl15:31
Vinshk15:31
notmynamethat will let us be explicit about the requests that are sent and avoid any translation of the results15:31
notmynamenext, clear the web-listings header15:32
Vinshcleared15:32
notmynamestill publicly readable?15:32
Vinshnot publicly readable15:33
notmynameok15:33
notmynameso do a HEAD to the container. `curl -I ...`15:33
notmynamedo you see the header info you expect?15:34
VinshI do15:34
notmynamegood15:34
notmynamenow, mark it as public and do the HEAD again15:34
Vinshshouldn't "X-Container-Read: .r:*,rlistings" mean it IS public?15:35
notmynameright15:35
Vinshhorizon lists it as public now15:35
Vinshbut I can't get to it in a browser even.15:35
notmynameok, what did the original HEAD have? did it have those headers set?15:35
Vinshyes it did15:35
notmynameoh, well there is something strange15:36
*** changbl has quit IRC15:37
notmynamecan you pastebin the result of the contaienr HEAD?15:37
notmynamefrom curl15:37
Vinshhttp://paste.openstack.org/show/429791/15:38
notmynamethanks. can you show -v instead of -i please?15:39
Vinshhttp://paste.openstack.org/show/429792/15:40
* notmyname was really hoping for something strange to show up there15:41
notmynameok, here's the current state as I see it15:42
notmynameyou've got the right headers set on the container. you're getting expected results back when you send an auth token15:42
notmynamehowever, the container isn't publicly readable (ie without the auth token)15:42
notmynameis there anything between you and the swift cluster? anything that would cache a response or short circuit it if it doesn't have an auth token?15:43
Vinsha lousy A10 load balancer.15:43
VinshI swear.. if its that thing..15:43
Vinshits doing the ssl offloading15:43
*** changbl has joined #openstack-swift15:44
notmynamelol15:44
notmynameany way you can hit a proxy directly jsut to confirm that it's not causing problems?15:44
VinshI should be able to set OS_ something for that... and specify a proxy15:45
Vinshoh yeah --os-storage-url. testing.15:46
portanteacoles_: hey, are you going to get swift running on this beast? http://www.hpl.hp.com/research/systems-research/themachine/15:46
notmynameVinsh: or instead use curl and specify the proxy name/ip directly15:46
*** changbl has quit IRC15:51
Vinshnotmyname: Same results going directly to the proxy.15:55
notmynameah, ok15:55
notmynameso at least we know it's not a load balancer15:55
VinshWas hopeful :)15:55
* cschwede is back, looking at the staticweb thingy15:58
cschwedeVinsh: notmyname: looking at the output of http://paste.openstack.org/show/429792/16:00
cschwedei noticed the „-I“ in the command (upper i)16:00
cschwedethat is normal that there is no content16:00
*** haomaiwa_ has quit IRC16:01
cschwedetry it without the upper „-i“16:01
*** haomaiwa_ has joined #openstack-swift16:02
cschwedethe „-I“ will only fetch headers, no content16:02
VinshIndeed, that did return a non zero content length.16:03
Vinshand will then list the container.16:04
cschwedeso curl works now as you would expect?16:04
VinshIf web-listings is not set16:05
Vinshif I set it to true. I get this:16:05
*** silor has quit IRC16:05
Vinshhttp://paste.openstack.org/show/429794/16:06
Vinsha before and after for you.16:06
VinshJust sort of mutes what's returned.16:06
cschwedeVinsh: add the trailing „/„16:06
*** haomaiwa_ has quit IRC16:06
cschwedetrailing slash, that is16:06
Vinshthat returns an html listing of the container names16:07
cschwedewith the X-Auth-Token set?16:07
VinshSame thing I see in python-swiftclient when running debug.. but it causes a traceback there.16:08
notmynamecschwede: the weird thing is that without the web-listings, even though the ACLs set it to public, you get a 40116:08
Vinshyes, token set16:08
cschwedeVinsh: is the token valid? if the token is not valid i also get a html listing16:08
cschwedenotmyname: hmm, checking16:08
*** SkyRocknRoll has quit IRC16:08
Vinshdid a keystone token-get.  is still valid.16:08
VinshFernet tokens.16:09
notmynameVinsh: you've got the web-lists on right now, correct?16:09
Vinshcorrect16:10
cschwedenotmyname: hmm, i might have missed something, when do you get a 401? with curl, a token and public acls?16:10
*** changbl has joined #openstack-swift16:10
notmynameVinsh: ok, turn off web listings (and web listings only)16:11
notmynamecschwede: checking16:11
Vinshhave set it to "false"16:11
Vinshor shall I unset it all the ay?16:11
Vinsh*way16:11
notmynameVinsh: unset it all the way16:12
Vinshdone.16:12
notmynameyes. there16:12
notmynameok, here's what I'm seeing16:12
notmynamewhen you have public ACLs and web-listings on, I can access your container (no token, obviously)16:12
notmynamewhen you have web-listings=false, I get the appropriate error (404 from staticweb)16:13
notmynamewhen you completely remove web-listings, I get a 401 unauthorized16:13
notmynamethat last one is the weird one16:13
notmynameI should be able to get a listing since you have .r:8,.rlistings16:13
notmynames/8/*16:14
notmynameVinsh: so when you do a GET or HEAD right now, with web-listings removed, you still see the correct ACLs for public access, right?16:14
cschwedeyep16:14
VinshI do16:14
VinshI see "< X-Container-Read: .r:*,rlistings"16:14
notmynamethat's the point at which I don't know what's going on. that's the difference from what I see in my local cluster16:15
notmynamewhich is why I was asking about some caching thing or something16:15
Vinshwoah16:15
Vinshso get this16:15
VinshI just went in silly horizon. and set it private. then public again16:16
Vinshand I can list it in the browser16:16
* cschwede will check back later. problem solving seems to be in good hands ;)16:16
notmynameah ha16:16
Vinshcschwede: Thank you very much for you time helping also!16:16
notmynamecschwede: heh, That's what I was thinking. /me needs to get to the office ;-)16:16
notmynamecschwede: you need to get home to your kids. have a good evening :-)16:16
cschwedeVinsh: you’re welcome, as i said i will be back online later16:16
cschwedenotmyname: ha, and i need to get out of the office for dinner ;)16:17
notmynameVinsh: ok, that is weird. and I can see it too16:17
cschwedenotmyname: thx16:17
notmynameVinsh: so it does sound like there is some weird caching going on16:17
notmynameVinsh: right?16:17
Vinshnow I don't see the acls though16:17
notmynameVinsh: with or without an auth token16:18
Vinshwith16:18
notmynameVinsh: how production is this cluster?16:18
* notmyname wonders if there's something odd with memcache16:18
VinshIts full time production16:18
Vinsh2 regions. 4 zones. 4 replicas16:18
notmynameah ok. so don't restart memcache ;-)16:18
Vinshthat would just cause token retry for a client.. not that bad?16:19
notmynamewell, a full cache flush would cause a spike in load and latency16:19
notmynamedo you have one global memcache setting or one for each region?16:20
VinshThats probably ok.16:20
Vinshmemache is shared between all proxies in both regions16:20
notmynameas a general rule, I'll never recommend doing a full cache flush on a production cluster16:20
notmynameVinsh: ok16:20
VinshLoad isn't very high on this cluster.. just some occasional web page reads and desktop client backups.16:21
VinshEvery day we onboard a bunch of new customers.. which is cool. its being use more.16:21
notmynameVinsh: so you have public access but you don't see the ACL headers when you to an authorized request to the container16:21
notmynameis it possible that the token you're using isn't the "owner" of the swift account?16:22
VinshMy user has been added as admin/swift_operator in this tennant16:22
*** ccavanna has joined #openstack-swift16:22
VinshI also added the owner role to my user16:23
notmynamejust now?16:23
*** hrou has joined #openstack-swift16:23
Vinshearlier this morning before I asked for help16:23
Vinshheh. there we go again. I set web-listings true. suddenly in horizon the container is listed as 'private"16:24
notmynameok16:24
*** jistr has quit IRC16:24
*** dustins has joined #openstack-swift16:24
notmynameok, I think horizon is weird here. pay no attention to it (for the time being)16:25
notmyname(too many variables)16:25
Vinshyeah. best ignored.16:25
notmynameok, so I now see the web listing as expected16:25
*** rledisez has quit IRC16:26
*** marzif has joined #openstack-swift16:27
notmynameok, I do need to get myself ready and go to the office16:28
notmynameI'll be back online later today16:28
VinshThank you for your time!! I'll be here if you get any ideas.16:29
*** annegentle has quit IRC16:33
*** ctennis has quit IRC16:34
*** ctennis has joined #openstack-swift16:34
*** pushkarajthorat has quit IRC16:37
*** jordanP has quit IRC16:44
*** links has quit IRC16:45
*** petertr7 is now known as petertr7_away16:46
*** petertr7_away is now known as petertr716:48
*** annegentle has joined #openstack-swift16:51
*** annegentle has quit IRC16:51
*** annegentle has joined #openstack-swift16:54
*** marzif has quit IRC16:55
*** aix has quit IRC16:58
*** jordanP has joined #openstack-swift17:00
wbhubertsg: clayg: what are the performance indicators that liberasurecode should be used as default as opposed to jerasure (native EC) if there are any?17:01
*** theintern has joined #openstack-swift17:07
*** petertr7 is now known as petertr7_away17:11
*** theintern has quit IRC17:15
*** macleanal has quit IRC17:36
*** annegentle has quit IRC17:36
pelusewbhuber, we (swift) don't want to provide guidance on which library to choose with the exception of noting that the built in stuff upcoming in liberasure code is optimized like the other available independent libraries like ISAL from intel or jerasure17:48
wbhuberpeluse: ah, i was just wondering about the switch - the rationale behind it in one patch. that's all.17:57
*** geaaru has quit IRC17:59
pelusewbhuber, so the main reason was to not include any full ext library (like jerasure) within liberasure code mainly due to some legal stuff that happened last year with jerasure.  Just staying 'clean' as possible there18:00
wbhuberpeluse: thanks for the clarification.18:00
*** Kennan has quit IRC18:03
*** Kennan has joined #openstack-swift18:03
openstackgerritpaul luse proposed openstack/swift: logic error in ssync_rcvr when getting EC frags from a handoff  https://review.openstack.org/21783018:05
notmynameray tracing18:07
notmynameheh. mischan18:10
*** prometheanfire has joined #openstack-swift18:15
prometheanfireso, why does swift use pyeclib? has anyone checked the abismal quality of it?18:15
notmynameprometheanfire: wow. what a great intro comment to make friends with ;-)18:16
prometheanfireit's been really anoying18:16
prometheanfireI have a list of bugs if you want :P18:16
notmynameprometheanfire: pyeclib is used for the erasure code support. you aren't the first packager that's been annoyed by it18:16
prometheanfireit installs insecure runpaths btw18:17
prometheanfireso sec vuln if you want18:17
prometheanfirehttps://bugs.gentoo.org/show_bug.cgi?id=558884 https://bugs.gentoo.org/show_bug.cgi?id=55888618:17
openstackbugs.gentoo.org bug 558884 in Applications "dev-python/PyECLib fails multilib-strict check" [Normal,Confirmed] - Assigned to prometheanfire18:17
notmynameprometheanfire: and yes, bugs/issues filed on it would be good. I'm currently working with the maintainers to figure out better ways to mange it so that issues are addressed/closed more quickly and packaging is better18:17
openstackbugs.gentoo.org bug 558886 in Applications "dev-python/PyECLib installs files with insecure runpath" [Normal,Confirmed] - Assigned to prometheanfire18:18
prometheanfirewell, the upstream libs it bundles don't even have releases :(18:18
prometheanfireI'd actually like to package them, at least then I could make it a little better18:18
scotticusnotmyname: prometheanfire isn't here to make friends ;)18:19
notmynameprometheanfire: is it liberasurecode?18:19
prometheanfirealso, it doesn't look in /usr/lib64 at all, which seems odd...18:19
prometheanfirenotmyname: nah, that package is better :P18:19
prometheanfiregf-complete and jerasure18:20
prometheanfirehttp://jerasure.org/jerasure/jerasure/tags18:20
prometheanfirehttp://jerasure.org/jerasure/gf-complete/tags18:20
notmynameah, ok18:21
notmynameprometheanfire: so it's either good or bad that those have the same maintainer :-)18:21
prometheanfirein this case I get the bundling18:21
notmynameI'm told that the next release of pyeclib/liberasurecode will not have any bundling of those18:21
prometheanfirethat's nice :D18:22
prometheanfiredidn't have the bundling issue with liberasurecode at least18:22
notmynametsg and keving are the maintainers. tsg is around in here sometimes (but not now)18:23
*** annegentle has joined #openstack-swift18:23
*** annegentle has quit IRC18:25
*** dimasot has joined #openstack-swift18:29
*** proteusguy_ has quit IRC18:29
*** chenhuayi has quit IRC18:32
*** petertr7_away is now known as petertr718:33
wbhubernotmyname: i believe those bugs shd be attended and fixed before we declare EC production ready that has pyeclib wrapped?  sec vuln is no fun.18:33
wbhubernot sure how high of a risk those bugs are though. usually there's CVE score for each one if not stamped yet.18:34
prometheanfirelocal user exploit I think18:34
prometheanfirehttps://blog.flameeyes.eu/2013/01/dealing-with-insecure-runpaths18:35
prometheanfirewe automatically strip the runpaths, so no issue on gentoo, but I'm guessing most of you don't run gentoo :P18:35
peluseclayg?18:35
prometheanfireit's more of a question if the other distros have good runpaths or not18:36
claygyo!18:36
wbhubergentoo or no gentoo, need to figure if runpaths exist or not on any platforms18:36
prometheanfiredefault install location to /usr/local is also a sad18:36
prometheanfireinstall process also create tarballs that are never used I think18:37
prometheanfirereally should be redone from the ground up imo18:37
peluseclayg, hey just updated the bug and yeah it looks like it can be 'None' we think, take a quick look and see what you think18:38
wbhuberknow the result of running the local exploit?18:38
wbhuberEoP or DoS?  Or else?18:38
prometheanfirelocal code exec / possible privlige up18:39
prometheanfirefrom one user to another18:39
claygpeluse: that ctennis is pretty smart18:39
claygpeluse: ec reconstructor jobs shouldn't have a frag_index of None - but replication jobs would - so I think that's the place to attack the bug18:40
clayg... but; are you using ssync for replication in the testing?18:40
pelusewe are only using EC recon18:41
claygpeluse: there's some ssync tests that spin up a object server (with ssync_reciever) and make real calls over the wire at the bottom of test_ssync_receiver - TestSsyncRxServer I'm going to try and add coverage there18:41
claygpeluse: well that might mean we have two bugs then - reconstructor ssync jobs should all have frag indexes - shouldn't they?  maybe syncing tombstones?18:42
peluseclayg, OK so feel free to push over the patch that fixes it.  We are going to run w/that for now18:43
peluseclayg, to your last question for sync jobs yeah18:43
claygyeah there's a cute comment "this is an unfortunate situation" blah blah blah :)18:44
prometheanfirethe bundle'd libs don't even really obey the options in setup.py...18:44
claygpeluse: but that's good I think - should be clear to fix - thanks for the additional details18:45
*** annegentle has joined #openstack-swift18:46
peluseclayg, I think that comment was yours :)18:49
*** sanchitmalhotra has joined #openstack-swift18:49
*** sanchitmalhotra1 has quit IRC18:51
*** dimasot has quit IRC19:00
*** aix has joined #openstack-swift19:11
*** zaitcev has joined #openstack-swift19:14
*** ChanServ sets mode: +v zaitcev19:14
*** andrey-mp has joined #openstack-swift19:23
andrey-mpclayg: please, could you review this again https://review.openstack.org/#/c/215766/ ? I've changed commit message (one word) and your vote is gone...19:25
*** esker has joined #openstack-swift19:31
andrey-mpthank you!19:34
*** annegentle has quit IRC19:36
*** annegentle has joined #openstack-swift19:37
wbhuberclayg: peluse: i did some digging on LP #1488610 and was able to recreate the traceback whenever one node has refused connection back to the caller.  it's in swift.common.utils.py line #1307 where sys.exc_info() returns stopiteration (traceback) instead of errno=111 (ECONNREFUSED) for the 2nd failing node.  the 1st node that refused the conx posted the message successfully.  does this make you recall anything like this before?19:39
openstackLaunchpad bug 1488610 in OpenStack Object Storage (swift) "EC connection refused exception when storage node is offline" [Undecided,New] https://launchpad.net/bugs/1488610 - Assigned to Bill Huber (wbhuber)19:39
*** andrey-mp has quit IRC19:39
wbhuberctennis: ^^19:39
cschwedeVinsh: ok, maybe i just broke my saio, but now i have a very similar behaviour to yours regarding web-listings and python-swiftclient. i need more time to verify this, will do that tomorrow morning (i’m UTC+2) and get back to you.19:53
VinshI'm EST (Ithaca, NY)19:54
Vinshsimilar is good... makes me feel less crazy :)19:54
VinshI'll keep this chan up.19:55
*** silor has joined #openstack-swift19:58
*** silor1 has joined #openstack-swift19:58
*** silor has quit IRC20:02
*** silor1 is now known as silor20:02
*** esker has quit IRC20:04
*** esker has joined #openstack-swift20:08
*** esker has quit IRC20:13
*** dustins has quit IRC20:34
claygwbhuber: great digging!20:35
claygwbhuber: ... but it doesn't make *that* much sense - when would exc_info not return same Exception that it wants log :D20:36
wbhuberclayg: with mocked_http_conn(whatevererroris * [num of nodes actually used - 1]) would generate traceback, but that's mocked_http_conn as opposed to real http_conn.  I'm thinking that the exception is not handled when the node goes offline... there's something of a link down there.20:38
claygwbhuber: but the traceback is ECONNREFUSED or StopIteration?20:39
wbhuberclayg: in testing env, i'd not see ECONNREFUSED b/c stopiteration comes into place first.20:40
claygwbhuber: I get why some an unexpected error would turn into a traceback when it gets through to logger.exception - but I don't get why exc_info would *not* be socket.error ECONNREFUSED the LogAdapter is trying to translate the message - then then it *would* be a socket.error when it goes to log it?20:40
wbhuberclayg: unless i'm not understanding what the heck stopiterator actually is20:40
claygwbhuber: well, StopIteration is just an exception - you see them sometimes with mocked_http_conn if you don't provide enough mock responses to fullfill the UUT's http requests20:41
claygwbhuber: given that in the simple unittest you were able to see the socket.error log line translated as expected there must be something more sinister going on20:43
claygwbhuber: have you been able to duplicate the traceback in dev but shutting down some subset of services manually?  (like swift-init object-server stop -c 1 and swift-init object-reconstructor once -nv -c 2 or something?)20:43
wbhuberclayg: no, not yet, but thanks for the commands - those 're helpful.20:44
*** gyee has joined #openstack-swift20:51
*** petertr7 is now known as petertr7_away21:09
*** jordanP has quit IRC21:12
notmynamethere has been a *lot* that's happened in swift since the last release (2.3.0)21:20
* notmyname is working on the changelog updates21:20
prometheanfirenotmyname: splitting out the bundled libs is SO much cleaner btw21:33
prometheanfirehttp://lab.jerasure.org/jerasure/jerasure/issues/5 http://lab.jerasure.org/jerasure/gf-complete/issues/821:33
notmynameprometheanfire: thanks for filing those21:34
claygpeluse: oh neat!  we're not reverting partitions with handoffs!21:35
*** silor has quit IRC21:39
prometheanfirenotmyname: anyway, /parting, cya around :D21:42
*** prometheanfire has left #openstack-swift21:42
*** annegentle has quit IRC21:45
peluseclayg, huh?21:49
claygclayg: s/handoffs/tombstones/21:50
claygpeluse: im' having a bad week :'(21:50
peluseheh, hey you wanna chat real quick w/us?  sceanrio/theory to run by you21:50
*** ccavanna has quit IRC21:51
claygthere's this call to validate_fragment_index inside of purge and when it raises DiskFileError - we just continue - no log or nothing21:51
claygpeluse: sure!21:51
*** NM has joined #openstack-swift21:56
NMHi guys!22:00
NMLooking at the docs: http://developer.openstack.org/api-ref-objectstorage-v1.html, Accounts doesn't seen to have accept delete. Is it correct?22:01
notmynameNM: normally correct22:01
*** CaioBrentano has joined #openstack-swift22:02
notmynameNM: accounts only accept PUT and DELETE when the proxy has allow_account_management = true. (default is false)22:02
CaioBrentanoHi Swift gurus... simple question. Is it possible to delete an entire tenant?22:03
notmynameI suspect NM and CaioBrentano know each other22:03
notmynameCaioBrentano: yes22:03
CaioBrentanonotmyname sorry dude. my chat was idle and I couldn't see his question! He's my co-worker22:05
notmynameno worries.22:05
notmynamejust fun to get basically the exact same question from 2 people within 2 minutes of each other :-)22:05
notmynameCaioBrentano: the answer is yes. send a DELETE to the account22:06
notmynameCaioBrentano: however, only some users (and proxies) are allowed to do that22:06
*** annegentle has joined #openstack-swift22:07
NMnotmyname: Thanks a lot!22:07
NMnotmyname: Can I find that info somewhere?22:08
notmynamewhich info?22:08
claygpeluse: ctennis: I'll probably attach this to a bug report pretty soon -> https://gist.github.com/clayg/36f8e9f1bded52b6e1b122:10
*** AndreiaKumpera has joined #openstack-swift22:11
NMnotmyname: About the correlation between allow_account_management and DELETE an account.22:11
notmynameNM: allow_account_management must be set to true. and the auth token must be for a reseller_admin22:12
notmynameNM: I'd recommend that you have a separate proxy server deployed that is firewalled off and has allow_account_management = true22:13
notmynameNM: then you need to get creds for a reseller admin and send the delete to the account. then, in the background, the account-reaper starts deleting stuff22:14
notmynameNM: you can set the delay_reaping value to a number of seconds you want to wait until it actually starts deleting the data (eg a week or month or something)22:15
*** hrou has quit IRC22:16
*** pgbridge has quit IRC22:20
wbhuberclayg: say you're doing an ECPutter.connect to a storage node and you break at one of the lines inside the connection and manually shut down one node that its trying to connect.  guess you'd put some kind of set_trace() or rpdb to force the thread to wait and shut down the server (swift-init object-server stop -c 1)22:21
claygwbhuber: sure22:23
claygwbhuber: did you do that!?22:23
wbhuberclayg: did with nose.tools but to no avail.22:23
mattoliverauMorning22:24
*** annegentle has quit IRC22:24
wbhuberclayg: running on SAIO <----22:24
claygyeah i don't know how paul made that error22:24
wbhuberprobably from harness testing22:24
pelusethis paul?22:24
claygit's like his socket.error fails the isinstance test in the LogAdapter.exception22:25
*** annegentle has joined #openstack-swift22:25
CaioBrentanonotmyname thanks for the answers. I'm testing with NM! Sorry again for the duplicated question!22:25
claygpeluse: yeah!  the traceback on ECONNREFUSED - for everyone else it's all nice an clean - no traceback22:25
peluseahhh22:25
claygpeluse: like we call logger.exception - but when you trace it into utils our logger wraps all that up and makes the socket.errors pretty22:26
pelusewbhuber, yeah so we weren't on an SAIO we just went to storage node and stopped all services.22:26
wbhuberthat's a good logical system test approach22:26
NMnotmyname: Thanks so much. That was quite clear. And finally I got the reseller_admin thing :)22:27
notmynamegreat22:27
claygpeluse: also the plot thickens on the 'None' header story; the frag_index can be None, but only on revert jobs - which should mostly only be talking to primaries :\22:27
notmynameNM: CaioBrentano: so how are you using swift?22:27
*** annegentle has quit IRC22:29
lcurtisHello all, grappling with another theoretical question...say if we lose 3 drives that just so happen to have 3 replicas of an object...the replicator essentially just walks the filesystem, correct? so would we ever be able to tell if that object goes missing?22:30
notmynamelcurtis: you'd have an entry in a container listing with no corresponding object22:31
claygnotmyname: but what if *those* drives failed too!?22:31
notmynameclayg: then you'd look at the sum of the stats in the account and compare it against your hand-calculated total of the size of everything you could find in your account!22:32
lcurtisbut essentially would have to fall back on container listing22:32
lcurtis?22:32
notmyname"but what if *those* drives failed too!?" you ask. then you'd go drink22:33
lcurtislol22:33
CaioBrentanonotmyname: in which sight? business sight or technical sight?22:34
clayglcurtis: fall back to what now when?  like you lost a whole part - maybe multiple parts (if those three devices had many in common) - so the objects in them are for numorus /account/container/object names22:34
*** NM has quit IRC22:34
notmynameCaioBrentano: both! actually, I'm just curious about how you're using swift. what your use case is. how much data. public or private. so I guess that's the business side22:35
lcurtisclayg: well...precisely...im not sure what i would even rely upon losing 3 drives to tell me what id actually lost, or at least to be able to tell some technicians when they could swap a drive if we lost more than 2 at a time22:36
notmynamelcurtis: there's nothing that automatically checks that everything referenced in a listing is somewhere else in the cluster. so if you lose 3 drives, then you use swift-ring-builder to see if there were any common partitions on them. and if so, you lost any data in those partitions22:36
clayglcurtis: I think maybe monitor drive read failure rates, or slow reads, bad sectors, or think about your stock and make sure you're adding new drives into new zones with different batches or hard drives so when you hit corrolated failures they don't line up across multiple failure domains22:36
*** ho has joined #openstack-swift22:38
lcurtisthanks you guys...making sense22:38
clayg... and then you know... read blackblaze and decide how you're gunna manage the impending failure spike as that lot of drives in the old hardware starts to come of age22:38
*** annegentle has joined #openstack-swift22:39
lcurtisnotmyname: which switches would i use in swift-ring-builder to match partitions?22:39
notmynameis it not in the -he usage message?22:39
claygnotmyname: that would be a neat feature of swift-ring-builder remove - like before it started the rebalance if it checked for "parts in common" and displayed (1 replica of X parts, 2 replicas or X parts) something like that22:40
clayg^ torgomatic22:40
CaioBrentanonotmyname: We work at globo.com... it is the internet company of Grupo Globo (huge media company). We are using for several purposes, from serving statics web content to serve OS images for Tsuru (our PAAS). We use both... public and private22:40
torgomaticclayg: isn't that the dispersion report you wrote?22:41
claygpeluse: ok, nm, so it may *all* be replication timeouts!22:41
notmynameCaioBrentano: cool!22:41
claygtorgomatic: yeah - probably similar - but I'm thinking specifically in the "remove failed devices" workflow22:42
notmynameCaioBrentano: I had heard globo.com used swift. just didn't know any details22:42
clayglike if you only remove one a time - then it *should* always be just "1 replica of X parts"22:42
CaioBrentanonotmyname: we are still not that big, because is not easy to change the way people make their deploys/apps. But we have two regions in two DC...22:42
lcurtisnotmyname: ah! thanks man! I never used the list_parts switch yet22:42
clayg... but if you remove *two devices* you could have some parts-in-common22:42
*** esker has joined #openstack-swift22:42
torgomaticclayg: so you get a sense of how panicked to be?22:44
notmynameclayg: like a check to list_parts before the remove is done. and warn22:44
*** kutija has quit IRC22:47
hogood morning guys!22:48
*** esker has quit IRC22:48
lcurtishave to run..be on later..thanks a million for that tip...had not done list_parts before22:48
lcurtiswill have to mess with it22:48
notmynamehello ho22:48
*** lcurtis has quit IRC22:49
*** esker has joined #openstack-swift22:51
honotmyname: hi22:54
*** esker has quit IRC22:56
*** jrichli has quit IRC22:58
mattoliverauho: morning23:06
honotmyname: yesterday, i built kinetic-swift. i'm curios about performance with actual drives. do you have a result or feeling for it?23:08
homattoliverau: morning!23:08
CaioBrentanonotmyname: where did you hear about it?23:09
notmynameho: we've run some numbers, but I don't have them handy right now. is kinetic something you're looking at seriously for your clusters? or is it more of a cool toy to play with?23:09
notmynameCaioBrentano: not sure.23:10
honotmyname: "a cool toy to play with" :-)23:10
notmynameheh, ok23:10
claygwho ever updated swift-object-info to read tombstones is a fucking saint23:11
claygminwoob: ^ was that you?23:11
minwoobclayg: I wish it were XD23:11
CaioBrentanonotmyname: thanks again... 8PM in BR... see ya23:12
minwoobWhat's going on?23:12
claygRicardo Ferreira <- whoever you are; I owe you a drink23:12
*** km has joined #openstack-swift23:12
minwoobBtw, I'm really close on these probe tests ... they're failing intermittently.23:13
*** jlhinson has quit IRC23:13
*** annegentle has quit IRC23:14
minwoobMain issue here is that the part seems to be moved by shutil.move(), however sometimes the frag is still there ??23:14
claygminwoob: ???23:14
minwoobEither that, or the partner primary's reconstructor non-deterministically reconstructs or doesn't reconstruct the "missing" fragment.23:15
claygminwoob: welll.........23:15
notmynamewhat's up with https://bugs.launchpad.net/swift/+bug/1457691 ? peluse marked it as "critical" (changed from "high"), which says I shouldn't cut a release until it is resolved23:15
openstackLaunchpad bug 1457691 in OpenStack Object Storage (swift) "node timeout on overwrite can easily cause mis-matched etag fragment to 503" [Critical,In progress] - Assigned to paul luse (paul-e-luse)23:15
claygnotmyname: peluse made that critical - i guess he wants you to not release!23:16
notmynamehttps://review.openstack.org/#/c/212187/ closes it. and needs another +2. so looks like that's what's needed23:16
claygnotmyname: I think I'm supposed to be squashing acoles fixes down into it23:16
claygnotmyname: I was going to do that - but I'm working on another bug(s?) that ctennis and him found23:16
notmynameclayg: are there other EC fixes that need/should go into 2.4.0? I want to do that asap now that the tempurl bugs have been closed23:17
claygnotmyname: yeah that makes sense to me - I think the priority on the EC bugs should be reduced to high and a release should be cut - but that's just like my *opinion*23:18
notmynameok, thanks23:18
claygnotmyname: really I think the one we're working on now (lp bug #1489546) should be higher than the proxy GET bug since it can cause the consistency engine to get gummed up23:18
openstackLaunchpad bug 1489546 in OpenStack Object Storage (swift) "logic error in ssync_rcvr when getting EC frags from a handoff" [Undecided,In progress] https://launchpad.net/bugs/1489546 - Assigned to paul luse (paul-e-luse)23:18
notmynameI want to get peluse's opinion on it too23:18
claygnotmyname: well YEAH!23:19
claygnotmyname: peluse is probably frustrated because that patch has been ongoing for a number of days (since Austin really) - but, well it's finally close to a state that we're all happy with (and we're not even *that* happy - still want to use timestamps instead of etags)23:20
claygnotmyname: ... but like I said, the reconstructor tombstone revert bug seems like a bigger issue ATM (again, my opinion, they all need to be fixed, and the newest bug seems like the wrong one to hold up a release for)23:20
*** miurahr has quit IRC23:21
*** kei_yama has joined #openstack-swift23:26
openstackgerritOpenStack Proposal Bot proposed openstack/swift: Updated from global requirements  https://review.openstack.org/8873623:26
*** sanchitmalhotra1 has joined #openstack-swift23:30
*** sanchitmalhotra has quit IRC23:32
claygminwoob: oh i ment to tell you23:33
claygminwoob: so it's annoying, but in our dev environment every reconstructor process has two devices23:34
claygminwoob: that part is fine, we always expect nodes in production to have multiple devices23:34
claygminwoob: but in an 8 device 4+2 scheme there's just not that many non-primary devices23:34
claygminwoob: it's likely that when you turn the crank on a reconstructor you're hitting both a handoff device and a primary device23:35
claygminwoob: unless you do something to make the primary device *not* do the rebuild it's a toss up if the revert job will go first or not23:35
claygminwoob: if you look at... say test_reconstruct_from_reverted_fragment_archive, there's this really annoying block where it will "force the handoff device to revert instead of potentially racing with rebuild by deleting any other fragments"23:36
minwoobclayg: Oh - so that explains the occasional "what's this fragment doing here?" vs the expected 404!23:37
minwoobclayg: Thanks!!23:38
minwoobclayg: I will make use of that block again.23:38
claygminwoob: extract it to a helper!  (maybe... don't do that just cause I think it's a good idea before trying it - try to extact it - then decide if it's a useful helper)23:38
minwoobclayg: Yeah, it's probably not going to be the same in these scenarios.23:39
*** bill_az has joined #openstack-swift23:39
minwoobclayg: Will come up with something. Thanks. Also, why was the reconstructor architected to look both left and right?23:40
minwoobclayg: Can't they all just look left (or right)?23:40
minwoobclayg: In either case, everyone is being covered for.23:40
notmynameminwoob: because left+right was better than "look at all the other nodes".23:41
minwoobnotmyname: Yeah, but there doesn't seem to be much gain for detecting a missing fragment by doing left+right, vs. just left, or just right.23:43
notmynameminwoob: I was giving you a reason. I didn't say it was a good reason ;-)23:43
minwoobnotmyname: I see. Okay. :)23:43
claygminwoob: it might have been a bit of WAG - but it's better coverage on holes - if changes (sync) only propogates one direction it can take a long time to get all the way back aground if you only go one direction23:43
minwoobclayg: Ah, okay.23:44
*** hrou has joined #openstack-swift23:48

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