Friday, 2018-11-02

openstackgerritMatthew Oliver proposed openstack/swift master: Refactor db auditors into a db_auditor base class  https://review.openstack.org/61489500:58
*** two_tired has joined #openstack-swift01:11
DHEnotmyname: while I didn't use something to 100% confirm (eg: `perf`), I've seen very visibly instances of CPU hit 100% and network hitting ~800 megabit, and the opposite - network saturated at gigabit and ~70% cpu usage01:38
DHEwhile I did use perf briefly, I saw most CPU time in the EC functions during a GET operation (no PUTs) on the proxy host01:38
openstackgerritMatthew Oliver proposed openstack/swift master: Refactor db auditors into a db_auditor base class  https://review.openstack.org/61489502:58
*** two_tired has quit IRC03:37
*** itlinux has quit IRC04:09
openstackgerritMatthew Oliver proposed openstack/swift master: Refactor db auditors into a db_auditor base class  https://review.openstack.org/61489504:33
mattoliverau^ damn you pep8 errors, I swear I ran pep8 locally.. somehow missed it.04:33
*** threestrands has quit IRC05:40
openstackgerritRajat Dhasmana proposed openstack/swift master: Update min tox version to 2.0  https://review.openstack.org/61500306:10
*** tellesnobrega_ has joined #openstack-swift06:15
*** tellesnobrega has quit IRC06:18
openstackgerritKim Bao Long proposed openstack/swift-specs master: Update the min version of tox to 2.0  https://review.openstack.org/61503106:47
openstackgerritRajat Dhasmana proposed openstack/swift-specs master: Update min tox version to 2.0  https://review.openstack.org/61505107:04
*** pcaruana has joined #openstack-swift07:20
*** ccamacho has joined #openstack-swift07:34
openstackgerritVu Cong Tuan proposed openstack/python-swiftclient master: Switch to stestr  https://review.openstack.org/58161009:42
*** e0ne has joined #openstack-swift09:51
*** ccamacho has quit IRC13:14
*** ccamacho has joined #openstack-swift13:14
*** tdasilva has joined #openstack-swift13:58
*** ChanServ sets mode: +v tdasilva13:58
*** two_tired has joined #openstack-swift14:30
*** ccamacho has quit IRC14:36
*** mrjk_ has joined #openstack-swift14:48
mrjk_Hi14:52
*** ccamacho has joined #openstack-swift14:53
mrjk_I've hit 100% disk usage on my cluster. Now I have added new disk and started rebalance, disk usage doesn't get lower. I can't find any documentation about this, aby hint that could explain my disks are not reblancing ?14:53
*** mrjk_ has quit IRC15:00
*** two_tired has quit IRC15:01
*** DJ_Machete has joined #openstack-swift15:03
DJ_Machetegood afternoon everyone. i am new to swift programming and having an issue with getting the proper return status code from a web server post request15:05
DJ_Machetewhat i need to do is present an alert to the user if the web request failed so they know. the first time i make the request, successful or not, it returns code 0, which isn't correct because i output the response and i can see the real status code in there15:07
DJ_Machetethen, the next request i make will return the previous web status code15:07
mrjkDJ_Machete, if you are talking about apple products, you are not in the good chan15:12
DJ_Machetethis isnt for xcode swift?15:12
DHEno, openstack swift is an data storage project15:12
DJ_Macheteah, ok..oops, sorry15:13
*** DJ_Machete has left #openstack-swift15:13
*** gyee has joined #openstack-swift15:26
*** zaitcev has quit IRC15:44
*** pcaruana has quit IRC16:17
notmynamegood morning16:20
notmynamemrjk: ah disk full. yeah, that's tough. you find anything yet?16:20
*** e0ne has quit IRC16:33
timburkenotmyname: as i recall, acoles did some testing and found that (1) all data frags was considerably faster than reconstructing with parity and (2) *any* parity frags led to roughly the same slowdown -- didn't matter if it was all ec_num_parity of them or just one16:55
notmynametimburke: ah, ok. I think it was the 2nd statement I was remembering16:56
timburkeand that second one, combined with our default shuffle behavior, might explain why you thought that it' always take about the same time -- it'd be exceedingly likely that you get at least one parity frag by shuffling16:57
notmynameheh, yeah16:57
mrjknotmyname, I reduced a bit the weight of full disks, and I expect them to let new object to be correctly sunchronised, to then let the reaper do its job. We'll see if that work17:12
notmynamemrjk: yeah. you'll also probably want to set handoffs_only to true and and handoff_delete to 1 or 2. also maybe limit/raise rsync connections (if you're using a replicated policy) to get data off of the full drives as quickly as possible17:16
mrjkI just checked out and it seems to work a bit, I gained some free spaces (couples of Mb) on my filled disks. \o/17:16
notmynamelonger term, you should set fallocate_reserve so that you're never at truly 100% full17:16
notmynamenote that in order to delete something in swift (ie handle a client DELETE request), swift will *write* a new file. even though that file is empty, it has metadata, takes up inodes, etc, so you need some bytes available before it can unlink the existing larger file17:17
notmynameand as a general principle, you'll see a "replication bump" when you add capacity. by default the existing data won't be removed from it's current location until it's durably stored in all the new primary locations. this means that for a 3-replica policy, you'll have 4 replicas temporarily for the data that was remapped to new hardware. this means that if you're at 1005 full, it's really hard17:20
notmyname to make progress (this is what the handoff_delete config value is designed for)17:20
notmynamethe tl;dr is "don't let drives fill up. it's a lot easier to avoid that than it is to dig out from when you're in that situation"17:20
openstackgerritTim Burke proposed openstack/swift master: Add "historical document" note to ring background docs  https://review.openstack.org/61525117:22
mrjknotmyname, yep, definitely, I'm rediscovering some swift settings :) I'll definitiely go for fallocate config. Thanks for the details. I was expecting this replication bump, that's why I'm temporarly reducing 100% disks to a lower weight.17:26
notmynametimburke: nice17:26
notmynametimburke: really well said (the historical doc note)17:26
*** ccamacho has quit IRC17:27
mrjknotmyname, also, playing with handsoff_* settings should just concern filled up nodes, right ?17:28
mrjkAnd yesh, we let it be filled because our customer didn't want to pay for new disks ^^ Now they fill sad, and I'm trying to fix their mess17:28
notmynamemrjk: I'm guessing you're trying to "fix the full drives" some other way than `rm -rf *` ("good news, customer! you have lots of free space now!") ;-)17:31
mrjkhaha17:32
mrjkI wish, but I would get killed by them (actually, data should be replicated 3 times, so it should be fine). Still I'm trying my best to help them17:32
notmynamemrjk: changing the handoff_* settings isn't good for normal operation because it does introduce a slightly higher chance of data loss than normal operation (eg not ensuring that there are n_replica in primary locations before deleting local handoffs)17:32
notmynamebut it's normally ok in situations like this because they are temprorary17:33
mrjkyep, anyway, they can't push anything else on those nodes because 100% everywhere ... yeah, I don't care, I told them to stop pushing stuuffs on it while we are fixing their shits ^^ I'm just trying to check if that's supported with my swift version17:34
notmynameso eg setting handoffs_delete to 1 means that the replicator only ensures that there's a copy in 1 primary location before deleting the local copy. setting it to 2 is generally the compromise to improve things in a full-drive scenario17:34
notmynamemrjk: reminds me of this old classic :-) https://www.andrews.edu/~freeman/bofh/bofh1.html17:36
notmynamemrjk: I'm usre you'll already looking at these, but in case not, here's links. https://docs.openstack.org/swift/latest/deployment_guide.html for docs on config values and https://github.com/openstack/swift/tree/master/etc for well-commented sample config files17:44
*** itlinux has joined #openstack-swift17:58
mrjkHaha, nice I didn't know BOFH :) Thank you for the resource anyway. I won't be able to use the handoff_* settings with thoses servers are they are mainly using it as 99% read server18:03
mrjkthey use their swift to distribute file accross regions18:04
notmynamemrjk: I'm not sure why reading from swift would prevent you from using handoff_delete settings18:05
*** itlinux has quit IRC18:06
-openstackstatus- NOTICE: OpenStack infra's mirror nodes stopped accepting connections on ports 8080, 8081, and 8082. We will notify when this is fixed and jobs can be rechecked if they failed to communicate with a mirror on these ports.18:10
mrjkyep, but handsoff only appears when some people right into the cluster. There is almost no post in logs, I guess playing with this parameter would not gain me that much space ... Because there are no write, i should not have any handsoff on this region. Is my understanding good ?18:20
mrjkDo you know a way to list effective handsoff on disks?18:21
notmynamemostly. if you've got full drives, you need to add more capacity. any ring adjustment (either weights like you did or adding drives) will cause existing data to now be on handoffs. the handoffs_only will just churn on those to get it done more quickly18:21
*** pcaruana has joined #openstack-swift18:27
*** zaitcev has joined #openstack-swift18:28
*** ChanServ sets mode: +v zaitcev18:28
openstackgerritMerged openstack/swift master: Add "historical document" note to ring background docs  https://review.openstack.org/61525118:30
mrjknotmyname, ok, so the handsoff mechanism also happen during rebalance. That make sense finally.18:32
*** e0ne has joined #openstack-swift18:34
-openstackstatus- NOTICE: The firewall situation with ports 8080, 8081, and 8082 on mirror nodes has been resolved. You can recheck jobs that have failed to communicate to the mirrors on those ports now.18:55
openstackgerritTim Burke proposed openstack/swift master: Update min tox version to 2.0  https://review.openstack.org/61500319:00
openstackgerritTim Burke proposed openstack/swift master: Update min tox version to 2.3.2  https://review.openstack.org/61500319:01
*** e0ne has quit IRC19:05
*** pcaruana has quit IRC19:08
*** jistr has quit IRC19:35
*** jistr has joined #openstack-swift19:37
openstackgerritTim Burke proposed openstack/swift master: s3api: Include '-' in S3 ETags of normal SLOs  https://review.openstack.org/59223121:09
openstackgerritTim Burke proposed openstack/swift master: py3: Monkey-patch json.loads to accept bytes on py35  https://review.openstack.org/61533621:40
timburkezaitcev: ^^^21:44
zaitcevoh, well21:44
zaitcevthat sounds interesting21:45
zaitcevAlthough I just started looking at 61465621:45
zaitcevtimburke: could you explain to me what the if attr=="_orig" does? Surely the super does not have _orig, so how does this work? https://git.openstack.org/cgit/openstack/swift/tree/swift/__init__.py?id=c112203e0ef8f69cdd5a78c260029839a8763d26#n6922:00
zaitcevAt first I thought, well maybe it's for someone inheriting us, then... but wait, even if they inherit, they see our _orig.22:01
zaitcevoh22:02
zaitcevMaybe it protects from anyone else seeing our own _orig?22:03
timburkeno, i was just worried about how __getattribute__ is a *really* low level override... looks like i don't actually need it, though? i'll see about cleaning that up a bit22:21
openstackgerritMerged openstack/swift master: Update min tox version to 2.3.2  https://review.openstack.org/61500322:22
timburkenope! never mind, i was right to be defensive :-) was testing with python3 before instead of python3.522:29
timburkewith the affected version, without the attr == '_orig' code, "RecursionError: maximum recursion depth exceeded"22:29
*** ianychoi has quit IRC23:02
zaitcevOh, I see. It's because __getattribute__ invokes self._orig.getattr.23:09
timburkei kinda like this idea of "code scarring"... i should consider backing out some of those changes where i swapped responses to byte strings now that p 601872 landed23:14
patchbothttps://review.openstack.org/#/c/601872/ - swift - Let error messages to be normal strings again (MERGED) - 1 patch set23:14
*** gyee has quit IRC23:48
*** ianychoi has joined #openstack-swift23:55

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