Monday, 2013-11-18

*** matsuhashi has joined #openstack-trove00:02
*** mmcdaris has quit IRC00:11
*** matsuhashi has quit IRC00:14
*** matsuhashi has joined #openstack-trove00:15
*** matsuhashi has quit IRC00:15
*** matsuhashi has joined #openstack-trove00:15
*** robertmyers has quit IRC00:18
*** matsuhashi has quit IRC00:29
*** matsuhashi has joined #openstack-trove00:29
*** matsuhashi has quit IRC00:34
*** matsuhashi has joined #openstack-trove01:11
*** nosnos has joined #openstack-trove01:24
*** matsuhashi has quit IRC01:24
*** matsuhashi has joined #openstack-trove01:25
*** haomaiwang has quit IRC01:28
*** matsuhas_ has joined #openstack-trove01:29
*** matsuhashi has quit IRC01:32
*** matsuhas_ has quit IRC01:37
*** matsuhashi has joined #openstack-trove01:38
*** matsuhas_ has joined #openstack-trove01:45
*** matsuhashi has quit IRC01:48
*** erkules_ has joined #openstack-trove02:19
*** erkules has quit IRC02:22
*** adrian_otto has joined #openstack-trove02:40
*** adrian_otto has quit IRC03:02
*** coolsvap has joined #openstack-trove03:42
*** krow has joined #openstack-trove03:43
*** matsuhas_ has quit IRC03:46
*** matsuhashi has joined #openstack-trove03:47
*** matsuhashi has quit IRC03:51
*** krow has quit IRC04:01
*** matsuhashi has joined #openstack-trove04:20
*** krow has joined #openstack-trove04:35
*** matsuhashi has quit IRC04:42
*** matsuhashi has joined #openstack-trove04:42
*** adrian_otto has joined #openstack-trove04:54
*** yogeshmehra has joined #openstack-trove05:05
*** adrian_otto has quit IRC05:09
*** yogeshmehra has quit IRC05:29
*** yogeshmehra has joined #openstack-trove05:30
*** krow has quit IRC05:35
*** nosnos_ has joined #openstack-trove05:36
*** nosnos has quit IRC05:36
*** krow has joined #openstack-trove05:41
*** yogeshmehra has quit IRC05:43
*** yogeshmehra has joined #openstack-trove05:57
*** yogeshmehra has quit IRC06:28
*** adrian_otto has joined #openstack-trove06:32
*** adrian_otto has quit IRC06:42
*** ashestakov has joined #openstack-trove06:42
*** krow1 has joined #openstack-trove06:47
*** krow1 has quit IRC06:48
*** yogeshmehra has joined #openstack-trove06:50
*** krow has quit IRC06:50
*** krow has joined #openstack-trove06:50
*** krow1 has joined #openstack-trove06:52
*** matsuhashi has quit IRC06:54
*** krow has quit IRC06:55
*** matsuhashi has joined #openstack-trove06:56
*** nosnos_ has quit IRC06:56
*** nosnos has joined #openstack-trove06:56
*** ashestakov has quit IRC06:58
*** krow1 has quit IRC07:05
*** krow has joined #openstack-trove07:10
*** krow1 has joined #openstack-trove07:16
*** krow has quit IRC07:19
*** krow has joined #openstack-trove07:31
*** krow1 has quit IRC07:34
*** yogeshmehra has quit IRC07:41
*** yogesh has joined #openstack-trove07:43
*** krow1 has joined #openstack-trove07:45
*** krow has quit IRC07:49
*** krow has joined #openstack-trove07:55
*** krow1 has quit IRC07:56
*** krow1 has joined #openstack-trove07:57
*** krow has quit IRC08:00
*** krow1 has quit IRC08:08
*** matsuhashi has quit IRC08:13
*** matsuhashi has joined #openstack-trove08:14
*** matsuhashi has quit IRC08:15
*** matsuhashi has joined #openstack-trove08:15
openstackgerritIllia Khudoshyn proposed a change to openstack/trove: Initial support for single instance MongoDB support  https://review.openstack.org/5059708:16
*** SnowDust has joined #openstack-trove08:37
openstackgerritIllia Khudoshyn proposed a change to openstack/trove: Fixes inconsistent usage of 'mount_point' in guestagent.  https://review.openstack.org/5688108:44
*** nosnos has quit IRC08:59
*** nosnos has joined #openstack-trove08:59
*** nosnos has quit IRC09:03
*** ashestakov has joined #openstack-trove09:19
*** yogesh has quit IRC09:48
*** matsuhashi has quit IRC09:55
*** matsuhashi has joined #openstack-trove09:56
*** matsuhashi has quit IRC10:01
*** matsuhashi has joined #openstack-trove10:05
*** ikhudoshyn has quit IRC10:05
*** ikhudoshyn has joined #openstack-trove10:07
openstackgerritDenis M. proposed a change to openstack/trove: Security groups workflow update  https://review.openstack.org/5094410:44
*** matsuhashi has quit IRC10:47
*** matsuhashi has joined #openstack-trove10:47
*** matsuhashi has quit IRC10:52
*** matsuhashi has joined #openstack-trove10:54
*** erkules_ is now known as erkules11:08
*** matsuhashi has quit IRC11:13
*** matsuhashi has joined #openstack-trove11:14
*** matsuhashi has quit IRC11:19
*** SushilKM has joined #openstack-trove11:26
*** matsuhashi has joined #openstack-trove11:32
*** coolsvap has quit IRC12:09
*** ashestakov has quit IRC12:11
*** ashestakov has joined #openstack-trove12:37
*** coolsvap has joined #openstack-trove12:55
*** matsuhashi has quit IRC13:05
*** matsuhashi has joined #openstack-trove13:05
*** haomaiwang has joined #openstack-trove13:11
*** pdmars has joined #openstack-trove13:14
openstackgerritDenis M. proposed a change to openstack/python-troveclient: Adding ConnectionError class  https://review.openstack.org/5693013:27
openstackgerritnilakhya proposed a change to openstack/trove: Externalization of heat template  https://review.openstack.org/5349913:29
*** SnowDust has quit IRC13:33
*** yogesh has joined #openstack-trove13:48
*** yogesh has quit IRC13:53
*** matsuhashi has quit IRC13:56
*** matsuhashi has joined #openstack-trove13:57
*** matsuhas_ has joined #openstack-trove13:58
*** matsuhashi has quit IRC13:59
*** SushilKM has quit IRC14:00
*** ashestakov has quit IRC14:01
*** ashestakov has joined #openstack-trove14:01
*** cweid has joined #openstack-trove14:05
*** ashestakov has quit IRC14:05
*** ashestakov has joined #openstack-trove14:06
*** kevinconway has joined #openstack-trove14:10
*** ashestakov_ has joined #openstack-trove14:10
*** ashestakov has quit IRC14:10
*** jcru has joined #openstack-trove14:24
*** ashestakov has joined #openstack-trove14:27
*** ashestakov_ has quit IRC14:29
*** Barker has joined #openstack-trove14:33
*** amytron has joined #openstack-trove14:38
*** robertmyers has joined #openstack-trove14:42
*** ashestakov has quit IRC14:48
*** ashestakov has joined #openstack-trove14:48
*** matsuhas_ has quit IRC14:57
*** matsuhashi has joined #openstack-trove14:57
*** matsuhashi has quit IRC15:04
*** matsuhashi has joined #openstack-trove15:04
*** matsuhashi has quit IRC15:08
*** SushilKM has joined #openstack-trove15:10
*** SushilKM has quit IRC15:14
*** tanisdl has joined #openstack-trove15:25
*** SushilKM has joined #openstack-trove15:26
*** grapex_ has joined #openstack-trove15:31
*** SushilKM__ has joined #openstack-trove15:32
*** SushilKM has quit IRC15:34
*** datsun180b has joined #openstack-trove15:36
datsun180bvipul SlickNik and hub_cap https://review.openstack.org/#/c/45116/ Knock knock! Who's there? CONDUCTOR, THAT'S WHO. CHOO CHOO15:42
redthruxcan I get some core member eyes? https://review.openstack.org/#/c/55035/  Thanks grapex_, vipul, SlickNik, hub_cap15:47
redthruxEt. al..15:47
grapex_redthrux: +2'd, looks good15:57
redthruxthanks grapex_15:57
grapex_denis_makogon: Question about this pull request: https://review.openstack.org/#/c/5490015:57
openstackgerritEd Cranford proposed a change to openstack/trove: Extract suffix from req URL to avoid escaping dots  https://review.openstack.org/5696615:57
*** SushilKM__ has quit IRC15:58
grapex_Has it really been decided by everyone (hub_cap, SlickNik, vipul) that the syntax "except:" has to be replaced with "except Exception:"?15:58
datsun180bthat seems overly verbose15:58
grapex_I don't get it- the first form means "except anything", so why not use it? I don't see where the fault is.15:58
kevinconwaygrapex_: it's a pyflakes style thing15:58
grapex_Sounds pretty flakey to me15:59
kevinconwaypylint also says except Exception: is too vague15:59
datsun180bmaybe it's halfway to except (BlarghEx, WhargEx, BlamEx) as e15:59
grapex_kevinconway: I totally get why you shouldn't use "Exception" if there's a more specific type15:59
robertmyersgrapex_: talk to the people who setup openstack hacking15:59
grapex_but this is about prefering "except Excpetion:" over "except:". I find the later better yet it appears it violates some new PEP8 rule.15:59
datsun180bbut sometimes you just don't want to have to give your exception a nametag and put out a bowl of food on the porch for it15:59
grapex_robertmyers: I already have the letter written in my head:16:00
datsun180bi'm with you grapex_ anyway, i know what except: means16:00
grapex_robertmyers: Dearest OpenStack Hacking, You are wrong. Sincerely Tim16:00
robertmyersthat'll do it16:00
grapex_Oh well, this is bikeshedding so it doesn't matter. Still, it strikes me as dumb16:00
grapex_Have they talked to Guido about removing that ability from the language?16:01
grapex_robertmyers: I'm a modern day Kissinger.16:01
kevinconwaygrapex_: that would be backwards incompatible. python never does that.16:01
grapex_kevinconway: What about in Python 4?16:01
robertmyersgrapex_: remove try/except?16:01
kevinconwayrobertmyers: +116:01
grapex_robertmyers: Remove "except:" with no type given.16:02
grapex_Since apparently it isn't done in decent society.16:02
robertmyerslies, just in openstack16:02
robertmyersplenty of people use except:16:02
grapex_Really though, how long is it until someone starts pushing an OpenStack specific version of Python we all have to use because everyone (read: 4 people on one important project) decided its the standard.16:03
grapex_OpenStack Python: Now missing except, as well as some other weird things because it's actually some influential persons's pet project.16:03
robertmyersgrapex_: I think you are taking the whole codeing standards a bit too far16:04
grapex_I kid, I kid. Ok, I'll +2 that review. Thanks everyone.16:04
robertmyersit is just to be consistent16:04
grapex_robertmyers: Eh, my joke is referencing a few other things besides the coding standards. :)16:04
datsun180bhere i was about to joke about implementing our own try and except to sidestep pyflakes16:05
denis_makogongrapex_, hi, i was out of char a while16:06
denis_makogongrapex_, what kind of question?16:06
grapex_denis_makogon: No worries, question solved. +2'd16:06
denis_makogongrapex_, oh, ok, thanks16:06
ikhudoshyngrapex_: Could u look at https://review.openstack.org/#/c/56881/ please. It's really tiny16:09
*** jmontemayor has joined #openstack-trove16:13
ikhudoshynrobertmyers: Hi, please see my answer @ https://review.openstack.org/#/c/50597/16:15
datsun180bwhat's the point of specifying mount_point in the function args then?16:15
denis_makogongrapex_, https://review.openstack.org/#/c/56930/ - could you please review this bug ?16:15
datsun180band that device.mount line is called regardless of the "if path.exists(conf.mount_point)", i bet that could be pulled right a tab and make more sense16:16
ikhudoshyndatsun180b: agree. there is a BP for that, https://blueprints.launchpad.net/trove/+spec/remove-mount-point-from-parameters-for-instance-prepare16:16
datsun180bokay. belay my second point, i think i'm getting a better scope of this16:16
ikhudoshynbut that's a bigger task, needs to be discussed 'coz it touches more things16:17
ikhudoshynthe review I presented is just a bug fix16:17
datsun180band you've also already mentioned it in the comment. sorry, haven't had my coffee yet16:17
ikhudoshyndatsun180b: np) thanks for keeping an eye on it16:18
openstackgerritDenis M. proposed a change to openstack/trove: Initial support for single instance Cassandra Database  https://review.openstack.org/5188416:18
datsun180bhaving had recent firsthand experience refactoring guestagent methods, good luck and have fun16:18
*** plodronio has joined #openstack-trove16:19
ikhudoshynthanks, there is more I found to do, but a lil'bit later - there are some other reviews in line, not only my16:19
robertmyersikhudoshyn: changed my review16:21
ikhudoshynrobertmyers: tnx16:22
denis_makogonrobertmyers, i removed size check in tests (cassandra review), and i totally agree with ikhudoshyn16:22
robertmyersdenis_makogon: I thought it was a real call and not a mock16:22
robertmyersI think we should have a 'real' test somewhere. But I'm fine with it like that16:23
grapex_ikhudoshyn: Hi, I reviewed https://review.openstack.org/#/c/56881/ with a -2, sorry.16:23
denis_makogonrobertmyers, no matter, size check is not valid testcase16:23
grapex_I am concerned we need to have a discussion about it. You see, if you switch it to only use the config files, then you need to eliminate the argument that comes in via the RPC call. However, I'm not sure we should use the config files instead of the RPC call argument.16:24
ikhudoshyngrapex_: here is the bp,  https://blueprints.launchpad.net/trove/+spec/remove-mount-point-from-parameters-for-instance-prepare, there is my reasoning as for proper source16:25
datsun180bso should the approach be to take the arg over the config if it's present?16:25
grapex_ikhudoshyn: Is everyone ok with removing the mount_point parameter from prepare?16:25
ikhudoshyngrapex_: Would be great if u find some time to take a look,16:25
robertmyersdenis_makogon: agreed, we should just check that it returns the correct thing when we call it, rather than testing the python object it is stored in16:25
grapex_ikhuoshyn: Honestly, I think vipul and SlickNik may have more motivation to allow for vanilla images than I do.16:26
denis_makogongrapex_,  https://blueprints.launchpad.net/trove/+spec/template-config-per-datastore16:26
grapex_ikhudoshyn: However, even if we do, my -2 still stands as that argument needs to be totally removed from the code- its still in the function, and still in guestagent/api.16:26
datsun180bhow about mount_point = mount_point if mount_point is not None else CONF.mount_point ?16:26
grapex_datsun180b: That wouldn't work b/c their goal is to remove it from the RPC call.16:27
robertmyershow about point_mount?16:27
kevinconwaydatsun180b: what is this? javascript?16:27
ikhudoshyngrapex_: I can do that if everybody is fine16:27
ikhudoshyngot to go, be back in hour or two16:28
datsun180bwell straight up m_p or conf.m_p wouldn't work in case m_p is deliberately '' or something16:29
*** radez_g0n3 is now known as radez16:29
*** rnirmal has joined #openstack-trove16:31
denis_makogongrapex_, https://review.openstack.org/#/c/52905/ - could you also take a look at this one ?16:32
*** yidclare has joined #openstack-trove16:35
openstackgerritAndrey Shestakov proposed a change to openstack/trove-integration: Add support of datastore types  https://review.openstack.org/5664716:39
*** ashestakov has quit IRC16:48
*** adrian_otto has joined #openstack-trove16:57
robertmyersgrapex_: and everyone else can you look at this annoying bug I wish to fix: https://review.openstack.org/#/c/54149/17:01
robertmyersthere is no circular reference error :)17:01
*** jmontemayor has quit IRC17:01
*** Barker has quit IRC17:01
datsun180brobertmyers: is this the cause of the random "exceeded recursion depth" messages in otherwise healthy-looking test logs that still don't actually cause failures17:03
robertmyershmm, it could be17:04
robertmyersbut that could be another annoying bug :)17:04
grapex_robertmyers: There's nothing that returns a webob.Response instead of a Fault is there?17:04
*** ashestakov has joined #openstack-trove17:04
robertmyersgrapex_: no, not in our wsgi17:04
robertmyerswe specifically catch everything and return a Fault17:05
grapex_robertmyers: Alrighto17:05
robertmyersgrapex_: see line 315 to 34317:06
robertmyersI think pecan will fix all these issues ;)17:08
*** jmontemayor has joined #openstack-trove17:08
datsun180brobertmyers: not you too!17:09
robertmyersdatsun180b: not I, I think we should be using tornado17:09
robertmyersf eventlet and webob17:10
*** edmund has joined #openstack-trove17:10
datsun180bwe should just use kevinconway's bash worker pool and just route the urls via one monolithic awk script17:11
kevinconwaydatsun180b: +117:11
kevinconwaydatsun180b: the bash web server is still in the works17:11
kevinconwaybut we should go ahead and switch to it now17:11
robertmyersdatsun180b: kevinconway: just use ssh17:11
robertmyersdone17:11
kevinconwayrobertmyers: that doesn't scale17:11
robertmyersparallel ssh17:12
robertmyersdone17:12
kevinconwaythe bash workers feed off rabbit queues17:12
kevinconwayqueues scale17:12
*** Barker has joined #openstack-trove17:14
*** ashestakov_ has joined #openstack-trove17:15
*** ashestakov has quit IRC17:15
*** SushilKM__ has joined #openstack-trove17:18
*** adrian_otto has quit IRC17:21
*** ashestakov_ has quit IRC17:46
*** ashestakov has joined #openstack-trove17:47
*** harlowja has joined #openstack-trove17:59
*** SushilKM__ has quit IRC18:02
*** SushilKM__ has joined #openstack-trove18:02
*** isviridov_ has joined #openstack-trove18:09
*** ikhudoshyn_ has joined #openstack-trove18:17
*** adrian_otto has joined #openstack-trove18:19
*** yogesh has joined #openstack-trove18:20
openstackgerritAndrey Shestakov proposed a change to openstack/trove: Add support of datastore types  https://review.openstack.org/4793418:22
*** cweid has quit IRC18:22
*** amcrn has joined #openstack-trove18:24
*** coolsvap has quit IRC18:28
ikhudoshyn_grapex_: ping? as for mount_point, do we really need to run it thru ML, mb just wait other stakeholders here? actually, in https://blueprints.launchpad.net/trove/+spec/remove-mount-point-from-parameters-for-instance-prepare I wrote my thoughts on it. In order to use m_p as method parameter we should provide it in more places as well. On the other hand, CONF looks to be a reliable source of the info. Also pls take into account18:29
ikhudoshyn_ the following considerations https://blueprints.launchpad.net/trove/+spec/template-config-per-datastore18:29
*** grapex_ has quit IRC18:30
ashestakovamcrn: https://review.openstack.org/#/c/47934/11/trove/guestagent/datastore/mysql/service.py 564L18:38
ashestakovi not sure we need to backup that configs at all, but we do it for safe18:38
ashestakovand what we should rollback it?18:39
ashestakovthat is default configs, if our prepare step failed, the nothing will works anyway18:39
amcrnthe idea is that if something goes wrong (i.e. the pending package can't be found on the repo, or network connectivity to the repo is sketchy)18:41
amcrnthe old configuration file(s) are still available on disk18:41
amcrnand the "old" package of the service-type can be restarted18:42
amcrnconsidering the guest-upgrade code isn't in the public repo, i can't be sure, but given the way the code is structured, i imagine this same method is called in the scenario of an upgrade18:43
ashestakovwhy we need old configs?18:43
amcrnex: you have mysql-5.5 installed, an upgrade is issued to bump to 5.6, but 5.6 goes missing on the repo18:43
ashestakovwe have no upgrades18:44
ashestakovupgrades is next step18:44
amcrnif by "we" you mean you and I, yes.18:44
amcrnrackspace has their own18:44
amcrn(at least that's what I was told)18:44
amcrnso if you can confirm that no one's upgrade workflow is jeopardized by this patch-set, i'm a-ok18:45
ashestakovif prepare failed, why rx neex to restart some service?18:45
ashestakovid didnt saw any disagree with it, except your one18:45
amcrnwho says they aren't calling install_if_needed(self, packages)?18:45
amcrnoutside of prepare?18:45
amcrni'm just being cautious, if you get co-sign from rackspace core folks, go for it.18:46
amcrnbecause outside of a upgrade scenario, this isn't a concern (as you rightly point out)18:46
ashestakovif trove takes care of pakcage install, the nin should update configs too18:46
isviridov_amcrn, do you think the config keeping strategy should be discussed in ML?18:47
ashestakovon upgrade 55 - 56, configs can be incompatible18:47
ashestakovso trove should remove old configs, and setup new18:47
isviridov_That review becomes bigger and bigger. Initially agreed solution becomes everything_done.18:49
* amcrn sighs18:49
ikhudoshyn_As I can see, config backup only has a little use if any at all (if we talk about upgrades) since if package upgrade fails it can corrupt data too. So we'd rather have a backup for the whole instance, not only config18:50
amcrnthere's a difference between a one-in-a-million corruption (considering the package maintainer should be responsible for that) vs. checking for the existence of a package on a repository and whether the repository is reachable18:51
amcrnbefore rm -rf'ing files18:52
ikhudoshyn_restoring configs from backup looks like a very specific case that requires sort of black magic18:52
amcrnlet me re-word my comment into something easily digestable: the pending package should be asserted to exist on the repo, and downloaded w/ file-size > 0 before rm rf'ing existing installations18:53
amcrni don't think that's an insane premise18:53
ashestakovfor example, we installed new versions of mysql libs, but mysql-server failed, old configs may not work, this should be fixed manually18:53
ikhudoshyn_amcrn: agree on that, but that's still a possibility. So its a good idea to have a backup anyway, before upgrading an instance with live data18:53
amcrnwhat you're suggesting is the equivalent of saying "i have home owner's insurance, why bother locking my doors?"18:54
ikhudoshyn_amcrn: that looks like a separate task even if we want to automate it18:54
amcrnwe don't have an upgrade mechanism, so i'm not going to defend data integrity on behalf of other's, consider my -1 for that portion removed18:55
ikhudoshyn_amcrn: not exactly, I just say that we should be very careful when finding out, whether it is a good choice to restore confs and go on18:55
ikhudoshyn_amcrn: thanks for that, I do believe we still need to consider backing up the whole instance before an upgrade, sometimes18:56
amcrnashestakov: the remaining issue then, is the defaulting then, correct?18:56
ashestakovamcrn: defaultingshould be discussed with grapex18:57
isviridov_Action item: define safe upgrade flow in details18:57
ashestakovamcrn: lets discuss fileds deactivated and deactivated_at for versions db table18:57
isviridov_amcrn, actually there are existing installation and tools above current API. That default behaviour is needed for easier integration18:58
*** rnirmal has quit IRC18:58
ashestakovamcrn: for example, for instances in nova, deleted_at is ok, coz instance is gone, but our version can be activated again18:59
amcrnashestakov: all i want is a date column of some kind, either for activation or deactivation19:00
*** yidclare has quit IRC19:00
amcrnbecause as of now, answering the question "when did this service-type get last activated/deactivated?" is impossible to answer19:00
*** vipul is now known as vipul-away19:01
amcrnso whether you do "activated_at", "last_modified", or some variation thereof, i'm indifferent.19:01
*** grapex has joined #openstack-trove19:02
amcrnusually it's much more important/interesting to understand when something was deactivated vs. activated, hence the suggestion for the reversal, but if you do last_modified, that's decent enough i suppose19:02
ashestakovamcrn: is any same functionality in trove?19:02
ashestakovevents log is complex thing, its another task19:03
amcrnif you're asking whether it's an established pattern, then yes it is19:03
amcrnno one said events log, keep it as a single updateable row19:03
isviridov_grapex, will you join us? What do you think about last_modified field in db to track activation/deactivation of specific version?19:04
ashestakovamcrn: will you happy if i add field "last_modified" to each new table?19:04
amcrnlol19:04
juiceah while you are there can you add last modified by and created by19:05
juiceand deleted_by19:05
isviridov_wow guys it is auditing functionality already19:05
juiceI would like to track the user that is making changes to the instances19:05
juiceisviridov_: how so?19:06
amcrnjuice: i can't tell if you're being sarcastic or serious considering how this conversation has been going19:06
*** Ikhudoshyn__ has joined #openstack-trove19:06
juicei just happened to glance at the irc but I was serious.  sounds like I missed something "important" :)19:06
amcrnwell, that at least makes me feel like I didn't swallow a bottle of crazy pills this morning19:07
amcrnashestakov: https://bugs.launchpad.net/trove/+bug/122321719:08
amcrnthis is a known problem, hence the comment in the review19:08
isviridov_juice, not sure if it should be added by any adhoc idea. If we need tracking events in db let us do it as separate functionality with event types and defined format. In other way we will have mess in database.19:08
juiceI don't think a separate events log is necessary..at least at this time19:09
amcrnwe're all agreed there19:09
juicehaving a core set of "audit fields"  which is when/who across created, modified, deleted will do this just fine19:09
juicecreated_at, created_by, modified_at, modified_by, deleted_at, deleted_by.19:10
*** vipul-away is now known as vipul19:10
isviridov_Another review? Connected with that bug?19:10
amcrnno19:10
*** grapex has quit IRC19:10
amcrnit's a column or two, nothing earth shattering19:10
juiceI created a blue print for this but we have been spending so much time in operations support there hasn't been bandwidth to implement it19:10
juiceisviridov_ you can either delete the existing one or link to it19:11
juicehttps://blueprints.launchpad.net/trove/+spec/instance-audit-fields19:11
isviridov_amcrn, we are going to implement several BP and bugs in one review. Do we need git at all?19:11
amcrnplease stop with those comments, they add nothing to the conversation19:12
juiceamcrn: are you talking to me?19:12
amcrnno, isviridov_19:12
amcrn"Do we need git at all?"19:12
amcrnmy position remains that a table should have some sort of timestamp column(s) to indicate state changes19:13
amcrnand considering that nearly all tables already follow this pattern, https://review.openstack.org/#/c/47934/11/trove/db/sqlalchemy/migrate_repo/versions/016_add_datastore_type.py should as well19:13
juicethis should be best wedged into the base class of our dbmodels19:13
juiceI am with amcrn that this should just be the standard and consistent data across all first class data object19:14
amcrnjuice: in lieu of consistency, do you believe we should ship the table with nothing until a standard is agreed upon? or do you think we should take a stab at it?19:15
amcrni think that's where the contention is19:15
amcrnwhere "nothing" == no date/timestamp columns,19:15
juicewe should just do it.  it is practical common sense19:16
isviridov_amcrn, i agree that it is needed, juice also need it. But let us do it in another review in order to keep it reviewable.19:16
juiceand it might take another release before this gets put into any core project that we would leverage any value from19:16
juicein the meantime we are blind without "critical" production data19:16
juiceI think it is fair to come back and add this (sorry amcrn) since we are just talking about this now19:17
juiceunless it was part of the original blue print19:18
amcrnno official database table designs were part of the blueprint, which is a large part of the problem19:18
*** grapex has joined #openstack-trove19:18
juiceI am speculating that this will be a cross-cutting implementation/change to most of the data interactions in the code base and adding the newer tables into that doesn't appear to be a problem.19:19
*** grapex has quit IRC19:19
juiceyes it is a bit more tech. debt but if we follow-up with a patch focused just on this issue, it might be cleaner in the end19:19
*** grapex has joined #openstack-trove19:19
ikhudoshyn_just my 5 cent, ashestakov already had to struggle to make the review less in size, so may be it worth discussing thing that are redundant or simply wrong. It should not be an issue to add missed ones later19:20
*** Ikhudoshyn__ has quit IRC19:21
ikhudoshyn_15 hundred LoC is quite a number19:21
juiceamcrn: as for reviews/blueprints going forward we might want to have a little copy and paste template that at least provides a check list of artifacts impacted by the change.19:21
amcrni'll relent, but i'd like to state how it's not productive to green-light blueprints that aren't fully baked (in my opinion), allow folks to push patch-sets, and then guilt trip reviewers that they're inhibiting progress. if more due diligence was done upfront, then this churn would have never happened.19:22
juiceDoes this affect configuration, if so what? Does this affect the database? API?19:22
amcrnjuice: i think that's a great step forward19:22
juiceWhere would be a good place to post this?  I think the blue print template itself is locked down though it would be awesome if we could customize19:23
*** ashestakov has quit IRC19:26
juiceThe content of a blue print was never really discussed and I don't want to create a huge bureaucratic process but I think at least questions or prompts will help engineers know what is critical in including in their proposal.19:26
amcrnprobably would have to be a wiki (like https://wiki.openstack.org/wiki/Trove)19:27
*** demorris has joined #openstack-trove19:28
amcrnit's definitely not about adding red tape, but about documenting established patterns and guidelines to avoid churn on both ends (author and reviewer)19:28
grapexisviridov_ amcrn: Sorry guys, my connection crapped out while I was at lunch so I missed the start of this conversation.19:28
grapexamcrn: I feel like I agree with you, but I don't think I could ever know whether I'd agree with a feature based soley on the blueprint. Often I think the blueprint sounds ok and then find myself not liking the pull request.19:29
juiceThat works - I'll draft up something in a gist from which we can form a template for our blueprints going forward19:29
amcrnfair enough, but adding timestamp columns to a table is one of those things that can be set in stone for the 99% scenario.19:29
amcrngrapex: the one thing that ashestakov and myself were needing you for was a clarification on why there's a need for default_datastore19:30
amcrnthe reason being is that the question came up: should the user be able to provide just a datastore-version (if default_datastore is set to a non-None/empty-string value)19:31
grapexamcrn: Users of the MySQL API would appreciate it- it would allow for backwards compatability instead of a breaking change to the API19:32
vipullate to the party.. but the base model already assumes you have those, and handles everything for you https://github.com/openstack/trove/blob/master/trove/db/models.py#L6319:32
*** ashestakov has joined #openstack-trove19:32
juiceso looking at part of the inconsistency in naming is that "deleted" is a boolean where "updated" is a timestamp19:33
ikhudoshyn_grapex:, vipul: i'd like to get back to mount_point if u don't mind19:33
juiceand thus the inconsistent "deleted_at"19:33
vipuljuice: yea, that's going to be a painful migration -- although one we should do19:34
grapexikhudoshyn_: Sure- if everyone is cool with taking it out of the RPC that's fine with me.19:34
vipulikhudoshyn_: which review is this19:34
grapexikhudoshyn_: However, you need to actually remove that argument from the RPC calls everywhere they're referenced.19:35
amcrngrapex: makes sense. so let's assume for a second that default_datastore is "mysql". if the user provides *just* the datastore-version in the request payload as the uuid/pk, should the underlying datastore-type of said uuid be validated against the default_datastore to make sure there weren't any misconceptions?19:35
ikhudoshyn_grapex: sure19:35
ikhudoshyn_vipul: just a sec19:35
ikhudoshyn_vipul: https://blueprints.launchpad.net/trove/+spec/remove-mount-point-from-parameters-for-instance-prepare19:35
amcrngrapex: or should the default_datastore be completely ignored in the case of a datastore-version uuid, but consulted in the case of a datastore-version name?19:36
vipulamcrn: I do think it's a bit odd to just specify a version19:36
amcrnvipul: i'm not a fan of it myself19:37
*** yidclare has joined #openstack-trove19:37
vipulhaving a default in case nothing is provided is fine, and suffices for backwards compatibility19:37
vipulbut I think we should require that a name / version both be provided.. or just the name, and the default version gets picked19:38
grapexamcrn: I get it... I think the default datastore should be ignored. It should use the datastore associated with the datastore-version.19:38
grapexvipul: I still don't get why a version ID alone is insufficient.19:38
amcrngrapex: it's not insufficient, it's just mildly confusing in that the validation permutations increase19:39
grapexI mean I get why people should be allowed to specify the type- but if they're passing in an ugly GUID for the version, they are undoubtably certain of the type.19:39
vipulit definitely is, accoridng to how we model it.. but I think it's not an intuitive experience19:39
grapexamcrn: Just add a few integration tests and we'll be fine forever.19:39
* datsun180b Statler & Waldorf laughs19:40
amcrnso if a user sends "1.2.2", that's a name and it should be looked up in conjunction with default_datastore. but if it's a uuid, then default_datastore should be ignored.19:40
amcrnand if a user just sends in nothing, it uses default_datastore (plus it's set default version, if it has one)19:40
amcrnand if a user sends in a datastore-name, then the version is optional (assuming the default version is set)19:41
grapexamcrn: I like it19:41
grapexYeah, I meant the type would only be looked up if it was the UUID19:41
*** jcooley_ has joined #openstack-trove19:41
vipul-1 on allowing sending both a name or uuid19:41
vipulif we are saying that just a version suffices.. then it should always be uuid19:41
grapexHonestly, this *IS* a bit confusing, in that there will be some if statements and stuff, but honestly it won't take that long and I think people will appreciate it.19:41
amcrngrapex: it works, i just think it's a bit confusing to explain19:42
amcrnone more scenario then, what if the user sends in a datastore-version uuid, but also sends in a datastore-type, and the datastore-type definitely does *not* match the datastore-version-uuid's underlying type19:42
amcrnshould the datastore-type be silently ignored, or should it be validated19:42
ikhudoshyn_+1 for validating, no silencing19:43
grapexvipul: I won't cry if we only allow the version ID UUID.19:43
amcrn(by the way, i have opinions on which way it should go, i'm just facilitating the discussion)19:43
vipuldatastore-type is either meaningful or not -- if we can boot things with just that, i say we always make it meaningful and validate19:44
grapexvipul: Agreed... I'm kind of getting confused on what the points of contention are. :)19:44
amcrnalright, we all agree then that with:19:45
grapexvipul: Though I know you want *only* version UUIDs, and not version names. I think that's OK.19:45
amcrn[11:42:52] <amcrn> one more scenario then, what if the user sends in a datastore-version uuid, but also sends in a datastore-type, and the datastore-type definitely does *not* match the datastore-version-uuid's underlying type19:45
amcrnthat it should be validated?19:45
vipuli want to reduce the permutations19:45
ashestakovwho would uuid and names for datastores?19:45
grapexAs long as we can also only specify a datastroe-type as I think that's another compelling usecase.19:45
grapexamcrn: Here's an idea- what if we only allow them to send the datastore_version or datastore_type, but never both?19:46
juicethat's possible to enforce at least at the schema level :)19:46
* amcrn ponders19:46
ashestakovi recall, was usecase when user can specify name same as uuid19:46
amcrnwell, that does remove the ability of the user to use human-friendly names for both fields19:47
amcrndatastore=mysql, version=5.519:47
vipulit's more intiutive to allow version_name to be provided.. but not if we say version alone is enough19:47
vipulwhat about making them both required? it removes all ambiguity -- and allows the user to use freindly names or uuid whatever they want19:48
grapexvipul: Not really. It's like with people- assuming Social Security numbers were unique, you could specify a person by their full name, or by their SSN19:48
ashestakovvipul: if user wants specify only version, the he know what he do19:48
vipulashestakov: sure -- what if we don't allow version to be a standalone thing though..19:49
amcrnnot providing either is reasonable, and only providing the datastore-type is reasonable, but all other scenarios should require providing both (imo)19:49
ashestakovvipul: get default type, and validate if version belongs to that type19:50
amcrnthe only negative of the approach I mentioned above is that it seems a bit silly that the type has to be provided if the version is a uuid19:51
vipulYea, let's not expose the ID in the API.. it's a friendly name only to the user19:51
vipulso you may have 5.5 under mysql as well as something else19:51
ikhudoshyn_vipul: I like it, just sticking to names, no UUIDs19:52
amcrnvipul: how does one describe a version in the api without a uuid? by the name/label?19:52
vipulif nothing is provided.. then we use default datastore type and default version19:52
vipulit already have a name like '5.5'19:52
amcrnso GET /datastore/1-2-3-4/versions/5.5, correct?19:53
vipulyes19:53
vipulit alone is only informational.. but you always have to have a datastore_type to use it19:53
amcrni'm not against the idea, though i've never seen a label in openstack on restful apis (it's very uuid-centric)19:53
hub_capdatsun180b: another place with dots in the urls :)19:53
datsun180blucky for you it's a common function19:53
vipulsure, but there is no point in this having a UUID since you can't really have dupes19:54
datsun180bhub_cap: by the way, take a gander at the review this morning, the robots all like it19:54
hub_caplink me datsun180b19:54
amcrnone could argue that datastore types can't have dupes either, so why not use a label vs. uuid there as well?19:54
datsun180boh and of course please get some core eyeballs on conductor https://review.openstack.org/#/c/45116/19:55
hub_cap++ amcrn19:55
datsun180bbut the dots review is https://review.openstack.org/#/c/56966/19:55
vipulyea i'm ok with label there, I thought that's what we were going to do..19:55
vipuldatstore_type: mysql19:55
datsun180bi even made you a bug19:55
amcrni think that's a nice approach, label for both, and the omission of both is fine, the datastore-type by itself is fine, but all other scenarios require both labels19:56
hub_capdatsun180b: can i have a user foo.xml ?19:56
vipulamcrn: +119:56
datsun180bhub_cap: of course19:56
amcrnand uuid's go away (at least for the end user)19:56
vipulI think that's a much more freindlier user experience19:56
datsun180bsame way they do it now19:56
hub_capdatsun180b: ok so i can issue a delete on /users/foo.xml and it will delete foo.xml right?19:58
hub_capdatsun180b: can u just pass me that gist again19:58
amcrnagreed, can we get a consensus from everyone else?19:58
datsun180bno, that doesn't happen now either though19:58
datsun180bif you want to delete foo.xml you have to delete foo%252exml19:58
datsun180bthat's the problem19:58
hub_caphow do u delete foo.xml w/ your patch?19:58
datsun180bsame as you do now, foo%252exml19:59
hub_capah icic19:59
datsun180ber 252e19:59
hub_capand that will actually delete user foo right?19:59
datsun180bdelete .../users/foo.xml yes19:59
datsun180bhttps://gist.github.com/ed-/f7d1ff499fcddf721c8a examples from last week20:00
ashestakovvipul: grapex amcrn any consensus?20:00
vipul+1 i am cool with labels only20:01
amcrn+1 for labels for users (still have a uuid in the backing db however as the pk)20:01
ashestakovi missed, what is labels?20:01
amcrnlabels == names (not uuids)20:02
ikhudoshyn_no uuids for types and versions. names only allowed20:02
ashestakovah, but this is already works20:02
amcrn[11:56:30] <amcrn> i think that's a nice approach, label for both, and the omission of both is fine, the datastore-type by itself is fine, but all other scenarios require both labels20:02
hub_capso now we have 1 new error condition right?20:03
amcrnso the changes on your end would remove the ability to use uuid, and remove the ability to just send the version20:03
hub_capambiguous version name20:03
vipulashestakov: I think we say only labels.. and that's all we expose in the API20:03
ashestakovamcrn: so, if only version specified, we should throw error and not pick default?20:03
vipulhub_cap: version name w/o type is a validation error20:03
amcrnashestakov: pending grapex's blessing, yes20:03
grapexamcrn: Well one thing you said is you've not seen anything in OpenStack yet that uses anything but UUIDs in REST URLs, right?20:04
*** SushilKM__ has quit IRC20:04
amcrnin my limited exposure, yes, i'm relying the the experience of others to qualify that20:05
*** plodronio_ has joined #openstack-trove20:05
*** jcooley_ has quit IRC20:05
*** plodronio has quit IRC20:06
*** plodronio_ is now known as plodronio20:06
isviridov_As for me any exposed entity should have UUID or it is not entity but some predefined parameter.20:06
hub_capid prefer to mandate the type if you pass version, it would also make implementation easier and reduce the possiblity for ambiguous version20:06
hub_capbut we should argue these abotu the _next_ review, should we not? this is not deployed so we can fix the api in a few steps20:06
vipulv2/​{tenant_id}​/servers/​{server_id}​/metadata/​{key}​20:07
grapexamcrn: one moment, brb20:07
vipulnova has some precedence for named resources20:07
hub_capso we should try to rememeber that passing uuid's makes for static urls, and a name could change in the db20:08
grapexamcrn: Ok, so no one is considering using "labels" in the urls, are they?20:08
hub_capand 95% of the time, a user wont be typing those in, some automation layer would be doing that20:08
grapexI think the URLs should be strictly UUIDs20:08
*** SushilKM__ has joined #openstack-trove20:08
hub_cap++20:08
grapexI was referring to the instance create call- that should allow, in my opinion, labels or UUIDs in a few different ways.20:09
grapexI don't think those permeatations would be hard to test for if it was just in the instance create call20:09
hub_capsure that makes sense20:10
hub_capok so i totally came in to this convo way late20:10
hub_capwhat are we trying to solve?20:10
grapexhub_cap: Data store types.20:10
amcrnif we're going to keep both uuid + name, the problem lies in how the validation works20:10
hub_capgrapex: im good at that high level ;)20:10
grapexamcrn: I'm just suggesting it for the create call20:10
amcrngrapex: i'll concede everything if as long as i provide type + version, that both should be validated against each other20:11
grapexamcrn: Maybe I'm missing something- why would validation be so difficult? Worst case we can't use JSON schema and have to hand roll some checks.20:11
grapexamcrn: seconded20:11
amcrnso in the scenario of a datastore-type is provided, and a datastore-version uuid is provided, if the datastore-version uuid's underlying type does not match the datastore-type provided, it will be rejected/failed20:12
hub_capok so what changes are we proposing to the current review?20:12
amcrnthat would be the change20:12
robertmyershub_cap: do you push the python-troveclient to the openstack pypi mirror?20:12
hub_capthats not already the case amcrn? ok cool20:13
hub_caprobertmyers: i can, yes20:13
ikhudoshyn_vipul: hub_cap: kindly reminding about https://blueprints.launchpad.net/trove/+spec/remove-mount-point-from-parameters-for-instance-prepare20:13
robertmyerswell, you should see openstack-horizon20:13
robertmyershub_cap: https://gist.github.com/kokhang/753447420:13
amcrnnot to leave you at the altar vipul, but I can live with this ;)20:14
ashestakovamcrn: this validation already performs20:14
amcrnthen why in your review do you say it doesn't20:14
vipulamcrn: I personally prefer names instead of uuids.. even if it's a machine doing it20:14
vipulbut if that's against openstack or wahtever, then i'm ok20:14
hub_caprobertmyers: thats odd, cuz 1.0.3 is in pypi20:14
hub_capoh to the openstack mirror......20:15
vipulso are we back to saying that version alone is oke?20:15
demorrisvipul, users / databases already uses names instead of uuid's20:15
ashestakovamcrn: https://review.openstack.org/#/c/47934/12/trove/datastore/models.py 142L20:15
hub_capmordred:  or clarkb would know how to validate the version mismatch on the pypi mirror, robertmyers20:15
vipuldemorris: exactly.. why couldn' datastore_types20:15
demorrisbut that was not something we wanted to do per se, but more driven out of the fact that we did not want to maintain a mapping of users / databases outside of MySQL20:15
demorrisbecause a user could always go in to MySQL directly and create / delete users...20:16
demorrismy point is that it is not the end of the world if you use names over UUID's...20:16
vipuldemorris: sure, and it makes sense teh way it's done20:16
demorrisits not a RESTy...20:16
demorriserr, as RESTy..but that does not bother me too much20:16
grapexdemorris: We couldn't use UUIDs for the user / database calls if we wanted to20:16
hub_capvipul: its more of a restful "http" references, think atom, so the uuid is kinda necessary20:16
vipuli thought th epoint of rest was to be able to identify a unique resource based on a URI20:17
vipuland whether it's name or ids or whatever.. as long as it gives back the same thing every time you call it with a URI.. it's restful20:17
*** rnirmal has joined #openstack-trove20:18
hub_capmy point is that names are possible to change, uuids generally dont change20:18
amcrnhub_cap: the name here though, is the internal name, not necessarily the display-name20:18
amcrngranted if the two diverge, that gets mildly confusing20:19
vipulIt only changes if the deployer changes it manually20:19
vipulthey could do the same thing with a UUID20:19
vipulalthough i do get your point20:19
*** SushilKM__ has quit IRC20:19
demorriswhat decision closes down discussion on this the fastest :)20:20
amcrnashestakov: see below20:20
amcrn[13:56:06] <amcrn> i'm not sure the code is working that way, is it?20:20
amcrn[13:56:29] <amcrn> if I have the default_datastore set, and in the create payload I provide just the version20:20
amcrn[13:57:25] <ashestakov> oh, it will pick default20:20
amcrnso unless that's changed20:20
ashestakovamcrn: do you still disagree this way?20:22
vipuli'm ok with using uuid -- i just find that providing datastore_version alone is a bit wierd -- but if we do the validation suggested by amcrn, i think it at least reduces the number of permutations that are allowed20:22
ashestakovvipul: if user specified only version, then if this version not belongs to default type - error20:23
hub_capok apparently i dc'd for a good bit20:23
*** yogesh has quit IRC20:24
demorrisashestakov: have you put any thought to managing version upgrades with the new types / version code?20:24
hub_capok so it sounds like we have consensus, ya amcrn vipul?20:24
demorrisnot on the management side, but from the user perspective20:25
amcrntyping up a summary chart, one sec20:25
hub_capamcrn: thx20:25
ashestakovdemorris: not yet, this is next step (if we will finish current one)20:25
hub_capalso, id like to reiterate we should let this review go as-is since we all have seen it so many times that the code is good to go20:26
hub_capand we can do a new review w/ the changes discussed today20:26
ashestakovhub_cap: +20:26
hub_capotherwise this patch stagnates longer, and prevents otehr things like cassandra/mongo/redis from merging20:26
ikhudoshyn_hub_cap: +20:26
vipulsure although did we decide whether updated_at/deleted_at would be in this patch or next20:26
demorrisashestakov: okay cool, yeah am pushing for your code to get locked up!  seems close :)20:27
hub_capvipul: im not sure what youre talking about, but id say next patch20:27
amcrn- no datastore-type/datastore-version (ok, assuming a default_datastore is set and said datastore has a default version)20:27
amcrn- datastore-type, no datastore-version (ok, assuming said datastore has a default version)20:27
amcrn- datastore-type, datastore-version name (ok)20:27
amcrn- datastore-type, datastore-version uuid (ok, validation is done that the underlying type from the version uuid matches that of the provided datastore-type)20:27
amcrn- no datastore-type, datastore-version name (ok, only if default_datastore is set)20:27
amcrn- no datastore-type, datastore-version uuid (ok, default_datastore is never consulted/used/etc., instead the type is derived from the version uuid)20:27
demorrisI had submitted a blueprint (along with the original types/version blueprint) a while back to allow a user to request an update to their instance20:27
grapexhub_cap: I'm down on merging the current review and then remaining open to changes later.20:27
demorrishappy to chat with you about my thoughts here when you have time, I think this one can be pretty basic to solve the use case20:27
isviridov_vipul, there is BP for that https://blueprints.launchpad.net/trove/+spec/instance-audit-fields , looks like another patch20:28
*** yogesh_ has joined #openstack-trove20:28
amcrn(that summary is from a request payload perspective)20:28
amcrnthat seems to be where we've netted20:28
amcrnwhere "datastore-type" is the name or uuid, doesn't matter20:29
hub_capamcrn: awesome20:30
hub_capthat all makes sense to me. vipul ?20:30
hub_capamcrn: can u put them in a blueprint for improving the type/version api20:30
amcrnnot sure i follow?20:31
hub_capamcrn: as in, paste them in a blueprint on launchpad20:31
amcrnas in, this won't necessarily be adhered to in the current review, and will be merged anyway?20:32
*** plodronio has quit IRC20:32
hub_capamcrn: correct. itll be much saner to review these (and less bug prone) if we do it in another review20:32
vipulamcrn: what's the diff between the 1st case and last20:34
amcrnlast case is the user provides a uuid of the datastore-version20:34
amcrnfirst case is they provide nothing at all (no datastore type or version)20:35
vipulamcrn: Ok, no version i see..20:35
amcrni'm not a fan, but it's a consensus nonetheless20:35
vipulhub_cap, amcrn: Ok i can live with that..20:35
amcrnhttps://blueprints.launchpad.net/trove/+spec/datastore-type-version-followon20:35
hub_capok so there is one other thing that i wantd to discuss w amcrn wrt this review20:36
hub_caplet me find it in the review20:37
vipulisviridov_: i am wondering if we can implemnt that as 2-part.. if we rename those columns etc, i think it will take a long time to migrate db20:38
vipulmaybe we introduce those columns first, so new things update those. and we can do an offline migration or something to move old data to the new column20:38
hub_capamcrn: https://review.openstack.org/#/c/47934/10/trove/guestagent/datastore/mysql/service.py20:38
hub_capthere is a place where you had ashestakov do a mv {file_name} to {file_name}_UUID20:39
hub_capamcrn: _clear_mysql_config20:39
amcrnright, let me clarify my intentions around that20:40
hub_capwell quickly lemme say this20:40
amcrnsure20:40
hub_capits done during install, so the "original" configs would be the sytem installed configs and be useless anyway20:40
amcrncorrect20:41
amcrnthe concern was born out of the fact that there's zero validation or sanity checking around the packages string/value (which in the long run, there needs to be). in lieu of any validation, i was concerned that others were re-using the pkg install methods for guest-agent upgrade logic20:42
hub_capso i dont see the need for keeping the old ones around, or mv'ing them, cuz no one woul ever try to get them back20:43
hub_capah i dont think we have any of that logic in the system yet amcrn :)20:43
amcrnok, yeah, as I said in here maybe 30-60 minutes ago to ashestakov, if rackspace co-signs on saying they aren't impacted from an upgrade perspective, i'm golden20:44
*** radez is now known as radez_g0n320:44
amcrn(i haven't seen the internal implementation since it's not public, so i didn't want to make any assumptions on code re-use)20:45
*** Barker has quit IRC20:45
vipuloh dude, i think that breaks percona20:45
*** jcooley_ has joined #openstack-trove20:45
vipulwhy are we no longer catching the ProcessExecutionError20:45
*** jcooley_ has quit IRC20:46
hub_capvipul: /me has no clue what youre talking about20:46
vipul:p20:46
*** radez_g0n3 is now known as radez20:46
vipullet me comment on the review20:47
ashestakovvipul: catch where?20:47
amcrnashestakov: https://review.openstack.org/#/c/47934/10/trove/guestagent/datastore/mysql/service.py, left panel, line #72020:48
amcrn(is where vipul put his comment)20:49
vipulcrap.. wrong place20:49
amcrnlol20:49
vipulfixing it to the latest patchset20:49
hub_capok so im ready to +2 this, but vipul before we do, can u pull down his review (and supplemental redstack review) and make sure they work w/ percona20:49
ashestakovvipul: i tested percona lot of times, same as oracle and maria on different OSs, it works20:49
vipulashestakov: Well we have a explicit comment on why we're catching that exception20:50
vipuland it seems that we are breaking that..20:50
vipullet me pull it down and verify20:50
vipulbefore we merge20:50
* amcrn loads up the Top Gun - Danger Zone song20:51
ashestakovvipul: what version of percona you using for test?20:52
vipulashestakov: 5.520:52
ashestakovvipul: ubuntu?20:52
vipulyep20:52
amcrnit looks like it might be an intermittent thing (at least from the way the comment is worded), so i doubt you'll see it on a single test20:52
*** radez is now known as radez_g0n320:52
amcrns/intermittent/sporadic20:53
ashestakovvipul: i cant remember any problems with it20:53
ashestakovvipul: and if service restarts with fail, but service works, then i think its issue of start script20:54
vipulashestakov: Yea it was definitely intermittent.. where sometimes it just reported as FAILED since the init script times out20:54
vipulashestakov: exactly.. it definitley is the init.d script.. but if we don't catch it -- it measn we set the instance to failed20:54
vipulashestakov: i'd be ok with just preversing that logic in the patchset..20:55
vipuli don't see why we need to clean that up anyway20:55
ashestakovvipul: i can push new PS with this catch20:57
*** denis_makogon_ has joined #openstack-trove20:59
vipulashestakov: ok i'd be ok with that20:59
openstackgerritAndrey Shestakov proposed a change to openstack/trove: Add support of datastore types  https://review.openstack.org/4793420:59
ashestakov^ ^20:59
hub_capashestakov: im going to rerun the tests against yuour newest patchset21:01
vipulashestakov: thanks.. just for future info when do these these massive refactors, please do look at the comments in code because we may miss sme important things like this one21:01
ashestakovvipul: i saw it and tested, and didnt reproduced it21:02
ashestakovbut ok21:02
*** yogesh_ has quit IRC21:02
*** denis_makogon has quit IRC21:03
*** denis_makogon_ is now known as denis_makogon21:03
*** dmakogon_ has joined #openstack-trove21:03
denis_makogonhi 2 all21:04
denis_makogonashestakov, what the status of your review ?21:04
ikhudoshyn_you missed the whole fun))21:05
*** yogesh has joined #openstack-trove21:05
ikhudoshyn_he's closer than ever, but not yet. and we're still waitin'21:05
denis_makogonhub_cap, could you please take a look at https://review.openstack.org/#/c/52905/ ||| https://review.openstack.org/#/c/54900/ |||| https://review.openstack.org/#/c/56930/21:05
hub_capdenis_makogon: the 2nd one ive already +2'd21:06
denis_makogonhub_cap, ah, sorry, wrong link21:06
denis_makogonhub_cap, what kind of problem with ashestakov 's tests ?21:07
hub_capdenis_makogon: just verifying21:07
denis_makogonhub_cap, today i've tested trove with pylint21:10
*** adrian_otto has quit IRC21:11
denis_makogonhub_cap, sad, but trove got almost 4/1021:11
denis_makogonhub_cap, whole OS got 6/1021:11
datsun180byeah but what's a pylint score really mean21:12
*** jasonb365 has joined #openstack-trove21:12
denis_makogondatsun180b, mark means that code is low-documented, low test-coverage, bad func names21:14
denis_makogonamcrn, ping21:14
kevinconwayit's also almost impossible to get a perfect pylint score21:14
datsun180bdenis_makogon: i withdraw my rhetorical question21:14
kevinconwayit has limitations for how many attributes an object can have21:14
kevinconwayand how long variable names can be21:15
denis_makogonkevinconway, at leat would be better to get even 6/1021:15
kevinconwaydenis_makogon: that's still a failing score21:15
denis_makogonkevinconway, pylint - is pure python =(21:15
denis_makogonkevinconway, yeah, i know21:15
kevinconwaynah, it's just a particular style guide21:15
datsun180boh so vipul / SlickNik i got you a puppy, its name is conductor: https://review.openstack.org/#/c/45116/ all it needs is your review and subsequent approval21:15
kevinconwayi like pylint though21:15
datsun180bjust throw that on the stack would you kindly21:16
denis_makogondatsun180b, stack ?21:16
denis_makogonah21:16
denis_makogondatsun180b, it was for -cores21:16
amcrndenis_makogon: yes?21:16
datsun180bright, i know baz is already looking it over, tim already +2'd it, and even you gave it a +1 already, thanks!21:17
denis_makogonamcrn, please tell me, is it necassery to have docstring while class has pure and understandable name ?21:17
denis_makogonamcrn, even if it doe only "pass" ?21:18
datsun180bthose adjectives are not well-defined and depend heavily on context that's currently unavailable21:18
kevinconwaydenis_makogon: didn't you just run pylint which forces you to docstring all classes regardless?21:18
kevinconwayand then complain that pylint calls our code undocumented?21:18
denis_makogonkevinconway, there is a restrictions per class, according to them pylint decided could it be documented or not21:19
juiceamcrn: hub_cap: datsun180b: isviridov_: based on the previous conversation around sufficient blue prints, I took a stab at outlining a prompt that would be used a template for our blue prints. The purpose of this is mostly a guide to the author and reviewer to ensure all bases are covered in the blue print and appropriate upfront consideration is given and discussed.  Please feel free to revise/comment https://gist.github.com/juicegit/753484221:25
juicevipul: slicknik  ^ ^ sorry brothers you too :)21:26
*** yogesh has quit IRC21:26
hub_capjuice: awesome will do21:27
amcrnnice, thanks juice21:27
*** yogesh has joined #openstack-trove21:27
juicehappy to contribute21:28
datsun180bhttps://gist.github.com/ed-/30b34ca3cbe414ce9506 ahahaha oh pylint21:30
datsun180bIt doesn't check that the elements are good, just present21:30
*** yogesh has quit IRC21:31
datsun180bhttps://gist.github.com/ed-/b44ec54b1f89ea26b34b 2ez21:35
hub_caplol datsun180b21:35
datsun180bbut seriously though my point is that score means well but isn't the final word on good, clean, understandable, or even well-documented code21:36
juicethis is static analysis not code critique :)21:37
juicedatsun180b I was typing that as you posted your last comment21:37
datsun180bthat last one generates Thue-Morse sequences21:37
*** grapex has quit IRC21:38
*** grapex has joined #openstack-trove21:38
*** jcooley_ has joined #openstack-trove21:43
hub_capok im running int-tests on andrews code, if it passes im going to +2 it21:43
denis_makogonhub_cap, could you please help me with dependencies21:46
hub_capsure, so when you do a git review, and have > 1 commit, it marks them as 2 reviews with dependencies21:46
denis_makogonhub_cap, by the way, i forgot about influence21:47
hub_cap?21:47
denis_makogonhub_cap, vipul  points me on my review on problem with touching heat stuff21:47
denis_makogonhttps://review.openstack.org/#/c/50944/21:47
hub_capso really, you need to create a branch where you have the 1 review, and rebase the newest in (or cherry-pick etc) and it will be 2 commits on that single branch21:47
denis_makogoni cleaned it, now there is do dependency between SnowDust's and my review21:48
hub_capthen u just do a git review again, and itll say "hey do you want to push 2 commits?" and you type "yes" and then you are good to go21:48
hub_capgerrit / git review does the rest21:48
denis_makogonah, got you21:48
hub_capok so denis_makogon where is that fix going to be?21:48
hub_capthe one vipul mentioned21:48
denis_makogonSnowDust updated his review21:49
hub_capoh he did?21:49
denis_makogonnot it deals with all heat stuff21:49
denis_makogonhub_cap, yes21:49
denis_makogonhub_cap, he did it today21:49
hub_capgot it21:50
hub_capthx21:50
denis_makogonhub_cap, thanks 2 you21:50
denis_makogonhub_cap, now, i suppose, we have 2 sepparate reviews, without any dependencies21:50
hub_capyup21:51
hub_capdisregard what i say :)21:51
denis_makogonhub_cap, if all cores are ok with SnowDust review, it would be better to megre it first, then could go mine21:51
hub_capk denis_makogon21:54
*** yogesh has joined #openstack-trove21:54
denis_makogonhub_cap, could you tell us status of ashestakov 's tests ?21:54
openstackgerritEd Cranford proposed a change to openstack/trove: Conductor proxies host db access for guests  https://review.openstack.org/4511621:54
hub_captest_instance_returns_to_active_after_resize21:54
hub_capits passed up to that, and now is waiting21:54
hub_captest_instance_created                                       OK  330.6121:55
denis_makogonhub_cap, sounds like totall +2 )))21:55
denis_makogoneven ultimate +2)))21:55
kevinconwaywhich change is being merged?21:55
hub_cap:)21:55
hub_capkevinconway: all of them21:56
denis_makogonlol21:56
kevinconwayoh boy21:56
hub_capits get a pass to merge whatever u want day21:56
denis_makogonhub_cap, it's like christmas, but before thanksgiving day21:56
hub_capyup. its a new holiday21:56
kevinconwaymergimas?21:57
denis_makogonit's like black friday without any people it malls21:57
hub_caplol21:57
denis_makogonin21:57
amcrnit'd truly be christmas if you bought into bitcoin at the beginning of the year21:57
hub_capunless u bought 121:58
*** vipul is now known as vipul-away21:59
hub_capamcrn: that bitcoin bs is crazy21:59
hub_capoh so speaking of crazy21:59
denis_makogonhub_cap, we need robertmyers updates (backups etc) on board21:59
hub_capi bought this yesterday22:00
hub_caphttp://www.amazon.com/Acer-Chromebook-11-6-Inch-Haswell-micro-architecture/dp/B00FNPD1OY22:00
kevinconwayi enjoy my chromebook22:00
denis_makogonhub_cap, for what purpose ?22:00
hub_capgoing to install linux on it and use it for work22:00
kevinconwaymine didn't come with Hasbro architecture though22:01
datsun180bi got a dell mini 9 and covered it in batman tape22:01
denis_makogonkevinconway, Hasbro ?)))22:01
kevinconwayi bought the big-boy version22:01
hub_capkevinconway: hasbro (haswell) advertises like 8+ hr performance22:01
denis_makogonkevinconway, autobot or decepticon?22:01
hub_capkevinconway: did u get a acer prism?22:01
kevinconwayi bought mine about a year ago. it's old junk now.22:01
kevinconwayit was acer though22:02
denis_makogonkevinconway, why not macbook pro ?22:02
hub_capya i figure its the perfect throw away laptop22:02
hub_capkeep nothing on it22:02
kevinconwaydenis_makogon: that's an expensive internet browser22:02
denis_makogonkevinconway, nope)))22:02
denis_makogonkevinconway, best for design, architecturing, music, photoshop, coding22:03
robertmyershub_cap: 1.4 GHz Intel Celeron ??22:03
kevinconwayyes well, when i become a famous DJ, street artist, and building designer I will buy one22:03
datsun180bphotoshop is my favorite game on my mbp22:03
hub_caprobertmyers: hell yes22:03
kevinconwayin the mean time i have real work to do22:03
esmute16 GB Solid-State Drive?22:04
datsun180bmagic lasso is OP, mods pls nerf22:04
hub_capi do all my work on 8~16G remote machines22:04
kevinconwaybesides, windows8 is where it's at22:04
hub_capwhy do i need a beefy proc when im running a internet browser and a terminal22:04
kevinconwaygoodby desktops and start menues22:04
hub_capkevinconway: lol22:04
esmutehub_cap: Is it going to have a sticker in the back that reads 'My other computer is in the Cloud'?22:05
hub_capesmute: it should22:05
kevinconwayi was actually kind of sad when i installed linux on my last windows8 netbook22:05
kevinconwaybut at least i installed ubuntu which is basically same22:05
datsun180bwhat sort of cruel jokester puts w8 on a netbook22:05
* esmute wonders if he could use the ipad air for work22:07
denis_makogonesmute, only for fly killing)))22:08
*** pdmars has quit IRC22:08
hub_caplol22:08
esmutedenis_makogon: i really hope you're refering to an app22:09
denis_makogonesmute, maybe, but it's like hitting to targets with one arrow22:09
hub_capesmute: it is, however, going to say chrome on it22:10
hub_caphttp://static.acer.com/up/Resource/Acer/Chromebook/AGW2%20C/Images/20130805/C720-photo-gallery-01.png22:10
hub_capits like 2.8 lb or something ungodly light22:10
esmutethat is slick22:11
esmutedoes it have dvi output? or hdmi?22:12
esmutei hate the 11 inch real estate22:12
datsun180bi think that depends on the size of the windshield you're scraping snow off of with it22:12
denis_makogonhub_cap, could you update status on tests ?22:13
*** vipul-away is now known as vipul22:13
esmutedenis_makogon: So should i buy this http://www.amazon.com/Amico-Vehicle-Window-Windshield-Scraper/dp/B009PNAP1M?22:14
esmutedatsun180b: ^22:14
denis_makogonesmute, lol, if you like than just go for it)))22:14
datsun180bfor $9? what kind of memory does it have22:15
kevinconwayor just move to southern US. no snow or ice here!22:15
hub_capdenis_makogon: i started them over, i lost my vpn connection and it nuked the tests (i forgot to put them in a tmux session). they are going now though in a tmux session in case i lose connection22:15
hub_capesmute: hdmi22:15
datsun180bkevinconway: do NOT jinx it22:15
datsun180bwe get a freeze like once every 8 years22:15
hub_cappssh thats not true datsun180b22:15
hub_capits like every _few_ years22:16
kevinconwaymomma always said that ice was the devil sneezin' and we so good down here that it stays nice and warm22:16
esmutebut you guys get tornado and shit22:16
datsun180bi don't know, last bad one i was still in school22:16
denis_makogonhub_cap, ashestakov 's review robot got failed =(22:16
esmutewhen i said 'and shit' i meant to say ' and other stuff'22:17
*** grapex_ has joined #openstack-trove22:17
hub_caplol denis_makogon yup22:17
esmutemy intention was not to say that literally22:17
denis_makogonashestakov, here ?22:18
ashestakovdenis_makogon: yep22:18
*** grapex has quit IRC22:18
denis_makogonashestakov, robots are crazy. =/22:18
hub_cap++ denis_makogon22:18
ashestakovdenis_makogon: forget about them22:18
denis_makogonashestakov, no way22:19
ashestakovhm, jenkins failed too22:19
denis_makogonashestakov, that is what i told22:20
* denis_makogon gone for a cup of tea22:20
*** jasonb365 has quit IRC22:28
openstackgerritAndrey Shestakov proposed a change to openstack/trove: Add support of datastore types  https://review.openstack.org/4793422:30
*** yogesh has quit IRC22:34
*** jcooley_ has quit IRC22:38
*** yogesh has joined #openstack-trove22:40
openstackgerritAuston McReynolds proposed a change to openstack/trove: User-Create Host Does Not Allow Wildcarded Octet  https://review.openstack.org/5421622:41
*** ikhudoshyn_ has quit IRC22:43
*** yogesh has quit IRC22:44
*** yogesh has joined #openstack-trove22:45
datsun180bis is just me or are the gates slow or backed up this afternoon22:47
hub_capprobably both22:47
clarkbthey are backed up22:48
clarkbone of the jenkinses fell over early today and that created a large enough backup that we haven't gotten over it yet22:49
*** yogesh has quit IRC22:49
*** yogesh has joined #openstack-trove22:49
datsun180bdo you just have a highlight on "slow" or "gates" or something clarkb <322:51
clarkbno, I just read far too much irc22:52
datsun180bglad you do22:53
*** yogesh has quit IRC22:53
*** yogesh has joined #openstack-trove22:58
*** robertmyers has quit IRC23:02
*** yogesh has quit IRC23:02
*** yogesh has joined #openstack-trove23:03
*** demorris has quit IRC23:06
datsun180bwhoops23:06
datsun180bas soon as i recheck what i thought was a dead job, it comes right back all green anyway just to spite me23:06
*** yogesh has quit IRC23:08
*** grapex_ has quit IRC23:09
hub_capok ashestakov's tests have passed. im going to +2 his reviews23:11
datsun180bhub_cap: me next me next ooh ooh23:14
hub_capdatsun180b: did u fix the -1 i had given u?23:15
datsun180bhub_cap: within a minute of you asking23:15
hub_capif so im ready to +2 the conductor work23:15
hub_capdatsun180b: heh nice23:15
datsun180byou should expect nothing less from me23:15
hub_capC-c C-o23:16
hub_capyou should expect nothing less from me23:17
datsun180bhooray23:19
datsun180bnow to get the rest of the Justice League to help23:19
datsun180bmy sneaky-pete changes are nearly there, just have to test it on a real vm23:20
hub_cap:)23:20
*** amytron has quit IRC23:20
datsun180band i'm out23:22
*** datsun180b has quit IRC23:22
esmutehub_cap, grapex: When/if bored, can you guys look at https://review.openstack.org/#/c/54412/?23:24
amcrnhrm, unless i'm missing something, won't the multilpe-datastores patch-set completely break backups considering it didn't update https://review.openstack.org/#/c/52905/2/trove/guestagent/backup/backupagent.py23:24
amcrnugh, nevermind, as soon as i hit enter23:25
amcrni realized how stupid that question was23:25
* amcrn sits in the corner23:25
*** denis_makogon has quit IRC23:26
*** vipul is now known as vipul-away23:28
openstackgerritA change was merged to openstack/trove: Externalization of heat template  https://review.openstack.org/5349923:30
hub_capamcrn: :)23:30
hub_capvipul-away: ping me when u get back23:31
*** vipul-away is now known as vipul23:32
hub_capdmakogon_: around?23:33
hub_capdmakogon_: https://blueprints.launchpad.net/trove/+spec/custom-heat-for-services23:34
*** vipul is now known as vipul-away23:44
*** vipul-away is now known as vipul23:44
*** edmund has quit IRC23:45
*** vipul is now known as vipul-away23:54
*** vipul-away is now known as vipul23:54
*** vipul is now known as vipul-away23:55
*** vipul-away is now known as vipul23:55

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