[jira] [Created] (CASSANDRA-14016) Doc of read_repair_chance and dclocal_read_repair_chance default values is wrong

2017-11-15 Thread tzach (JIRA)
tzach created CASSANDRA-14016:
-

 Summary: Doc of read_repair_chance and dclocal_read_repair_chance 
default values is wrong 
 Key: CASSANDRA-14016
 URL: https://issues.apache.org/jira/browse/CASSANDRA-14016
 Project: Cassandra
  Issue Type: Bug
  Components: Documentation and Website
Reporter: tzach
Priority: Trivial


In the documentation, default values for 
read_repair_chance is 0.1
dclocal_read_repair_chance is 0.0
source: http://cassandra.apache.org/doc/latest/cql/ddl.html#other-table-options

In the code, the default values are the other way around
{quote}
public static final double DEFAULT_READ_REPAIR_CHANCE = 0.0;
public static final double DEFAULT_DCLOCAL_READ_REPAIR_CHANCE = 0.1;
{quote}
source: 
https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/schema/TableParams.java#L63-L64



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-9628) "Unknown keyspace system_traces" exception when using nodetool on a new cluster

2015-12-06 Thread tzach (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-9628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15043770#comment-15043770
 ] 

tzach commented on CASSANDRA-9628:
--

Just tried, and failed to reproduce the issue so I cant give an accurate 
answer. 
As far as I remember the issue was not limited to the first few minutes.  

> "Unknown keyspace system_traces" exception when using nodetool on a new 
> cluster
> ---
>
> Key: CASSANDRA-9628
> URL: https://issues.apache.org/jira/browse/CASSANDRA-9628
> Project: Cassandra
>  Issue Type: Bug
>  Components: Tools
>Reporter: tzach
>Assignee: Carl Yeksigian
>Priority: Minor
> Fix For: 2.1.x
>
>
> When creating a new cluster from scratch,  nodetool status fails on 
> system_traces as follow
> {code}
> $ nodetool status
> error: Unknown keyspace system_traces
> -- StackTrace --
> java.lang.AssertionError: Unknown keyspace system_traces
>   at org.apache.cassandra.db.Keyspace.(Keyspace.java:270)
>   at org.apache.cassandra.db.Keyspace.open(Keyspace.java:119)
>   at org.apache.cassandra.db.Keyspace.open(Keyspace.java:96)
> ...
> {code}
> the problem disappear when creating an empty keyspace
> {code}
> cqlsh> create keyspace temp WITH REPLICATION = { 'class' : 'SimpleStrategy', 
> 'replication_factor' : 2 };
> {code}
> My guess is system_traces initialization complete only after any data 
> insertion.
> Before it does, any attempt to read  from it either from nodetool, cqlsh or 
> streaming to a new node will fail.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-8099) Refactor and modernize the storage engine

2015-07-13 Thread tzach (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-8099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14624538#comment-14624538
 ] 

tzach commented on CASSANDRA-8099:
--

Thanks Sylvain, I missed that. 

 Refactor and modernize the storage engine
 -

 Key: CASSANDRA-8099
 URL: https://issues.apache.org/jira/browse/CASSANDRA-8099
 Project: Cassandra
  Issue Type: Improvement
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
 Fix For: 3.0 beta 1

 Attachments: 8099-nit


 The current storage engine (which for this ticket I'll loosely define as the 
 code implementing the read/write path) is suffering from old age. One of the 
 main problem is that the only structure it deals with is the cell, which 
 completely ignores the more high level CQL structure that groups cell into 
 (CQL) rows.
 This leads to many inefficiencies, like the fact that during a reads we have 
 to group cells multiple times (to count on replica, then to count on the 
 coordinator, then to produce the CQL resultset) because we forget about the 
 grouping right away each time (so lots of useless cell names comparisons in 
 particular). But outside inefficiencies, having to manually recreate the CQL 
 structure every time we need it for something is hindering new features and 
 makes the code more complex that it should be.
 Said storage engine also has tons of technical debt. To pick an example, the 
 fact that during range queries we update {{SliceQueryFilter.count}} is pretty 
 hacky and error prone. Or the overly complex ways {{AbstractQueryPager}} has 
 to go into to simply remove the last query result.
 So I want to bite the bullet and modernize this storage engine. I propose to 
 do 2 main things:
 # Make the storage engine more aware of the CQL structure. In practice, 
 instead of having partitions be a simple iterable map of cells, it should be 
 an iterable list of row (each being itself composed of per-column cells, 
 though obviously not exactly the same kind of cell we have today).
 # Make the engine more iterative. What I mean here is that in the read path, 
 we end up reading all cells in memory (we put them in a ColumnFamily object), 
 but there is really no reason to. If instead we were working with iterators 
 all the way through, we could get to a point where we're basically 
 transferring data from disk to the network, and we should be able to reduce 
 GC substantially.
 Please note that such refactor should provide some performance improvements 
 right off the bat but it's not it's primary goal either. It's primary goal is 
 to simplify the storage engine and adds abstraction that are better suited to 
 further optimizations.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-8099) Refactor and modernize the storage engine

