*** arcimboldo has quit IRC | 00:04 | |
*** lyrrad has quit IRC | 00:05 | |
*** thumpba has joined #openstack-swift | 00:07 | |
zaitcev | That should be fine... I just found this: | 00:07 |
---|---|---|
zaitcev | [zaitcev@lembas ~]$ grep TMPFS_XATTR /boot/config-4.* | 00:07 |
zaitcev | /boot/config-4.3.5-300.fc23.x86_64:CONFIG_TMPFS_XATTR=y | 00:07 |
zaitcev | So it should work, just doesn't in reality for some weird reason. | 00:07 |
*** Suyash has quit IRC | 00:10 | |
*** catintheroof has joined #openstack-swift | 00:13 | |
*** NM has quit IRC | 00:15 | |
*** ManojK has joined #openstack-swift | 00:15 | |
jrichli | torgomatic notmyname mattoliverau: I love the cross-cultural education we all get from IRC chat | 00:20 |
*** NM has joined #openstack-swift | 00:25 | |
*** thumpba has quit IRC | 00:31 | |
*** cdelatte has quit IRC | 00:34 | |
*** cdelatte has joined #openstack-swift | 00:37 | |
*** NM has quit IRC | 00:38 | |
*** kevinc has quit IRC | 00:38 | |
openstackgerrit | Merged openstack/swift: Refactor tests and add tests https://review.openstack.org/328203 | 00:38 |
openstackgerrit | Merged openstack/swift: Support for http footers - Replication and EC https://review.openstack.org/328204 | 00:39 |
*** Jeffrey4l has joined #openstack-swift | 00:42 | |
openstackgerrit | Samuel Merritt proposed openstack/swift: Add checksum to object extended attributes https://review.openstack.org/336323 | 00:44 |
openstackgerrit | Merged openstack/swift: Make container update override headers persistent https://review.openstack.org/328205 | 00:46 |
openstackgerrit | Merged openstack/swift: Enable middleware to set metadata on object POST https://review.openstack.org/328206 | 00:46 |
clayg | you know, despite being obviously marketing doc - this is pretty fair to swift - it's just out-dated - http://docs.basho.com/riak/cs/2.1.1/references/appendices/comparisons/swift/ | 00:51 |
*** rcernin has quit IRC | 00:55 | |
*** cdelatte has quit IRC | 00:55 | |
*** chlong has quit IRC | 01:06 | |
*** tqtran_ has quit IRC | 01:07 | |
notmyname | nice to see those have landed on crypto-review. I'm going to eat, and I'll check in later tonight about the last two and getting a merge commit ready | 01:13 |
*** klamath has quit IRC | 01:27 | |
*** klamath has joined #openstack-swift | 01:27 | |
*** hoonetorg has joined #openstack-swift | 01:32 | |
*** klamath has quit IRC | 01:33 | |
*** klamath has joined #openstack-swift | 01:33 | |
*** MooingLemur has joined #openstack-swift | 01:36 | |
*** NM has joined #openstack-swift | 01:40 | |
*** vint_bra has joined #openstack-swift | 01:46 | |
*** dmorita has quit IRC | 01:55 | |
*** dmorita has joined #openstack-swift | 01:56 | |
*** ManojK has quit IRC | 01:58 | |
jrichli | yay | 01:59 |
*** NM has quit IRC | 02:04 | |
*** vinsh has quit IRC | 02:25 | |
*** chlong has joined #openstack-swift | 02:33 | |
*** klamath has quit IRC | 02:35 | |
*** dmorita has quit IRC | 02:39 | |
*** _JZ_ has quit IRC | 02:45 | |
*** tanee is now known as tanee_away | 02:52 | |
*** sheel has joined #openstack-swift | 02:54 | |
*** ChubYann has quit IRC | 02:55 | |
*** catintheroof has quit IRC | 03:00 | |
*** gyee has quit IRC | 03:00 | |
*** jamielennox is now known as jamielennox|away | 03:03 | |
zaitcev | Okay, I'm going to test tempfs with attributes now. On my laptop. With EFI bootloader. | 03:05 |
*** zaitcev has quit IRC | 03:05 | |
*** asettle has joined #openstack-swift | 03:08 | |
*** ChubYann has joined #openstack-swift | 03:09 | |
*** asettle has quit IRC | 03:15 | |
*** vint_bra has quit IRC | 03:15 | |
*** vint_bra has joined #openstack-swift | 03:19 | |
notmyname | kota_: mattoliverau: just checking in... | 03:19 |
kota_ | notmyname: still looking | 03:20 |
kota_ | sorry | 03:20 |
notmyname | ok :-) | 03:20 |
notmyname | no need to apologize :-) | 03:20 |
kota_ | notmyname: quick question. | 03:21 |
notmyname | sure | 03:21 |
kota_ | notmyname: docs said the conditional GET header (i.e. If-[None]-Match) translates to If-Match: match_etag,HMAC(object_key, match_etag) | 03:21 |
kota_ | I know we are using HMAC but | 03:22 |
kota_ | it still holds the raw match_etag? | 03:22 |
kota_ | I'm now checking the implementation | 03:22 |
*** vinsh has joined #openstack-swift | 03:25 | |
kota_ | ah, yeah if-match can take more than one value. | 03:26 |
*** links has joined #openstack-swift | 03:26 | |
notmyname | sorry, was just doing a little testing locally to answer your question | 03:28 |
notmyname | what do you mean by if-match taking more than one value? | 03:28 |
notmyname | but yeah, the client sends int he real etag and the encrypted object will end up doing an hmac on the passed in value and comparing that to the stored hmac of the real etag | 03:29 |
*** vinsh has quit IRC | 03:30 | |
kota_ | https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.24 | 03:31 |
kota_ | notmyname: ^^ | 03:31 |
*** jamielennox|away is now known as jamielennox | 03:31 | |
kota_ | that's just my lack of knowlege of HTTP rule. | 03:31 |
kota_ | ok, it probably works. | 03:31 |
notmyname | ok | 03:31 |
*** vint_bra has quit IRC | 03:32 | |
kota_ | so that means not replaced but append the HMAC value to if-match header. | 03:32 |
kota_ | except "*" case :) | 03:32 |
kota_ | make sense. | 03:32 |
*** chlong has quit IRC | 03:34 | |
*** ManojK has joined #openstack-swift | 03:41 | |
*** SkyRocknRoll has joined #openstack-swift | 03:46 | |
*** sgundur1 has left #openstack-swift | 03:48 | |
*** klrmn1 has quit IRC | 04:02 | |
*** tqtran has joined #openstack-swift | 04:05 | |
*** tqtran has quit IRC | 04:10 | |
*** tanee_away is now known as tanee | 04:15 | |
*** tanee is now known as tanee_away | 04:15 | |
*** kevinc has joined #openstack-swift | 04:22 | |
*** kevinc has quit IRC | 04:23 | |
*** kevinc has joined #openstack-swift | 04:23 | |
*** vinsh has joined #openstack-swift | 04:26 | |
*** vinsh has quit IRC | 04:31 | |
*** zaitcev has joined #openstack-swift | 04:39 | |
*** ChanServ sets mode: +v zaitcev | 04:39 | |
*** dmorita has joined #openstack-swift | 04:39 | |
*** psachin has joined #openstack-swift | 04:39 | |
*** ManojK has quit IRC | 04:41 | |
*** kevinc has quit IRC | 04:43 | |
*** dmorita has quit IRC | 04:43 | |
mattoliverau | notmyname: found a small bug during playing with it on my SAIO. nothing super major. But noted it in patch 328208 | 04:50 |
patchbot | mattoliverau: https://review.openstack.org/#/c/328208/ - swift (feature/crypto-review) - Enable object body and metadata encryption | 04:50 |
mattoliverau | happy for it to be a follow up, but it is a bug. | 04:51 |
mahatic_ | wow, glad to see crypto merges! two more to go I think | 04:53 |
mattoliverau | mahatic_: yeah almost there | 04:54 |
mahatic_ | mattoliverau: valid point, it'd be a quick fix | 04:54 |
* mattoliverau goes for a beach walk cause its too nice and sunny out :) | 04:55 | |
*** _JZ_ has joined #openstack-swift | 04:55 | |
kota_ | notmyname: done on docs, I didn't get whole things on adding middleware yet but it's ok to start to get merged because probably I partially understood about the changes while I was considering some additional stuff (merging Encyrpter/Decrypter, check_metadata skipping, reading docs) | 04:58 |
kota_ | notmyname: and looks like some cores approve... oh, mattoliverau set it as -1 :P | 04:59 |
notmyname | looking at that now | 05:00 |
mattoliverau | I know, happy to +2, but it is a bug.. Follow up is fine | 05:01 |
*** tanee_away is now known as tanee | 05:02 | |
*** tanee is now known as tanee_away | 05:02 | |
kota_ | mattoliverau: I think you got good catch from my eyes :) | 05:02 |
*** tanee_away is now known as tanee | 05:02 | |
*** tanee is now known as tanee_away | 05:02 | |
notmyname | mattoliverau: so you're concerned about x-object-meta-Foo instead of X-Object-Meta-Foo? | 05:03 |
kota_ | notmyname: i think so | 05:08 |
mattoliverau | Yup | 05:10 |
mattoliverau | User metadata looks different, and different to what it used too | 05:10 |
*** chlong has joined #openstack-swift | 05:14 | |
notmyname | mattoliverau: but headers are case-insensitive | 05:15 |
timburke | i was about to say. from https://tools.ietf.org/html/rfc7230#section-3.2 -- "Each header field consists of a case-insensitive field name..." | 05:16 |
notmyname | I'm ok with changing to a HeaderKeyDict. that would probably be nicer. but I don't think it's a bug the way it is | 05:16 |
timburke | it'd probably be good to fix, but i don't know that it's a high priority | 05:16 |
mattoliverau | Sure, but when the response has mostly cased and the one of a few lower it looks untidy | 05:16 |
timburke | though notmyname, haven't we run into trouble before by changing the casing of header names? something about Etag vs. ETag? | 05:17 |
notmyname | heh, yeah | 05:17 |
notmyname | stupid java clients | 05:17 |
mattoliverau | Maybe the gatekeeper could headerdict things seeing as it probably parses all the headers anyway, | 05:17 |
mattoliverau | Then we never have to worry about it again :p | 05:17 |
timburke | i like never having to worry about things again :-) | 05:18 |
mahatic_ | timburke: yeah, I remember that being an issue. casing of header names | 05:18 |
mattoliverau | I say probably cause I'm still on the beach ;) | 05:18 |
mahatic_ | timburke: you probably must be talking in a diff context from mine :) | 05:19 |
mahatic_ | but I gotta recall where | 05:19 |
*** ppai has joined #openstack-swift | 05:20 | |
timburke | how much do we care about the order of the headers? | 05:22 |
notmyname | order? I'd guess about zero | 05:22 |
timburke | or...screw it. don't really *need* to use HeaderKeyDict. can just use the str.title() | 05:23 |
clayg | mattoliverau: I think -1 is the right vote there fwiw | 05:23 |
notmyname | clayg: about the casing? | 05:24 |
clayg | yup | 05:24 |
notmyname | clayg: because of previous experience with ETag vs Etag? | 05:24 |
clayg | it's a tell too | 05:24 |
clayg | yeah but mostly clients | 05:25 |
timburke | oh...except...i think i want a way to have a middleware say "i know what i'm doing, don't touch my headers". hmm... | 05:26 |
*** vinsh has joined #openstack-swift | 05:28 | |
*** hseipp has joined #openstack-swift | 05:28 | |
timburke | and tests are annoying. don't get to use swob.Response | 05:29 |
*** vinsh has quit IRC | 05:33 | |
*** ChubYann has quit IRC | 05:37 | |
*** _JZ__ has joined #openstack-swift | 05:39 | |
*** _JZ_ has quit IRC | 05:40 | |
clayg | timburke: mattoliverau: notmyname: I don't man, I'm not sure it's worth trying to do anything more fancy than this -> https://gist.github.com/clayg/cb7b670801cbcbc1a03abe6f140fe483 | 05:41 |
notmyname | yeah, that works too | 05:43 |
openstackgerrit | Tim Burke proposed openstack/swift: Always title-case headers on the way out of gatekeeper https://review.openstack.org/336371 | 05:43 |
timburke | in case we want it^^ | 05:43 |
notmyname | FWIW, I dont' see anywhere we do Etag->ETag in the code. and I'm getting Etag in my responses. but maybe that was just a long time ago and I'm misremembering | 05:43 |
clayg | it's not like you can control caseing on any of the other parts of the header - we're just mixing wire case with method case and that stupid option in common.wsgi https://github.com/openstack/swift/blob/029c2782ddfd933af20b697c00a46b1375e0f23e/swift/common/wsgi.py#L436 | 05:44 |
*** hseipp has quit IRC | 05:45 | |
timburke | i was thinking the trouble was trying to go the other way? iirc, all the RFCs talke about ETag...so someone may have tried to move us away from simple title-casing, then we realized we'd break clients if we did | 05:45 |
clayg | notmyname: try turning off that wsgi setting | 05:45 |
clayg | notmyname: on disk it seems to be ETag | 05:46 |
clayg | well... | 05:46 |
notmyname | clayg: oh. TBH I don't remember that setting or what it does at all | 05:46 |
timburke | clayg: good link! yeah, i was thinking of swift3 when i said i might want an option to control it... | 05:46 |
clayg | yeah.. | 05:46 |
clayg | timburke: yeah but like that only effected mainly like swift3 being able to cook stuff up and get out of wsgi - not that swift will store the case you give it on disk | 05:47 |
kota_ | back, was part a bit. | 05:48 |
timburke | oh, kota_ *would* be good for this discussion! | 05:48 |
kota_ | ah, if we do at the gate keeper, swift3 absolutely affected for that. | 05:49 |
kota_ | I don't think, it's wsgi setting. | 05:51 |
kota_ | Swift is now using Etag (in title calse), S3 returens ETag instead. | 05:52 |
kota_ | and s3 java sdk hung up due to the difference. | 05:52 |
kota_ | Swift3 is now converting from Etag to ETag in itself. | 05:52 |
kota_ | in the custom HeaderKeyDict. | 05:53 |
kota_ | around here, https://github.com/openstack/swift3/blob/master/swift3/response.py#L31-L37 | 05:54 |
kota_ | ah, it wrapps title() method :/ | 05:54 |
clayg | heh | 05:54 |
notmyname | thanks. that's what I was remembering. I forgot that it was related to S3 clients | 05:54 |
kota_ | and I don't think ETag is not suitable, I like Etag instead | 05:55 |
notmyname | kota_: everybody agrees that the client is wrong in this case. but we can't change it ;-) | 05:55 |
kota_ | notmyname: yeah, if possible, I'd like to fix at S3 itself ;-) | 05:56 |
psachin | ping clayg, https://review.openstack.org/#/c/334238/. Please have a look. I implemented your suggestions. | 05:56 |
patchbot | psachin: patch 334238 - swift - Fix swift-get-nodes arg parsing for missing ring | 05:56 |
*** _JZ_ has joined #openstack-swift | 05:57 | |
*** _JZ__ has quit IRC | 05:57 | |
clayg | psachin: hey! thanks for jumpin' in channel | 05:57 |
notmyname | so what do we want to do here with the headers? use clayg's simple .title()? use mattoliverau's slightly more verbose HeaderKeyDict? | 05:58 |
clayg | i saw that the other day and glanced at it - i thought it looked good! but we're in the middle of crypto and I didn't leave a score because I didn't really test out the changes | 05:58 |
clayg | i was sort of thinking there was something that could might still break... or maybe I didn't see a unittest for the other defect I saw about -P <name> /etc/swift/account.ring.gz | 05:58 |
kota_ | oh, | 05:58 |
kota_ | oh,oh | 05:58 |
*** ChanServ sets mode: +v cschwede | 05:58 | |
*** tqtran has joined #openstack-swift | 05:58 | |
psachin | clayg, Ohk, No problem | 05:59 |
mattoliverau | or gatekeeper-ify it all.. or is that bad for swift3, was that the problem? | 05:59 |
kota_ | clayg: yeah, I forgot it, exctly we need the eventlet setting | 05:59 |
notmyname | mattoliverau: yeah, seems like a gatekeeper change would break swift3 | 05:59 |
kota_ | clayg: exactly, if we don't set it, ETag will be changed to Etag anyway | 05:59 |
clayg | I really think the problem is that we're using lower case for that prefix there - not that generally we have an issue with bad handling of case headers? | 06:00 |
kota_ | need to look at again, probably I forgot something on it. | 06:01 |
notmyname | clayg: yeah, looking at it again, I agree with you | 06:01 |
clayg | do we use a headerkeydict when we send requests to storage nodes? | 06:01 |
*** _JZ_ has quit IRC | 06:02 | |
timburke | mattoliverau: notmyname: kota_: i could make the gatekeeper change still work for swift3 (assuming that we update swift3 as well) | 06:02 |
mattoliverau | notmyname, clayg +1. Clay's is nice and simple. I was just hacking it make sure it was happening while testing, not mine wasn't very effiecent :) | 06:02 |
clayg | i guess we should add a unittest before we push over, sigh | 06:03 |
*** tqtran has quit IRC | 06:03 | |
mattoliverau | timburke: I like the idea of it in gatekeeper, cause then people should use headerkeydict in middleware, but if not we clean it up.. but I don't want to break things like swift3 and force versions or what not.. so to get this merged clayg's fix works | 06:03 |
timburke | yeah, i'm not opposed to a quick, precise fix for this. i might still work on a more permanent fix (and risk making more work for third-party middlewares that want non-title-cased headers) | 06:05 |
notmyname | clayg: seems that after I unpickle the xattr on disk, I get mostly title case headers. except for ETag | 06:13 |
openstackgerrit | Tim Burke proposed openstack/swift: Always title-case headers on the way out of gatekeeper https://review.openstack.org/336371 | 06:15 |
notmyname | and some are unicode, and some are strings. fun. that probably won't cause any problems at all at some point | 06:15 |
timburke | feel free to argue over the header name used in that | 06:15 |
timburke | notmyname: nah, sounds perfectly safe ;-) | 06:16 |
notmyname | timburke: can we argue about your iterator that selects every header that's exactly that string? | 06:17 |
notmyname | would we have multiple ones (ie with different case)? | 06:17 |
mattoliverau | notmyname: lol, i was going to say timburke I prefer to see x-backend-gatekeeper-preserve-casing titled :P | 06:18 |
timburke | well, i did in the commit message :P | 06:18 |
timburke | notmyname: we may; if any of them are true, preserve. the nice thing about any() is that it'll bail on the first positive hit | 06:20 |
kota_ | notmyname: with different case is unsafe actually | 06:21 |
mattoliverau | There has got to be a way to unroll one of the loops, cause in that method we are now looping through respose headers 3 times. | 06:21 |
notmyname | clayg: are you writing a test for your .title() patch? | 06:21 |
kota_ | notmyname: I bet "Don't do that" | 06:21 |
mattoliverau | timburke: oh yeah, any would do that, that's a little better | 06:21 |
kota_ | some virous scan program pick up them as malformed HTTP | 06:22 |
kota_ | notmyname: ah, techinically speaking, we could push the same header names (but different case) to the client as response but it should not be done. | 06:23 |
notmyname | IIRC,that's allowed in HTTP | 06:24 |
timburke | mattoliverau: four times :-( i'll think about it some more when it's not 11:30 or so | 06:24 |
kota_ | notmyname: ah, might be yes. so we need to fix security scan checks? :P | 06:25 |
mattoliverau | timburke: lol, fair enough :P | 06:25 |
timburke | as i recall, we can push several of the same header with the same casing to the client. but client's may behave badly as a result | 06:26 |
kota_ | traking conversations, oh, we employ the new header namespace to save swift3? | 06:26 |
timburke | kota_: that was my thinking. just have swift3 always send that flag back to the gatekeeper | 06:27 |
notmyname | a swift developer, when confronted with a problem, says, "I know! We'll put it in its own namespace". Now the developer only has his own problems | 06:27 |
kota_ | timburke: to call "swift3 is safe on everything" :) | 06:27 |
timburke | we know *exactly* what we're doing. honest ;-) | 06:28 |
clayg | anyone still lookin at this? https://gist.github.com/clayg/de2282be944d5ceee5c511e327320242 | 06:28 |
timburke | notmyname: could be worse. i could've found a way to add a callback :P | 06:29 |
*** rcernin has joined #openstack-swift | 06:29 | |
clayg | notmyname: that namespace joke is *really* funny | 06:29 |
*** vinsh has joined #openstack-swift | 06:29 | |
clayg | notmyname: you could put that on a t-shirt or make a meme or something | 06:29 |
timburke | clayg: seems reasonable | 06:31 |
timburke | (the gist. as well as the t-shirt idea, i suppose) | 06:32 |
clayg | who's going to tell me not to type yes!? https://gist.github.com/clayg/823f5b213b8b865250ccee3b6ac840a3 | 06:32 |
notmyname | clayg: thanks for the test. looks good | 06:32 |
clayg | STAND BACK - I'VE DONE THIS BEFORE | 06:32 |
notmyname | clayg: oh good. quite the opposite, it means that I don't have to do it :-) | 06:32 |
* clayg breifly considers i'll ruin all of acoles hard work | 06:32 | |
openstackgerrit | Clay Gerrard proposed openstack/swift: Enable object body and metadata encryption https://review.openstack.org/328208 | 06:32 |
openstackgerrit | Clay Gerrard proposed openstack/swift: Add encryption overview doc https://review.openstack.org/328209 | 06:32 |
notmyname | nope. all the others are landed ;-) | 06:32 |
*** vinsh has quit IRC | 06:33 | |
kota_ | clayg: nice, you merged the tests into them? | 06:34 |
notmyname | looks good so far | 06:34 |
notmyname | clayg: sure you can still +2 it ;-) | 06:35 |
clayg | yeah i think if you diff against patch set 15 it looks pretty good | 06:35 |
clayg | notmyname: i forgot the ;) | 06:35 |
clayg | i can +2 any change I want | 06:36 |
notmyname | I feel like http://xkcd.com/1700/ is relevant | 06:37 |
notmyname | (to last-minute bugs that are noticed) | 06:38 |
clayg | timburke: doesn't 336371 like sort of ruin whatever that eventlet setting was trying to do for whatever reason kota explained | 06:38 |
timburke | clayg: well, it makes it a runtime decision | 06:39 |
clayg | notmyname: salt them with emoji! | 06:39 |
*** silor has joined #openstack-swift | 06:39 | |
clayg | timburke: it makes what a runtime decision? oh... sorry - i don't think i was following that test correctly | 06:39 |
*** ppai has left #openstack-swift | 06:40 | |
*** ppai has joined #openstack-swift | 06:40 | |
timburke | i could probably make that more clear... | 06:40 |
*** hseipp has joined #openstack-swift | 06:42 | |
timburke | but not tonight | 06:46 |
*** silor1 has joined #openstack-swift | 06:47 | |
notmyname | kota_: mattoliverau: could you leave your thoughts on patch 328208 with clayg's patch applied, before shutting down for the weekend? | 06:47 |
patchbot | notmyname: https://review.openstack.org/#/c/328208/ - swift (feature/crypto-review) - Enable object body and metadata encryption | 06:47 |
mattoliverau | notmyname: sure | 06:47 |
notmyname | mattoliverau: thanks | 06:48 |
*** arcimboldo has joined #openstack-swift | 06:48 | |
kota_ | notmyname: yup. And that looks good so far. | 06:48 |
notmyname | kota_: thanks | 06:48 |
*** silor has quit IRC | 06:49 | |
*** silor1 is now known as silor | 06:49 | |
clayg | getting late for me, I'll have to continue being passive aggressive with timburke in the am ;) | 06:52 |
* clayg hugs | 06:52 | |
timburke | clayg: i don't know that anyone could ever call you passive... | 06:52 |
clayg | rofl | 06:53 |
clayg | 'night | 06:53 |
*** geaaru has joined #openstack-swift | 06:54 | |
*** pcaruana has joined #openstack-swift | 06:57 | |
kota_ | clayg (and probably west coast guys): have a good night o/ | 06:57 |
*** tesseract- has joined #openstack-swift | 07:02 | |
timburke | clayg: i still don't get it, but i can bug you about it in the morning. it seems like we're either not testing what we think we're testing, or we're just testing FakeSwift's behavior, and doing so in kind of a weird and non-obvious place | 07:09 |
openstackgerrit | Clay Gerrard proposed openstack/swift: Stop digging for publicly_accessible ourselves https://review.openstack.org/336308 | 07:11 |
timburke | clayg: isn't that what the Related-Change: tag is for? that i already added? :P | 07:12 |
clayg | oh! | 07:13 |
clayg | no i didn't see that! i think i don't know how to read those - thanks! | 07:13 |
*** asettle has joined #openstack-swift | 07:13 | |
clayg | shit did i erase it | 07:13 |
timburke | nope, still there. no worries :-) | 07:13 |
timburke | very end | 07:14 |
clayg | wtf, when I click it my back button doesn't work anymore | 07:14 |
timburke | stupid redirects. hit back twice, quickly | 07:15 |
clayg | lol | 07:15 |
clayg | i'll watch out for those related-change tags more carefully, i'm sure it helps with context - but if the goal was consistency I think it's worth calling that out - but i'll try to do better snooping around for context | 07:15 |
clayg | timburke: so if our Fake didn't use the HeaderKeyDict it'd be a shitty fake, if the real thing ignores case the fake should too | 07:16 |
timburke | i'll buy that argument | 07:17 |
clayg | I didn't put them in all jumbled indicate that I expected the code under test to get jumbled headers - I did it to demonstrate (if you get into a debugger) that our app doesn't recieve cased up headers | 07:17 |
*** asettle has quit IRC | 07:17 | |
clayg | and you can reason that really quickly if you a) look on disk at an object server or b) add some prints in your proxy | 07:17 |
clayg | ... if we wanted to test what that code does if the obect server were to send case-sensitive keys (which I think it would do if you store them that way) - I think we'd be dissaapointed with how it behaves | 07:18 |
clayg | anyway - obvs I should have said # the fake and the real ignore case, so here I'm going to type in whatever I want to make that obvious | 07:19 |
clayg | idk, maybe I was thinking of the fake setup more like a PUT (which is where the keys are normalized in the real) | 07:20 |
timburke | eh, doesn't really matter. just struck me as something weird. important part is the bug's fixed | 07:21 |
clayg | ohhhhhhh kay | 07:21 |
psachin | clayg, swift-get-nodes -P <name> /etc/swift/account.ring.gz, should not break any thing, but thanx, I added a test-case | 07:22 |
*** chlong has quit IRC | 07:23 | |
clayg | psachin: ah sweet -i'll look out ofr it? on patch 334238 yeah? | 07:24 |
patchbot | clayg: https://review.openstack.org/#/c/334238/ - swift - Fix swift-get-nodes arg parsing for missing ring | 07:24 |
*** openstackgerrit has quit IRC | 07:33 | |
*** openstackgerrit has joined #openstack-swift | 07:33 | |
openstackgerrit | John Dickinson proposed openstack/swift: Merge at-rest encryption feature into master https://review.openstack.org/336407 | 07:36 |
notmyname | there's the merge commit to master ^ | 07:37 |
notmyname | it's of course dependent on the last 2 open patches on crypto-review | 07:37 |
notmyname | acoles_ is set as the patch author, with everyone else from the patch chain listed as co-authors | 07:38 |
notmyname | and I think I'll go to bed now | 07:43 |
notmyname | kota_: mattoliverau: I'll look for any more feedback tomorrow morning for the crypto branch | 07:44 |
notmyname | and if things look good, we'll land these last 2 and the merge commit | 07:44 |
*** dmorita has joined #openstack-swift | 07:45 | |
kota_ | notmyname: thanks for working on late time, I'll leave some comments but right now they are blockers | 07:45 |
kota_ | notmyname: good night. | 07:46 |
kota_ | are not blockers | 07:46 |
kota_ | my mis typing :/ | 07:46 |
kota_ | sorry | 07:46 |
*** dmorita has quit IRC | 07:49 | |
*** rcernin has quit IRC | 07:57 | |
mahatic_ | notmyname: thanks for staying up late and working | 07:59 |
*** mmcardle has joined #openstack-swift | 08:00 | |
*** dmorita has joined #openstack-swift | 08:05 | |
*** asettle has joined #openstack-swift | 08:09 | |
openstackgerrit | Davanum Srinivas (dims) proposed openstack/swift: [WIP] Testing latest u-c https://review.openstack.org/318441 | 08:10 |
*** dmorita has quit IRC | 08:10 | |
*** rcernin has joined #openstack-swift | 08:11 | |
*** acoles_ is now known as acoles | 08:16 | |
*** openstackgerrit has quit IRC | 08:18 | |
kota_ | notmyname: I left some comments on patch 328208 but it looks ok to merge it as it is. | 08:18 |
patchbot | kota_: https://review.openstack.org/#/c/328208/ - swift (feature/crypto-review) - Enable object body and metadata encryption | 08:18 |
acoles | good morning | 08:18 |
kota_ | acoles: good morning | 08:18 |
acoles | is it done? | 08:18 |
*** openstackgerrit has joined #openstack-swift | 08:18 | |
acoles | oh, maybe not | 08:18 |
kota_ | for my side, I did what I can do. | 08:19 |
kota_ | acoles: I think it is ready to merge. Probably final check with mattoliverau | 08:19 |
kota_ | is needed. | 08:19 |
acoles | kota_: great, thanks for all your reviewing! | 08:20 |
kota_ | acoles: ;-) | 08:20 |
mattoliverau | acoles: it's looking good to me, just checking that clayg's test works. and looks like it does. I remove the title() and it fails with the wrong case. | 08:21 |
kota_ | acoles: sorry, I couldn't finish to run whole tests in my local but I think it's ok for other cores did that. | 08:21 |
acoles | mattoliverau: kota_ I've not caught up yet, sounds like clayg found something | 08:21 |
* acoles goes to fetch coffee and postpone relaxing | 08:22 | |
kota_ | acoles: and I'm getting cough since yesterday so getting back home and going to hospital :/ | 08:22 |
acoles | kota_: ok take it easy and have a good weekend | 08:22 |
kota_ | acoles: mattolvieau found ! | 08:22 |
mattoliverau | acoles: I found a bug where the user metadata coming out of the decrypter didn't have the same case as all other headers in a response. | 08:22 |
kota_ | acoles: matt found a bug for the response header on case insentive and clayg fixed. | 08:23 |
mattoliverau | so we just needed to call .title() like headerdict does. | 08:23 |
mattoliverau | acoles: it's all in scroll back for when you get back with your coffee :) | 08:23 |
kota_ | bye guys, I'm looking forward to encryption landing while I'm enjoying weekend ;-) | 08:26 |
mattoliverau | kota_: o/ have a great weekend and I hope you feel better so you can enjoy it :) | 08:28 |
acoles | mattoliverau: yeah long scroll back. so aren't headers case insensitive? when does it matter that they are title-cased? | 08:28 |
mattoliverau | acoles: yeah it's my OCD :P also remember the old java clients out there that had problems with etags (swift3 me thinks). | 08:29 |
mattoliverau | its more, it used to be one way, and now it isn't so clients may break cause they have in the past. | 08:30 |
mattoliverau | besides, it's now fixed. and resposes are like what they were before. The unit tests just passed locally. | 08:31 |
mattoliverau | also they should be ok being case insensitve.. that's what the RFC says.. but who reads that :P | 08:31 |
acoles | mattoliverau: service development would be so much easier if we had no clients :P | 08:32 |
mattoliverau | lol, exactly | 08:32 |
*** Jeffrey4l has quit IRC | 08:33 | |
acoles | mattoliverau: so what's the plan? are we merging patch 328208 or waiting for more reviews? | 08:34 |
patchbot | acoles: https://review.openstack.org/#/c/328208/ - swift (feature/crypto-review) - Enable object body and metadata encryption | 08:34 |
mattoliverau | acoles: clayg pushed a new patchset, I'm reviewing it. I'll give it a +2, if kota does too I guess we could merge it ;) it did have a billion +2's before hand :) | 08:38 |
acoles | mattoliverau: ok. TBH I think I had assumed that somehere in wsgi the header casing just got taken care of, but now I think more that would be in swob. You see, assumptions precede failure! | 08:39 |
mattoliverau | Lol, Tim and I were talking about doing it in gatekeeper, he's gone and created a patch, but again swift3 would break. | 08:40 |
*** janonymous has quit IRC | 08:41 | |
*** Jeffrey4l has joined #openstack-swift | 08:55 | |
acoles | mattoliverau: hmm, confusing, wsgi spec says header names are case sensitive https://www.python.org/dev/peps/pep-3333/#the-start-response-callable, but then wsgi by default capitalizes them, but then we disable that in eventlet wsgi !?! | 08:57 |
*** dmorita has joined #openstack-swift | 08:59 | |
acoles | mattoliverau: anyway, glad you guys spotted it and fixed it, it would have triggered my OCD too if I had noticed. Presumably out func tests are insensitive to resp header case or we'd have noticed earlier. | 08:59 |
kota_ | (Waiting at hospital) AFAIK, the chang clayg suggested in wsgi was proposed assuming Swift response headers are safe while using HeaderKeyDict | 09:01 |
*** dmorita has quit IRC | 09:03 | |
*** arcimboldo has quit IRC | 09:03 | |
kota_ | So Swift3 assuming the response header should be title case and think of Swift3 is only guy wants to make non title case | 09:04 |
kota_ | But decrypter did | 09:04 |
*** janonymous has joined #openstack-swift | 09:06 | |
kota_ | That caused the bug | 09:06 |
clayg | acoles: nowhey - mattoliverau found it | 09:10 |
clayg | acoles: i'm *so* disappointed too - because it was exactly the kind of bug i thought might be lurking - i missed it | 09:10 |
clayg | acoles: I didn't even find anything good in the Putters' patch! | 09:10 |
kota_ | clayg!? Night man!? | 09:12 |
acoles | clayg: howdy, yeah, but now I'm concerned about the Etag header that we swap in, or should it be ETag ? 't' or 'T' | 09:13 |
clayg | yeah lets merge it | 09:13 |
acoles | clayg: cos this says AWS SDK wants a 'T' in etag https://review.openstack.org/#/c/93780/ | 09:13 |
patchbot | acoles: patch 93780 - swift - Disable case-changing behavior in Eventlet (MERGED) | 09:13 |
clayg | acoles: oh, interesting... | 09:13 |
acoles | but then on master we return Etag with a 't' | 09:14 |
kota_ | Yes | 09:14 |
kota_ | Ah, my comment seems lost duo to my client | 09:15 |
kota_ | Tim suggested to solve it | 09:15 |
clayg | so strange... the object server *stores* ETag in the metadata!? | 09:15 |
clayg | unencrypted pipeline sure does return Etag tho... | 09:16 |
acoles | yeah but swob Response title everything, so on master we won't get ETag | 09:16 |
kota_ | No Swift3 transrate the header name at Get response | 09:17 |
kota_ | In the pipeline | 09:17 |
acoles | kota_: so swift3 translates Etag -> ETag ?? | 09:17 |
kota_ | Yes | 09:17 |
acoles | so why can't it title case all my decrypter x-object-meta- headers too ?!? <- that's a joke ;) | 09:18 |
kota_ | Hehe | 09:18 |
* acoles had a headache *before* starting work today :( | 09:19 | |
kota_ | Wait, its time to open my laptop | 09:19 |
kota_ | Mobile is too slow to type | 09:20 |
kota_ | back with laptop | 09:21 |
acoles | kota_: :) typing etag ETag and Etag consistently on a mobile can't be fun | 09:21 |
kota_ | https://github.com/openstack/swift3/blob/master/swift3/response.py#L31-L37 is the place to translate Etag -> ETag | 09:21 |
acoles | thanks | 09:22 |
kota_ | plus x-amz-<usermeta> swift3 need with smaller case. | 09:22 |
kota_ | and timburke is thinking of making a new backend header namespace to pass to gatekeeper "this headers shouldn't be changed to titlecase" | 09:24 |
kota_ | and then, set title() at the gatekeeper. | 09:24 |
kota_ | After that, swift3 can pass ETag and all of x-amz-* headers as non-title case and then, gatekeeper will title() other headers. | 09:25 |
*** sheel has quit IRC | 09:25 | |
*** ma9 has joined #openstack-swift | 09:27 | |
ma9 | I would like to create a new user who should be able to list the contents of a container and read its files, but not create any new container nor file…. should he be member of a role which belongs to operator_roles? | 09:27 |
ma9 | I gets this warning message if he's not an operator: Access was denied to this resourc | 09:28 |
clayg | sounds like a use-case for hisashi's policy.json stuff - account ACLs have that concept - but I don't think Keystone supports them | 09:29 |
mattoliverau | this is timburke's patch 336371 | 09:30 |
patchbot | mattoliverau: https://review.openstack.org/#/c/336371/ - swift - Always title-case headers on the way out of gateke... | 09:30 |
* kota_ is waiting at hospital so long.... | 09:30 | |
mattoliverau | Also, are we going to merge thsi thing, or did you want to functest something clayg? | 09:31 |
mattoliverau | kota_: :( | 09:31 |
*** vinsh has joined #openstack-swift | 09:31 | |
kota_ | mattoliverau: but it allows to me to talk at irc ;) | 09:31 |
mattoliverau | \o/ | 09:31 |
kota_ | mattoliveau: thanks, I didn't notice that for patch 336371 | 09:32 |
patchbot | kota_: https://review.openstack.org/#/c/336371/ - swift - Always title-case headers on the way out of gateke... | 09:32 |
clayg | yeah i guess the obj/server uses a swob.Response (who puts all headers in the HeaderKeyDict | 09:32 |
mattoliverau | k, I need to go bath the bub then run a quick errand to the shops. bbs | 09:33 |
kota_ | ah, looks like a bit different with my idea for passing the hing to gatekeeper. | 09:33 |
* mattoliverau notes that he's been a linux geek for too long, bath almost came out as bash.. and that changed the sentence quite a bit! | 09:34 | |
kota_ | I don't it should not be just a boole (true/false) but csv_list which says "this header name keeps current case!" | 09:34 |
mattoliverau | kota_: so long as you pass the backend header in the response in swift3, it shouldn't change things. | 09:35 |
acoles | ma9: operator role on a project will grant read and write access to the project. you may be able to achieve your goal using ACLs http://docs.openstack.org/developer/swift/overview_auth.html#access-control-using-keystoneauth | 09:35 |
*** vinsh has quit IRC | 09:35 | |
kota_ | mattoliverau: take fun with baby ;-) | 09:35 |
*** arcimboldo has joined #openstack-swift | 09:36 | |
clayg | webob seems to like to to ETag | 09:37 |
clayg | and also with "" around it | 09:38 |
kota_ | clayg: lol | 09:38 |
kota_ | swift cannot follow on that :/ | 09:38 |
clayg | I think we've always returned Etag since swob? | 09:41 |
clayg | we should have functional tests for some of these warts tho | 09:41 |
acoles | +1 | 09:42 |
kota_ | clayg: I think so, swob.Response.headers is a HeaderKeyDict | 09:42 |
kota_ | and it returns response.headers.items() for start_response | 09:42 |
kota_ | right? | 09:42 |
clayg | mattoliverau: merge it! | 09:42 |
clayg | kota_: yes definately | 09:43 |
acoles | kota_: right | 09:43 |
kota_ | so any middleware can change the header name case after start_response of proxy_app if the middleware is not using Response.headers or something to ensure the title case. | 09:44 |
kota_ | that's why swift3 can do that. | 09:45 |
mahatic_ | I'm taking off early today, by the time I get back to check on things, maybe crypto will be merged and I will have a long scroll back with great insights | 09:45 |
mahatic_ | have a great weekend everyone | 09:45 |
acoles | kota_: btw, yes the middleware.rst needs some more work, I just put something there as a placeholder | 09:46 |
kota_ | mahatic_: have a good time, you too. | 09:46 |
acoles | mahatic_: you too! it's done...nearly | 09:46 |
kota_ | acoles: ;-) | 09:47 |
clayg | where *is* hisashi anyway? | 09:47 |
clayg | working on monasca i guess? http://stackalytics.com/?user_id=osanai-hisashi | 09:48 |
clayg | wtf is monasca? | 09:48 |
kota_ | looks like hosanai is not online | 09:48 |
kota_ | interesting | 09:49 |
acoles | clayg: monitoring service | 09:50 |
clayg | Hyperconverged Meets Cloud | 09:51 |
* kota_ is thinking what's happen at this hospital. I'm waiting about an hour even though no waiting patient when I arrived here !?!? | 09:52 | |
* clayg hopes everyone is ok :\ | 09:53 | |
*** tqtran has joined #openstack-swift | 10:01 | |
*** tqtran has quit IRC | 10:05 | |
clayg | psachin: you still about? I don't think -P syntax is working at all, and when you hit the InfoExit block from the cli it's not displaying the error to the user :'( | 10:06 |
*** kei_yama has quit IRC | 10:09 | |
*** rcernin has quit IRC | 10:10 | |
acoles | clayg: mattoliverau kota_ so who is hitting +A on patch 328208? feel like it shouldn't really be me | 10:21 |
patchbot | acoles: https://review.openstack.org/#/c/328208/ - swift (feature/crypto-review) - Enable object body and metadata encryption | 10:21 |
*** rcernin has joined #openstack-swift | 10:23 | |
*** dmorita has joined #openstack-swift | 10:24 | |
*** haypo has joined #openstack-swift | 10:26 | |
haypo | yarkot: hello. for my dict.iteritems() vs dict.items() change https://review.openstack.org/#/c/333298/ , i don't have a strong opinion. i tried to follow the same rule for all openstack projects | 10:27 |
patchbot | haypo: patch 333298 - swift - Python 3: dict.iteritems() and dict.itervalues() | 10:27 |
haypo | yarkot: i expect that the creation of a temporary python list is a negligible impact on performance | 10:27 |
haypo | yarkot: in the past, i got negative feedback in swift when i started to use six "everywhere", the readability argument matter | 10:28 |
mattoliverau | acoles: I'm happy too :) | 10:28 |
*** dmorita has quit IRC | 10:28 | |
acoles | mattoliverau: ok it looks good to me, thanks to you and clayg for the fix | 10:29 |
haypo | does anyone have an opinion on https://review.openstack.org/#/c/333298/ : six.iteritems(dict) (less readable) versus dict.items() (create a temporary list on python 2) | 10:29 |
patchbot | haypo: patch 333298 - swift - Python 3: dict.iteritems() and dict.itervalues() | 10:29 |
haypo | the rationale for dict.items() can be found in this email thread, http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html | 10:30 |
mattoliverau | acoles: lol, clayg already did, but I'll do the doco ne | 10:30 |
mattoliverau | *doc one | 10:30 |
mattoliverau | acoles: congrats, tis all +Aed! | 10:32 |
mattoliverau | and on that note, I'm going to call it a night! | 10:32 |
acoles | hehe clayg left us his key | 10:32 |
*** vinsh has joined #openstack-swift | 10:32 | |
acoles | mattoliverau: thanks, have a good weekend | 10:32 |
mattoliverau | acoles: have a great night and weekend, relax you deserve it! | 10:32 |
*** vinsh has quit IRC | 10:37 | |
haypo | acoles, clayg : hello. would you mind to review my python3 patch serie? https://review.openstack.org/#/c/333297/ Pete Zaitcev already voted +2 ;) | 10:38 |
patchbot | haypo: patch 333297 - swift - Python 3: Fix basestring, long and StringIO | 10:38 |
clayg | ohsnap - it's all +A'd now - i really gotta knock off | 10:40 |
*** mmcardle has quit IRC | 10:57 | |
*** asettle has quit IRC | 11:01 | |
*** SkyRocknRoll has quit IRC | 11:06 | |
*** SkyRocknRoll has joined #openstack-swift | 11:19 | |
*** cbartz has joined #openstack-swift | 11:27 | |
openstackgerrit | Merged openstack/swift: Enable object body and metadata encryption https://review.openstack.org/328208 | 11:29 |
openstackgerrit | Merged openstack/swift: Add encryption overview doc https://review.openstack.org/328209 | 11:30 |
*** thumpba has joined #openstack-swift | 11:37 | |
*** ManojK has joined #openstack-swift | 11:58 | |
*** raildo-afk is now known as raildo | 12:01 | |
*** asettle has joined #openstack-swift | 12:02 | |
*** asettle has quit IRC | 12:07 | |
*** derekjhyang has quit IRC | 12:11 | |
*** SkyRocknRoll has quit IRC | 12:14 | |
*** mmcardle has joined #openstack-swift | 12:16 | |
*** SkyRocknRoll has joined #openstack-swift | 12:19 | |
*** mmcardle has quit IRC | 12:21 | |
*** SkyRocknRoll has quit IRC | 12:25 | |
tdasilva | acoles: good morning and congrats! looks like everything merged | 12:27 |
openstackgerrit | Gábor Antal proposed openstack/swift: Replaced some assertTrue with more specific asserts https://review.openstack.org/287643 | 12:33 |
*** vinsh has joined #openstack-swift | 12:33 | |
*** vinsh has quit IRC | 12:38 | |
*** asettle has joined #openstack-swift | 12:41 | |
*** asettle has quit IRC | 12:47 | |
*** NM has joined #openstack-swift | 12:52 | |
*** d0ugal has quit IRC | 12:54 | |
*** d0ugal has joined #openstack-swift | 12:54 | |
*** d0ugal has quit IRC | 12:54 | |
*** d0ugal has joined #openstack-swift | 12:54 | |
*** d0ugal has quit IRC | 12:55 | |
*** d0ugal has joined #openstack-swift | 12:55 | |
*** d0ugal has quit IRC | 12:55 | |
*** d0ugal has joined #openstack-swift | 12:55 | |
acoles | tdasilva: good morning. yes all merged onto feature-crypto and notmyname has merge commit patch ready for master :) clayg and mattoliverau found and fixed something last night, but all done now. | 12:59 |
*** d0ugal has quit IRC | 13:00 | |
*** d0ugal has joined #openstack-swift | 13:00 | |
*** _JZ_ has joined #openstack-swift | 13:01 | |
*** d0ugal has quit IRC | 13:02 | |
*** d0ugal has joined #openstack-swift | 13:03 | |
*** d0ugal has quit IRC | 13:03 | |
*** d0ugal has joined #openstack-swift | 13:03 | |
*** d0ugal has quit IRC | 13:03 | |
*** ManojK has quit IRC | 13:03 | |
*** siva_krish has joined #openstack-swift | 13:03 | |
*** Guest12790 has joined #openstack-swift | 13:03 | |
*** Guest12790 has quit IRC | 13:04 | |
*** d0ugal has joined #openstack-swift | 13:04 | |
*** dmorita has joined #openstack-swift | 13:16 | |
*** psachin has quit IRC | 13:16 | |
notmyname | good morning | 13:19 |
notmyname | reading scrollback | 13:19 |
*** dmorita has quit IRC | 13:21 | |
*** ManojK has joined #openstack-swift | 13:22 | |
*** ppai has quit IRC | 13:23 | |
notmyname | all right! | 13:26 |
acoles | notmyname: all merged! | 13:33 |
notmyname | I just got through IRC playback and the review emails. | 13:33 |
notmyname | yup, looks good :-) | 13:33 |
notmyname | acoles: does https://review.openstack.org/#/c/336407/1 look good to you (author, commit message)? | 13:34 |
patchbot | notmyname: patch 336407 - swift - Merge at-rest encryption feature into master | 13:34 |
acoles | notmyname: just checking the co-authors (sorry, should have done that before) | 13:35 |
notmyname | looks like a lot of failures from the community cluster. checking those now | 13:36 |
*** SkyRocknRoll has joined #openstack-swift | 13:37 | |
*** Jeffrey4l has quit IRC | 13:40 | |
notmyname | hmm..tests just passed locally for me | 13:40 |
acoles | notmyname: I want to say that I've seen the community CI randomly fail before, but I'd also love to see it pass for this patch! | 13:41 |
acoles | notmyname: I am just running tests with the merge commit branch | 13:42 |
notmyname | yeah. well, it passed with EC and all the gate tests passed | 13:42 |
notmyname | and it passed for the crypto doc patch | 13:43 |
*** arcimboldo has quit IRC | 13:43 | |
*** daemontool has joined #openstack-swift | 13:43 | |
notmyname | acoles: let me know how your test run goes. I'm good with it on this side | 13:47 |
acoles | notmyname: we appear to have some patches land on master, just going through to look for anything that could matter | 13:47 |
*** asettle has joined #openstack-swift | 13:49 | |
acoles | notmyname: is it ok that the patch to change .gitreview on feature/crypto-review is included in the merge to master? if I git checkout HEAD~1 then I skip back to before any of the crypto patches, but if I git checkout 96a0e077 then i will have the default branch set to crypto-review. | 13:56 |
acoles | I guess it has to be that way | 13:56 |
acoles | my func tests pass, EC w/wo fast-post | 13:56 |
notmyname | since we're landing the feature as a merge commit, I don't think there's a reasonable expectation that everything is just like normal if you check out some commit on the feature branch. it's good to be able to do that for future debugging (and was good for our reviewing), but not reasonable to start from one of those and do dev or prod stuff | 13:58 |
notmyname | the way around that next time would be to have the -review branch maintainer make sure to specify the -review branch in every call to `git review` | 13:59 |
notmyname | that way we wouldn't land the .gitreview update on the feature-review branch | 14:00 |
acoles | notmyname: ok. I'm happy. | 14:01 |
notmyname | ok, let's make you even happier now | 14:02 |
notmyname | https://review.openstack.org/#/c/336407/ <-- +2/+A | 14:02 |
patchbot | notmyname: patch 336407 - swift - Merge at-rest encryption feature into master | 14:02 |
acoles | notmyname: I think the way we did it with .gitreview undoubtedly saved some mistakes :) | 14:02 |
acoles | wait.... | 14:03 |
notmyname | not funny | 14:03 |
acoles | JK | 14:03 |
notmyname | ;-) | 14:03 |
notmyname | ...that joke happens every time... | 14:03 |
*** ManojK has quit IRC | 14:03 | |
acoles | yeah I know, sorry | 14:04 |
notmyname | no, it's still funny :-) | 14:04 |
*** arcimboldo has joined #openstack-swift | 14:05 | |
notmyname | ok, I added a small update to http://not.mn/swift/swift_community_dashboard.html | 14:06 |
acoles | notmyname: lol (the dots) | 14:06 |
notmyname | it's what I found to copy/paste in last night at 1am ;-) | 14:07 |
acoles | jrichli: mahatic_ are you here ? the fireworks are going off | 14:08 |
notmyname | #success the 1.5 year long effort to get at-rest encryption in openstack swift has been finished. at-rest crypto has landed in master | 14:09 |
openstackstatus | notmyname: Added success to Success page | 14:09 |
acoles | where is the success page? | 14:09 |
acoles | /dev/null ? | 14:09 |
notmyname | I think it's a wiki page somewhere | 14:09 |
NM | openstackstatus: Go home, you're drunk. | 14:10 |
acoles | wiki? well that's going away then! | 14:10 |
notmyname | https://wiki.openstack.org/wiki/Successes | 14:10 |
notmyname | IIRC it goes in a weekly mailing list post too | 14:11 |
acoles | notmyname: hmm, we're not honest as a community -> https://wiki.openstack.org/wiki/Failures | 14:11 |
notmyname | lol | 14:11 |
notmyname | for those of you who do the twitters, https://twitter.com/notmyname/status/748881858515963904 | 14:12 |
*** daemontool has quit IRC | 14:12 | |
notmyname | time for me to go get ready for the day | 14:12 |
notmyname | acoles: enjoy your weekend | 14:13 |
notmyname | I'll be back online later this morning | 14:13 |
acoles | notmyname: thanks, and enjoy your holiday | 14:13 |
*** daemontool has joined #openstack-swift | 14:14 | |
*** haypo has left #openstack-swift | 14:14 | |
*** catintheroof has joined #openstack-swift | 14:14 | |
*** vint_bra has joined #openstack-swift | 14:19 | |
*** arcimboldo has quit IRC | 14:20 | |
*** ManojK has joined #openstack-swift | 14:21 | |
*** links has quit IRC | 14:25 | |
*** links has joined #openstack-swift | 14:27 | |
*** cbartz has left #openstack-swift | 14:28 | |
jrichli | OMG! It has really happened. Thanks to everyone! Just read scrollback - lots of activity since i went to sleep! | 14:32 |
*** vint_bra has quit IRC | 14:33 | |
*** arcimboldo has joined #openstack-swift | 14:34 | |
jrichli | notmyname: love the dashboard! | 14:35 |
*** vinsh has joined #openstack-swift | 14:35 | |
*** kevinc has joined #openstack-swift | 14:36 | |
*** kevinc has quit IRC | 14:36 | |
*** nadeem has joined #openstack-swift | 14:36 | |
*** kevinc has joined #openstack-swift | 14:36 | |
*** nadeem has quit IRC | 14:37 | |
*** dmorita has joined #openstack-swift | 14:38 | |
*** nadeem has joined #openstack-swift | 14:38 | |
*** vint_bra has joined #openstack-swift | 14:38 | |
*** vinsh has quit IRC | 14:40 | |
*** SkyRocknRoll has quit IRC | 14:51 | |
tdasilva | jrichli, acoles: congrats to you both and everyone else involved! | 14:51 |
*** SkyRocknRoll has joined #openstack-swift | 14:52 | |
jrichli | tdasilva: thank you for all your help! | 14:56 |
openstackgerrit | Merged openstack/swift: Merge at-rest encryption feature into master https://review.openstack.org/336407 | 15:02 |
*** links has quit IRC | 15:02 | |
*** ManojK has quit IRC | 15:04 | |
*** vinsh has joined #openstack-swift | 15:06 | |
*** jistr is now known as jistr|mtg | 15:07 | |
*** pcaruana has quit IRC | 15:08 | |
*** SkyRocknRoll has quit IRC | 15:08 | |
*** vint_bra has quit IRC | 15:09 | |
*** sgundur1 has joined #openstack-swift | 15:09 | |
acoles | ^^ wheee | 15:10 |
acoles | tdasilva: you're part of it! | 15:10 |
*** ma9 has left #openstack-swift | 15:10 | |
*** rcernin has quit IRC | 15:14 | |
mathiasb | great job everyone! | 15:16 |
*** admin6 has left #openstack-swift | 15:20 | |
*** SkyRocknRoll has joined #openstack-swift | 15:21 | |
yarkot | haypo - re: six.iter* ... my comment isn't a particularly strong one; it's more of pick a way for a changeset, and stick with it, otherwise info gets lost; I'm not sure about the subtle unexpected openining of a door for an unexpected behavioral change (certainly in the one "six" exception you made, that was manually anticipated), but the old engineer in me reacted w/ discomfort to that too. If you're really not intent on making it consistent, | 15:21 |
yarkot | I can change my comment to a zero rating - but I'd be happy if you'd consider the safer, consistent route (rather than being swayed by the social "anti six.*" pressure, which I think makes more sense in a general decision point: "don't use unless really warranted"; I just added "then stay consistent"; ymmv.) | 15:21 |
yarkot | ^haypo | 15:22 |
openstackgerrit | Alistair Coles proposed openstack/swift: Add encrypter and decrypter links to middleware.rst https://review.openstack.org/336618 | 15:23 |
*** Jeffrey4l has joined #openstack-swift | 15:24 | |
acoles | timburke: ^^ includes fix for the dodgy test, you are co-authored. kota_: follow up on your last review comments | 15:24 |
*** Jeffrey4l has quit IRC | 15:24 | |
*** klrmn has joined #openstack-swift | 15:27 | |
*** ukaynar has joined #openstack-swift | 15:27 | |
*** daemontool has quit IRC | 15:28 | |
*** chsc has joined #openstack-swift | 15:28 | |
*** chsc has joined #openstack-swift | 15:28 | |
*** tesseract- has quit IRC | 15:28 | |
acoles | timburke: mahatic_ jrichli notmyname fyi i have tidied the trello board and I'm still tracking follow up tasks there https://trello.com/b/63l5zQhq/swift-encryption | 15:38 |
acoles | please add any left over from review | 15:38 |
*** manous has joined #openstack-swift | 15:40 | |
notmyname | ok, thanks | 15:42 |
notmyname | today I'll be looking at other patches that should land shortly that were on hold until crypto landed | 15:42 |
acoles | notmyname: I intend to start reviewing the container sync patche snext week | 15:42 |
tdasilva | interesting problem triple folks hit with swift: https://bugs.launchpad.net/tripleo/+bug/1595916 | 15:42 |
openstack | Launchpad bug 1595916 in tripleo "Swift memory usage grows until it is killed" [High,New] - Assigned to Emilien Macchi (emilienm) | 15:42 |
tdasilva | tl:dr it was a pipeline configuration issue | 15:43 |
notmyname | tdasilva: indeed. nice to see some further work being done on it | 15:43 |
*** lyrrad has joined #openstack-swift | 15:43 | |
*** david-lyle has joined #openstack-swift | 15:44 | |
notmyname | I see only one instance of proxy-logging in pipelines in nearly every config that people looking for help show me | 15:44 |
notmyname | so even if it's misconfigured, it would be good to find and fix a memory bug there | 15:44 |
*** NM has quit IRC | 15:45 | |
*** dmorita has quit IRC | 15:45 | |
*** dmorita has joined #openstack-swift | 15:46 | |
*** jmccarthy has quit IRC | 15:46 | |
cschwede | jrichli: acoles: (and everyone else who worked on it): congrats! very well done \o/ | 15:47 |
*** jmccarthy has joined #openstack-swift | 15:47 | |
*** NM has joined #openstack-swift | 15:48 | |
*** jistr|mtg is now known as jistr | 15:50 | |
*** ukaynar has quit IRC | 15:56 | |
*** manous has quit IRC | 15:58 | |
*** david-lyle_ has joined #openstack-swift | 16:00 | |
openstackgerrit | OpenStack Proposal Bot proposed openstack/swift: Updated from global requirements https://review.openstack.org/88736 | 16:01 |
*** nadeem has quit IRC | 16:02 | |
*** tqtran has joined #openstack-swift | 16:03 | |
*** nadeem has joined #openstack-swift | 16:04 | |
*** nadeem has quit IRC | 16:04 | |
*** david-lyle has quit IRC | 16:04 | |
*** david-lyle_ is now known as david-lyle | 16:04 | |
*** tqtran has quit IRC | 16:07 | |
*** cdelatte has joined #openstack-swift | 16:10 | |
*** manous has joined #openstack-swift | 16:11 | |
*** vinsh has quit IRC | 16:15 | |
*** derekh has joined #openstack-swift | 16:15 | |
*** ChubYann has joined #openstack-swift | 16:16 | |
derekh | clayg: you were commenting on a tripleo bug a few days ago we had with swift memory usage https://bugs.launchpad.net/tripleo/+bug/1595916 | 16:17 |
openstack | Launchpad bug 1595916 in tripleo "Swift memory usage grows until it is killed" [High,New] - Assigned to Emilien Macchi (emilienm) | 16:17 |
derekh | clayg: see my last comment would the absence of a second entry for proxy-logging in the proxy pipeline explain things? | 16:18 |
clayg | derekh: i don't think so - did adding it make a difference (!?) | 16:21 |
clayg | derekh: I really can't imagine any good reason for that sort of memory usage :'( | 16:21 |
derekh | clayg: yes, I can reliable reproduce the problem by removing it, then adding it back in fixes the problem | 16:21 |
clayg | PHASPFOIUHWEF9H??!! | 16:22 |
* clayg exploded | 16:22 | |
clayg | something like... eventlet posthook loggers set in the middleware piling up or something ? | 16:24 |
*** diogogmt has joined #openstack-swift | 16:26 | |
derekh | clayg: maybe, I don't see any logs of use but will poke at it some more to see if I can get info | 16:27 |
*** klrmn has quit IRC | 16:27 | |
*** lyrrad has quit IRC | 16:28 | |
clayg | derekh: yeah thanks for the heads up I'll try and repro some in dev - that's a pretty big landmind | 16:28 |
derekh | clayg: it only seems to happen with a certain image I have, want me to upload it somewhere ? | 16:29 |
*** geaaru has quit IRC | 16:30 | |
clayg | merge commits happen fast? | 16:31 |
*** daemontool has joined #openstack-swift | 16:31 | |
derekh | was that a question for me? | 16:32 |
*** gyee has joined #openstack-swift | 16:33 | |
*** vint_bra has joined #openstack-swift | 16:35 | |
acoles | tdasilva: I updated patch 324607 to keep just the tests that didn't make it onto feature/crypto-review | 16:37 |
patchbot | acoles: https://review.openstack.org/#/c/324607/ - swift - Add test for copy using a Range header | 16:37 |
acoles | tdasilva: you are co-author | 16:37 |
*** diogogmt has quit IRC | 16:37 | |
*** asettle has quit IRC | 16:38 | |
tdasilva | acoles: ack, thanks! | 16:38 |
*** derekh has quit IRC | 16:39 | |
*** thumpba_ has joined #openstack-swift | 16:42 | |
openstackgerrit | Thiago da Silva proposed openstack/swift: Add "history" mode to versioned_writes middleware https://review.openstack.org/214922 | 16:42 |
tdasilva | timburke: ^^^ just a rebase | 16:42 |
*** thumpba has quit IRC | 16:44 | |
*** hseipp has quit IRC | 16:45 | |
notmyname | heh, the raspberry pi showing the community dashboard here in the office is really struggling with that javascript confetti | 16:46 |
zaitcev | Gosh I have i7 with 16 GB struggling with JavaScript in Gerrit | 16:46 |
acoles | good night. enjoy the holiday weekend those in US. | 16:51 |
*** acoles is now known as acoles_ | 16:52 | |
notmyname | zaitcev: http://d.not.mn/rpi_cpu.png | 16:52 |
*** asettle has joined #openstack-swift | 16:54 | |
notmyname | oh, interesting. looks like there's an -infra maintenance window in a few hours. I'm very happy we got crypto landed before that :-) | 16:56 |
*** vint_bra has quit IRC | 16:56 | |
zaitcev | lucky | 16:56 |
*** SkyRocknRoll has quit IRC | 16:57 | |
zaitcev | Early bird gets the worm. | 16:57 |
openstackgerrit | Tim Burke proposed openstack/swift: Add sanity checks to strip_*meta_prefix functions https://review.openstack.org/336669 | 17:06 |
openstackgerrit | Tim Burke proposed openstack/swift: Only use Timeout if we don't have a final_resp https://review.openstack.org/336671 | 17:07 |
openstackgerrit | Tim Burke proposed openstack/swift: Use functools.partial to provide read/readline methods https://review.openstack.org/336672 | 17:08 |
*** manous has quit IRC | 17:09 | |
*** nadeem has joined #openstack-swift | 17:13 | |
*** tqtran has joined #openstack-swift | 17:15 | |
*** klamath has joined #openstack-swift | 17:19 | |
*** klamath has quit IRC | 17:20 | |
notmyname | virtual box has a 20-step process from alerting you to a new version to launch a VM with the upgraded version | 17:20 |
*** klamath has joined #openstack-swift | 17:20 | |
*** manous has joined #openstack-swift | 17:21 | |
timburke | mattoliverau: acoles_: the header casing isn't just about OCD-ness. i don't think we want the knowledge that encryption is enabled bleeding out to clients (that's why we have the admin=True flag in register_swift_info, right?) | 17:21 |
notmyname | timburke: right, that's the big deal. exposing the knowledge | 17:22 |
*** vint_bra has joined #openstack-swift | 17:24 | |
*** manous has quit IRC | 17:26 | |
*** SkyRocknRoll has joined #openstack-swift | 17:28 | |
*** manous has joined #openstack-swift | 17:38 | |
*** SkyRocknRoll has quit IRC | 17:45 | |
*** arch-nemesis has joined #openstack-swift | 17:50 | |
*** silor has quit IRC | 17:51 | |
*** asettle has quit IRC | 18:00 | |
*** daemontool has quit IRC | 18:00 | |
*** klrmn has joined #openstack-swift | 18:05 | |
clayg | if a client set their mind to it they should be able to tell by measuring the speed at which proxies serve files/metadata of various bytes - if they can figureout passwords measuring strcmp they can probably make a pretty solid guess about crypto | 18:06 |
clayg | timburke: in patch 336672 can you just say `read = functools.partial(...` and drop the the @property? | 18:07 |
patchbot | clayg: https://review.openstack.org/#/c/336672/ - swift - Use functools.partial to provide read/readline met... | 18:07 |
*** ManojK has joined #openstack-swift | 18:15 | |
*** nadeem has quit IRC | 18:18 | |
*** ManojK has quit IRC | 18:21 | |
*** ManojK has joined #openstack-swift | 18:28 | |
*** klamath has quit IRC | 18:30 | |
openstackgerrit | Samuel Merritt proposed openstack/swift: DO NOT MERGE: probe the gate to figure out what kind of filesystems are in there https://review.openstack.org/336703 | 18:30 |
clayg | torgomatic: oh yeah that was it - the inprocess func seemed to only be passing because of the mock - rofl | 18:31 |
torgomatic | clayg: yep. once I figure out what kind of environment the gate is running in, I can see WTF is going on | 18:32 |
mahatic_ | woohoo, crypto merged! | 18:34 |
mahatic_ | twitter directed me here | 18:35 |
mahatic_ | notmyname: acoles_ excellent fireworks! | 18:35 |
timburke | tdasilva: thanks for the rebase | 18:36 |
tdasilva | timburke: reviewing now :) | 18:36 |
timburke | mahatic_: what are you doing awake? go sleep! | 18:37 |
timburke | tdasilva: extra thanks! | 18:37 |
mahatic_ | timburke: I saw notmyname's update on twitter, I wanted to dropby to see the fireworks ;) | 18:38 |
mahatic_ | now that i'm here, i'm gonna do a rebase of an old patch I guess | 18:38 |
*** arcimboldo has quit IRC | 18:39 | |
notmyname | clayg: interestingly, after having tested a bunch of public swift clusters, I wouldn't be able to guess about which ones have crytpo based on timings. the fastest clusters were 10x the slowest clusters | 18:47 |
clayg | notmyname: no I mean there's like zero-byte stuff that's *not* encrypted, and the *amount* of metadata means more to encrypt - i bet you could do it all relative to a cluster - if there's some varience because of disk load in that cluster you just make more requests and average it out | 18:48 |
*** siva_krish has quit IRC | 19:00 | |
*** siva_krish has joined #openstack-swift | 19:02 | |
*** manous has quit IRC | 19:10 | |
*** manous has joined #openstack-swift | 19:23 | |
*** siva_krish has quit IRC | 19:32 | |
*** siva_krish has joined #openstack-swift | 19:35 | |
*** okdas has quit IRC | 19:40 | |
*** pdardeau has quit IRC | 19:40 | |
*** pdardeau has joined #openstack-swift | 19:41 | |
*** tristanC has quit IRC | 19:41 | |
*** andymccr has quit IRC | 19:41 | |
*** gmmaha has quit IRC | 19:41 | |
*** furlongm_ has joined #openstack-swift | 19:42 | |
*** arch-nemesis has quit IRC | 19:42 | |
*** notmyname has quit IRC | 19:42 | |
*** j_king has quit IRC | 19:42 | |
*** furlongm has quit IRC | 19:42 | |
*** bhakta has quit IRC | 19:42 | |
*** jidar has quit IRC | 19:42 | |
*** glange has quit IRC | 19:42 | |
*** manous has quit IRC | 19:43 | |
*** tristanC has joined #openstack-swift | 19:43 | |
*** j_king has joined #openstack-swift | 19:44 | |
*** glange has joined #openstack-swift | 19:44 | |
*** ChanServ sets mode: +v glange | 19:44 | |
*** okdas has joined #openstack-swift | 19:47 | |
*** okdas has joined #openstack-swift | 19:47 | |
*** notmyname has joined #openstack-swift | 19:47 | |
*** ChanServ sets mode: +v notmyname | 19:47 | |
*** andymccr has joined #openstack-swift | 19:47 | |
*** bhakta has joined #openstack-swift | 19:47 | |
*** gmmaha has joined #openstack-swift | 19:48 | |
-openstackstatus- NOTICE: The infrastructure team is taking Gerrit offline for maintenance beginning shortly after 20:00 UTC to upgrade the Zuul and static.openstack.org servers. We aim to have it back online around 22:00 UTC. | 19:54 | |
*** arch-nemesis has joined #openstack-swift | 19:55 | |
*** jidar has joined #openstack-swift | 19:56 | |
*** asettle has joined #openstack-swift | 19:58 | |
*** asettle has quit IRC | 19:58 | |
*** nadeem has joined #openstack-swift | 19:58 | |
*** ManojK has quit IRC | 20:06 | |
*** chsc has quit IRC | 20:06 | |
-openstackstatus- NOTICE: Gerrit is offline for maintenance until approximately 22:00 UTC | 20:07 | |
*** ChanServ changes topic to "Gerrit is offline for maintenance until approximately 22:00 UTC" | 20:07 | |
notmyname | so gerrit's offline for another 2 hours. hmm..ok | 20:21 |
*** siva_krish has quit IRC | 20:22 | |
torgomatic | did logs.openstack.org get taken down too? | 20:22 |
torgomatic | it's up, but all my requests for logs are 404ing | 20:22 |
notmyname | they said something oabout static.openstack.org | 20:22 |
notmyname | so maybe it links there? or is related? | 20:23 |
notmyname | bah! I'm running out of excuses to deal with the email requests that have piled up as crypto got done | 20:23 |
notmyname | I was going to look at some review, but I guess not now ;-) | 20:23 |
torgomatic | weren't you going to shampoo your cat this afternoon? | 20:23 |
timburke | clayg: oh! i remember why i did the @property now! i needed the reference to self.wsgi_input. it also has the nice property of properly AttributeError'ing if wsgi_input doesn't have read/readline | 20:27 |
*** dmorita has quit IRC | 20:32 | |
*** dmorita has joined #openstack-swift | 20:33 | |
*** ManojK has joined #openstack-swift | 20:41 | |
*** siva_krish has joined #openstack-swift | 20:44 | |
*** ManojK has quit IRC | 20:48 | |
*** dmorita has quit IRC | 20:55 | |
*** dmorita has joined #openstack-swift | 20:57 | |
*** asettle has joined #openstack-swift | 20:59 | |
*** raildo is now known as raildo-afk | 21:01 | |
*** vint_bra has quit IRC | 21:01 | |
*** dmorita has quit IRC | 21:09 | |
*** siva_krish has quit IRC | 21:15 | |
*** dmorita has joined #openstack-swift | 21:21 | |
*** arcimboldo has joined #openstack-swift | 21:23 | |
*** asettle has quit IRC | 21:24 | |
*** NM has quit IRC | 21:33 | |
*** catintheroof has quit IRC | 21:36 | |
*** siva_krish has joined #openstack-swift | 21:38 | |
*** arcimboldo has quit IRC | 21:41 | |
clayg | timburke: oh of couse, very well then | 21:43 |
openstackgerrit | Tim Burke proposed openstack/swift: Add encryption_root_secret_path option to keymaster https://review.openstack.org/336720 | 21:44 |
openstackgerrit | Tim Burke proposed openstack/swift: Make load_crypto_meta more py3-friendly https://review.openstack.org/336721 | 21:44 |
*** patchbot has quit IRC | 21:47 | |
*** patchbot` has joined #openstack-swift | 21:47 | |
*** siva_krish has quit IRC | 21:48 | |
*** furlongm has joined #openstack-swift | 21:48 | |
*** patchbot` is now known as patchbot | 21:48 | |
*** david-lyle has quit IRC | 21:51 | |
*** tristanC_ has joined #openstack-swift | 21:51 | |
*** furlongm_ has quit IRC | 21:53 | |
*** tristanC has quit IRC | 21:53 | |
*** jaakkos has joined #openstack-swift | 21:56 | |
*** jaakkos_ has quit IRC | 21:57 | |
*** wer has quit IRC | 22:13 | |
*** thumpba_ has quit IRC | 22:14 | |
*** dmorita has quit IRC | 22:27 | |
*** chsc has joined #openstack-swift | 22:27 | |
*** dmorita has joined #openstack-swift | 22:32 | |
*** dmorita has quit IRC | 22:33 | |
*** chsc has quit IRC | 22:35 | |
*** asettle has joined #openstack-swift | 22:37 | |
*** dmorita has joined #openstack-swift | 22:41 | |
*** NM has joined #openstack-swift | 22:42 | |
*** asettle has quit IRC | 22:42 | |
briancline | kinda late to the party, but \o/ congrats to all the crypto contributors! | 22:45 |
*** mvk has quit IRC | 22:53 | |
*** nadeem has quit IRC | 22:53 | |
*** tristanC_ is now known as tristanC | 22:58 | |
*** dmorita has quit IRC | 23:01 | |
notmyname | I'm taking off for the weekend. I'll be back online tuesday night or wednesday morning | 23:02 |
notmyname | have a good weekend, everyone | 23:02 |
briancline | you too | 23:03 |
*** ManojK has joined #openstack-swift | 23:09 | |
openstackgerrit | Clay Gerrard proposed openstack/swift: Minor cleanups in Putter https://review.openstack.org/336740 | 23:11 |
openstackgerrit | Clay Gerrard proposed openstack/swift: Add basic functests for user object metadata https://review.openstack.org/336741 | 23:12 |
*** kevinc has quit IRC | 23:12 | |
openstackgerrit | Tim Burke proposed openstack/swift: Fix gettext_ calls https://review.openstack.org/336743 | 23:13 |
*** dmorita has joined #openstack-swift | 23:13 | |
clayg | base64 decode will do *what* now!? | 23:14 |
*** dmorita has quit IRC | 23:18 | |
openstackgerrit | Samuel Merritt proposed openstack/swift: Add checksum to object extended attributes https://review.openstack.org/336323 | 23:30 |
openstackgerrit | Samuel Merritt proposed openstack/swift: DO NOT MERGE: probe the gate to figure out what kind of filesystems are in there https://review.openstack.org/336703 | 23:30 |
*** gyee has quit IRC | 23:33 | |
*** arch-nemesis has quit IRC | 23:38 | |
*** NM has quit IRC | 23:57 |
Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!