Thursday, 2014-10-02

*** charlesw has joined #magnetodb01:10
*** vnaboychenko has quit IRC01:30
*** vnaboychenko has joined #magnetodb01:58
*** vnaboychenko has quit IRC02:35
*** charlesw has quit IRC02:55
*** jeromatron has joined #magnetodb02:55
*** openstackgerrit has quit IRC03:08
*** openstackgerrit has joined #magnetodb03:11
*** jeromatron has quit IRC03:14
*** openstackgerrit has quit IRC03:18
*** openstackgerrit has joined #magnetodb03:19
*** jeromatron has joined #magnetodb04:00
*** rushiagr_away is now known as rushiagr04:12
*** vnaboychenko has joined #magnetodb05:16
*** jeromatron has quit IRC05:59
*** jeromatron has joined #magnetodb06:13
*** jeromatron has quit IRC06:15
*** jeromatron has joined #magnetodb06:24
*** romainh has joined #magnetodb06:40
*** jeromatron has quit IRC06:41
*** vnaboychenko has quit IRC07:04
*** rushiagr is now known as rushiagr_away08:27
*** rushiagr_away is now known as rushiagr08:33
*** rushiagr is now known as rushiagr_away09:23
*** rushiagr_away is now known as rushiagr09:58
openstackgerritDmitriy Ukhlov proposed a change to stackforge/magnetodb: API level refactoring  https://review.openstack.org/12540411:28
*** romainh has quit IRC11:44
*** romainh has joined #magnetodb11:48
*** romainh has left #magnetodb11:48
*** isviridov_away is now known as isviridov12:08
isviridovaostapenko, around?12:09
*** romainh has joined #magnetodb12:17
aostapenkoisviridov, hi12:18
isviridovConcerning https://wiki.openstack.org/wiki/MagnetoDB/specs/monitoring-health-check12:19
isviridovCould you please update cql query as we discussed and add seection about implementation?12:20
isviridovI believe we have to add the same for streaming api as well.12:20
isviridovI mean within this BP12:20
aostapenkoisviridov: yes, I believe so too12:28
*** romainh has quit IRC12:31
*** romainh has joined #magnetodb12:32
openstackgerritIlya Sviridov proposed a change to stackforge/magnetodb: (DRAFT)Monitoring health check request  https://review.openstack.org/12510812:37
*** achuprin_ has joined #magnetodb12:52
achuprin_Hello everyone!12:52
isviridovachuprin_, hello12:54
isviridovaostapenko, just renamed your patch with adding (DRAFT) due to not approved BP12:54
isviridovHello everyone!12:57
isviridovHaving a meeting in mins12:58
*** keith_newstadt has joined #magnetodb12:58
isviridovI believe we can start12:59
isviridov#startmeeting magnetodb13:00
openstackMeeting started Thu Oct  2 13:00:02 2014 UTC and is due to finish in 60 minutes.  The chair is isviridov. Information about MeetBot at http://wiki.debian.org/MeetBot.13:00
openstackUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.13:00
openstackThe meeting name has been set to 'magnetodb'13:00
isviridovHello everybody13:00
idegtiarovo/13:00
isviridovWho is today with us?13:00
achuprin_o/13:00
ikhudoshyno/13:00
dukhlov+113:01
isviridovWelcome on board idegtiarov!13:01
idegtiarovthanks a lot13:01
isviridovSo the current agenda #link https://wiki.openstack.org/wiki/MagnetoDB/WeeklyMeetingAgenda13:01
isviridovLet us start from action items from last meeting13:02
keith_newstadthi all13:03
isviridovachudnovets provide numbers about performance impact from big PKI token in ML13:03
achudnovetshi13:03
achudnovetsit's done13:03
aostapenkoHi13:03
isviridov#topic Go through action items13:04
isviridovachudnovets, aostapenko welcome13:04
isviridovSo, I think we have finished with this BP13:04
achudnovets[openstack-dev][MagnetoDB] PKI tokens size performance impact in mailing list13:04
isviridovI mean we won't add any additional session layer13:04
achudnovetsisviridov: I think so13:04
isviridovdukhlov, ikhudoshyn agree?13:05
ikhudoshyn+113:05
dukhlov+113:05
isviridovGreat!13:05
isviridovaostapenko, your AI is next "write a spec about healthcheck"13:06
isviridovI've seen it. You know my suggestions13:06
isviridovaostapenko, anything to add?13:07
aostapenkoisviridov, here it is: https://wiki.openstack.org/wiki/MagnetoDB/specs/monitoring-health-check13:07
isviridovaostapenko, please add the link to BP as well #link https://blueprints.launchpad.net/magnetodb/+spec/monitoring-health-check13:07
aostapenkoI will do some changes there and let you know13:08
aostapenkoisviridov, ok13:09
isviridovdukhlov, ikhudoshyn please take a look at it I hope we will implement is during juno13:09
dukhlovsure13:09
isviridovdukhlov, ikhudoshyn but the spec is still not approved13:09
ikhudoshynyep, i got some questions regarding it13:09
isviridov#action dukhlov ikhudoshyn review spec for https://blueprints.launchpad.net/magnetodb/+spec/monitoring-health-check13:09
isviridovikhudoshyn, here?13:10
ikhudoshynwhy not..13:10
ikhudoshynas spec states we are to exec some query to underlying C*13:10
ikhudoshynhow this will help us to verify keystone operability?13:10
ikhudoshynif we are to allow this check w/o any credentials13:11
isviridovI believe it is Q to aostapenko13:11
ikhudoshynaostapenko, have you thought about that?13:11
ikhudoshynaostapenko, if not, we could just take it offline13:12
ikhudoshynand get back later to it13:12
aostapenkoikhudoshyn, our goal is to check its availability13:12
ikhudoshynexactly, that's what i'm asking about13:13
* isviridov has found the checking keystone in spec13:13
ikhudoshynikhudoshyn, has fount it as well13:14
ikhudoshyns/fount/found13:14
ikhudoshynsimple GET / seem not to be enough13:14
aostapenkoso this check is an easy way to find out if magnetodb has connectivity to keystone and cassandra13:15
ominakovikhudoshyn, +1 it maybe wrong keystone13:15
ikhudoshyn_connectivity_.. got it13:15
dukhlovor not keystone at all13:16
* isviridov ))))))13:16
isviridovEverything is possible13:16
isviridovBut let us remember that it is basic healthcheck - fast and frequently called13:17
isviridovFor other cases the tempest exists13:17
ikhudoshynin production especially ))13:17
isviridovikhudoshyn, ominakov next topic?13:17
ikhudoshynagree lets move on13:17
ominakovyep13:17
isviridovNext AI13:18
isviridovikhudoshyn write a spec for migration to oslo.messaging.notify13:18
ikhudoshynmy bad, no updates here13:18
isviridovnp, looking forward13:18
isviridovThe next is my13:18
isviridovisviridov look how to created magentodb-spec repo13:18
isviridovActually no upates about AI, but let me share my view and plans13:19
isviridovIt seems that formal spec review process would be very useful to track the statuses13:20
isviridovTill we start using it, I'm marking all patches connected to not approved BP and specs and (DRAFT)13:20
isviridovSo, it is clear what should be reviews first13:21
isviridovAny thoughts, questions here?13:21
ikhudoshynhmm /me thought we use launchpad to track statuses13:21
*** charlesw has joined #magnetodb13:21
ikhudoshynam i wrong?13:21
ikhudoshynwhat's wrong with specs binded to BPs?13:22
isviridovikhudoshyn, your are right13:22
isviridovThere is no way to comment every line, like we have it in gerrit13:22
ikhudoshynic13:23
isviridovAnother usefull thing it can be released and versioned according to project milestones. We don't have it in wiki13:23
isviridovikhudoshyn, next topic?13:24
ikhudoshynjust a sec13:24
isviridovSure13:24
ikhudoshyncould u at least hint us, mdb spec repo, what it is (should be)?13:24
ikhudoshynjust a repo on github?13:24
ikhudoshynwith gerrit process?13:25
charleswI got to go to an interview, will miss this meeting13:25
isviridovBoth, as any other project13:25
ikhudoshynsure charlesw13:25
isviridovcharlesw, hello see you after meeting13:25
ikhudoshynisviridov, that makes sense13:25
isviridov#link https://github.com/openstack/nova-specs13:25
isviridov#link https://review.openstack.org/#/q/status:open+openstack/nova-specs,n,z13:25
isviridov#link http://docs-draft.openstack.org/41/125241/1/check/gate-nova-specs-docs/e966557/doc/build/html/specs/juno/add-all-in-list-operator-to-extra-spec-ops.html13:26
isviridovikhudoshyn, some examples13:26
isviridovNext topic13:26
isviridovajayaa write spec for RBAC13:26
isviridovI could say on behalh13:27
isviridovSo, we have a spec #link https://wiki.openstack.org/wiki/MagnetoDB/specs/rbac13:27
isviridovajayaa expects to finish it during juno13:28
isviridovdukhlov, ikhudoshyn let us look at it i spare time13:28
ikhudoshynajayaa seem to be not with us today13:28
isviridovYeap, it is big hilydays in India13:28
ikhudoshynI did, wrote some thoughts to ajayaa13:28
isviridov* holydays13:28
isviridovikhudoshyn, great!13:29
isviridov#action ikhudoshyn dukhlov review https://wiki.openstack.org/wiki/MagnetoDB/specs/rbac13:29
ikhudoshynapart from some formal things it looks great13:29
isviridov#action isviridov start create spec repo like https://github.com/openstack/nova-specs13:29
*** vnaboychenko has joined #magnetodb13:30
isviridovI think we are ready to move forward13:30
ikhudoshynagree13:30
isviridov#topic Support and enforce user roles defined in Keystone13:30
isviridov#link https://blueprints.launchpad.net/magnetodb/+spec/support-roles13:30
isviridovI think we have discussed it13:30
isviridovNext one?13:30
dukhlovyes13:30
isviridovIt if the same as RBAC13:31
isviridov#topic Monitoring - healthcheck http request13:31
isviridov#link https://blueprints.launchpad.net/magnetodb/+spec/monitoring-health-check13:31
isviridovAnything to add here?13:31
isviridovaostapenko, ikhudoshyn next topic?13:32
ikhudoshynok13:32
aostapenkook13:32
isviridov#topic Monitoring API13:32
isviridov#link https://blueprints.launchpad.net/magnetodb/+spec/monitoring-api13:32
isviridovominakov, around?13:33
achudnovetsfinally :) I have couple questions about this one13:33
ominakovyes, i've faced some issues with implementation13:33
isviridovLet us start with questions13:33
isviridovachudnovets, please13:33
achudnovetsare we going to use keystone for /monitoring ?13:34
isviridovachudnovets, what do you mean?13:34
* isviridov has initiated the BP, so also interested in questions13:34
achudnovetsIf I'm writing custom software using monitoring API should I get keystone token for my requests?13:35
achudnovetsAnd what credentials I should use?13:36
achudnovetsthe same as for /data/ API?13:36
openstackgerritA change was merged to stackforge/magnetodb: Stop using intersphinx  https://review.openstack.org/12396213:36
ominakovachudnovets, now you should use the same creeds for the data API13:36
isviridovI see. It is good question.13:36
ikhudoshynhm.. we're to have RBAC soon, so it looks logical to have aproppriate role for that13:36
dukhlovI believe that we should pass authentification13:36
achudnovetsdukhlov: I disagree13:37
ikhudoshyndukhlov, pass == omit?13:37
ikhudoshynif so I disagree as well13:37
* isviridov ikhudoshyn has stolen words from my mouth13:37
dukhlovpass=use13:37
achudnovetswow :)13:38
keith_newstadtthe health of the service is sensitive information, so i agree that it needs to be protected13:38
isviridovdukhlov, +113:38
isviridovkeith_newstadt, +113:38
isviridovmonitoring role in keystone and RBAC?13:38
ikhudoshynisviridov, agree13:39
keith_newstadtagreed13:39
achudnovetsand I'm thinking that monitoring api user may need access to some data api's, list_tables for example13:39
isviridovachudnovets, does it helps?13:39
achudnovetsyep13:39
ikhudoshynachudnovets, actually I thought the idea is to separate the two13:40
ikhudoshynand to have in monitoring API everything needed13:40
ominakovikhudoshyn, +113:40
achudnovetsikhudoshyn: so we are going to move list_tables to monitoring?13:41
ikhudoshynnot move, just add)13:41
isviridovominakov, it there any API description?13:41
ikhudoshynhttps://wiki.openstack.org/wiki/MagnetoDB/specs/monitoring-api13:41
isviridovikhudoshyn, thank you13:41
ikhudoshynachudnovets, we already have it in spec13:42
isviridovachudnovets, here it is /{tenant_id}/monitoring/tables13:42
achudnovetswow, I see. Thanks, I missed this one )13:42
ominakovok, but we have a few issues with implementation on backend side13:43
isviridovominakov, could you please describe in spec the security aspect?13:43
ominakovisviridov, ok, sure13:43
isviridov#action ominakov describe security impact here https://wiki.openstack.org/wiki/MagnetoDB/specs/monitoring-api13:44
isviridovominakov, what is the issue?13:44
ominakovfirst: if we have many rows with equals hashkey and different rangekey, function estimatedKeys() return wrong number13:45
ikhudoshynominakov, sounds too technical for the first read..13:45
ominakovfor example: if we have 100000 rows it returns only 12813:45
ikhudoshynsry if I missed smth13:46
isviridovominakov, yeap I believe it is difficult to dive into context in 2 mins13:46
dukhlovit seems that estimatedKeys() returns cassandra wide rows count13:46
dukhlovnot CQL rows count13:46
* isviridov is looking at dukhlov and ominakov 13:47
* ikhudoshyn is looking at isviridov 13:47
ominakovikhudoshyn, ok, we can't get number of keys by JMX if we have many rows with equal hashkey13:47
dukhlovso we could only get count of HASH key used13:47
* isviridov hmmm13:47
ikhudoshynominakov, thanks, this is much more readable13:47
ikhudoshynit sounds like C* has not the feature we need out of the box13:48
dukhlovexactly13:48
ominakovyep13:48
ikhudoshynr we to implement it ourselves?13:48
* isviridov sees understanding of the problem13:48
dukhlovnow I see only one solution - create addition table for each our tables and store there keys13:50
* isviridov have a next topic to discuss on the tips of his fingers13:50
dukhlovcombine HASH and RANGE key here into HASH key13:50
ikhudoshynisviridov, agree, lets take it offline13:50
isviridovdukhlov, does it mean write twice?13:50
dukhlovyes13:50
dukhlovbut only keys for second table13:51
ikhudoshynisviridov, seems so. and even more, we should do that atomically13:51
isviridovdukhlov, wouldn't C* count type be faster and easier?13:51
dukhlovwe need to have set of keys13:51
dukhlovusing counter we can calculate count of put operation for example13:52
ikhudoshynisviridov, if u mean C* atomic counters, this seem unreliable13:52
dukhlovbut ew can execute billion put requests to put only single key13:52
ikhudoshyndukhlov, exactly13:52
isviridovdukhlov, got you13:52
ikhudoshynin fact we could distinct such situations13:53
ikhudoshynbut this is definitely an error-prone way13:53
isviridovdukhlov, ikhudoshyn, ominakov it seeems we don't have an agreement here. Let us move on13:54
ikhudoshyn+113:54
ominakov+113:55
isviridovAnd return back to it after the meeting13:55
isviridov#topic Migrate MagnegoDB API to pecan lib13:55
isviridov#link https://blueprints.launchpad.net/magnetodb/+spec/migration-to-pecan13:55
isviridovLooks like smth new for me13:55
isviridovidegtiarov, ?13:55
isviridovidegtiarov, around?13:56
ikhudoshynsounds like 'you shall not pass'13:56
ikhudoshyn))13:56
idegtiarovyes, probably description is not correct enough13:56
idegtiarovI will improve it13:56
ikhudoshynidegtiarov, it's ok, just a lil'bit funny13:57
ikhudoshynidegtiarov, actually sounds good13:57
isviridovI think it is great idea. We don't have any problems with it, but we have to do it eventually13:57
isviridovidegtiarov, what are your plans for this?13:58
idegtiarovI can take this task if you are not hurry with it13:58
idegtiarovshell I  prepare a spec?13:58
ikhudoshynfeel fre))13:58
ikhudoshyn* free13:58
isviridovidegtiarov, we are not :)13:58
isviridovikhudoshyn, idegtiarov +113:58
idegtiarovisviridov: ok )13:58
isviridovWaiting for your spec if so13:59
idegtiarovisviridov:  I am on my way13:59
isviridovidegtiarov, ikhudoshyn next topic?13:59
idegtiarovyes, lets go on13:59
isviridov#topic Open discussion13:59
isviridovYahooo!13:59
isviridovTake your time13:59
isviridovOops. We are out of timme14:00
isviridovThank you for participation14:00
isviridov#endmeeting14:00
openstackMeeting ended Thu Oct  2 14:00:28 2014 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)14:00
openstackMinutes:        http://eavesdrop.openstack.org/meetings/magnetodb/2014/magnetodb.2014-10-02-13.00.html14:00
openstackMinutes (text): http://eavesdrop.openstack.org/meetings/magnetodb/2014/magnetodb.2014-10-02-13.00.txt14:00
openstackLog:            http://eavesdrop.openstack.org/meetings/magnetodb/2014/magnetodb.2014-10-02-13.00.log.html14:00
isviridovdukhlov, ominakov, ikhudoshyn are you ready to continue about counters?14:01
ominakovisviridov, sure14:01
isviridovSo, the last was error-prone14:02
ikhudoshynok i'm here14:03
isviridovikhudoshyn, could you explain?14:03
isviridovIf I understood correctly we are goung to store all keys in separate table14:05
isviridovFor every item14:05
isviridovAnd delete it when item is deleted14:05
ikhudoshyn2 mins14:06
* isviridov will come back in 5 mins14:06
openstackgerritAndrei V. Ostapenko proposed a change to stackforge/magnetodb: (DRAFT) Monitoring health check request  https://review.openstack.org/12510814:07
ikhudoshynisviridov, I mean using C* atomic counters to count items on put/update/delete is error-prone, if we go this way I think we should run separate process time to time, to check and correct these counters14:12
ikhudoshynstoring keys in separate table sounds much better14:16
isviridovikhudoshyn, we can increment/decrement14:16
ikhudoshynbut still it will make our write operations much more complex14:16
achudnovetsikhudoshyn: and slow :(14:17
ikhudoshynisviridov, thats exactly what i'd prefer not to do14:17
ikhudoshynachudnovets, +114:17
ikhudoshynso for now both proposed ways look not that great14:17
isviridovNot sure what is slower increment or write new key14:18
ikhudoshynisviridov, increment will require much more complex logic14:18
isviridovcons for keys is space usage14:18
ikhudoshynthat's what i called error-prone14:18
isviridovikhudoshyn, what logic do you mean?14:18
ikhudoshynon each put u should first figure out whether u really insern NEW item. if not ur not supposed to inc counter14:19
isviridovikhudoshyn, ic14:19
ikhudoshynand more.. incrementing counter will still require separate write to C*, atomic with the main write14:20
ikhudoshynwhich is slow14:20
isviridovikhudoshyn, here it is the say and writing the keys14:21
isviridov* same14:21
ikhudoshyn??14:21
isviridovthe same as writing the keys to additional table14:21
isviridovI mean require additional write and more or less atomicity14:22
ominakovwe could just write keys to additional table14:22
ominakovwithout any check14:23
isviridovominakov, ikhudoshyn agree14:23
ikhudoshynominakov, agree14:24
isviridovdukhlov, your vote?14:24
romainhhi all, you're talking about estimateKeys(), counter and so on. Is there any bp explaining the need?14:24
isviridovromainh, hello14:24
ominakovhello, romainh14:24
ominakovwe have only general bp for monitoring-api14:25
isviridovromainh, yes, the thing is to count how much items do we have in table more details here #link https://wiki.openstack.org/wiki/MagnetoDB/specs/monitoring-api14:25
romainhhello guys, hope I'm not bother you14:25
isviridovromainh, we really need your eyes14:25
isviridovromainh, current problem is that our data structure is not mapped exactly to cassandra ones. So we can have different numbers of mdb items and C* keys14:28
isviridovCurrent idea is to keep the mdb items keys in separate C* table where we will have 1-1 mapping, so could use estimateKeys(),14:28
dukhlovI don't know how you going to implement this task using counters14:28
romainhestimateKeys() will estimate the number of keys in SSTable, it's fast14:30
dukhlovromainh: problem for now is that estimateKeys() estimates count of cassandra partition keys14:30
ikhudoshynromainh, we found issues with estimateKeys()14:31
dukhlovin case when we are using CQL table we need the same value as well as SELECT COUNT(*) returned14:31
ikhudoshynit seem to report incorrectly in some cases14:31
ominakovromainh, yes, and it works wrong if we have many rows with equal hash key and different range key14:32
romainhyes, estimateKeys() is an estimation in SSTable files based on index size, so it's a pretty raw metric14:33
*** vnaboychenko has quit IRC14:34
romainhit's not a good idea for fine grain stats14:34
ikhudoshynsome rough estimate might work for us, but this seem to be TOO rough14:35
romainhif we need accurate metrics, we will add an performance penalty inevitably14:36
ikhudoshynlooks like we're back to our savink-keys solution14:40
ikhudoshyn* saving14:41
isviridovikhudoshyn, +114:42
isviridovdukhlov, charlesw ?14:42
dukhlov+114:43
isviridovAgreed!14:43
isviridovominakov, it seems that BP scope has been extened14:43
ominakovok, i'll extend BP14:44
isviridovominakov, great!14:46
openstackgerritIllia Khudoshyn proposed a change to stackforge/magnetodb: Add 'last_updated' to 'table_info'  https://review.openstack.org/12431714:51
openstackgerritIllia Khudoshyn proposed a change to stackforge/magnetodb: Add 'last_updated' to 'table_info'  https://review.openstack.org/12431714:52
*** vnaboychenko has joined #magnetodb14:53
*** isviridov is now known as isviridov_meetin14:57
openstackgerritNuno Santos proposed a change to stackforge/magnetodb: Additional validation on index name and table name patterns  https://review.openstack.org/12544514:58
*** jeromatron has joined #magnetodb15:03
*** jeromatron has quit IRC15:10
*** jeromatron has joined #magnetodb15:10
*** jeromatron has quit IRC15:11
romainhikhudoshyn: "some rough estimate might work for us" -> What accuracy ratio would do the trick?15:37
ikhudoshynwell, now we get response 128 when we actually have 100k items inserted))15:45
ikhudoshynmb we just use it wrong way15:45
openstackgerritIllia Khudoshyn proposed a change to stackforge/magnetodb: Add 'last_updated' to 'table_info'  https://review.openstack.org/12431715:47
romainhikhudoshyn: so, you have a hundred of wide rows. I will look at the items SSTable representation in CQL to get an idea16:21
*** romainh has quit IRC16:47
openstackgerritAndrei V. Ostapenko proposed a change to stackforge/magnetodb: (DRAFT) Monitoring health check request  https://review.openstack.org/12510816:47
*** isviridov_meetin is now known as isviridov_away17:05
*** jeromatron has joined #magnetodb17:11
*** keith_newstadt has quit IRC17:48
*** jeromatron has quit IRC18:43
*** jeromatron has joined #magnetodb18:49
*** rushiagr has quit IRC19:01
*** rushiagr has joined #magnetodb19:19
*** rushiagr is now known as rushiagr_away20:23
*** rushiagr_away is now known as rushiagr20:23
*** rushiagr is now known as rushiagr_away20:53
*** charlesw has quit IRC22:26
*** charlesw has joined #magnetodb23:02
*** vnaboychenko has quit IRC23:24

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