Friday, 2014-09-05

openstackgerritA change was merged to openstack/taskflow: Split requirements into py2 and py3 files  https://review.openstack.org/11464100:11
*** zzzeek has quit IRC00:13
*** mtanino has quit IRC00:22
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Add a futures type that can contain our future functionality  https://review.openstack.org/11648900:30
*** stevemar has joined #openstack-oslo00:42
*** liusheng has quit IRC00:48
*** liusheng has joined #openstack-oslo00:48
*** liusheng has joined #openstack-oslo00:49
*** GheRivero has quit IRC00:50
*** GheRivero has joined #openstack-oslo00:51
*** dims has joined #openstack-oslo00:59
*** arnaud has quit IRC01:01
*** dims has quit IRC01:03
*** dims has joined #openstack-oslo01:04
*** dims_ has joined #openstack-oslo01:06
*** dims has quit IRC01:08
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Use explicit WBE request state transitions  https://review.openstack.org/11416201:13
*** dims_ has quit IRC01:14
*** dims has joined #openstack-oslo01:14
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Tweak engine iteration 'close-up shop' runtime path  https://review.openstack.org/11654401:16
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Translate the engine runner into a well defined state-machine  https://review.openstack.org/10653501:16
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Move parts of action engine tests to a subdirectory  https://review.openstack.org/11740601:16
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Remove the dependency on prettytable  https://review.openstack.org/11762901:18
*** dims has quit IRC01:19
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Increase/adjust the logging of the WBE response/send activities  https://review.openstack.org/10295901:19
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Tidy up the WBE cache (now WBE types) module  https://review.openstack.org/10324501:19
*** takedakn has quit IRC01:19
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Ensure state machine can be frozen  https://review.openstack.org/10747901:19
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Add existing types to generated documentation  https://review.openstack.org/10693001:20
*** dims has joined #openstack-oslo01:20
*** arnaud has joined #openstack-oslo01:20
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Update transitioning function name to be more understandable  https://review.openstack.org/11739201:20
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Explicitly require simplejson  https://review.openstack.org/11806601:21
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Updated from global requirements  https://review.openstack.org/11742401:23
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.vmware: Add docs target and generate api docs  https://review.openstack.org/11890501:30
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.vmware: Add docs target and generate api docs  https://review.openstack.org/11890501:32
*** arnaud__ has joined #openstack-oslo01:32
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.utils: Auto generate the API documentation  https://review.openstack.org/11909701:34
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.middleware: Auto generate the API documentation  https://review.openstack.org/11909801:37
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.messaging: Auto generate the API documentation  https://review.openstack.org/11909901:44
*** dims has quit IRC01:46
*** dims has joined #openstack-oslo01:47
*** yamahata has joined #openstack-oslo01:47
*** dims_ has joined #openstack-oslo01:49
*** dims has quit IRC01:52
*** praneshp has quit IRC02:01
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo-incubator: Switch to using pbr's autodoc capability  https://review.openstack.org/11913002:04
*** takedakn has joined #openstack-oslo02:05
*** praneshp has joined #openstack-oslo02:06
openstackgerritA change was merged to openstack/oslo.vmware: Add exception for TaskInProgress  https://review.openstack.org/11725402:07
*** _amrith_ is now known as amrith02:22
*** dims_ has quit IRC02:25
*** dims has joined #openstack-oslo02:25
*** harlowja is now known as harlowja_away02:27
*** dims_ has joined #openstack-oslo02:30
*** dims has quit IRC02:30
openstackgerritA change was merged to openstack/oslo-incubator: Use MultiStrOpt for policy_dirs  https://review.openstack.org/11916002:33
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.concurrency: Add code/api documentation  https://review.openstack.org/11893302:49
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.db: Add code/api documentation  https://review.openstack.org/11889502:53
*** takedakn has quit IRC02:55
*** arnaud__ has quit IRC02:55
*** arnaud has quit IRC02:55
*** dims_ has quit IRC03:04
*** dims has joined #openstack-oslo03:05
*** dims has quit IRC03:10
*** praneshp has quit IRC03:32
*** jecarey has joined #openstack-oslo03:42
*** jecarey has quit IRC04:08
*** jecarey has joined #openstack-oslo04:10
*** arnaud has joined #openstack-oslo04:16
*** harlowja_at_home has joined #openstack-oslo04:18
*** praneshp has joined #openstack-oslo04:20
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Tidy up the WBE cache (now WBE types) module  https://review.openstack.org/10324504:24
*** praneshp_ has joined #openstack-oslo04:24
*** jecarey has quit IRC04:25
*** praneshp has quit IRC04:27
*** praneshp_ is now known as praneshp04:27
*** kevinbenton has quit IRC05:03
*** kevinbenton has joined #openstack-oslo05:06
*** zarric has joined #openstack-oslo05:10
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Ensure that details always exist in the memory backend  https://review.openstack.org/11929105:24
*** takedakn has joined #openstack-oslo05:29
*** flaper87|afk is now known as flaper8705:29
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: warn against sorting requirements  https://review.openstack.org/11873105:33
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: warn against sorting requirements  https://review.openstack.org/11873105:34
*** takedakn has quit IRC05:46
openstackgerritMichael Davies proposed a change to openstack/cliff: mock.assert_called_once() is not a valid method  https://review.openstack.org/11925205:49
*** amotoki has joined #openstack-oslo05:52
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.i18n: Imported Translations from Transifex  https://review.openstack.org/11655306:00
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.db: Imported Translations from Transifex  https://review.openstack.org/11853906:01
*** stevemar has quit IRC06:03
*** takedakn has joined #openstack-oslo06:03
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.log: Imported Translations from Transifex  https://review.openstack.org/11897906:03
*** harlowja_at_home has quit IRC06:04
*** oomichi has quit IRC06:05
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.vmware: Imported Translations from Transifex  https://review.openstack.org/11929606:06
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.concurrency: Imported Translations from Transifex  https://review.openstack.org/11854506:06
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.messaging: Imported Translations from Transifex  https://review.openstack.org/11854706:08
openstackgerritOpenStack Proposal Bot proposed a change to openstack/oslo.utils: Imported Translations from Transifex  https://review.openstack.org/11854906:09
*** takedakn has quit IRC06:17
*** k4n0 has joined #openstack-oslo06:25
*** jaosorior has joined #openstack-oslo06:25
*** takedakn has joined #openstack-oslo06:34
*** arnaud has quit IRC06:47
*** AAzza has joined #openstack-oslo06:49
openstackgerritA change was merged to openstack/oslo.concurrency: warn against sorting requirements  https://review.openstack.org/11871607:13
*** pblaho has joined #openstack-oslo07:29
*** takedakn has quit IRC07:32
*** ajo|call is now known as ajo07:44
*** stannie1 has joined #openstack-oslo07:45
*** YorikSar has quit IRC07:48
*** YorikSar has joined #openstack-oslo07:50
*** YorikSar has quit IRC07:56
*** sreshetnyak has quit IRC07:58
*** sreshetnyak has joined #openstack-oslo08:05
*** YorikSar has joined #openstack-oslo08:06
*** YorikSar_ has joined #openstack-oslo08:12
*** dtantsur|afk is now known as dtantsur08:15
*** YorikSar has quit IRC08:16
openstackgerritjazeltq proposed a change to openstack/oslo-incubator: fix memory leak for _safe_log  https://review.openstack.org/11931708:23
*** pblaho is now known as pblaho|afk08:24
openstackgerritChangBo Guo(gcb) proposed a change to openstack/oslo-incubator: Add module integrity check in update.py  https://review.openstack.org/7690108:27
*** praneshp has quit IRC08:33
*** pblaho|afk is now known as pblaho08:38
*** i159 has joined #openstack-oslo08:41
openstackgerritAnn Kamyshnikova proposed a change to openstack/oslo.db: ModelsMigrationsSync: Add check for foreign keys  https://review.openstack.org/11623808:49
*** alexpilotti has joined #openstack-oslo08:50
*** dtantsur is now known as dtantsur|brb09:10
*** k4n0 has quit IRC09:16
*** ildikov has joined #openstack-oslo09:20
*** YorikSar_ has quit IRC09:31
*** YorikSar has joined #openstack-oslo09:32
openstackgerritOleksii Chuprykov proposed a change to openstack/oslo.db: Renaming in WalkVersionsMixin  https://review.openstack.org/11907809:34
*** GheRivero is now known as GheRivero_pto09:34
*** pblaho is now known as pblaho|afk10:01
*** pcm_ has joined #openstack-oslo10:14
*** pcm_ has quit IRC10:16
*** pcm_ has joined #openstack-oslo10:16
*** AAzza is now known as AAzza_afk10:18
openstackgerritA change was merged to openstack-dev/pbr: Accept capitalized Sem-Ver headers  https://review.openstack.org/11864810:18
openstackgerritA change was merged to openstack/oslo.middleware: warn against sorting requirements  https://review.openstack.org/11872510:18
openstackgerritA change was merged to openstack/oslo.middleware: Work toward Python 3.4 support and testing  https://review.openstack.org/11879110:18
openstackgerritA change was merged to openstack/oslo.vmware: warn against sorting requirements  https://review.openstack.org/11872910:19
*** pblaho|afk is now known as pblaho10:31
*** AAzza_afk is now known as AAzza10:37
*** yamahata has quit IRC10:46
*** dims has joined #openstack-oslo10:54
*** dims has quit IRC10:56
*** dims_ has joined #openstack-oslo10:57
*** dims has joined #openstack-oslo10:57
*** ildikov_ has joined #openstack-oslo11:00
*** dims_ has quit IRC11:01
*** dtantsur|brb is now known as dtantsur11:01
*** ildikov has quit IRC11:03
*** tongli has joined #openstack-oslo11:30
*** amrith is now known as _amrith_11:45
*** k4n0 has joined #openstack-oslo11:55
*** AAzza is now known as AAzza_afk11:55
*** openstackgerrit has quit IRC12:01
*** openstackgerrit has joined #openstack-oslo12:02
*** dims has quit IRC12:19
*** dims has joined #openstack-oslo12:20
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo-incubator: Add contributing page to docs  https://review.openstack.org/11935912:25
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.config: Add contributing page to docs  https://review.openstack.org/11936012:25
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.messaging: Add contributing page to docs  https://review.openstack.org/11936112:26
*** YorikSar has quit IRC12:26
*** ttx has quit IRC12:31
*** jaypipes is now known as leakypipes12:32
*** YorikSar has joined #openstack-oslo12:33
openstackgerritOleksii Chuprykov proposed a change to openstack/oslo.db: Renaming in WalkVersionsMixin  https://review.openstack.org/11907812:33
*** ttx has joined #openstack-oslo12:34
*** ttx has quit IRC12:34
*** ttx has joined #openstack-oslo12:34
*** dims has quit IRC12:39
*** dims has joined #openstack-oslo12:40
*** lbragstad has quit IRC12:43
*** lbragstad has joined #openstack-oslo12:43
*** dims has quit IRC12:45
*** viktors|afk is now known as viktors12:45
*** amotoki has quit IRC12:45
*** dims_ has joined #openstack-oslo12:46
openstackgerritOleksii Chuprykov proposed a change to openstack/oslo.db: Add description for test_models_sync function  https://review.openstack.org/11600412:48
*** dims_ has quit IRC12:49
*** miqui has joined #openstack-oslo12:50
*** dims has joined #openstack-oslo12:50
openstackgerritDoug Hellmann proposed a change to openstack/oslotest: Add fixture for mock.patch.multiple  https://review.openstack.org/11908512:51
*** morganfainberg has quit IRC12:54
*** morganfainberg has joined #openstack-oslo12:57
*** _amrith_ is now known as amrith13:05
dhellmanncores: we need to prioritize reviews for oslotest so we can cut a new release and fix the python 3 issues we're having syncing requirements updates: https://review.openstack.org/#/q/project:openstack%2Foslotest+is:open,n,z13:14
openstackgerritA change was merged to openstack/oslotest: Remove differences between Python 2.x and 3.x versions  https://review.openstack.org/11855113:21
dhellmanndims, bnemec, flaper87: review requests for oslotest ^^13:22
* flaper87 clicks13:22
flaper87dhellmann: I +2'd the proton driver patch. It's got 2 +2 but I prefered to leave the +A to you.13:23
flaper87I don't recall you explicitly approving the FEE, besides our chats.13:23
dhellmannflaper87: yeah, I'll go ahead and do that13:23
*** mriedem has joined #openstack-oslo13:24
*** morganfainberg has quit IRC13:25
*** morganfainberg has joined #openstack-oslo13:27
flaper87dhellmann: https://review.openstack.org/#/c/118734/ needs rebase :/13:29
*** bknudson has quit IRC13:30
dhellmannflaper87: ok, that can wait, I'm more worried about the stopall fix and the mock.patch.multiple addition13:31
flaper87dhellmann: yeah, I'm done with those :P13:31
openstackgerritDoug Hellmann proposed a change to openstack/oslotest: warn against sorting requirements  https://review.openstack.org/11873413:32
dhellmannflaper87: thanks :-)13:32
*** dhellmann is now known as dhellmann_13:40
*** pblaho has quit IRC13:43
dtantsurFolks, could someone have a look at cliutils patch https://review.openstack.org/#/c/113978/ ? Already has 2 +1 and is blocking a couple of patches in python-ironicclient. Thanks13:49
dtantsurdhellmann_, maybe you could ^^^13:49
*** bknudson has joined #openstack-oslo13:51
*** jeckersb_gone is now known as jeckersb13:51
*** jaosorior has quit IRC14:02
*** ildikov has joined #openstack-oslo14:02
*** ildikov_ has quit IRC14:02
*** bnemec is now known as beekneemech14:02
*** i159 has quit IRC14:02
*** zzzeek has joined #openstack-oslo14:05
*** dims is now known as dimsum_14:12
*** kgiusti has joined #openstack-oslo14:13
*** zarric has quit IRC14:16
*** zarric has joined #openstack-oslo14:18
*** morganfainberg has quit IRC14:18
*** morganfainberg has joined #openstack-oslo14:27
miquiwhich is correct oslo.sphinx or oslophinx?14:36
openstackgerritA change was merged to openstack/oslo-incubator: Add field_labels parameter to cliutils.print_list  https://review.openstack.org/11397814:38
*** jecarey has joined #openstack-oslo14:40
dimsum_oslosphinx14:42
*** mtanino has joined #openstack-oslo14:42
amrithyoriksar, beekneemech ... do you have second? have a question that I'm sure one of you could help me with .. thx14:43
*** dhellmann_ is now known as dhellmann14:43
YorikSaramrith: Hi. Sure, ask away :)14:44
amrithyoriksar, hi14:44
amrithhere's the question14:44
amrithif you look at this test14:44
amrithin trove14:44
amrithhttps://github.com/openstack/trove/blob/master/trove/tests/unittests/guestagent/test_pkg.py#L43314:44
amriththe test cases are bad for a couple of reasons14:44
amriththe one I'm looking into is the [mis]use of Mock14:44
amrithyou'll see that these tests Mock pexpect.spawn.expect and pexpect.spawn.match and don't unmock14:45
amriththerefore the test performance is erratic14:45
amrithif someone mocks .match ahead of the run of test_permission_error, all is well14:45
amrithif not, there's a problem14:45
amrithI want to use @mock.patch14:45
amrithdecorators14:45
amrithI'm able to get @patch('pexpect.spawn.expect', Mock(return_value=0)) to work14:45
amrithbut this one doesn't seem to do what I need14:45
amrith@patch('pexpect.spawn.match', False)14:46
openstackgerritA change was merged to openstack/oslotest: Cleaning up index.rst file  https://review.openstack.org/9610014:46
YorikSaramrith: You shouldn't explicitely create mocks. Almost ever. :)14:46
amriththe code being executed is at https://github.com/openstack/trove/blob/master/trove/guestagent/pkg.py14:46
amrithI agree14:46
amriththis was one of your comments to me in a review (some oslo code)14:46
amrithand I remembered that14:46
amrithand hence wanted to convert this test case to use decorators14:47
amrithand I can't seem to get that to work14:47
YorikSaramrith: Most arguments to those mocks can be provided as args to @patch or set up on mock object that is passed to the method in arguments14:47
beekneemechamrith: I strongly suggest switching to oslotest as the base class for that test.14:47
beekneemechThe oslotest base class cleans up mocks automatically.14:47
dhellmannamrith: agree with beekneemech, and have a look at the mockpatch fixtures14:47
beekneemechNot that it wouldn't be better to just use the decorator in that case.  I don't see any reason it wouldn't work.14:47
*** zz_jgrimm is now known as jgrimm14:47
amrithbeekneemech, I'll look at oslotest14:48
amrithbut, I've torn enough hear off my head in the last day14:48
amriththat I want to get to the bottom of this ;)14:48
YorikSaramrith: Maybe you meant @patch(..., return_value=False) ?14:48
amrithwell, match isn't a method14:48
amrithOH?14:48
amrithlet me try that.14:48
amrithif it is, I'm going to start drinking early (it's friday ;))14:49
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.messaging: Add square brackets for ipv6 based hosts  https://review.openstack.org/11938914:49
amrithnope, doesn't work14:49
amrithwith @patch('pexpect.spawn.match', return_value=False)14:49
YorikSarYou'll need to expect a new argument to your test.14:49
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.messaging: Add square brackets for ipv6 based hosts  https://review.openstack.org/11938914:49
beekneemechIf match isn't a function, I don't think patching it will work though.  return_value implies it will be called, not used directly.14:50
openstackgerritDavanum Srinivas (dims) proposed a change to openstack/oslo.messaging: Add square brackets for ipv6 based hosts  https://review.openstack.org/11938914:50
amrithYorikSar, would you be able to point me to an example.14:50
amrithbeekneemech, yes, I think that's what's happening14:50
amrithand why the other tests just hammer pexpect.spawn.match = False14:50
amrithand go on their merry way14:50
YorikSaramrith: Em... Ok, I don't know what pexpect is. If it's not a method, you should be able to just pass a new value there.14:50
amriththat seems WRONG!14:50
amrithpexpect.spawn.expect() is a method14:51
beekneemechamrith: You should probably save the original value of match in setUp and restore it in tearDown.14:51
amrithpexpect.spawn.match is a value14:51
beekneemechor as a cleanup14:51
amrithbeekneemech, that would be easy to do14:51
YorikSarbeekneemech: mock should do just fine with non-methods...14:51
amrithexcept that in some cases,  (https://github.com/openstack/trove/blob/master/trove/tests/unittests/guestagent/test_pkg.py#L339) the value is not True/False but a call to re.match(...)14:51
amrithI was going to make that a side_effect14:52
amrithand be done with it14:52
amriththe thing that is bugging me is why pexpect.spawn.match being set to False doesn't work ;)14:52
YorikSaramrith: No, you can't use side_effect htere.14:52
amrithwhat isn't helping me (also) is the fact that I get only three lines of backtrace https://gist.github.com/amrith/96356c0e8b964651ab0014:53
amrithI'd love to know why that is, and who's chopping the backtrace to the most useless part.14:53
YorikSaramrith: You should use patch as context manager if you can't determine new value at class declaration time.14:53
amrithYorikSar, ok. that makes sense. I think. but isn't that equivalent to having it be defined as a side effect.14:54
amrithi.e. they accomplish the same thing14:54
amrithin different ways?14:54
YorikSaramrith: Eh... Looks like mock doesn't like the fact that there's no 'match' attribute at all.14:54
amrithyes14:54
amrithbut that's what I'm setting in the @patch ;)14:54
YorikSaramrith: No, side_effect happens when you call a mock. match isn't called, it's just read.14:54
amrithwell, clearly someone is trying to read and can't seem to find it14:55
amrithwhat I don't know is this14:55
amrithis the thing trying to read/write match the code doing the @patch()14:55
amrithor the code in pexpect_run that is trying to read 'match'14:55
*** flaper87 is now known as flaper87|afk14:55
amrithand the truncation of the backtrace isn't helpful14:55
YorikSaramrith: Well, then you have to do mocking by yourself in setUp and properly handle the case when there's no 'match' attribute there.14:56
beekneemechamrith: It looks like match is set after you call expect, so I'm not sure you can mock it ahead of time: http://pexpect.sourceforge.net/pexpect.html#spawn14:56
beekneemechI'm reading the expect docstring and it says "After a match is found the instance attributes 'before', 'after' and14:56
beekneemech'match' will be set."14:56
beekneemechSo your mock is probably being overwritten anyway.14:56
amrithbeekneemech, if what you say is true then the error I'd get should be that match is found but true or something14:57
amrithbut also, the current way of doing it, which is to hammer it to False ahead of time shouldn't work either, no?14:57
*** k4n0 has quit IRC14:57
YorikSaramrith: Ok, here's another idea. Is pexpect.spawn used for anything but calling expect and match?14:57
amrithnot that I can see14:57
amrithwill you suggest mocking that?14:57
*** stevemar has joined #openstack-oslo14:57
YorikSaramrith: If not, you should patch pexpect.spawn and set its attributes.14:57
amrithso, I updated the gist above to include the code as I have it now.14:58
amrithI see ...14:58
amrithpatch pexpect.spawn14:58
amrithand then set it's attributes14:58
amrithcan that be done as a decorator?14:59
YorikSaramrith: Oh, it's even patched all over in tests: __init__ and close are patched in setUp14:59
amrithyes, this is a regular dogs breakfast ...14:59
YorikSarI think you should use MockPatch fixture in setUp instead and let tests set pexpect.spawn.match as they do now.15:00
beekneemechbrb15:01
amrithYorikSar, I get the use MockPatch part. but having each test set the match directly seems bad.15:01
amrithlet me try one thing.15:01
*** beekneemech has quit IRC15:01
*** bnemec has joined #openstack-oslo15:02
amrithso, the theory that I can't set pexpect.spawn.match early is wrong because if I hammer it to False in setUp, it works fine15:02
YorikSaramrith: They'll be setting match attribute of a mock object, it's fine.15:02
amrithwell, in that case, how can I do that in a decorator?15:02
*** bnemec is now known as beekneemech15:03
amrithI guess the question boils down to this15:03
amrithI am able to mock a method15:03
amrithbut not an attribute15:03
*** palendae has joined #openstack-oslo15:03
beekneemechamrith: The mock decorator passes in the mock object.  You just set the attribute on that object.15:03
*** r1chardj0n3s has joined #openstack-oslo15:04
amrith@patch('pexpect.spawn.match', False)15:04
amrithdoes not appear to work15:04
r1chardj0n3shai dhellmann :)15:05
YorikSaramrith: You'll have to pass mock object to an argument and do the same - set match attribute on it.15:05
amrithYorikSar, OK. Understood. I'll try that15:05
amrithand then switch to the fixture as you both suggested15:05
amrithThanks muchly!15:05
*** yamahata has joined #openstack-oslo15:07
YorikSaramrith: Here's a scetch of what I'm proposing (w/o fixture): http://paste.openstack.org/show/106586/15:08
* amrith goes to look15:08
YorikSaramrith: Although using fixture would be better, but you'll need oslotest for that.15:08
amrithYorikSar, that looks perfect. I'm going to try it for one test (class) and see how it works out.15:10
openstackgerritA change was merged to openstack/oslotest: Ensure that mock.patch.stopall is called last  https://review.openstack.org/11920115:10
amrithYorikSar, would you leave the existing hacking of __init__ and .closed in setUp() alone?15:13
YorikSaramrith: You don't need it if you replace the whole thing with mock.15:13
YorikSaramrith: __init__ and closed will already be mocked.15:14
amrithgot it15:14
*** i159 has joined #openstack-oslo15:19
dhellmannr1chardj0n3s: hi!15:19
r1chardj0n3shey! so I would like to resurrect https://review.openstack.org/#/c/21958/ :)15:19
dhellmannwow, that's an old one15:20
r1chardj0n3syeah, and I wish it had been finished so I did't have to do it, but them's the breaks ;)15:20
dhellmannthat should probably be submitted to oslo.middleware now, instead of the incubator15:20
r1chardj0n3sok, I can look at making a new change against middleware15:20
dhellmannare you looking for a FFE for juno, or is this early kilo work?15:20
r1chardj0n3skilo15:21
dhellmanncool15:21
r1chardj0n3sI have A Plan15:21
r1chardj0n3s:)15:21
dhellmannI'll retarget the blueprint, should I go ahead and assign it to you?15:21
dhellmannhmm, I don't actually see a blueprint called cors-support15:21
r1chardj0n3sme either15:22
r1chardj0n3sI can write a new one if necessary15:22
dhellmannyeah, it's probably not controversial, but it will help the reviewers if there is some background on what this is for15:22
r1chardj0n3syep, ok15:23
dhellmannhttps://bugs.launchpad.net/oslo.middleware/+bug/987044 is real15:23
r1chardj0n3sahah!15:23
dhellmannI'm going to remove the reference to the incubator, since the work will just happen in the lib15:23
r1chardj0n3sok, I can claim that. so you think a blueprint might be optional for this?15:23
dhellmannr1chardj0n3s: yeah, this seems small enough that a blueprint is optional, but we'll want to make sure we target the bug so it gets reviews15:25
r1chardj0n3sdhellmann: ok15:26
amrithYorikSar, doesn't appear to work (with your proposed code). I'll wait for r1chardj0n3s and dhellmann to finish chatting ...15:26
r1chardj0n3sdhellmann: just going through the death-throes of a similar proposal over in keystone land before I start on it in olso15:27
dhellmannr1chardj0n3s: if this is controversial, it might be worth bringing it up on the -dev list to resolve questions/issues15:27
dhellmannr1chardj0n3s: I've targeted the bug for next-kilo, what's your launchpad id?15:28
r1chardj0n3sdhellmann: "richard"15:28
dhellmannthat is associated with the name "Richard Samson", is that you?15:29
r1chardj0n3ser15:29
r1chardj0n3sah, sorry, r1chardjones15:29
r1chardj0n3sugh cannot type own thing15:29
r1chardj0n3ssame as IRC nick15:29
r1chardj0n3ssorry :)15:29
dhellmannok, I think I assigned it to you (should have guessed)15:30
r1chardj0n3sI got "clever" and used "richard" on gerrit :/15:30
*** alexpilotti has quit IRC15:30
dhellmannah15:30
dhellmannadding a piece of middleware is going to be the easy part of this, but if you want the other projects to actually use it you might need more buy-in15:30
r1chardj0n3s"horizon is terrible"? :)15:31
r1chardj0n3sit's a relatively small impact thing, and I think I can swing enough votes to make it a reality15:32
dhellmannok, I just don't want you to underestimate the amount of effort making a change in every project might take15:32
r1chardj0n3sheh, I still have to integrate pip-missing-reqs in everything ;)15:33
amrithYorikSar, the model your proposed (http://paste.openstack.org/show/106586/) does not work it appears that even though I set pexpect.spawn.expect.return_value = 0 in the test, when we get into the code being tested, pexpect.spawn() returns child and child.expect() returns not 0 but <MagicMock name='spawn().expect()' id='139866981895888'>15:33
amrithI'll try something else and get back to you15:33
amriththanks for your help15:33
YorikSaramrith: Oh, then you should do pexpect.spawn.return_value.expect.return_value = 015:34
dhellmannbeekneemech: do you have a few minutes to look at an oslotest enhancement for oslo.serialization? https://review.openstack.org/#/c/119085/15:34
YorikSaramrith: I missed the fact that spawn is being called.15:34
amrithYorikSar, ... let me try that.15:34
dhellmannr1chardj0n3s: that looks like it could be useful :-)15:35
r1chardj0n3sdhellmann: it's now in nova and found one missing requirement there ;)15:35
dhellmannr1chardj0n3s: I look forward to your patches in the oslo repositories15:35
*** r1chardj0n3s is now known as r1chardj0n3s_afk15:36
r1chardj0n3s_afkdhellmann: thanks :)15:36
*** dtantsur is now known as dtantsur|afk15:36
dhellmannr1chardj0n3s: although interestingly, we had been planning to ask projects to *not* list depdendencies brought in if they depend on oslo libs, to cut down on the number of places that have to be updated when we bump a requirement15:36
amrithYorikSar, that worked. Thanks much.15:36
amrithI'll go figure the fixture out now15:36
amrithYorikSar, beekneemech thanks so much!15:36
beekneemechdhellmann: Yeah, I've been trying to review that this morning. :-)15:37
dhellmannbeekneemech: thanks, that one is holding up fixing oslotest's packaging so we can update requirements in a bunch of the other projects, including oslo.serialization15:38
*** AAzza_afk is now known as AAzza15:41
*** markmcclain has joined #openstack-oslo15:41
*** yamahata has quit IRC15:42
*** yamahata has joined #openstack-oslo15:42
*** r1chardj0n3s_afk is now known as r1chardj0n3s15:43
*** flaper87|afk is now known as flaper8715:43
r1chardj0n3sdhellmann: pip-missing-reqs is about packages that are explicitly used in a codebase but not explicitly listed in requirements.txt - so if the implicit package chain in requirements is broken the code doesn't break :)15:44
*** markmcclain1 has joined #openstack-oslo15:45
dhellmannr1chardj0n3s: ok, that makes sense15:45
*** markmcclain has quit IRC15:46
dhellmannteam meeting in ~15 minutes in #openstack-meeting-alt15:46
r1chardj0n3sdhellmann: please correct me if I'm wrong, but I don't think adding CORS middleware to oslo and then using that in individual APIs will require any change to those APIs - it's purely config-file (install-time) change for them15:50
r1chardj0n3soh, except there's the requirements.txt change...15:50
beekneemechdhellmann: Okay, https://review.openstack.org/#/c/119085/ +2a15:51
* beekneemech is refreshing his mock knowledge this morning :-)15:51
dhellmannr1chardj0n3s: possibly requirements change, certainly documentation suggesting its use, and a lot of the projects still ship default paste config files15:52
r1chardj0n3syep, ok15:52
dhellmannr1chardj0n3s: you'd want it enabled in devstack, too, for testing15:52
r1chardj0n3sabsolutely, yep15:52
dhellmannr1chardj0n3s: and that's all without me having really looked at the code to see what it's doing (if it's just adding headers or something that's one thing, but some projects aren't using webob so if you have to do anything with the incoming request that may be a challenge)15:53
dhellmannr1chardj0n3s: oh, and ceilometer doesn't use paste so if you want it in by default you probably want to just add it to their app setup module. Ironic (and other pecan users) might be the same15:53
dhellmannbeekneemech: thanks15:54
r1chardj0n3sdhellmann: yikes :)15:54
dhellmannr1chardj0n3s: we were trying to get the apps to recognize paste as a deployer tool and not an app developer tool, though you may disagree with that assessment15:54
dhellmanni.e., separate the "this middleware is actually part of the application" definition from "this deployer has wrapped an app with something"15:55
r1chardj0n3sdhellmann: opting into CORS is a deployer thing, I believe, but having the tool in place to make it easy for deployers to opt in is an app thing :)15:56
dhellmannnothing prevents deployers from choosing to use paste, so I think we're good15:56
r1chardj0n3sand here I thought the difficult part would be re-writing Horizon in angularjs15:56
r1chardj0n3s:)15:57
r1chardj0n3sI think a spec might be useful if only to point people at if per-project changes are necessary15:57
r1chardj0n3sso I will do that first15:57
r1chardj0n3sactually, I will coffee first15:58
dhellmannthat seems wise15:58
dhellmannalso that :-)15:58
dimsum_dhellmann: quick question, who/how is ChangeLog file generated?15:59
dhellmanndimsum_: pbr generates that when installing or building the sdist file15:59
dhellmanndimsum_: it works for our doc builds because they happen in tox, so our libs are installed before sphinx runs15:59
dimsum_dhellmann: i am running tox -e docs in oslo.rootwrap for example and i don't see it get generated16:00
dhellmannok, I'll look at it with you after the meeting16:01
openstackgerritVictor Sergeyev proposed a change to openstack/oslo.db: Fix DBReferenceError on MySQL and SQLite  https://review.openstack.org/11632416:02
*** dims_ has joined #openstack-oslo16:09
*** dims_ has quit IRC16:09
*** dims_ has joined #openstack-oslo16:10
*** dims_ has quit IRC16:10
*** dims has joined #openstack-oslo16:11
*** dims has quit IRC16:11
*** amrith is now known as _amrith_16:12
*** alexpilotti has joined #openstack-oslo16:12
*** dims_ has joined #openstack-oslo16:13
*** dimsum_ has quit IRC16:14
*** dims_ is now known as dimsum_16:14
morganfainbergzzzeek, i think it is related to that thread local stuff (the client re-use)16:14
morganfainbergzzzeek in memcached16:14
zzzeekyup16:14
*** dimsum_ has quit IRC16:14
morganfainbergzzzeek, not sure the easiest way to solve it for keystone though.16:15
morganfainbergzzzeek, unless you have an idea for it from a larger standpoint.16:15
*** dimsum_ has joined #openstack-oslo16:16
zzzeekmorganfainberg: I dont have a full view of the nature of hte issue.  A Python threadlocal should clean out state from threads that have died16:17
*** dimsum_ has quit IRC16:17
morganfainbergzzzeek, it might be as simple as under load GC delays and socket holding (kernel wait states) are biting them16:17
zzzeekthat is possible.     threadlocals aren’t a great path to “scale” :)16:17
morganfainbergexactly16:18
morganfainbergzzzeek, we did something like this: https://github.com/openstack/keystonemiddleware/blob/master/keystonemiddleware/auth_token.py#L1085-L1109 for middleware. it's subwonderful for a number of reasons but solves the issue under eventlet-based memcache requesting16:19
morganfainbergit should never allocate more than the number of active greenthreads. but... errors in the connections could get ugly16:19
zzzeeki think we need a memcache client that doesnt have a threadlocal hardcoded into it16:19
morganfainbergzzzeek, ++16:19
morganfainbergprobably16:19
morganfainbergi also *hate* python's memcache libraries.16:20
morganfainbergok hate is a bit strong16:20
morganfainbergdislike with enthusiasm16:20
morganfainberg:P16:20
morganfainbergthere are a lot of weird edge cases i've seen over the years.16:20
morganfainberghm16:22
morganfainbergbut more importantly, keystone runs single eventlet worker in Icehouse.16:22
morganfainbergthis might just be rooted in eventlet weirdness.16:22
*** praneshp has joined #openstack-oslo16:22
zzzeeknot really sure :)16:23
zzzeeki havent worked on this issue16:24
*** leakypipes has quit IRC16:24
*** dims has joined #openstack-oslo16:24
*** dims has quit IRC16:24
morganfainbergi'll try and get a devstack stood up and duplicate the issue. not sure how successful i'll be tbh though16:26
*** flaper87 is now known as flaper87|afk16:28
*** flaper87|afk is now known as flaper8716:31
openstackgerritA change was merged to openstack/oslotest: Add fixture for mock.patch.multiple  https://review.openstack.org/11908516:32
*** dims has joined #openstack-oslo16:33
*** yamahata has quit IRC16:33
morganfainbergzzzeek, confirmed eventlet breaks threadlocal magic16:48
YorikSarflaper87: What do you think about https://review.openstack.org/112669 (futures-based ReplyWaiter)? (not to disrupt meeting)16:48
morganfainbergzzzeek, under apache no issue we sit at one per worker16:48
morganfainbergzzzeek, under eventlet we spiral out of control and leak connections like crazy16:48
morganfainbergzzzeek, i think the solution is going to be using a pool like keystonemiddleware does16:49
zzzeekmorganfainberg: ok how does that work around this: https://github.com/linsomniac/python-memcached/blob/master/memcache.py#L12916:49
zzzeekthe whole Client is a threading.local16:49
zzzeekso everything in it, is a thread local16:49
morganfainbergzzzeek, i think it's because we're wrapping the object client.16:50
morganfainbergzzzeek, i *think*.16:50
zzzeekits a horrible design16:50
morganfainbergzzzeek, yeah.16:50
zzzeekif you are in a diffrent thread, you will get brand new state.  i dont see how you can “wrap” that16:50
morganfainbergzzzeek, but basically we're leaking a ton of clients under eventlet.16:50
morganfainbergzzzeek, it's eventlet making things look like new contexts each request16:50
zzzeekmorganfainberg: i think if we cant cahnge this client we shoudl be monkeypatching Client.__mro__16:50
zzzeekerr Client.__bases__16:51
morganfainbergzzzeek, ughhhhhhhhhh16:51
morganfainbergzzzeek, probably :(16:51
YorikSarmorganfainberg, zzzeek: I've implemented a backend for dogpile that would craete connection pool and strip threading.local off python-memcached's Client.16:51
zzzeekmorganfainberg: its a bug in memcached16:51
zzzeekYorikSar: you patch Client.__bases__ ? :)16:51
YorikSarI might take some time to creae pull requrests to python-memcached and dogpile.cache16:51
YorikSarzzzeek: Not exactly...16:51
zzzeekYorikSar: work on python-memcached :)16:52
*** jogo is now known as flashgordon16:52
morganfainbergYorikSar, have some example code?16:52
morganfainbergi'm curious.16:52
morganfainbergand yes python-memcached needs to be fixed but likely we need to provide a fix at least in keystone until we get upstream fixed (and backported to icehouse)16:52
YorikSarMemcacheClient = type('MemcacheClient', (object,), dict(memcache.Client.__dict__))16:53
YorikSarmorganfainberg, zzzeek: But that should be a separate class in python-memcached.16:53
zzzeekYorikSar: yeah you can also swap MemcacheClient.__bases__. might be better.  but yes, python-memcached should not do this by default, or provide an optoin, or something16:54
zzzeekmorganfainberg: yes, but you need this monkeypatch to fix for now.  otherwise its still a thread local16:54
morganfainbergzzzeek, *sigh* yeah ickyness. but at least we know what is going on16:55
YorikSarzzzeek: Would you accept pull request with my connection pool to dogpile.cache (once python-memcached provides non-threadlocal Client)?16:56
zzzeekYorikSar: id have to see it.  does the pool work with any of the memcache backends ?16:57
YorikSarzzzeek: It's as abstract as it gets. So we can use it with any backend (just as threadlocal one)16:57
zzzeekYorikSar: is it somthign that can knid of be an option people can pull in ?   taht would be great16:57
zzzeekYorikSar: like a wrapper backend16:57
YorikSarzzzeek: I think we can add an argument like "which pool to use".16:58
zzzeekYorikSar: if its of general use and has good tests and is something people pull in then that’s a good start16:58
YorikSarzzzeek: Keep using threadlocal by default and provide some (at least one) options16:58
zzzeekYorikSar: hm do i have the threadlocal in dogpile itself ?16:58
zzzeekYorikSar: i do dont i16:58
YorikSarzzzeek: Yep16:59
zzzeekYorikSar: yeah16:59
zzzeekYorikSar: :)16:59
zzzeekYorikSar: theadlocal on threadlocal, we have to fix that :)16:59
YorikSarzzzeek: Exactly :)16:59
zzzeekYorikSar: i dont know that python-memcached had that threadlocal when i first used it16:59
*** tedross has joined #openstack-oslo17:00
morganfainbergyay extra thread localing.17:00
morganfainbergzzzeek, so i heard you liked thread local... </bad meme reference>17:00
*** viktors is now known as viktors|afk17:01
YorikSarzzzeek: I got a bug "Keystone doesn't reuse connections to memcached" (leads to thousands of connections and "Too many open files"). I went to dogpile.cache and said "Ah, unavoidable threadlocal here...", started looking deeper and found python-memcached... Citing recent xkcd post: turtles all the way down17:01
morganfainbergYorikSar, ++17:01
morganfainbergdoes pylibmc or bmemcached do the samething?17:02
zzzeekre: dogpile patches, if we are using these things in load test envrionemnts, that helps a lot17:02
zzzeekmorganfainberg: pylibmc has an optional pool.  but its in C and probbly doesnt support eventlet patching17:02
morganfainbergick17:02
morganfainbergso we'd need explicit time.sleep(0) support17:02
morganfainbergfor yielding.17:02
* dhellmann crosses his fingers again for the oslotest release...17:03
YorikSarzzzeek: btw, my patch will be released in Mirantis OpenStack, so it can get some production use even before I propose it to dogpile.cache :)17:03
zzzeekYorikSar: OK17:03
morganfainbergyou know. I'm tempted to say maybe it's time to just re-write / new impl of non-silly memcache python lib.17:03
zzzeekmorganfainberg: +117:03
*** i159 has quit IRC17:03
YorikSarmorganfainberg: There already is one :)17:03
morganfainbergzzzeek, it's not a complex protocol17:04
YorikSarmemcached_client17:04
zzzeekmorganfainberg: its not17:04
morganfainbergYorikSar, is it something actively developed?17:04
morganfainbergYorikSar and/or widely available17:04
*** openstackgerrit has quit IRC17:04
morganfainbergYorikSar, doesn't look like it's on pip and not well distributed.17:05
* YorikSar looking for it...17:05
YorikSarHere it is: https://github.com/mixpanel/memcache_client17:05
morganfainbergyeah17:05
*** harlowja_away is now known as harlowja17:05
morganfainbergtoabctl, doesn't look very active17:05
morganfainbergnot toabctl, YorikSar17:06
YorikSarIt doesn't support much, but from the blog post with rationale I gather they had almost the same problems: eventlet and bad-bad python-memcached (swallowing errors).17:06
morganfainbergyeah17:06
YorikSarmorganfainberg: Yep, It's not very active. But we can make it one ;)17:06
morganfainbergYorikSar, ++ or we fork / stackforge it get it on pip17:07
morganfainbergbut that isn't a juno target now. that'd be Kilo at best.17:07
YorikSarmorganfainberg: But on the other hand, python-memcached isn't that bad for our case, actually... Just threadlocal stuff bites our green threads.17:07
morganfainbergwe'd need some mokey-patching for juno / icehouse17:07
morganfainbergYorikSar, yeah not sold we should re-impl python-memcached but not sold we're not going have issues with python-memcached long term still.17:08
morganfainbergYorikSar, i think we should work on a monkeypatch / local fix and then do the gut check on where we are for getting python-memcached fixed.17:09
ekarlso-zzzeek: around for a sqla core q ?17:09
zzzeekyeah17:09
YorikSarmorganfainberg: python-memcached has way more functionality in. E.g. dogpile.cache won't even work with memcache_client since it doesn't have 'add' support.17:09
morganfainbergYorikSar, i mean if we make memcached_client the target we would need to make it full featured.17:09
ekarlso-zzzeek: http://paste.openstack.org/show/106653/17:10
ekarlso-ignore the ipdb17:10
ekarlso-but how can I have it return a id if there's no pkey ?17:10
ekarlso-tried the returning thing but I think it fails with sqlite17:10
morganfainbergYorikSar, or fork/re-impl17:10
zzzeekekarlso-: sqlite doesnt support RETURNING (nor does MySQL ...)17:10
*** markmcclain1 has quit IRC17:10
ekarlso-zzzeek: so if no pkey you're bork ?17:11
zzzeekekarlso-: core gives you result.last_inseted_pk17:11
ekarlso-zzzeek: is that "safe" ?17:11
zzzeekekarlso-: let me get the name17:11
ekarlso-zzzeek: uhm, but problem17:11
zzzeekekarlso-: result.inserted_primary_key17:11
ekarlso-the row doesn't have a pk17:11
ekarlso-ehm, table17:11
zzzeekekarlso-: that is the PK of the table as inserted17:11
*** HenryG is now known as HenryThe8th17:12
zzzeekekarlso-: dont use returning() if you want to call inserted_primary_key17:12
YorikSarmorganfainberg, zzzeek: Here's my code that went to MOS: https://gist.github.com/YorikSar/290fe236aca4713ad785 - it's been made as non-intrusive as it could, so for real work it'll need some work on dogpile.cache's GenericBackend and python-memcached side.17:12
*** ildikov_ has joined #openstack-oslo17:12
ekarlso-zzzeek: but as I said, the table doesn't have a pkey :D17:12
zzzeekekarlso-: then you have no way to locate distinct rows within it17:12
zzzeekekarlso-: wont work anywhere17:13
morganfainbergYorikSar, and for icehouse and juno we won't be able to rely on that unless we pull that into keystone17:13
zzzeekYorikSar: background thread, huh ?17:13
morganfainbergYorikSar, because requirements.17:13
YorikSarmorganfainberg: Yep. So only distrib-specific patches are possible here.17:14
YorikSarzzzeek: We can make it very optional. But it's really useful for production - purging unused connections.17:14
*** ildikov_ has quit IRC17:14
YorikSarzzzeek: And it won't live longer that pool object.17:15
zzzeekYorikSar: OK…this is a lot of heavy stuff to put straight into dogpile17:15
zzzeekYorikSar: Im +1 for pluggable pools17:15
*** ildikov has quit IRC17:15
morganfainbergzzzeek, i agree, this is a lot of stuff to add. but pluggable pools would be nice.17:15
YorikSarzzzeek: Yeah, I actually thought about doing a separate lib that would do proper yet abstract connection pooling.17:16
zzzeekmorganfainberg: pluggable pools yes.   Some basic pools yes.  the background thing, eh maybe.   it pushes people towards certain implementations that might not be what’s appropriate for them17:16
YorikSarzzzeek: I didn't find one on PyPI (only very constrained twitter one).17:16
morganfainbergzzzeek, ++17:16
zzzeekYorikSar: I’d say, a pluggable pool system and a basic pool in dogpile and we can link out to a more “this is the heavyweight one we use in production” with the backgrounding and all that on pypi17:17
morganfainbergzzzeek, big +1 to that17:17
YorikSarzzzeek: And then we'll need another pack of setuptools endpoints for pools.17:17
morganfainbergYorikSar, not the end of the world17:18
zzzeekYorikSar: b.c. this pool is pretty intense with the notify_all() and all that :)17:18
dstanekmorganfainberg: at one time there was a spec for this - https://blueprints.launchpad.net/oslo/+spec/eventlet-safe-memcache-client17:18
dstanekseems to be gone now17:18
zzzeekYorikSar: you want the pools via endpoints?   OK….you can get by without that…either way...17:18
morganfainbergdstanek, we *might* just jump on that for Kilo17:18
YorikSarzzzeek: btw, if we have it in a separate lib, dogpile will still have to specialize it for memcached...17:18
zzzeekYorikSar: yes.   i just want the fancy wait/release/acquisiton count/backgrounding thread not to be in dogpile.cache proper, its too much code to maintain17:19
zzzeekYorikSar: this kind of stuff breaks a lot17:19
zzzeekYorikSar: when someone else uses it ina different way than you do17:19
zzzeekYorikSar: sqlalchemy conneciton pool has taken years and years17:19
zzzeekYorikSar: and is not quite as intense as this :)17:19
YorikSarzzzeek: Hey, my code is unbreakable :)17:19
zzzeekYorikSar: yup17:19
YorikSarzzzeek: I totally understand. Btw, I think even threadlocal 'pool' might be one of the options for that lib.17:20
morganfainbergYorikSar, right until we break it :P *oops*17:20
YorikSarzzzeek: From what I understand sqlalchemy has very specialized pool, isn't it?17:22
zzzeekYorikSar: it is17:22
YorikSarzzzeek: Or we can cut some of its pieces out and reuse for memcached?..17:22
* dhellmann disappears for lunch17:22
zzzeekYorikSar: im not really sure.   it started with a goofy approach years ago17:22
*** dhellmann is now known as dhellmann_17:23
YorikSarzzzeek: I think it worth investigating.17:23
zzzeekYorikSar: feel free :)17:23
YorikSarzzzeek: Yeah. I think I will look into it.17:23
morganfainbergok so. hm.17:24
morganfainbergforward looking we have a lot of options17:24
morganfainbergnow... gotta solve Juno and Icehouse. is monkey patch going to really be the only way?17:24
YorikSarmorganfainberg: I guess fixing those will have to wait until libraries get ready...17:26
morganfainbergyeah17:26
morganfainbergwell we can't add new dependencies17:26
morganfainbergis the bigger issue17:26
morganfainbergand we *do* recommend apache deployment over eventlet, but we have to support eventlet17:27
YorikSarmorganfainberg: I think it will be another recomendation: install this lib as well and set up dogpile that way.17:27
morganfainbergYorikSar, sure, that doesn't really fly in a lot of orgs.17:29
morganfainbergYorikSar they limit the dependencies.17:29
YorikSarmorganfainberg: Well... It seems to be up to distro maintainer.17:30
morganfainbergYorikSar, that and the deployers17:30
YorikSarmorganfainberg: Yeah...17:30
morganfainbergYorikSar, my bigger concern is deployers say we ned requirements <list>17:31
morganfainbergand if you say "oh to solve this use this other thing" they wont because it's not certified as ok17:31
morganfainberguntil upgrade to the next version of OS that really depends on it17:31
morganfainbergs/OS/openstack17:31
YorikSarmorganfainberg: Well... Doesn't upgrade of minor version count?17:32
morganfainbergYorikSar, no not for new dependencies17:32
YorikSarmorganfainberg: Then they'll have to patch Keystone as we did...17:32
morganfainbergYorikSar again, you're asking someone to expand the requirements on a "stable" release17:32
morganfainbergYorikSar, right the thought is we need that patch for keystone in Juno and backported to icehouse17:33
morganfainbergand in K we can leverage the new shiney working libs17:33
YorikSarmorganfainberg: Do you think code like this plus some duct-taping in kvs has a chance to land in stable branch?17:34
morganfainbergif we're not adding new config options i think we might be able to17:34
morganfainbergthis is a nasty bug.17:34
morganfainbergif the code *really* only fixes the bug as tightly as we can address it, it should be fine for stable17:35
*** AAzza is now known as AAzza_afk17:35
YorikSarmorganfainberg: It will still require some config changes - user has to select this backend in [cache] section.17:35
morganfainbergthat is a choice for the deployer, and for the token memcache backend we control what dogpile backend is used https://github.com/openstack/keystone/blob/master/keystone/token/persistence/backends/memcache.py#L2417:37
dimsdhellmann_: not sure if you saw that i got pbr+sphinx auto-generate to hide private and common modules17:37
morganfainbergYorikSar, we're not needing to change any config options in keystone common.config17:37
morganfainbergand actually17:37
YorikSarmorganfainberg: It actually fixes 2 bugs: https://bugs.launchpad.net/keystone/+bug/1360446 and https://bugs.launchpad.net/keystone/+bug/133205817:37
morganfainbergwe control somewhat the backend for memcache in kvs anyway17:38
morganfainberghttps://github.com/openstack/keystone/blob/master/keystone/common/kvs/__init__.py#L30-L3317:38
YorikSarmorganfainberg: Yep, I patch that too...17:38
morganfainbergwe can do some magic there17:38
morganfainbergin the manager that wraps pylibmc/bmemcached/etc17:38
YorikSarmorganfainberg: Ok, I got to go now. I guess I'll push this change to upstream Gerrit and we'll see17:40
morganfainbergthanks.17:40
YorikSarhow it can be landed...17:40
* morganfainberg is on stable-maint so can help champion that.17:40
YorikSarSince it doesn't look like something I'd like to keep around in master...17:40
morganfainbergwell we will need it for juno still :(17:40
morganfainbergbut in K we can rip it out for better approaches / new dependencies17:41
morganfainbergi don't like it, but it is a real probelm17:41
* YorikSar gets ready to propose patch to stable/juno before it exists17:41
morganfainbergoh you *may* want to make the patching logic in the keystone.common.environment.use_eventlet function17:41
morganfainbergso we only patch when we use eventlet17:41
YorikSarmorganfainberg: Ok, I'll create a CR later today then. See you soon.17:41
morganfainbergYorikSar, if needed i can help with that.17:42
morganfainbergYorikSar, cheers and thanks!17:42
morganfainbergdstanek, ^ info on moving on that stuff for memcache ick17:42
harlowjadims do u mind re +2ing https://review.openstack.org/#/c/117424/ and https://review.openstack.org/#/c/118731/ (i had to update them due to a requirements file split that went in before these and caused these two to need a rebase)17:46
dimsharlowja: done17:47
harlowjathx17:47
*** AAzza_afk is now known as AAzza17:52
*** jaypipes has joined #openstack-oslo17:53
*** dhellmann_ is now known as dhellmann18:02
*** jgrimm is now known as zz_jgrimm18:09
*** jaypipes is now known as leakypipes18:09
*** openstackgerrit has joined #openstack-oslo18:10
r1chardj0n3scan anyone explain how oslo/middleware/openstack/common is managed please?18:37
openstackgerritA change was merged to openstack/oslotest: warn against sorting requirements  https://review.openstack.org/11873418:38
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Ensure the cachedproperty attribute creation/setting is thread-safe  https://review.openstack.org/11944318:52
bknudsonr1chardj0n3s: it's synced from oslo-incubator18:52
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Ensure the cachedproperty creation/setting is thread-safe  https://review.openstack.org/11944318:53
*** flaper87 is now known as flaper87|afk19:01
*** openstackgerrit has quit IRC19:01
*** openstackgerrit has joined #openstack-oslo19:02
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Ensure the cachedproperty creation/setting is thread-safe  https://review.openstack.org/11944319:02
r1chardj0n3sbknudson: how is the sync done?19:05
bknudsonr1chardj0n3s: https://wiki.openstack.org/wiki/Oslo#Syncing_Code_from_Incubator19:05
r1chardj0n3sThanks!19:06
*** stevemar has quit IRC19:23
*** stevemar has joined #openstack-oslo19:24
*** AAzza is now known as AAzza_afk19:40
r1chardj0n3sdhellmann: looks like that original change (https://review.openstack.org/#/c/21958) wasn't actually compliant :/19:58
dhellmannr1chardj0n3s: with cors you mean?19:59
r1chardj0n3sdhellmann: yeah19:59
r1chardj0n3sdhellmann: I'm currently re-reading the CORS W3C standard and there's several deviations20:00
r1chardj0n3sdhellmann: also, what do I need to do to replace testr with py.test in the test suite? :)20:00
dhellmannr1chardj0n3s: sigh20:00
mtreinishdhellmann: on https://bugs.launchpad.net/oslo.config/+bug/1365136 I'm pretty sure that's just on the oslo-incubator sample generator20:01
dhellmannr1chardj0n3s: start a thread on the ML and get some consensus, I suppose20:01
dhellmannmtreinish: that version of the generator is being deprecated20:01
r1chardj0n3sdhellmann: I'll put that on my TODO :)20:01
mtreinishI was looking at the code for the fancy new one (which is a lot nicer) and it looks like it properly sorts the lists20:01
dhellmannmtreinish: so maybe I can close that bug?20:01
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Remove the dependency on prettytable  https://review.openstack.org/11762920:01
dhellmannmtreinish: awesome, closing :-)20:01
mtreinishdhellmann: well it's still a tempest bug until we can switch to using the new on in tox -epep820:01
dhellmannmtreinish: yeah, I was going to mark it wontfix for oslo.config, but maybe I should just remove oslo.config from the project list20:02
mtreinishr1chardj0n3s: you're still tilting at that windmill?20:02
mtreinishdhellmann: yeah that's probably better, or mark it as invalid for oslo.config20:02
r1chardj0n3smtreinish: I've spent more time fighting testr than actually being productive, so yeah20:02
dhellmannr1chardj0n3s: I am  not opposed to changing that, but don't really have time to champion the effort right now.20:03
r1chardj0n3sdhellmann: ok20:03
dhellmannr1chardj0n3s: and I'd like to not have oslo be different, so it would be better if we got some sort of "yes, that's ok" from infra and some other projects before we started making changes20:04
r1chardj0n3sdhellmann: roger20:04
openstackgerritMatt Riedemann proposed a change to openstack-dev/hacking: Update H501 to check for self.__dict__  https://review.openstack.org/11946020:08
*** _amrith_ is now known as amrith20:20
openstackgerritJoshua Harlow proposed a change to openstack/taskflow: Add existing types to generated documentation  https://review.openstack.org/10693020:42
*** miqui has quit IRC20:47
*** tedross has quit IRC20:55
*** pcm_ has quit IRC21:08
*** dims has quit IRC21:08
*** dims has joined #openstack-oslo21:12
*** jecarey has quit IRC21:13
*** leakypipes is now known as jaypipes-afk21:14
*** jeckersb is now known as jeckersb_gone21:25
openstackgerritRichard Jones proposed a change to openstack/oslo-specs: Add CORS middleware spec  https://review.openstack.org/11948521:28
*** openstackgerrit has quit IRC21:31
*** openstackgerrit has joined #openstack-oslo21:32
openstackgerritRichard Jones proposed a change to openstack/oslo-specs: Add CORS middleware spec  https://review.openstack.org/11948521:33
*** zzzeek has quit IRC21:41
*** alexpilotti has quit IRC21:42
*** stannie1 has quit IRC21:43
*** dims_ has joined #openstack-oslo21:44
openstackgerritValeriy Ponomaryov proposed a change to openstack/oslo.utils: Make safe_encode func case-insensitive  https://review.openstack.org/11948921:45
*** dims_ has quit IRC21:46
*** dims has quit IRC21:47
*** dims_ has joined #openstack-oslo21:47
*** dims_ has quit IRC21:57
*** dims has joined #openstack-oslo21:58
*** dims has quit IRC22:06
*** kgiusti has left #openstack-oslo22:11
*** stevemar has quit IRC22:28
*** bknudson has quit IRC22:30
openstackgerritA change was merged to openstack/oslo.vmware: Work toward Python 3.4 support and testing  https://review.openstack.org/11879522:44
*** mtanino has quit IRC22:58
*** harlowja is now known as harlowja_away23:00
*** praneshp has quit IRC23:23
*** praneshp has joined #openstack-oslo23:26
*** harlowja_away is now known as harlowja23:31
*** arnaud__ has joined #openstack-oslo23:40
*** jaypipes-afk has quit IRC23:40

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