Friday, 2016-06-17

*** suyash has quit IRC00:05
*** arch-nemesis has quit IRC00:28
*** zul has joined #openstack-swift00:28
*** lyrrad has quit IRC00:29
*** dmorita has quit IRC00:46
*** diogogmt has joined #openstack-swift00:52
*** klamath_ has quit IRC00:58
*** klamath has joined #openstack-swift00:58
*** diogogmt has quit IRC01:06
*** nadeem has joined #openstack-swift01:14
*** Jeffrey4l has quit IRC01:24
*** dmorita has joined #openstack-swift01:26
*** dmorita has quit IRC01:28
*** dmorita_ has joined #openstack-swift01:28
*** dmorita_ has quit IRC01:30
*** nadeem has quit IRC01:31
*** dmorita has joined #openstack-swift01:32
*** Jeffrey4l has joined #openstack-swift01:38
*** dmorita has quit IRC02:01
*** dmorita has joined #openstack-swift02:03
*** dmorita has quit IRC02:06
*** dmorita has joined #openstack-swift02:08
*** garthb has joined #openstack-swift02:10
*** _JZ_ has joined #openstack-swift02:24
*** Suyash has joined #openstack-swift02:25
*** dmorita has quit IRC02:33
*** dmorita has joined #openstack-swift02:47
*** dmorita has quit IRC02:47
*** garthb has quit IRC02:52
*** dmorita has joined #openstack-swift02:54
*** dmorita has quit IRC02:54
*** dmorita has joined #openstack-swift02:54
*** dmorita has quit IRC02:55
*** _JZ_ has quit IRC03:02
*** jamielennox is now known as jamielennox|away03:03
*** gyee has quit IRC03:07
*** dmorita has joined #openstack-swift03:08
*** dmorita has quit IRC03:08
*** jamielennox|away is now known as jamielennox03:19
*** dmorita has joined #openstack-swift03:32
*** dmorita has quit IRC03:37
*** furlongm has quit IRC03:41
*** furlongm has joined #openstack-swift03:41
*** dmorita has joined #openstack-swift04:17
*** dmorita has quit IRC04:17
*** links has joined #openstack-swift04:20
*** psachin has joined #openstack-swift04:35
*** dmorita has joined #openstack-swift04:36
*** tqtran has quit IRC04:36
*** dmorita has quit IRC04:37
*** Suyash has quit IRC04:41
*** dmorita has joined #openstack-swift04:41
*** dmorita has quit IRC04:44
*** garthb has joined #openstack-swift04:57
*** garthb has quit IRC04:58
*** garthb has joined #openstack-swift04:58
*** garthb has quit IRC05:07
*** SkyRocknRoll has joined #openstack-swift05:07
*** ChubYann has quit IRC05:11
*** nadeem has joined #openstack-swift05:18
*** ppai has joined #openstack-swift05:24
*** links has quit IRC05:27
*** links has joined #openstack-swift05:28
*** dmorita has joined #openstack-swift05:45
*** dmorita has quit IRC05:49
*** dmorita has joined #openstack-swift06:06
*** dmorita has quit IRC06:06
*** rcernin has joined #openstack-swift06:23
*** pcaruana has joined #openstack-swift06:29
*** klrmn has quit IRC06:36
*** SkyRocknRoll has quit IRC06:42
*** sheel has joined #openstack-swift06:50
*** SkyRocknRoll has joined #openstack-swift06:56
*** silor has joined #openstack-swift07:06
*** geaaru has joined #openstack-swift07:09
*** hseipp has joined #openstack-swift07:10
*** tesseract has joined #openstack-swift07:10
*** rledisez has joined #openstack-swift07:12
*** hogepodge has quit IRC07:12
*** SkyRocknRoll has quit IRC07:26
*** silor has quit IRC07:27
*** SkyRocknRoll has joined #openstack-swift07:29
*** dmk0202 has joined #openstack-swift07:32
*** dmk0202 has quit IRC07:33
*** nadeem has quit IRC07:41
*** rcernin has quit IRC07:45
*** SkyRocknRoll has quit IRC07:52
*** dmorita has joined #openstack-swift08:07
*** rcernin has joined #openstack-swift08:10
openstackgerritDavanum Srinivas (dims) proposed openstack/swift: [WIP] Testing latest u-c  https://review.openstack.org/31844108:11
*** dmorita has quit IRC08:11
*** thurloat has quit IRC08:21
*** ndk_ has quit IRC08:21
*** jlvillal has quit IRC08:22
*** jlvillal has joined #openstack-swift08:22
*** thurloat has joined #openstack-swift08:23
*** ndk_ has joined #openstack-swift08:23
*** dmk0202 has joined #openstack-swift08:27
*** daemontool has joined #openstack-swift08:28
*** jmccarthy1 has quit IRC08:36
*** mkrcmari__ has joined #openstack-swift08:36
*** Jeffrey4l has quit IRC08:37
*** jlvillal has quit IRC08:37
*** jmccarthy has joined #openstack-swift08:38
*** tamizh_geek_ has joined #openstack-swift08:39
*** kmARC has quit IRC08:39
*** andymccr_ has joined #openstack-swift08:40
*** kmARC has joined #openstack-swift08:40
*** jlvillal has joined #openstack-swift08:42
*** daemontool_ has joined #openstack-swift08:42
*** mvk_ has quit IRC08:42
*** ekarlso has quit IRC08:42
*** tamizh_geek has quit IRC08:42
*** m3m0 has quit IRC08:42
*** furlongm has quit IRC08:42
*** andymccr has quit IRC08:43
*** furlongm has joined #openstack-swift08:43
*** mtreinish has quit IRC08:44
*** daemontool has quit IRC08:44
*** m3m0 has joined #openstack-swift08:45
*** nottrobin has quit IRC08:45
*** mtreinish has joined #openstack-swift08:46
*** nottrobin has joined #openstack-swift08:48
*** Jeffrey4l has joined #openstack-swift08:48
*** ekarlso has joined #openstack-swift08:51
*** ouchkernel has quit IRC09:03
*** ouchkernel has joined #openstack-swift09:04
*** openstackgerrit has quit IRC09:18
*** openstackgerrit has joined #openstack-swift09:18
*** acoles_ is now known as acoles09:22
*** acoles is now known as acoles_09:23
*** SkyRocknRoll has joined #openstack-swift09:26
*** acoles_ is now known as acoles09:29
*** SkyRocknRoll has quit IRC09:34
*** geaaru has quit IRC09:39
acoleskota_: hi. what is Kazuhiro's nick?09:49
kota_acoles: m_kazuhiro09:50
*** SkyRocknRoll has joined #openstack-swift09:50
kota_hello09:50
acolesthanks09:50
acolesoh, he's not in the channel, NM09:50
kota_and he was back home today, probably he is back to online around Monday.09:50
kota_acoles: He is not ready for irc bouncer yet :/09:51
acolesok. I just wanted to thank him for reviews on crypto doc :)09:51
*** geaaru has joined #openstack-swift09:52
kota_acoles: :)09:54
kota_acoles: quick question09:56
kota_acoles: I'm not sure though, do we need http://paste.openstack.org/show/516801/ for patch 328204?09:57
patchbotkota_: https://review.openstack.org/#/c/328204/ - swift (feature/crypto-review) - Support for http footers - Replication and EC09:57
acoleskota_: looking...09:58
kota_since notmyname is wondering why he got failed for functests, I've taken time to research around the diff of Putters.09:58
*** jmccarthy has quit IRC09:58
kota_and I found the BaseObjectController returns conn.resp09:58
kota_at master09:58
kota_but at encryption code, we could return self.resp (i.e. Putter.resp instead)09:59
*** jmccarthy has joined #openstack-swift10:00
kota_looking at the EC code, it sems well https://github.com/openstack/swift/blob/master/swift/proxy/controllers/obj.py#L1411-L143210:00
kota_ec putter did it.10:00
kota_I'm not sure, when the HTTPBufferedConnection.resp and Putter.resp updated while requeting.10:01
kota_I think, Putter.resp is updated as getexpect() response for the first connection.10:01
*** openstackgerrit has quit IRC10:03
*** openstackgerrit has joined #openstack-swift10:03
*** rcernin has quit IRC10:05
kota_ah... sorry, I didn't get (summrize) my thought.10:06
acoleskota_: thanks for digging into that, I'm not sure yet either, looks like we have not changed what is on master for EC, but we have possibly changed the replication case? can you put your paste link on gerrit as a comment and i will dig into it some more?10:08
acoleskota_: I need to work throught the final_phase (or not final_phase) condition carefully!10:09
kota_acoles: ok, will do10:09
acoleskota_: and yeah, need to fugure out why notmyname sees the functional test problems - we have been running the gate functional test job with encryption and replication policy and I don't recall it ever failing.10:10
acoless/fugure/figure/10:10
acoleskota_: thanks10:11
kota_acoles: quick answer, my thought might be way off targt.10:11
kota_acoles: I added a assertion like "assert self.resp == self.conn.resp" but no unit tests failed.10:12
kota_like this, http://paste.openstack.org/show/516804/10:13
acoleskota_: is that good? - that means that the putter always gets a resp10:13
kota_maybe? not sure. still need more deep dive.10:13
acolesheh.10:14
acolesoic, no the assertion proves that the putter.resp is in same state as conn but both could be None10:14
kota_no?10:18
kota_if both of them is None, putter will do either of conn.getexect() or conn getresponse()10:19
kota_s/is/are/10:19
kota_but I'm not sure HTTPBufferedResponse override its  __eq__ method?10:21
kota_hmm...it doesn't look to override there, idk about parent class yet though.10:22
kota_probably, I'm on wrong way.10:28
kota_ah.. we might be missing HTTP_UNPROCESSABLE_ENTITY? at Putter._make_connetion? https://github.com/openstack/swift/blob/master/swift/proxy/controllers/obj.py#L68810:39
kota_but it seems another thing  than what we are looking for...10:39
*** permalac has joined #openstack-swift10:47
*** hogepodge has joined #openstack-swift10:54
kota_anyways, we need the HTTP_UNPROCESSABLE_ENTITY handling?11:06
kota_I'm looking at the original bug it resolved, https://bugs.launchpad.net/swift/+bug/151657911:06
openstackLaunchpad bug 1516579 in OpenStack Object Storage (swift) "PUTing a 0-byte object and supplying an Etag results in a 503 response" [High,Fix committed] - Assigned to Samuel Merritt (torgomatic)11:06
kota_acoles: it might be good info, I found a bug between encryption-0 and encryption-1 (I'm not sure I hit actually notmyname's one though)11:19
kota_acloes: probably we need http://paste.openstack.org/show/516819/11:19
kota_between them, we restored the bug 1516579 again.11:20
openstackbug 1516579 in OpenStack Object Storage (swift) "PUTing a 0-byte object and supplying an Etag results in a 503 response" [High,Fix committed] https://launchpad.net/bugs/1516579 - Assigned to Samuel Merritt (torgomatic)11:20
kota_acoles: so if we tried to upload an empty object with invalid etag, it will make 500 at encryption-1.11:21
kota_but 422 at encryption-0.11:21
kota_I'm now trying to change a unit test to fail with current encryption-111:23
kota_it looks weird, proxy log said like as "File "/usr/local/lib/python2.7/dist-packages/swift/proxy/controllers/obj.py", line 376, in _handle_response#012    etags.add(response.getheader('etag').strip('"'))#012AttributeError: 'NoneType' object has no attribute 'strip' (txn: txa1125c912fa2474cbd1c1-005763dc07) (client_ip: 127.0.0.1)"11:31
kota_that means, conn.getresponse() after 422 for conn.getexpect() will return 2xx !???11:31
kota_interesting...11:32
acoleskota_: ok, I can see where we may have lost the  HTTP_UNPROCESSABLE_ENTITY handling. How does the get returned in make_connection though, since no data has been sent yet?11:33
kota_not sure, right now for the zero-byte PUT conversation of proxy -> eventlet (?) -> object-server11:35
acoleshmmm, guess something shortcuts when its a zero byte object maybe?11:35
kota_but in fact, it's broken, right now.11:35
kota_acoles: you can try via 'swift upload replica_container empty_file --headers 'Etag: foo''11:36
kota_with encryption-1 commit.11:36
kota_it shows us 500 InternalError.11:36
kota_acoles: I think so (about the shortcuts)11:37
kota_I'm not sure if it hits notmyname's issue though.11:37
kota_it seems when zero-bytes PUT comming in, object-server seems to return 422 immediately for getexpect()11:38
kota_is it right? my answer is 'I'm not sure'11:39
acoleskota_: right. agree its broke, just trying to understand how it breaks, and why this test does not fail https://review.openstack.org/#/c/246010/2/test/unit/proxy/controllers/test_obj.py11:39
patchbotacoles: patch 246010 - swift - Fix 503 on zero-byte replicated PUT with incorrect... (MERGED)11:39
acoleskota_: the comment on that test ^^ suggests exactly that - the getexpect returns 42211:39
kota_acoles: http://paste.openstack.org/show/516825/11:40
kota_acoles: that one can heads up the issue, probably11:40
kota_i don't know the None value for getresponse() is correct (or not).11:41
kota_probably not correct, though.11:41
kota_we might ask torgomatic for that, I think he has the knowlege around there.11:43
kota_acoles:^^11:43
acoleskota_: yes. I'm going to have to stare more at the code. good work kota_ , we definitely need to fix that.11:45
* acoles away for lunch11:45
acoleskota_: have a good weekend!11:45
kota_acoles: ;)11:46
*** rcernin has joined #openstack-swift11:47
*** Jeffrey4l has quit IRC11:48
*** Jeffrey4l has joined #openstack-swift11:48
kota_acoles: I added small note we ware tallking here to gerrit :D11:52
kota_is heading back home11:52
*** cdelatte has quit IRC12:03
*** dmk0202 has quit IRC12:05
*** jmccarthy has quit IRC12:10
*** jmccarthy has joined #openstack-swift12:19
*** cdelatte has joined #openstack-swift12:19
*** SkyRocknRoll has quit IRC12:22
*** silor has joined #openstack-swift12:24
*** cdelatte has quit IRC12:25
*** cdelatte has joined #openstack-swift12:30
*** silor1 has joined #openstack-swift12:32
*** pauloewerton has joined #openstack-swift12:34
*** silor has quit IRC12:35
*** silor1 is now known as silor12:35
*** silor has quit IRC12:38
*** silor has joined #openstack-swift12:39
*** cdelatte has quit IRC12:39
*** cdelatte has joined #openstack-swift12:41
*** silor1 has joined #openstack-swift12:44
*** silor has quit IRC12:45
*** silor1 is now known as silor12:45
*** klamath has quit IRC12:58
*** klamath has joined #openstack-swift12:58
*** psachin has quit IRC13:00
*** cdelatte has quit IRC13:03
*** mwheckmann has joined #openstack-swift13:14
*** lcurtis has joined #openstack-swift13:32
*** lcurtis has quit IRC13:32
*** _JZ_ has joined #openstack-swift13:35
*** cdelatte has joined #openstack-swift13:42
*** links has quit IRC13:46
*** cdelatte has quit IRC13:49
*** ametts has joined #openstack-swift13:50
*** dmorita has joined #openstack-swift13:52
*** cdelatte has joined #openstack-swift14:06
*** McMurlock1 has joined #openstack-swift14:12
*** cdelatte has quit IRC14:14
*** Jeffrey4l has quit IRC14:15
*** zul has quit IRC14:16
*** zul has joined #openstack-swift14:16
*** zul_ has joined #openstack-swift14:21
*** zul has quit IRC14:23
*** Jeffrey4l has joined #openstack-swift14:28
*** cdelatte has joined #openstack-swift14:31
*** cdelatte has quit IRC14:37
*** dmorita has quit IRC14:38
*** garthb has joined #openstack-swift14:46
*** cdelatte has joined #openstack-swift14:48
*** pcaruana has quit IRC14:54
*** diogogmt has joined #openstack-swift15:02
*** diogogmt has quit IRC15:04
*** urth has quit IRC15:05
*** tesseract has quit IRC15:05
*** rcernin has quit IRC15:07
*** urth has joined #openstack-swift15:07
*** ukaynar has joined #openstack-swift15:12
*** nadeem has joined #openstack-swift15:24
*** cdelatte has quit IRC15:24
*** cdelatte has joined #openstack-swift15:28
*** klrmn has joined #openstack-swift15:29
*** ppai has quit IRC15:31
*** nadeem has quit IRC15:38
*** nadeem has joined #openstack-swift15:38
*** arch-nemesis has joined #openstack-swift15:42
timburkeacoles: kota_: ah, that makes sense for why we care about HTTP_UNPROCESSABLE_ENTITY -- if we've included in the headers the fact that zero bytes will be sent, then we don't need to send the (non-existent) body for the object server to give a final response. i was wondering about that back around https://review.openstack.org/#/c/328204/2/swift/proxy/controllers/obj.py@1563 ...16:02
patchbottimburke: patch 328204 - swift (feature/crypto-review) - Support for http footers - Replication and EC16:02
*** permalac has quit IRC16:03
acolestimburke: yes, I remember your comment a few days back. I think what happens is that for zero byte body the proxy doesn't send expect 100 continue, so the obj server does not send a 100 continue response, goes ahead and reads (empty) body and the first response back is the 422.16:06
acoleskota ^^ that is the "shortcut" we were wondering about16:07
acolesmaybe torgomatic_ will put me right16:07
timburkeeven if we *did* send the Expect header, i wouldn't be at all surprised if the object-server *ignored* it -- it had everything it needed to know16:07
*** dmk0202 has joined #openstack-swift16:09
acolestimburke: afaict it is eventlet wsgi that decides to send the response when input is first read https://github.com/eventlet/eventlet/blob/master/eventlet/wsgi.py#L122-L12516:10
acolesgood news is I think I figured out why the unit test did not fail due to that missing check on HTTP_UNPROCESSABLE_ENTITY16:11
acolesnow I gotta make it fail, then fix the bug16:11
acolesnotmyname: I have been running func tests with repl policy on commit 612ee2 for several hours and not yet seen a test fail :(16:14
openstackgerritPetr Kovar proposed openstack/swift: Add install-guide for swift  https://review.openstack.org/33007016:16
*** arcimboldo has joined #openstack-swift16:17
notmynamegood morning16:18
notmynameI'll be diving into the functests errors I was getting16:19
notmynameI'm using real drives in my SAIO (instead of loopback), so maybe that's a difference that's showing up16:19
*** ukaynar has quit IRC16:21
jrichlinotmyname: I know you saw this without crypto in pipeline.  have you seen this with crypto in pipeline?16:28
acolesnotmyname: I don't use loopback, but a virtual disk. would be great to figure out what's causing your failures.16:28
*** klrmn has quit IRC16:28
*** SkyRocknRoll has joined #openstack-swift16:29
notmynamejrichli: yeah, that's when I started going through each patch set individually. I started with the last patch, saw the errors, then went back. but on the 2nd patch there's not even any crypto middleware to add to the pipeline16:30
acolesnotmyname: I'm going to work through that patch again in case anything is awry - Kota has spotted one regression that I'll have fixed in next version.16:30
notmynameacoles: ok, well then maybe that's not it. do you have fallocate or mount check set? (I have both turned on)16:31
notmynamenot that I think that's the problem necessarily since everything passes on master. very confusing16:31
jrichlioh, right.  of course16:31
acolesnotmyname: mount_check = false16:32
acolesdisable_fallocate = true16:32
acolesI'll flip them16:32
*** dmorita has joined #openstack-swift16:33
-openstackstatus- NOTICE: zuul was restarted for a software upgrade; events between 16:08 and 16:30 were missed, please recheck any changes uploaded during that time16:34
*** dmorita has quit IRC16:34
*** dmorita has joined #openstack-swift16:34
*** lyrrad has joined #openstack-swift16:34
acolesnotmyname: testFileSizeLimit -> 503 ??16:39
notmynameyes. often that's the first thing that fails, and starts nodes being error limited, which causes subsequent tests to fail16:39
acolesi saw some teardown errors too16:40
notmynameah? interesting. I hadn't been able to find those, yet16:40
acolesok, well that's progress of a sort i.e. reproduced16:41
notmynameand you saw that when you turned on mount check and fallocate?16:42
*** McMurlock1 has quit IRC16:42
acolesnotmyname: i was running with nosetests -x so the package teardown would be attempted immediately after that test failed16:42
notmynameoh ok16:42
acolesjust enabled fallocate (one change at a time!)16:42
*** gyee has joined #openstack-swift16:42
acolesI'll try without -x and see what accumulates16:42
notmynameI have disable_fallocate = false and fallocate_reserve = 016:43
notmynamethe teardown errors are because the nodes are error limited16:46
arcimboldoI have a question: is there a way to give read access to a swift container based on the *source IP*?16:48
notmynamearcimboldo: no. although that wouldn't be too complicated to add (nor is it simple, either). what are you wanting to do?16:51
acolesnotmyname: I don't have reserve set so default. full run I see 18 fail/4 errors no teardown errors16:51
arcimboldoit's not a concrete use case yet, but we have a private cloud (university) but we have users that might upload datasets to swift, and give access within the university premises  to anyone16:52
arcimboldohowever, the data cannot be public (for "reasons")16:52
*** SkyRocknRoll has quit IRC16:52
*** SkyRocknRoll has joined #openstack-swift16:52
*** daemontool_ has quit IRC16:52
arcimboldoIf I could use the IP, I could avoid creating a tenant for each user who doesn't really need to use openstack and doesn't know how to use the swift cli16:53
arcimboldowe can just give them the URL16:53
*** rledisez has quit IRC16:53
arcimboldoI imagine this should be implemented with a middleware and a new ACL entry like ".ip:x.x.x.x/n"?16:55
notmynameyeah, I'd imagine some ACL format that looks like that16:57
notmynamebut it would likely go in existing auth middleware (or acl.py) instead of something new16:58
notmynameand the other thing to consider is which source IP to use. swift tracks 2 of them. the last hop and the actual client IP (if known)16:58
notmyname(think of a load balancer forwarding requests and being able to have some LB ports tracked differently. also most LBs will add x-forwaded-for or similar)16:59
arcimboldoof course you have to use the client ip, our haproxy needed a configuration option for that, but i can see swift has it in the request17:00
*** sheel has quit IRC17:05
*** chsc has joined #openstack-swift17:09
*** mvk_ has joined #openstack-swift17:11
*** mkrcmari__ has quit IRC17:15
notmynameacoles: FWIW, if I disable fallocate, everything works17:16
acolesnotmyname: ack17:17
notmynamemy next step: why does fallocate work n master and fail on 612ee2e65c44b71e539e978ccde93ea81bb9135a17:19
klamathwhat are some best practices for swift proxy server in a multi-region swift environment.  Ive noticed a lot of errors when the remote region is offline on the proxy tier, wondering if lowering connection timeouts will help17:21
*** silor has quit IRC17:22
notmynameuse one memcache pool for each region. that will help17:30
*** hseipp has quit IRC17:39
*** arcimboldo has quit IRC17:41
*** pauloewerton has quit IRC17:43
*** pauloewerton has joined #openstack-swift17:50
*** Suyash has joined #openstack-swift17:50
*** gyee has quit IRC17:55
*** garthb_ has joined #openstack-swift18:03
*** garthb has quit IRC18:05
*** klrmn has joined #openstack-swift18:06
*** nadeem has quit IRC18:10
openstackgerritAlistair Coles proposed openstack/swift: Support for http footers - Replication and EC  https://review.openstack.org/32820418:10
openstackgerritAlistair Coles proposed openstack/swift: Make container update override headers persistent  https://review.openstack.org/32820518:10
openstackgerritAlistair Coles proposed openstack/swift: Enable middleware to set metadata on object POST  https://review.openstack.org/32820618:11
openstackgerritAlistair Coles proposed openstack/swift: Allow middleware to override metadata header checking  https://review.openstack.org/32820718:11
openstackgerritAlistair Coles proposed openstack/swift: Enable object body and metadata encryption  https://review.openstack.org/32820818:11
openstackgerritAlistair Coles proposed openstack/swift: Add encryption overview doc  https://review.openstack.org/32820918:11
acoles^^ updated with today's reviews comments, still working on why func tests fail with fallocate enabled put pushing other changes before weekend.18:12
notmynamethanks18:12
notmynameacoles: I think I see why the file size limits are failing. however, I don't know why they're passing on master18:13
notmynameis there any more metadata stored with replicated objects after patch 328204?18:14
patchbotnotmyname: https://review.openstack.org/#/c/328204/ - swift (feature/crypto-review) - Support for http footers - Replication and EC18:14
acolesnotmyname: looking...18:15
notmynameif that patch is adding 111 bytes of metadata over-and-above master, I can explain it all (and know how to fix it)18:18
notmyname111 or more18:19
acolesnotmyname: there should not be afaict18:19
acolesnotmyname: I'm curious... ;)18:20
notmynamehttps://www.youtube.com/watch?v=WWaLxFIVX1s18:20
notmyname(that was my reaction to "no extra metadata")18:20
acolesnotmyname: 111 is a bad number https://en.wikipedia.org/wiki/Nelson_%28cricket%2918:21
notmynamein testFileSizeLimit, we do 4(!) writes of nearly max file size that are supposed to succeed. it means that you need max_file_size * 4 - 111 bytes available18:21
notmynameturns out my drives on my SAIO are 8GB. and my max_file_size is 2GB18:21
notmynameguess what. if I set my max_file_size to 1GB, everything works!18:22
notmynamethe bug IMO is that we don't delete the files before we test the next one18:22
notmynameso you need 4*max_file_size to actually pass the test, if you have fallocate enabled18:23
notmynameso my guess is that if the patch is adding some small amount of metadata, then that may have pushed it over the 111 buffer that I had on my drive18:23
*** mkrcmari__ has joined #openstack-swift18:25
*** silor has joined #openstack-swift18:25
*** ChubYann has joined #openstack-swift18:27
*** mvk_ has quit IRC18:28
*** dmorita has quit IRC18:28
*** clayg has joined #openstack-swift18:28
*** ChanServ sets mode: +v clayg18:28
claygthis is great, my cloud vm got rebooted while I was on vacation - so there's no scrollback - it's like you all just waited for me to come back from vacation!18:29
*** dmorita has joined #openstack-swift18:29
notmynamewelcome back :-)18:29
jrichliclayg!  welcome back.18:30
klrmnclayg: one of the questions i was planning on  addressing later on was whether my VMs were likely to conflict with your VMs18:30
claygklrmn: ohai!18:30
clayg... wait - which vms?18:30
*** dmorita has quit IRC18:30
klrmnclayg: ones on RAX18:30
claygklrmn: oh, no this is like a personal aws vm i use for irc - no conflict18:30
klrmnclayg: not that they exist yet....ah18:30
claygunrelated - it was probably just unscheduled maintience at ec218:30
claygfor the other thing there's a "prefix" thing that allowed me at least to spin up to two indepenent clusters18:31
notmynameacoles: I can't see anything extra added either18:31
notmynameacoles: for now, I think I'll file a bug about the test and move on with the more general crypto testing18:31
notmyname(with a smaller max obj size and fallocate turned on)18:32
jrichlinotmyname: glad you figured it out :-)18:33
notmynameoh no18:33
notmynamehttps://bugs.launchpad.net/swift/+bug/1062969  <--- IT'S FROM 2012!! HOW IS THIS STILL A THING?!18:34
openstackLaunchpad bug 1062969 in OpenStack Object Storage (swift) "fallocate fails in test environment" [Undecided,Invalid]18:34
acolesnotmyname: I am trying to reproduce your success18:34
notmynameI shall reopen and suggest fixing TestFile.testFileSizeLimit18:36
*** SkyRocknRoll has quit IRC18:41
notmynamewait18:41
notmynameacoles: this might be because of evil PRNG gods. don't we have tests that randomly generate metadata?18:42
notmynameI had a weird test run with this crypto patch where I ran just the testFileSizeLimit test and it worked. but some (most) of the time it fails for me on this patch18:43
notmyname111 bytes is not much. it could be metadata from some other test (when running full tests.py, I always see a failure. it could be something really crazy like some extra dirs or something18:43
acolesnotmyname: when i run only testFileSizeLimit it passes, which does suggest that some other cruft on the disk is causing the error to be induced.18:46
acolesif I run tests.py:TestFile then it fails18:46
notmynameacoles: do you have a similar setup to me where you have drives exactly 4x your max_file_size?18:47
acolesnotmyname: no, that is what i am confused about18:47
notmynameok18:47
notmynameI'm also confused by the consistent failing on this patch while passing on the first one in the chain18:47
*** garthb_ has quit IRC18:48
*** garthb has joined #openstack-swift18:48
acolesI have a single 32GB partition and max file size is default 5GB18:49
acolesso how did that ever pass?18:51
notmynameit would only fallocate 20GB18:53
notmynameor you mean that it would do that 3x and that would be 60GB?18:54
acolesyeah, 3x5x4=6018:55
notmynamewhat do you mean by single partition? did you have that carved up into different drives?18:57
notmynameI dont' think the test is actually writing all that data. I think it's just reserving it via fallocate. checking on that...18:57
*** geaaru has quit IRC18:58
acolesnotmyname: yep, just discovered that myself, no data sent just content-length set too limit +/- whatever19:02
notmynameyeah, but I'm stilly trying to follow the func client code. it *does* look like it's checking a response, and I don't know how the response would be 2xx when sending no data with a huge content-length header19:03
acolesditto :)19:03
notmynameswift. how does it work?19:03
notmynameoh!19:04
acolesmy proxy logs are showing 499 responses19:04
acolesswift. does it work?19:04
notmynamethe timeout wrapper doesn't check the response of the .write() at all19:04
acoles:'(19:04
notmynameso the 499 is expected, but the timeout wrapper really just checks that the Timeout didn't fire19:05
notmynameso that test is only validating that we can send a reqeust with differnet content-length headers and get a response within 3 seconds19:06
notmynameyay!19:06
notmyname:-(19:06
acolesnotmyname: well, it does assert that you get a response error in <3secs if content-length exceeds the constrainty19:07
notmynameright. and that's something, I guess19:07
acolesand maybe its deliberately simply checking the opposite i.e. allowed lengths don't get an outright rejection19:08
acolesotherwise we'd all be filling our SAIO drives, and helping people understand why func tests fail with default constraints ;)19:08
acolesbut I'd +2A a comment in the test if nothing else19:09
*** silor has quit IRC19:13
*** shakamunyi has joined #openstack-swift19:13
*** dmorita has joined #openstack-swift19:15
acolesclayg is back!19:16
acolesnotmyname: I meant my saio setup is like this http://docs.openstack.org/developer/swift/development_saio.html#using-a-partition-for-storage19:16
acolesnotmyname: so we still don't know why this fails on crypto-review but not master, but your 111 theory is less confusing now I understand how the test works19:17
notmynamebut you only have one of those?19:17
acolesyes19:17
*** gyee has joined #openstack-swift19:17
notmynamedo you make loopback on that one partition?19:18
acolesno, symlink to node dirs, like the docs say. which is also why I didn't set mount_check=true in a rush19:21
notmynameah, hmm19:22
acolesbad?19:22
notmynameno. except you can't test mount_check with it :-)19:22
notmynametests pass in that config, so ship it!19:22
acoleswell I can test mount_check and it works!! :)19:22
notmynamelol19:22
*** garthb has quit IRC19:22
*** garthb has joined #openstack-swift19:23
* acoles adds 'build saio with multiple vdisks' to todo list19:23
notmynameI've got virtualbox attaching 8 8GB drives to the VM, so my SAIO sees "real" drives. then I have normal single partition xfs on them19:23
acolesits on my todo list19:24
openstackgerritJohn Dickinson proposed openstack/swift: added note to testFileSizeLimit functional test  https://review.openstack.org/33131819:25
notmyname^ proposed to master. can land after crypto19:25
openstackgerritJohn Dickinson proposed openstack/swift: added note to testFileSizeLimit functional test  https://review.openstack.org/33131819:25
acolesyay I got to do a review today :)19:27
*** kmArc_ has joined #openstack-swift19:32
*** thumpba has joined #openstack-swift19:32
*** Jeffrey4l has quit IRC19:34
acolesnotmyname: so help me understand what is going on with this 111 theory...assume you start with an empty 8GB disk, 2GB maxfilesize, fallocate is enabled, the first PUT causes 2GB fallocate, but nothing is actually written. Ditto for second and third PUTs, then you see the fourth fail presumably because an extra 111 bytes crept in somewhere. But when do those fallocated bytes get free'd? cos on master that implies there 11119:34
acoles bytes free and then there's a bunch of other tests that pass before anything is deleted.19:34
acolesnotmyname: so assuming the fallocated space is free'd when the diskfile is closed (nothing was written) then I'm wondering if we're failing to close a connection and that delays the diskfile being closed???19:35
notmynamethey'd get freed when ...yeah19:35
*** cdelatte has quit IRC19:40
*** kmArc_ has quit IRC19:40
notmynamewhy did I just run all of TestFile and it passed? it's gotta be RNG issues19:42
notmynameoh, I lowered my max_file size19:42
*** nadeem has joined #openstack-swift19:45
*** nadeem has quit IRC19:45
*** nadeem has joined #openstack-swift19:46
*** Jeffrey4l has joined #openstack-swift19:47
*** thumpba has quit IRC19:48
*** pauloewerton has quit IRC19:49
acolesnotmyname: oh oh oh...19:50
acolesthink I can reproduce on master19:50
notmynameoh?19:51
acolesEC policy (4+2), fallocate enabled, set my maxfilesize bigger (cos the diskfiles are smaller with EC), boom!19:52
acolesoh hang on, I should disable fallocate and repeat19:52
*** garthb_ has joined #openstack-swift19:52
*** garthb has quit IRC19:53
acolesyep, fallocate disabled and tests.py:TestFile pass19:54
notmynameshould be the same for replication, then, right?19:56
notmynamethe issue is the test doing too much fallocate and some timing issue with when the tmp file is actually relaimed19:57
*** raildo is now known as raildo-afk19:57
notmynamethe good news, I guess, is that I dropped my max_file_size and functests pass for me with all of crypto_review. (which is where this whole thing started)19:58
acolesagree, could be a timing thing ...or is it something we are not doing on the EC PUT path. My hunch was that the crypto patch migrates the replica PUT path to use the EC Putter code, so have we just stumbled across something that was lurking in the EC code path all along but only revealed by the tests using replica policy.19:59
notmynamehmm..that's an interesting idea. I had thought it was this patch that was breaking repl, since I saw EC working. but yeah, it could be something in the multipart handling20:03
notmynameso why do we have Putter and MIMEPutter now? why not just one that knows when to do the multipart?20:04
acolesnotmyname: first, these tests should be using the Putter for replica policy. The MIMEPutter is only used if middleware has indicated that it has footers to send. So at this commit, replica policy PUTs should not be using mutlipart.20:06
*** _JZ_ has quit IRC20:06
notmynameright20:07
acoleswhy two classes? one knows how to do the multipart, the other doesn't.20:07
*** thumpba has joined #openstack-swift20:07
notmynameI was just wondering about the original decision about having two classes with minor differences instead of one that's slightly smarter20:07
acolesthe obj controllers choose which they need.20:07
acolesOIC. TBH at one point I had 3 Putter classes and was really glad to get to 2 :)20:08
notmynamelol20:08
notmynameso I should just be grateful with what I'm given and be happy there's only 2! ;-)20:08
acolesits a good question and I'll look at it again, it was a while ago now20:08
acolesright! :)20:09
acolesso we could just use the MIMEPutter for all PUTs, but I thought that might be a step too far - this way replica PUTs stay non-multipart until you plugin crypto20:10
acolesthe object server can handle multipart for any policy type20:11
*** thumpba has quit IRC20:19
*** thumpba has joined #openstack-swift20:20
*** thumpba_ has joined #openstack-swift20:26
acolesnotmyname: on master, I tried with replica policy and increased maxfilesize and fallocate on, see tests in TestFile fail, not repeatbly. I suspect it is to do with the maxfilesize vs available filesystem space and as you said maybe some timing. need to understand what happens to the fallocated tmp file.20:26
acolesnotmyname: I need to go now and eat/sleep. thanks for you help. I'd like to get to the bottom of this, clearly it happens on master too but I'd like to be sure we haven't made something worse on crypto20:27
acolesgood night20:27
notmynameacoles: thanks for your help20:28
*** thumpba has quit IRC20:29
*** mwheckmann has quit IRC20:30
*** acoles is now known as acoles_20:31
*** McMurlock1 has joined #openstack-swift20:33
*** mvk_ has joined #openstack-swift20:34
*** mkrcmari__ has quit IRC20:38
*** McMurlock1 has quit IRC20:45
*** mkrcmari__ has joined #openstack-swift20:54
*** mvk_ has quit IRC20:57
*** mvk has joined #openstack-swift21:01
*** mkrcmari__ has quit IRC21:02
timburkenotmyname: catching up. re: "two classes with minor differences instead of one that's slightly smarter" -- always remember, "we should only do dumb things" is one option :P21:04
notmynameof course!21:05
notmynametimburke: you're going to make me sad on friday afternoon ;-)21:05
timburkenah, you're smiling. it's right there on the previous line21:06
timburke;-(21:06
*** daemontool has joined #openstack-swift21:12
*** thumpba_ has quit IRC21:12
*** ametts has quit IRC21:13
*** McMurlock1 has joined #openstack-swift21:17
*** McMurlock1 has quit IRC21:28
*** dmk0202 has quit IRC21:33
*** dmk0202 has joined #openstack-swift21:34
*** dmorita has quit IRC21:39
*** dmorita has joined #openstack-swift21:47
*** dmk0202 has quit IRC21:50
*** daemontool has quit IRC21:53
notmynameFYI http://lists.openstack.org/pipermail/openstack-dev/2016-June/097668.html  <-- newly-proposed Architecture working group "...charge would not be design by committee, but a place for architects to share their designs and gain support across projects to move forward with and ratify architectural decisions."22:06
zaitcevMy opinion of architects is not particularly high, but I reserve the right to be persuaded otherwise.22:12
*** nadeem has quit IRC22:22
openstackgerritTim Burke proposed openstack/swift: Always set swift processes to use UTC  https://review.openstack.org/33136922:33
timburkei have no idea what that^ may break, or what may have been broken before that :-(22:33
timburkeactually, that's a lie. i know of at least one thing that was broken before that, and referenced it in the commit (though not the fact that it bit swift3)22:37
*** mvk_ has joined #openstack-swift22:39
*** mvk has quit IRC22:42
*** dmorita has quit IRC23:14
*** dmorita has joined #openstack-swift23:15
*** chsc has quit IRC23:28
*** gyee has quit IRC23:46
*** nadeem has joined #openstack-swift23:47
*** nadeem has quit IRC23:47
*** Suyash has quit IRC23:53
*** nadeem has joined #openstack-swift23:53
*** lyrrad has quit IRC23:59

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