Displaying #cassandra-dev/2016-10-14.log:

Fri Oct 14 00:07:53 2016  Vijay:Joined the channel
Fri Oct 14 00:37:35 2016  marcuse:Joined the channel
Fri Oct 14 00:45:09 2016  kohlisankalp:Joined the channel
Fri Oct 14 01:07:58 2016  mebigfatguy:Joined the channel
Fri Oct 14 01:27:30 2016  mstepura:Joined the channel
Fri Oct 14 01:33:51 2016  kohlisankalp:Joined the channel
Fri Oct 14 02:30:36 2016  mstepura:Joined the channel
Fri Oct 14 02:31:13 2016  Vijay:Joined the channel
Fri Oct 14 02:31:26 2016  mstepura:Joined the channel
Fri Oct 14 02:35:22 2016  krut:unsure if i'm doing something wrong but i believe there is a bug with the pluggable replication strategy. basically AbstractReplicationStrategy constructor has no modifier, so it can't be called by subclasses. seems it could be avoided by creating an RS in the org.apache.cassandra.locator package but that's obviously undesirable. any thoughts? i can't find any documentation regarding pluggable RS, so
Fri Oct 14 02:35:28 2016  krut:i can only assume i'm doing the right thing.
Fri Oct 14 02:45:20 2016  mstepura:Joined the channel
Fri Oct 14 02:46:10 2016  mstepura:Joined the channel
Fri Oct 14 02:46:40 2016  zznate:IIRC, only thing that ctor does is set the properties provided ?
Fri Oct 14 02:47:58 2016  krut:c...tor?
Fri Oct 14 02:48:05 2016  zznate:sry, constructor
Fri Oct 14 02:48:45 2016  krut:yes you're correct, i tried just doing that myself but still got compiler errors
Fri Oct 14 02:48:59 2016  kohlisankalp:Joined the channel
Fri Oct 14 02:50:10 2016  zznate:why would you not want to call super within your implementation's constructor to set those properties?
Fri Oct 14 02:51:11 2016  krut:i want to call super, i can't because AbstractReplicationStrategy's constructor has no modifier (i.e, not protected), and thus can't be accessed by subclasses (unless they are in the same package)
Fri Oct 14 02:51:19 2016  zznate:i guees im looking at it as that is a design constraint of the replication strategy, that those properties have to be there
Fri Oct 14 02:51:54 2016  zznate:thus enforcing that you call super()
Fri Oct 14 02:52:14 2016  krut:yes, you have to call super
Fri Oct 14 02:52:46 2016  krut:but the actual constructor can't be called by subclasses _outside_ the org.apache.cassandra.locator package
Fri Oct 14 02:53:26 2016  zznate:oh duh. ok
Fri Oct 14 02:54:07 2016  krut:yeah, not overly straightforward to explain without an example directly infront of you
Fri Oct 14 02:54:58 2016  zznate:yeah, the fact that it's package sort of precludes us from pitching that as an integration point.
Fri Oct 14 02:55:27 2016  krut:yeah, ok. i'll raise a JIRA then. just wanted to confirm my thinking first
Fri Oct 14 02:55:49 2016  zznate:hacky, but maybe extend SimpleStrategy?
Fri Oct 14 02:56:02 2016  zznate:^that's not the right answer long term though
Fri Oct 14 02:56:21 2016  zznate:yeah, to the Jiras! curios about what other folks will say
Fri Oct 14 02:56:21 2016  krut:yeah that would work, but you can also just implement your strategy in the org.apache.cassandra.locator package
Fri Oct 14 02:56:48 2016  krut:which is also hacky
Fri Oct 14 02:58:55 2016  zznate:ewww. more assertions for runtime validation in ARS constructor!!
Fri Oct 14 02:59:36 2016  krut:huh? more? why?
Fri Oct 14 03:01:06 2016  jeffj:https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java#L65-L67
Fri Oct 14 03:01:13 2016  jeffj:is what he's referencing,i think
Fri Oct 14 03:01:56 2016  krut:yes i figured, did those only recently get added?
Fri Oct 14 03:03:32 2016  jeffj:no. 2010 + 2013
Fri Oct 14 03:03:56 2016  krut:oh
Fri Oct 14 03:10:18 2016  mstepura:Joined the channel
Fri Oct 14 03:11:02 2016  stef1927:it's more complicated that just changing the constructor access, at the moment the KS parameters only accept the class name, which is then appended to the package name, so custom replication strategies were designed (as far as I can tell) to live in org.apache.cassandra.locator package, see
Fri Oct 14 03:11:02 2016  stef1927:https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/locator/AbstractReplicationStrategy.java#L294
Fri Oct 14 03:12:10 2016  jeffj:like compaction strategies, that only prepends o.a.c.locator if a full package name isnt provided - enables 'short' class names, doesn't preclude full paths.
Fri Oct 14 03:12:30 2016  stef1927:actually, I take it back, it checks for the presence of "."
Fri Oct 14 03:12:37 2016  stef1927:I was too quick in my conclusion, sorry
Fri Oct 14 03:14:16 2016  krut:ok, so only change should be constructor becomes protected then
Fri Oct 14 03:15:53 2016  stef1927:it looks like it, must have been an oversight than nobody picked up so far
Fri Oct 14 03:16:58 2016  krut:yeah i'm guessing no one has tried to implement their own replication strategy
Fri Oct 14 03:17:20 2016  jeffj:well, they have
Fri Oct 14 03:17:35 2016  jeffj:but they've done it by extending NetworkTopologyStrategy or others, i imagine
Fri Oct 14 03:17:56 2016  jeffj:but you're right - it's not something that's done frequently, so not incredibly surprising that things are missed.
Fri Oct 14 03:37:45 2016  krut:fyi: https://issues.apache.org/jira/browse/CASSANDRA-12788
Fri Oct 14 03:43:55 2016  kohlisankalp:Joined the channel
Fri Oct 14 03:50:33 2016  jeffj:not sure if you can get 12788 into 2.1 - hard to call it critical when it's been that way for years. pretty low risk though.
Fri Oct 14 03:52:04 2016  krut:yeah, up for discussion obviously. i guess the thing is if it doesn't make it into 2.1, there's probably going to be someone who tries to do it at some point in time and has issues
Fri Oct 14 03:52:28 2016  krut:someone else can make that call
Fri Oct 14 03:52:50 2016  jeffj:yea, i wouldnt mind seeing it in 2.1, but at the same time, i have a hard time calling it a critical fix
Fri Oct 14 03:54:00 2016  mstepura:Joined the channel
Fri Oct 14 03:54:16 2016  krut:yeah, i agree. thus why i didn't specifically make the priority critical. the patch applies cleanly to all the branches, through no effort of my own however.
Fri Oct 14 03:54:44 2016  mstepura:Joined the channel
Fri Oct 14 03:55:34 2016  mstepura:Joined the channel
Fri Oct 14 03:55:46 2016  krut:having said that, JIRA priorities are stupid. something is either minor, major, or critical :S
Fri Oct 14 03:56:22 2016  krut:i'm still not convinced that "blocker" and "trivial" can be passed off as priorities
Fri Oct 14 03:56:24 2016  mstepura:Joined the channel
Fri Oct 14 03:57:09 2016  mstepura:Joined the channel
Fri Oct 14 03:57:59 2016  mstepura:Joined the channel
Fri Oct 14 03:58:07 2016  kohlisankalp:Joined the channel
Fri Oct 14 03:58:53 2016  mstepura:Joined the channel
Fri Oct 14 03:59:34 2016  mstepura:Joined the channel
Fri Oct 14 04:00:25 2016  mstepura:Joined the channel
Fri Oct 14 04:16:49 2016  mstepura:Joined the channel
Fri Oct 14 04:27:18 2016  kohlisankalp:Joined the channel
Fri Oct 14 04:39:19 2016  mstepura:Joined the channel
Fri Oct 14 04:57:39 2016  mstepura:Joined the channel
Fri Oct 14 05:08:26 2016  JayZhuang:Joined the channel
Fri Oct 14 05:13:13 2016  kohlisankalp:Joined the channel
Fri Oct 14 05:28:57 2016  mstepura:Joined the channel
Fri Oct 14 06:17:25 2016  nickmbailey:Joined the channel
Fri Oct 14 06:34:09 2016  shahprincea:Joined the channel
Fri Oct 14 06:39:46 2016  shahprincea:hi
Fri Oct 14 06:41:25 2016  cosql:Joined the channel
Fri Oct 14 06:53:22 2016  spodkowinski:Joined the channel
Fri Oct 14 06:56:22 2016  kvaster:Joined the channel
Fri Oct 14 07:02:29 2016  nickmbailey:Joined the channel
Fri Oct 14 08:03:13 2016  nickmbailey:Joined the channel
Fri Oct 14 08:06:41 2016  blambov:Joined the channel
Fri Oct 14 08:06:43 2016  bdeggleston:Joined the channel
Fri Oct 14 08:06:43 2016  stef1927:Joined the channel
Fri Oct 14 08:07:52 2016  minimarcel:Joined the channel
Fri Oct 14 08:30:20 2016  cosql:Joined the channel
Fri Oct 14 09:04:00 2016  nickmbailey:Joined the channel
Fri Oct 14 10:04:50 2016  nickmbailey:Joined the channel
Fri Oct 14 10:35:38 2016  spodkowinski:zznate: just finished watching your "Securing Cassandra" talk and noticed that you mentioned that it's possible to enable node to node encryption with no downtime if done correctly. I'd be curious to know how this exactly would work with an existing multi-dc cluster. There's also #10404 which I think was created to provide a solution for that in the future.
Fri Oct 14 10:35:38 2016  CassBotJr_:https://issues.apache.org/jira/browse/CASSANDRA-10404 (Open; Unresolved; Unscheduled): "Node to Node encryption transitional mode"
Fri Oct 14 11:05:33 2016  nickmbailey:Joined the channel
Fri Oct 14 11:49:39 2016  minimarcel:Joined the channel
Fri Oct 14 12:06:14 2016  nickmbailey:Joined the channel
Fri Oct 14 12:26:45 2016  minimarcel:Joined the channel
Fri Oct 14 12:40:38 2016  minimarcel:Joined the channel
Fri Oct 14 12:51:37 2016  minimarcel:Joined the channel
Fri Oct 14 13:08:30 2016  nickmbailey:Joined the channel
Fri Oct 14 13:27:13 2016  jmckenzie:Joined the channel
Fri Oct 14 14:09:19 2016  nickmbailey:Joined the channel
Fri Oct 14 14:14:05 2016  nickmbailey:Joined the channel
Fri Oct 14 14:24:27 2016  Vijay:Joined the channel
Fri Oct 14 14:25:41 2016  clohfink:Joined the channel
Fri Oct 14 15:26:25 2016  nickmbailey:Joined the channel
Fri Oct 14 15:43:05 2016  nickmbailey:Joined the channel
Fri Oct 14 15:56:53 2016  exlt:I just stacked up all the cassandra-3/
Fri Oct 14 15:57:09 2016  exlt:3.X jobs to see if we are ready for 3.10
Fri Oct 14 15:58:36 2016  exlt:there is one ticket that was re-opened on 3.10, #12490, that looks stress-specific - should that be reverted, if not fixed in a reasonable time? from the comments, I'm not really sure of the status
Fri Oct 14 15:58:37 2016  CassBotJr_:https://issues.apache.org/jira/browse/CASSANDRA-12490 (Reopened; Unresolved; 3.10): "Add sequence distribution type to cassandra stress"
Fri Oct 14 16:00:18 2016  thobbs:Joined the channel
Fri Oct 14 16:03:01 2016  Vijay:Joined the channel
Fri Oct 14 16:03:02 2016  mstepura:Joined the channel
Fri Oct 14 16:05:33 2016  iamaleksey:not sure if we should be blocking on a stress ticket, but again, there is no extreme rush, and the ticket seems to be active at the moment
Fri Oct 14 16:05:39 2016  iamaleksey:give it another day or two?
Fri Oct 14 16:05:47 2016  iamaleksey:as in, Mon/Tue
Fri Oct 14 16:06:29 2016  iamaleksey:whatever @tjake thinks
Fri Oct 14 16:08:11 2016  exlt:also, as of commit 771a1a2, which I stacked up all the tests on last night, it doesn't seem to affect existing test results
Fri Oct 14 16:08:33 2016  exlt:perf testing using yamls would probably be where this shows up
Fri Oct 14 16:09:13 2016  exlt:so your thoughts are exactly inline with mine - just wanted to throw it out there :)
Fri Oct 14 16:17:29 2016  minimarcel_:Joined the channel
Fri Oct 14 16:39:01 2016  minimarcel_:Joined the channel
Fri Oct 14 16:56:47 2016  tjake:jeffj: I wasn't able to reproduce the performance boost
Fri Oct 14 17:23:23 2016  zznate:spokowinski it should really say 'no downtime' with a big, fat footnote about topology, app configurability for RF and DC access, etc. Agree that 10404 will make that actually viable for most folks.
Fri Oct 14 17:23:41 2016  jasobrown:tjake: I wrote a jmh benchmark a few months ago to compare instanceof vs enum value checks
Fri Oct 14 17:23:57 2016  jasobrown:the instanceof was about 5% faster, iirc
Fri Oct 14 17:24:50 2016  tjake:the ticket seems to indicate "The JVM uses this one-element
Fri Oct 14 17:24:50 2016  tjake:cache to store the last observed secondary super type for interfaces/classes with a class hierarchy
Fri Oct 14 17:24:50 2016  tjake:deeper than 7. "
Fri Oct 14 17:24:54 2016  jasobrown:tbh, i was surprised, maybe i was getting lucky due to the cache the ticket mentions
Fri Oct 14 17:25:01 2016  jasobrown:yeah
Fri Oct 14 17:25:27 2016  tjake:They got their 60% boost with a hacked JVM so who knows
Fri Oct 14 17:25:34 2016  tjake:maybe its all of them combined
Fri Oct 14 17:25:51 2016  jasobrown:i see they keep mentioning they "hacked" the jvm, do we know how they've hacked it?
Fri Oct 14 17:26:09 2016  tjake:netty uses javaassist to avoid instanceof
Fri Oct 14 17:26:19 2016  tjake:Maybe normanm can help us understand that
Fri Oct 14 17:26:46 2016  jasobrown:hmm, good idea
Fri Oct 14 17:27:14 2016  jasobrown:this one? https://jboss-javassist.github.io/javassist/
Fri Oct 14 17:27:41 2016  tjake:yeah they have an instanceof expression that somehow rewrites the bytecode?
Fri Oct 14 17:30:55 2016  kohlisankalp:Joined the channel
Fri Oct 14 17:32:33 2016  tjake:That would maybe be simpler than removing all cases of instanceof :/
Fri Oct 14 17:38:08 2016  kohlisankalp:Joined the channel
Fri Oct 14 17:38:31 2016  jasobrown:tjake: just spoke with scott mitchell (works with on netty here with norman)
Fri Oct 14 17:38:44 2016  jasobrown:and we dug up this class in netty: JavassistTypeParameterMatcherGenerator
Fri Oct 14 17:39:07 2016  jasobrown:haven't dug in too far, but it replaces instanceof calls with ... something ;)
Fri Oct 14 17:39:14 2016  tjake:haha yeah
Fri Oct 14 17:39:19 2016  tjake:what is it?
Fri Oct 14 17:39:39 2016  tjake:do you just add it to the base class?
Fri Oct 14 17:39:51 2016  tjake:and it magically fixes it?
Fri Oct 14 17:40:03 2016  jasobrown:i think it's an agent of some sort
Fri Oct 14 17:40:40 2016  jasobrown:err.. maybe ... reading now ...
Fri Oct 14 17:40:56 2016  tjake:netty detects it at runtime
Fri Oct 14 17:42:34 2016  jasobrown:yes, in PlatformDependent
Fri Oct 14 17:43:34 2016  tjake:It seems to be used to check if the object can be accepted
Fri Oct 14 17:43:43 2016  jasobrown:heh, was just about to type that ;)
Fri Oct 14 17:43:50 2016  tjake:So you get the matcher for the type
Fri Oct 14 17:43:56 2016  jasobrown:i see it in ByteToMessageCodec, for instance, instead of instanceof
Fri Oct 14 17:43:58 2016  tjake:and use that
Fri Oct 14 17:44:05 2016  jasobrown:correct
Fri Oct 14 17:44:08 2016  tjake:to see if its the instacne of
Fri Oct 14 17:44:11 2016  tjake:ok
Fri Oct 14 17:44:27 2016  tjake:At least its the same basic paradigm
Fri Oct 14 17:44:42 2016  jasobrown:yup, we're on the same page
Fri Oct 14 17:44:56 2016  jasobrown:will need to think about how we apply it for our needs
Fri Oct 14 17:44:59 2016  tjake:So whos going to go through the codebase and redo them all :)
Fri Oct 14 17:45:14 2016  jasobrown:lol
Fri Oct 14 17:45:46 2016  tjake:You just use TypeParameterMatcher.get() to register the classes needed
Fri Oct 14 17:46:04 2016  tjake:at startup
Fri Oct 14 17:46:55 2016  jasobrown:yes
Fri Oct 14 17:47:33 2016  driftx:I seem to recall tjake is a big fan of going throug the codebase and replacing shit (hello, bytebuffers)
Fri Oct 14 17:47:35 2016  jasobrown:perhaps we just identify the handful of classes we care most about, and switch them over?
Fri Oct 14 17:47:44 2016  jasobrown:driftx: lmao
Fri Oct 14 17:47:56 2016  tjake:yeah you sure you want that?
Fri Oct 14 17:50:34 2016  jasobrown:fwiw, a little bit of shell foo tells me there's only 702 uses of instance in src/ ;)
Fri Oct 14 17:54:38 2016  tjake:I wonder how long for a jvm fix?
Fri Oct 14 17:54:59 2016  tjake:they seem to patch frequently
Fri Oct 14 18:29:22 2016  clohfink:Joined the channel
Fri Oct 14 18:34:28 2016  jmckenzie_:Joined the channel
Fri Oct 14 18:41:53 2016  clohfink_:Joined the channel
Fri Oct 14 18:42:18 2016  kohlisan_:Joined the channel
Fri Oct 14 18:43:31 2016  thobbs_irccloud_:Joined the channel
Fri Oct 14 18:43:50 2016  bdeggleston_:Joined the channel
Fri Oct 14 18:44:08 2016  jbellis_:Joined the channel
Fri Oct 14 18:44:22 2016  rustyrazorblade_:Joined the channel
Fri Oct 14 18:44:40 2016  gdusbabek_:Joined the channel
Fri Oct 14 18:44:48 2016  stef1927_:Joined the channel
Fri Oct 14 18:45:55 2016  rsmags_:Joined the channel
Fri Oct 14 18:48:35 2016  knifewine_:Joined the channel
Fri Oct 14 18:50:47 2016  ptnapoleon:Joined the channel
Fri Oct 14 18:52:03 2016  felowe:Joined the channel
Fri Oct 14 18:57:27 2016  wadey:Joined the channel
Fri Oct 14 18:57:32 2016  paulomotta:Joined the channel
Fri Oct 14 18:58:07 2016  yukim:Joined the channel
Fri Oct 14 18:58:20 2016  rxo:Joined the channel
Fri Oct 14 18:59:06 2016  techntoke_:Joined the channel
Fri Oct 14 18:59:08 2016  cory___:Joined the channel
Fri Oct 14 19:00:26 2016  joseph_arnstein_:Joined the channel
Fri Oct 14 19:00:47 2016  mck_sw:Joined the channel
Fri Oct 14 19:04:13 2016  kishkaru_:Joined the channel
Fri Oct 14 19:10:53 2016  cosql:Joined the channel
Fri Oct 14 19:13:51 2016  garren:Joined the channel
Fri Oct 14 19:18:37 2016  mstepura:Joined the channel
Fri Oct 14 19:26:32 2016  kvaster:Joined the channel
Fri Oct 14 19:28:18 2016  kvaster:Joined the channel
Fri Oct 14 19:31:00 2016  ryansvihla:Joined the channel
Fri Oct 14 19:31:13 2016  eribeiro:Joined the channel
Fri Oct 14 19:31:55 2016  wadey:Joined the channel
Fri Oct 14 20:01:03 2016  kohlisankalp:Joined the channel
Fri Oct 14 20:05:04 2016  kohlisankalp:Joined the channel
Fri Oct 14 20:07:49 2016  clohfink:Joined the channel
Fri Oct 14 20:08:39 2016  Vijay:Joined the channel
Fri Oct 14 20:08:39 2016  kohlisankalp:Joined the channel
Fri Oct 14 20:12:29 2016  tolbertam:Joined the channel
Fri Oct 14 20:14:36 2016  kohlisankalp:Joined the channel
Fri Oct 14 20:28:21 2016  Vijay:Joined the channel
Fri Oct 14 20:47:16 2016  jmckenzie_:Joined the channel
Fri Oct 14 20:52:08 2016  jasobrown:tjake: norman (via scott) said that he wants to yank the javaassist stuff out of netty because it didn't work out as they had hoped
Fri Oct 14 20:52:33 2016  jasobrown:we didn't get more details as norman has checked out for his 2 week vacation :P
Fri Oct 14 20:54:43 2016  kohlisankalp:Joined the channel
Fri Oct 14 21:01:24 2016  kohlisankalp:Joined the channel
Fri Oct 14 21:16:07 2016  mebigfatguy:Joined the channel
Fri Oct 14 21:29:50 2016  nickmbailey:Joined the channel
Fri Oct 14 21:35:28 2016  Vijay:Joined the channel
Fri Oct 14 21:37:09 2016  kvaster:Joined the channel
Fri Oct 14 21:54:10 2016  kohlisankalp:Joined the channel
Fri Oct 14 22:12:56 2016  kohlisankalp:Joined the channel
Fri Oct 14 22:29:26 2016  Vijay:Joined the channel
Fri Oct 14 22:29:53 2016  mstepura:Joined the channel
Fri Oct 14 22:39:44 2016  kohlisankalp:Joined the channel
Fri Oct 14 22:52:54 2016  kohlisankalp:Joined the channel
Fri Oct 14 22:55:10 2016  kohlisankalp:Joined the channel
Fri Oct 14 23:33:15 2016  mstepura:Joined the channel
Fri Oct 14 23:38:59 2016  Vijay:Joined the channel

Comments