2015-07-13 Thread tzach (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-8099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14624257#comment-14624257
 ] 

tzach commented on CASSANDRA-8099:
--

looks like this change undoes the fix for CASSANDRA-4858. 
Is this correct? intentional?


 Refactor and modernize the storage engine
 -

 Key: CASSANDRA-8099
 URL: https://issues.apache.org/jira/browse/CASSANDRA-8099
 Project: Cassandra
  Issue Type: Improvement
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
 Fix For: 3.0 beta 1

 Attachments: 8099-nit


 The current storage engine (which for this ticket I'll loosely define as the 
 code implementing the read/write path) is suffering from old age. One of the 
 main problem is that the only structure it deals with is the cell, which 
 completely ignores the more high level CQL structure that groups cell into 
 (CQL) rows.
 This leads to many inefficiencies, like the fact that during a reads we have 
 to group cells multiple times (to count on replica, then to count on the 
 coordinator, then to produce the CQL resultset) because we forget about the 
 grouping right away each time (so lots of useless cell names comparisons in 
 particular). But outside inefficiencies, having to manually recreate the CQL 
 structure every time we need it for something is hindering new features and 
 makes the code more complex that it should be.
 Said storage engine also has tons of technical debt. To pick an example, the 
 fact that during range queries we update {{SliceQueryFilter.count}} is pretty 
 hacky and error prone. Or the overly complex ways {{AbstractQueryPager}} has 
 to go into to simply remove the last query result.
 So I want to bite the bullet and modernize this storage engine. I propose to 
 do 2 main things:
 # Make the storage engine more aware of the CQL structure. In practice, 
 instead of having partitions be a simple iterable map of cells, it should be 
 an iterable list of row (each being itself composed of per-column cells, 
 though obviously not exactly the same kind of cell we have today).
 # Make the engine more iterative. What I mean here is that in the read path, 
 we end up reading all cells in memory (we put them in a ColumnFamily object), 
 but there is really no reason to. If instead we were working with iterators 
 all the way through, we could get to a point where we're basically 
 transferring data from disk to the network, and we should be able to reduce 
 GC substantially.
 Please note that such refactor should provide some performance improvements 
 right off the bat but it's not it's primary goal either. It's primary goal is 
 to simplify the storage engine and adds abstraction that are better suited to 
 further optimizations.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-9628) Unknown keyspace system_traces exception when using nodetool on a new cluster

2015-06-23 Thread tzach (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-9628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14597282#comment-14597282
 ] 

tzach commented on CASSANDRA-9628:
--

One more thing:
During installation, I 
* explicitly stop Cassandra service 
* rm -rf /var/lib/cassandra/data/system/*
* rm -rf /var/lib/cassandra/data/commitlog/*
* update the cassandra.yaml
* restart the service


 Unknown keyspace system_traces exception when using nodetool on a new 
 cluster
 ---

 Key: CASSANDRA-9628
 URL: https://issues.apache.org/jira/browse/CASSANDRA-9628
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: tzach
Priority: Minor

 When creating a new cluster from scratch,  nodetool status fails on 
 system_traces as follow
 {code}
 $ nodetool status
 error: Unknown keyspace system_traces
 -- StackTrace --
 java.lang.AssertionError: Unknown keyspace system_traces
   at org.apache.cassandra.db.Keyspace.init(Keyspace.java:270)
   at org.apache.cassandra.db.Keyspace.open(Keyspace.java:119)
   at org.apache.cassandra.db.Keyspace.open(Keyspace.java:96)
 ...
 {code}
 the problem disappear when creating an empty keyspace
 {code}
 cqlsh create keyspace temp WITH REPLICATION = { 'class' : 'SimpleStrategy', 
 'replication_factor' : 2 };
 {code}
 My guess is system_traces initialization complete only after any data 
 insertion.
 Before it does, any attempt to read  from it either from nodetool, cqlsh or 
 streaming to a new node will fail.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (CASSANDRA-9628) Unknown keyspace system_traces exception when using nodetool on a new cluster

2015-06-22 Thread tzach (JIRA)

[ 
https://issues.apache.org/jira/browse/CASSANDRA-9628?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14597215#comment-14597215
 ] 

tzach commented on CASSANDRA-9628:
--

Retry with 2.1.6 and I see the same results.
More details on my setup:
* EC2, m3.large servers, with ubuntu 14.04
* Oracle Java 7 from ppa:webupd8team/java
* Installing Cassandra from deb http://debian.datastax.com/community stable main
* A cluster of two servers, both are seeds

When running nodetool status right after install I get (on both server)
{code}
ubuntu@ip-172-31-31-37:~$ nodetool status
error: Unknown keyspace system_traces
-- StackTrace --
java.lang.AssertionError: Unknown keyspace system_traces
at org.apache.cassandra.db.Keyspace.init(Keyspace.java:272)
at org.apache.cassandra.db.Keyspace.open(Keyspace.java:121)
at org.apache.cassandra.db.Keyspace.open(Keyspace.java:98)
at 
org.apache.cassandra.service.StorageService.getRangesForEndpoint(StorageService.java:3046)
at 
org.apache.cassandra.service.StorageService.effectiveOwnership(StorageService.java:3954)
at 
org.apache.cassandra.service.StorageService.effectiveOwnership(StorageService.java:175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:75)
at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:279)
at 
com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:112)
at 
com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(StandardMBeanIntrospector.java:46)
at 
com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(MBeanIntrospector.java:237)
at com.sun.jmx.mbeanserver.PerInterface.invoke(PerInterface.java:138)
at com.sun.jmx.mbeanserver.MBeanSupport.invoke(MBeanSupport.java:252)
at 
com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:819)
at 
com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:801)
at 
javax.management.remote.rmi.RMIConnectionImpl.doOperation(RMIConnectionImpl.java:1487)
at 
javax.management.remote.rmi.RMIConnectionImpl.access$300(RMIConnectionImpl.java:97)
at 
javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(RMIConnectionImpl.java:1328)
at 
javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(RMIConnectionImpl.java:1420)
at 
javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:848)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:322)
at sun.rmi.transport.Transport$2.run(Transport.java:202)
at sun.rmi.transport.Transport$2.run(Transport.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:198)
at 
sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567)
at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.access$400(TCPTransport.java:619)
at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:684)
at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$1.run(TCPTransport.java:681)
at java.security.AccessController.doPrivileged(Native Method)
at 
sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681)
at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
{code}

To bypass I start a cqlsh, and input what ever:
{code}
cqlsh 172.31.31.37
Connected to CassandraCluster at 172.31.31.37:9042.
[cqlsh 5.0.1 | Cassandra 2.1.6 | CQL spec 3.2.0 | Native protocol v3]
Use HELP for help.
cqlsh  create keyspace temp WITH REPLICATION = { 'class' : 'SimpleStrategy', 
'replication_factor' : 2 };
cqlsh exit
{code}

After 

[jira] [Created] (CASSANDRA-9628) Unknown keyspace system_traces exception when using nodetool on a new cluster

2015-06-21 Thread tzach (JIRA)
tzach created CASSANDRA-9628:


 Summary: Unknown keyspace system_traces exception when using 
nodetool on a new cluster
 Key: CASSANDRA-9628
 URL: https://issues.apache.org/jira/browse/CASSANDRA-9628
 Project: Cassandra
  Issue Type: Bug
  Components: Core
Reporter: tzach
Priority: Minor


When creating a new cluster from scratch,  nodetool status fails on 
system_traces as follow

{code}
$ nodetool status

error: Unknown keyspace system_traces
-- StackTrace --
java.lang.AssertionError: Unknown keyspace system_traces
at org.apache.cassandra.db.Keyspace.init(Keyspace.java:270)
at org.apache.cassandra.db.Keyspace.open(Keyspace.java:119)
at org.apache.cassandra.db.Keyspace.open(Keyspace.java:96)
...
{code}

the problem disappear when creating an empty keyspace
{code}
cqlsh create keyspace temp WITH REPLICATION = { 'class' : 'SimpleStrategy', 
'replication_factor' : 2 };
{code}
My guess is system_traces initialization complete only after any data insertion.
Before it does, any attempt to read  from it either from nodetool, cqlsh or 
streaming to a new node will fail.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)