Re: Upgrade 1.1.2 - 1.1.6

2012-11-19 Thread Alain RODRIGUEZ
This looks like the counters were more out of sync before the upgrade than
after?

My guess is the update makes some counters over-count since I saw the value
of the sum of our daily counter increase by 2000 after each restart at the
exact moment that the node is marked as being up. This counter was about
5000, after upgrading the first node 7000, after the second upgrade 9000
and finally 11000. This value shouldn't have increase since we had stopped
our storm topology and we were queuing events without writing directly into
C*.

Do you know if your client is retrying counter operations ? (I saw some
dropped messages in the S1 log). 

I am using phpCassa written by Tyler Hobbs. I have a pool configured like
this:

$max_retries = 4
$send_timeout = 2000
$recv_timeout = 2000
$pool_size = NULL //max(5, count($servers) * 2)

$pool = new ConnectionPool($base, $servers, $pool_size, $max_retries,
$send_timeout, $recv_timeout);

So I guess my client is retrying count operations like any other operation,
4 times max with 2 sec time out.

S1 shows a lot of Commit Log replay going on. Reading your timeline below
this sounds like the auto restart catching you out.

Is there a way to remove this auto-restart while upgrading from the
Datastax repository on Ubuntu ?

Let me know if you need something more to understand what happened.

Alain


Re: Cassandra nodes failing with OOM

2012-11-19 Thread Janne Jalkanen

Something that bit us recently was the size of bloom filters: we have a column 
family which is mostly written to, and only read sequentially, so we were able 
to free a lot of memory and decrease GC pressure by increasing 
bloom_filter_fp_chance for that particular CF.

This on 1.0.12.

/Janne

On 18 Nov 2012, at 21:38, aaron morton wrote:

 1. How much GCInspector warnings per hour are considered 'normal'?
 None. 
 A couple during compaction or repair is not the end of the world. But if you 
 have enough to thinking about per hour it's too many. 
 
 2. What should be the next thing to check?
 Try to determine if the GC activity correlates to application workload, 
 compaction or repair. 
 
 Try to determine what the working set of the server is. Watch the GC activity 
 (via gc logs or JMX) and see what the size of the tenured heap is after a 
 CMS. Or try to calculate it 
 http://www.mail-archive.com/user@cassandra.apache.org/msg25762.html
 
 Look at your data model and query patterns for places where very large 
 queries are being made. Or rows that are very long lived with a lot of 
 deletes (prob not as much as an issue with LDB). 
 
 
 3. What are the possible failure reasons and how to prevent those?
 
 As above. 
 As a work around sometimes drastically slowing down compaction can help. For 
 LDB try reducing in_memory_compaction_limit_in_mb and 
 compaction_throughput_mb_per_sec
 
 
 Hope that helps. 
 
 
 -
 Aaron Morton
 Freelance Cassandra Developer
 New Zealand
 
 @aaronmorton
 http://www.thelastpickle.com
 
 On 17/11/2012, at 7:07 PM, Ивaн Cобoлeв sobol...@gmail.com wrote:
 
 Dear Community, 
 
 advice from you needed. 
 
 We have a cluster, 1/6 nodes of which died for various reasons(3 had OOM 
 message). 
 Nodes died in groups of 3, 1, 2. No adjacent died, though we use 
 SimpleSnitch.
 
 Version: 1.1.6
 Hardware:  12Gb RAM / 8 cores(virtual)
 Data:  40Gb/node
 Nodes:   36 nodes
 
 Keyspaces:2(RF=3, R=W=2) + 1(OpsCenter)
 CFs:36, 2 indexes
 Partitioner:  Random
 Compaction:   Leveled(we don't want 2x space for housekeeping)
 Caching:  Keys only
 
 All is pretty much standard apart from the one CF receiving writes in 64K 
 chunks and having sstable_size_in_mb=100.
 No JNA installed - this is to be fixed soon.
 
 Checking sysstat/sar I can see 80-90% CPU idle, no anomalies in io and the 
 only change - network activity spiking. 
 All the nodes before dying had the following on logs:
 INFO [ScheduledTasks:1] 2012-11-15 21:35:05,512 StatusLogger.java (line 72) 
 MemtablePostFlusher   1 4 0
 INFO [ScheduledTasks:1] 2012-11-15 21:35:13,540 StatusLogger.java (line 72) 
 FlushWriter   1 3 0
 INFO [ScheduledTasks:1] 2012-11-15 21:36:32,162 StatusLogger.java (line 72) 
 HintedHandoff 1 6 0
 INFO [ScheduledTasks:1] 2012-11-15 21:36:32,162 StatusLogger.java (line 77) 
 CompactionManager 5 9
 
 GCInspector warnings were there too, they went from ~0.8 to 3Gb heap in 
 5-10mins.
 
 So, could you please give me a hint on:
 1. How much GCInspector warnings per hour are considered 'normal'?
 2. What should be the next thing to check?
 3. What are the possible failure reasons and how to prevent those?
 
 Thank you very much in advance,
 Ivan



Re: Remove crashed node

2012-11-19 Thread Robin Verlangen
Quite some time passed, but Alain, it worked. Thank you very much.

Best regards,

Robin Verlangen
*Software engineer*
*
*
W http://www.robinverlangen.nl
E ro...@us2.nl

http://goo.gl/Lt7BC

Disclaimer: The information contained in this message and attachments is
intended solely for the attention and use of the named addressee and may be
confidential. If you are not the intended recipient, you are reminded that
the information remains the property of the sender. You must not use,
disclose, distribute, copy, print or rely on this e-mail. If you have
received this message in error, please contact the sender immediately and
irrevocably delete this message and any copies.



On Fri, Nov 9, 2012 at 4:21 PM, Alain RODRIGUEZ arodr...@gmail.com wrote:

 You have to install mx4j-tools.jar.

 http://wiki.apache.org/cassandra/Operations#Monitoring_with_MX4J

 It's a java tool, so it is usable on both windows and linux.

 Here is the link to dl mx4j-tool.jar :
 http://www.java2s.com/Code/JarDownload/mx4j/mx4j-tools-3.0.2.jar.zip

 unzip it and add it to the path of your cassandra libraries, restart the
 node where it is installed and you should be ok.

 Alain


 2012/11/9 Robin Verlangen ro...@us2.nl

 Hi Alain,

 How can I access that? Web browser does not seem to work. Do I need any
 software to login? If so, what is proper software for Windows?

 Best regards,

 Robin Verlangen
 *Software engineer*
 *
 *
 W http://www.robinverlangen.nl
 E ro...@us2.nl

 http://goo.gl/Lt7BC

 Disclaimer: The information contained in this message and attachments is
 intended solely for the attention and use of the named addressee and may be
 confidential. If you are not the intended recipient, you are reminded that
 the information remains the property of the sender. You must not use,
 disclose, distribute, copy, print or rely on this e-mail. If you have
 received this message in error, please contact the sender immediately and
 irrevocably delete this message and any copies.



 On Fri, Nov 9, 2012 at 2:50 PM, Alain RODRIGUEZ arodr...@gmail.comwrote:

 On cassandra-cli if you describe cluster; I guess you will see an
 UNREACHABLE node.

 If you do so, there is a way to remove this unreachable node.

 Go to the JMX management console (ip_of_one_up_node:8081 by default)

 Then go to the org.apache.cassandra.net:type=Gossiper link and use the 
 unsafeAssassinateEndpoint
 input. Fill it with the ip of the down node and invoke the function.

 nodetool gossipinfo should now tell you that this node has left the
 ring and let you truncate or whatever you need to do.

 Use this carefully this function is composed of the unsafe and
 assassinate words because it forces the node to go out of the ring
 without any check or replication.

 Alain


 2012/11/9 Robin Verlangen ro...@us2.nl

 Hi there,

 We have had a crashed node that is currently removed from the rack.
 However when I try a schema upgrade / truncate operation it complains of
 the unreachable node. I tried the removetoken, but that didn't resolve.

 Any ideas on how to fix this?

 Best regards,

 Robin Verlangen
 *Software engineer*
 *
 *
 W http://www.robinverlangen.nl
 E ro...@us2.nl

 http://goo.gl/Lt7BC

 Disclaimer: The information contained in this message and attachments
 is intended solely for the attention and use of the named addressee and may
 be confidential. If you are not the intended recipient, you are reminded
 that the information remains the property of the sender. You must not use,
 disclose, distribute, copy, print or rely on this e-mail. If you have
 received this message in error, please contact the sender immediately and
 irrevocably delete this message and any copies.







Re: SchemaDisagreementException

2012-11-19 Thread Everton Lima
I was using cassandra direct because it has more performace than using CQL.
Therefore, I am using cassandra because of replication factor and
consistence of data. I am using it as a lib of my app. I only make sample
querys, just use a key to point to a data.

2012/11/16 Everton Lima peitin.inu...@gmail.com

 I do that because I need to create a dynamic column families.
 I create 2 keyspaces in  the start of application, using embedded
 cassandra instance too, but it's never throw exception. And than, insert
 dynamic column families in this 2 keyspaces.

 I put a Thread.sleep(3000); in the middle of the creation column family
 code.

 int watiTime = 3000;
 logger.info(Waiting +(watiTime/1000)+s for synchronizing
 ...);
 Thread.sleep(watiTime);
 CassandraHelper.createColumnFamily(CassandraHelper.KEYSPACE,
 layer);
 logger.info(Waiting +(watiTime/1000)+s for synchronizing
 ...);
 Thread.sleep(watiTime);

 I do that, because in the code of CassandraStress, after create a column
 family, it do that too. It is wrong or good solution?
 Any other idea?



 2012/11/14 aaron morton aa...@thelastpickle.com

 Out of interest why are you creating column families by making direct
 calls on an embedded cassandra instance ? I would guess you life would be
 easier if you defined a schema in CQL or CLI.


 I already read in the documentation that this error occurs when more than
 one thread/processor access the same place in the Cassandra, but I think
 this is not occuring.

 How may nodes do you have ?

 I am using 3 nodes.

 What version are you running ?

 The version is 1.1.6

 It sounds like you have run simultaneous schema updates and the global
 schema has diverged.

 If you can create your schema in CLI or CQL I would recommend doing that.
 If you are trying to do something more complicated you'll need to provide
 more information.

 Cheers


   -
 Aaron Morton
 Freelance Cassandra Developer
 New Zealand

 @aaronmorton
 http://www.thelastpickle.com

 On 15/11/2012, at 3:13 AM, Everton Lima peitin.inu...@gmail.com wrote:

 Some times, when I try to insert a data in Cassandra with Method:

 static void createColumnFamily(String keySpace, String columnFamily){
  synchronized (mutex){
   Iface cs = new CassandraServer();
   CfDef cfDef = new CfDef(keySpace, columnFamily);

   cfDef = cfDef.setComparator_type(comparator.toString());
   cfDef = cfDef.setKey_validation_class(UTF8Type.class.getName());
   cfDef = cfDef.setCaching(all);

   cs.set_keyspace(keySpace);
   cs.system_add_column_family(cfDef);
  }
 }

 I run this method in only on process of the distributor system. But in
 this process, I run the method two times consecutive in the same thread,
 but with keyspace diferent.
 I already read in the documentation that this error occurs when more than
 one thread/processor access the same place in the Cassandra, but I think
 this is not occuring.
 Some one cold help me to understand this problem?

 Thanks.

 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás





 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás




-- 

Everton Lima Aleixo
Bacharel em Ciencia da Computação
Universidade Federal de Goiás


RE: Cassandra nodes failing with OOM

2012-11-19 Thread Viktor Jevdokimov
We've seen OOM in a situation, when OS was not properly prepared in production.

http://www.datastax.com/docs/1.1/install/recommended_settings



Best regards / Pagarbiai
Viktor Jevdokimov
Senior Developer

Email: viktor.jevdoki...@adform.commailto:viktor.jevdoki...@adform.com
Phone: +370 5 212 3063, Fax +370 5 261 0453
J. Jasinskio 16C, LT-01112 Vilnius, Lithuania
Follow us on Twitter: @adforminsiderhttp://twitter.com/#!/adforminsider
Take a ride with Adform's Rich Media Suitehttp://vimeo.com/adform/richmedia

[Adform News] http://www.adform.com


Disclaimer: The information contained in this message and attachments is 
intended solely for the attention and use of the named addressee and may be 
confidential. If you are not the intended recipient, you are reminded that the 
information remains the property of the sender. You must not use, disclose, 
distribute, copy, print or rely on this e-mail. If you have received this 
message in error, please contact the sender immediately and irrevocably delete 
this message and any copies.

From: some.unique.lo...@gmail.com [mailto:some.unique.lo...@gmail.com] On 
Behalf Of Ивaн Cобoлeв
Sent: Saturday, November 17, 2012 08:08
To: user@cassandra.apache.org
Subject: Cassandra nodes failing with OOM

Dear Community,

advice from you needed.

We have a cluster, 1/6 nodes of which died for various reasons(3 had OOM 
message).
Nodes died in groups of 3, 1, 2. No adjacent died, though we use SimpleSnitch.

Version: 1.1.6
Hardware:  12Gb RAM / 8 cores(virtual)
Data:  40Gb/node
Nodes:   36 nodes

Keyspaces:2(RF=3, R=W=2) + 1(OpsCenter)
CFs:36, 2 indexes
Partitioner:  Random
Compaction:   Leveled(we don't want 2x space for housekeeping)
Caching:  Keys only

All is pretty much standard apart from the one CF receiving writes in 64K 
chunks and having sstable_size_in_mb=100.
No JNA installed - this is to be fixed soon.

Checking sysstat/sar I can see 80-90% CPU idle, no anomalies in io and the only 
change - network activity spiking.
All the nodes before dying had the following on logs:
 INFO [ScheduledTasks:1] 2012-11-15 21:35:05,512 StatusLogger.java (line 72) 
 MemtablePostFlusher   1 4 0
 INFO [ScheduledTasks:1] 2012-11-15 21:35:13,540 StatusLogger.java (line 72) 
 FlushWriter   1 3 0
 INFO [ScheduledTasks:1] 2012-11-15 21:36:32,162 StatusLogger.java (line 72) 
 HintedHandoff 1 6 0
 INFO [ScheduledTasks:1] 2012-11-15 21:36:32,162 StatusLogger.java (line 77) 
 CompactionManager 5 9

GCInspector warnings were there too, they went from ~0.8 to 3Gb heap in 
5-10mins.

So, could you please give me a hint on:
1. How much GCInspector warnings per hour are considered 'normal'?
2. What should be the next thing to check?
3. What are the possible failure reasons and how to prevent those?

Thank you very much in advance,
Ivan
inline: signature-logo49d2.png

Re: Remove crashed node

2012-11-19 Thread Alain RODRIGUEZ
I am glad to here that.

You're very welcome.

Alain


2012/11/19 Robin Verlangen ro...@us2.nl

 Quite some time passed, but Alain, it worked. Thank you very much.

 Best regards,

 Robin Verlangen
 *Software engineer*
 *
 *
 W http://www.robinverlangen.nl
 E ro...@us2.nl

 http://goo.gl/Lt7BC

 Disclaimer: The information contained in this message and attachments is
 intended solely for the attention and use of the named addressee and may be
 confidential. If you are not the intended recipient, you are reminded that
 the information remains the property of the sender. You must not use,
 disclose, distribute, copy, print or rely on this e-mail. If you have
 received this message in error, please contact the sender immediately and
 irrevocably delete this message and any copies.



 On Fri, Nov 9, 2012 at 4:21 PM, Alain RODRIGUEZ arodr...@gmail.comwrote:

 You have to install mx4j-tools.jar.

 http://wiki.apache.org/cassandra/Operations#Monitoring_with_MX4J

 It's a java tool, so it is usable on both windows and linux.

 Here is the link to dl mx4j-tool.jar :
 http://www.java2s.com/Code/JarDownload/mx4j/mx4j-tools-3.0.2.jar.zip

 unzip it and add it to the path of your cassandra libraries, restart the
 node where it is installed and you should be ok.

 Alain


 2012/11/9 Robin Verlangen ro...@us2.nl

 Hi Alain,

 How can I access that? Web browser does not seem to work. Do I need any
 software to login? If so, what is proper software for Windows?

 Best regards,

 Robin Verlangen
 *Software engineer*
 *
 *
 W http://www.robinverlangen.nl
 E ro...@us2.nl

 http://goo.gl/Lt7BC

 Disclaimer: The information contained in this message and attachments is
 intended solely for the attention and use of the named addressee and may be
 confidential. If you are not the intended recipient, you are reminded that
 the information remains the property of the sender. You must not use,
 disclose, distribute, copy, print or rely on this e-mail. If you have
 received this message in error, please contact the sender immediately and
 irrevocably delete this message and any copies.



 On Fri, Nov 9, 2012 at 2:50 PM, Alain RODRIGUEZ arodr...@gmail.comwrote:

 On cassandra-cli if you describe cluster; I guess you will see an
 UNREACHABLE node.

 If you do so, there is a way to remove this unreachable node.

 Go to the JMX management console (ip_of_one_up_node:8081 by default)

 Then go to the org.apache.cassandra.net:type=Gossiper link and use the
 unsafeAssassinateEndpoint input. Fill it with the ip of the down
 node and invoke the function.

 nodetool gossipinfo should now tell you that this node has left the
 ring and let you truncate or whatever you need to do.

 Use this carefully this function is composed of the unsafe and
 assassinate words because it forces the node to go out of the ring
 without any check or replication.

 Alain


 2012/11/9 Robin Verlangen ro...@us2.nl

 Hi there,

 We have had a crashed node that is currently removed from the rack.
 However when I try a schema upgrade / truncate operation it complains of
 the unreachable node. I tried the removetoken, but that didn't resolve.

 Any ideas on how to fix this?

 Best regards,

 Robin Verlangen
 *Software engineer*
 *
 *
 W http://www.robinverlangen.nl
 E ro...@us2.nl

 http://goo.gl/Lt7BC

 Disclaimer: The information contained in this message and attachments
 is intended solely for the attention and use of the named addressee and 
 may
 be confidential. If you are not the intended recipient, you are reminded
 that the information remains the property of the sender. You must not use,
 disclose, distribute, copy, print or rely on this e-mail. If you have
 received this message in error, please contact the sender immediately and
 irrevocably delete this message and any copies.








Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread Brian O'Neill
I don't think Michael and/or Jonathan have published the CQL java driver
yet.  (CCing them)

Hopefully they'll find a public home for it soon, I hope to include it in
the Webinar in December.
(http://www.datastax.com/resources/webinars/collegecredit)

-brian

---
Brian O'Neill
Lead Architect, Software Development
Health Market Science
The Science of Better Results
2700 Horizon Drive € King of Prussia, PA € 19406
M: 215.588.6024 € @boneill42 http://www.twitter.com/boneill42   €
healthmarketscience.com


This information transmitted in this email message is for the intended
recipient only and may contain confidential and/or privileged material. If
you received this email in error and are not the intended recipient, or the
person responsible to deliver it to the intended recipient, please contact
the sender at the email above and delete this email and any attachments and
destroy any copies thereof. Any review, retransmission, dissemination,
copying or other use of, or taking any action in reliance upon, this
information by persons or entities other than the intended recipient is
strictly prohibited.
 


From:  Tommi Laukkanen tlaukka...@gmail.com
Reply-To:  user@cassandra.apache.org
Date:  Monday, November 19, 2012 2:36 AM
To:  user@cassandra.apache.org
Subject:  Re: Datatype Conversion in CQL-Client?

I think Timmy might be referring to the upcoming native CQL Java driver that
might be coming with 1.2 - It was mentioned here:
http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Chang
es_in_Drivers.pdf

I would also be interested on testing that but I can't find it from
repositories. Any hints?

Regards,
Tommi L.

From: Brian O'Neill [mailto:boneil...@gmail.com] On Behalf Of Brian O'Neill
 Sent: 18. marraskuuta 2012 17:47
 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?
 Importance: Low
  
 
  
 If you are talking about the CQL-client that comes with Cassandra (cqlsh), it
 is actually written in Python:
 
 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh
 
  
 
 For information on datatypes (and conversion) take a look at the CQL
 definition:
 
 http://www.datastax.com/docs/1.0/references/cql/index
 
 (Look at the CQL Data Types section)
 
  
 
 If that's not the client you are referencing, let us know which one you mean:
 
 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html
 
  
 
 -brian
 
  
 
 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:
 
 
 
 Thanks for the links, however I'm interested in the functionality that the
 official Cassandra client/API (which is in Java) offers.
 
  
 
 2012/11/17 aaron morton aa...@thelastpickle.com
 
 Does the official/built-in Cassandra CQL client (in 1.2)
 What language ?
 
  
 
 Check the Java http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/
 and python http://code.google.com/a/apache-extras.org/p/cassandra-dbapi2/
 drivers.
 
  
 
 Cheers
 
  
 
  
 
 -
 
 Aaron Morton
 
 Freelance Cassandra Developer
 
 New Zealand
 
  
 
 @aaronmorton
 
 http://www.thelastpickle.com http://www.thelastpickle.com/
 
  
 
 On 16/11/2012, at 11:21 AM, Timmy Turner timm.t...@gmail.com wrote:
 
 
 
 Does the official/built-in Cassandra CQL client (in 1.2) offer any built-in
 option to get direct values/objects when reading a field, instead of just a
 byte array? 
  
  
  
 
 -- 
 Brian ONeill
 Lead Architect, Health Market Science (http://healthmarketscience.com
 http://healthmarketscience.com/ )
 mobile:215.588.6024 tel:215.588.6024
 blog: http://weblogs.java.net/blog/boneill42/
 blog: http://brianoneill.blogspot.com/
  





Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread Timmy Turner
What I meant was the method that the Cassandra-jars give you when you
include them in your project:

  TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
  TProtocol proto = new TBinaryProtocol(tr);
  Cassandra.Client client = new Cassandra.Client(proto);
  tr.open();
  client.execute_cql_query(ByteBuffer.wrap(cql.getBytes()),
Compression.NONE);



2012/11/19 Brian O'Neill b...@alumni.brown.edu

 I don't think Michael and/or Jonathan have published the CQL java driver
 yet.  (CCing them)

 Hopefully they'll find a public home for it soon, I hope to include it in
 the Webinar in December.
 (http://www.datastax.com/resources/webinars/collegecredit)

 -brian

 ---

 Brian O'Neill

 Lead Architect, Software Development

 *Health Market Science*

 *The Science of Better Results*

 2700 Horizon Drive • King of Prussia, PA • 19406

 M: 215.588.6024 • @boneill42 http://www.twitter.com/boneill42  •

 healthmarketscience.com


 This information transmitted in this email message is for the intended
 recipient only and may contain confidential and/or privileged material. If
 you received this email in error and are not the intended recipient, or the
 person responsible to deliver it to the intended recipient, please contact
 the sender at the email above and delete this email and any attachments and
 destroy any copies thereof. Any review, retransmission, dissemination,
 copying or other use of, or taking any action in reliance upon, this
 information by persons or entities other than the intended recipient is
 strictly prohibited.

 ** **


 From: Tommi Laukkanen tlaukka...@gmail.com
 Reply-To: user@cassandra.apache.org
 Date: Monday, November 19, 2012 2:36 AM

 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?

 I think Timmy might be referring to the upcoming native CQL Java driver
 that might be coming with 1.2 - It was mentioned here:

 http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Changes_in_Drivers.pdf

 I would also be interested on testing that but I can't find it from
 repositories. Any hints?

 Regards,
 Tommi L.

 *From:* Brian O'Neill [mailto:boneil...@gmail.com] *On Behalf Of *Brian
 O'Neill

 *Sent:* 18. marraskuuta 2012 17:47
 *To:* user@cassandra.apache.org
 *Subject:* Re: Datatype Conversion in CQL-Client?
 *Importance:* Low

 ** **

 ** **

 If you are talking about the CQL-client that comes with Cassandra
 (cqlsh), it is actually written in Python:

 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh

 ** **

 For information on datatypes (and conversion) take a look at the CQL
 definition:

 http://www.datastax.com/docs/1.0/references/cql/index

 (Look at the CQL Data Types section)

 ** **

 If that's not the client you are referencing, let us know which one you
 mean:

 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html*
 ***

 ** **

 -brian

 ** **

 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:



 

 Thanks for the links, however I'm interested in the functionality that
 the official Cassandra client/API (which is in Java) offers.

 ** **

 2012/11/17 aaron morton aa...@thelastpickle.com

 Does the official/built-in Cassandra CQL client (in 1.2) 

 What language ? 

 ** **

 Check the Java
 http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/ and python
 http://code.google.com/a/apache-extras.org/p/cassandra-dbapi2/ drivers.**
 **

 ** **

 Cheers

 ** **

 ** **

 -

 Aaron Morton

 Freelance Cassandra Developer

 New Zealand

 ** **

 @aaronmorton

 http://www.thelastpickle.com

 ** **

 On 16/11/2012, at 11:21 AM, Timmy Turner timm.t...@gmail.com wrote:



 

 Does the official/built-in Cassandra CQL client (in 1.2) offer any
 built-in option to get direct values/objects when reading a field, instead
 of just a byte array? 

 ** **

 ** **

 ** **

 --
 Brian ONeill
 Lead Architect, Health Market Science (http://healthmarketscience.com)
 mobile:215.588.6024
 blog: http://weblogs.java.net/blog/boneill42/
 blog: http://brianoneill.blogspot.com/ 

 ** **





Re: Collections, query for contains?

2012-11-19 Thread Edward Capriolo
This was my first question after I git the inserts working. Hive has udfs
like array contains. It also has lateral view syntax that is similar to
transposed.

On Monday, November 19, 2012, Timmy Turner timm.t...@gmail.com wrote:
 Is there no option to query for the contents of a collection?
 Something like
   select * from cf where c_list contains('some_value')
 or
   select * from cf where c_map contains('some_key')
 or
   select * from cf where c_map['some_key'] contains('some_value')


Re: SchemaDisagreementException

2012-11-19 Thread Edward Capriolo
even if you made the calls through cql you would have the same issue since
cql uses thrift. 1.2:0 is supposed to be nicer with concurrent
modifications.

On Monday, November 19, 2012, Everton Lima peitin.inu...@gmail.com wrote:
 I was using cassandra direct because it has more performace than using
CQL. Therefore, I am using cassandra because of replication factor and
consistence of data. I am using it as a lib of my app. I only make sample
querys, just use a key to point to a data.

 2012/11/16 Everton Lima peitin.inu...@gmail.com

 I do that because I need to create a dynamic column families.
 I create 2 keyspaces in  the start of application, using embedded
cassandra instance too, but it's never throw exception. And than, insert
dynamic column families in this 2 keyspaces.

 I put a Thread.sleep(3000); in the middle of the creation column family
code.

 int watiTime = 3000;
 logger.info(Waiting +(watiTime/1000)+s for synchronizing
...);
 Thread.sleep(watiTime);
 CassandraHelper.createColumnFamily(CassandraHelper.KEYSPACE,
layer);
 logger.info(Waiting +(watiTime/1000)+s for synchronizing
...);
 Thread.sleep(watiTime);

 I do that, because in the code of CassandraStress, after create a column
family, it do that too. It is wrong or good solution?
 Any other idea?



 2012/11/14 aaron morton aa...@thelastpickle.com

 Out of interest why are you creating column families by making direct
calls on an embedded cassandra instance ? I would guess you life would be
easier if you defined a schema in CQL or CLI.

 I already read in the documentation that this error occurs when more than
one thread/processor access the same place in the Cassandra, but I think
this is not occuring.

 How may nodes do you have ?

 I am using 3 nodes.

 What version are you running ?

 The version is 1.1.6

 It sounds like you have run simultaneous schema updates and the global
schema has diverged.
 If you can create your schema in CLI or CQL I would recommend doing that.
 If you are trying to do something more complicated you'll need to provide
more information.
 Cheers

 -
 Aaron Morton
 Freelance Cassandra Developer
 New Zealand
 @aaronmorton
 http://www.thelastpickle.com
 On 15/11/2012, at 3:13 AM, Everton Lima peitin.inu...@gmail.com wrote:

 Some times, when I try to insert a data in Cassandra with Method:

 static void createColumnFamily(String keySpace, String columnFamily){
  synchronized (mutex){
   Iface cs = new CassandraServer();
   CfDef cfDef = new CfDef(keySpace, colu


Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread Brian O'Neill

Gotcha Timmy.  That is the Thrift API.  You are operating at a pretty
low-level.   I'm not sure that is considered the official CQL client.
IMHO, you might be better off moving up a level.  I'd probably either wait
for the official CQL Java Driver, or access CQL via a higher-level client
like Hector.

If you stick with Thrift, I think you can access the Schema metadata:
https://github.com/apache/cassandra/blob/trunk/interface/thrift/gen-java/org
/apache/cassandra/thrift/CqlMetadata.java
(Those are the generated classes for the Thrift interface)

But I'm not sure where the code is to apply that metadata to the result set
in:
https://github.com/apache/cassandra/blob/trunk/interface/thrift/gen-java/org
/apache/cassandra/thrift/CqlResult.java

-brian

---
Brian O'Neill
Lead Architect, Software Development
Health Market Science
The Science of Better Results
2700 Horizon Drive € King of Prussia, PA € 19406
M: 215.588.6024 € @boneill42 http://www.twitter.com/boneill42   €
healthmarketscience.com


This information transmitted in this email message is for the intended
recipient only and may contain confidential and/or privileged material. If
you received this email in error and are not the intended recipient, or the
person responsible to deliver it to the intended recipient, please contact
the sender at the email above and delete this email and any attachments and
destroy any copies thereof. Any review, retransmission, dissemination,
copying or other use of, or taking any action in reliance upon, this
information by persons or entities other than the intended recipient is
strictly prohibited.
 


From:  Timmy Turner timm.t...@gmail.com
Reply-To:  user@cassandra.apache.org
Date:  Monday, November 19, 2012 9:48 AM
To:  user@cassandra.apache.org
Subject:  Re: Datatype Conversion in CQL-Client?

What I meant was the method that the Cassandra-jars give you when you
include them in your project:

  TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
  TProtocol proto = new TBinaryProtocol(tr);
  Cassandra.Client client = new Cassandra.Client(proto);
  tr.open();
  client.execute_cql_query(ByteBuffer.wrap(cql.getBytes()),
Compression.NONE);



2012/11/19 Brian O'Neill b...@alumni.brown.edu
 I don't think Michael and/or Jonathan have published the CQL java driver yet.
 (CCing them)
 
 Hopefully they'll find a public home for it soon, I hope to include it in the
 Webinar in December.
 (http://www.datastax.com/resources/webinars/collegecredit)
 
 -brian
 
 ---
 Brian O'Neill
 Lead Architect, Software Development
 Health Market Science
 The Science of Better Results
 2700 Horizon Drive € King of Prussia, PA € 19406
 M: 215.588.6024 tel:215.588.6024  € @boneill42
 http://www.twitter.com/boneill42   €
 healthmarketscience.com
 
 
 This information transmitted in this email message is for the intended
 recipient only and may contain confidential and/or privileged material. If you
 received this email in error and are not the intended recipient, or the person
 responsible to deliver it to the intended recipient, please contact the sender
 at the email above and delete this email and any attachments and destroy any
 copies thereof. Any review, retransmission, dissemination, copying or other
 use of, or taking any action in reliance upon, this information by persons or
 entities other than the intended recipient is strictly prohibited.
  
 
 
 From:  Tommi Laukkanen tlaukka...@gmail.com
 Reply-To:  user@cassandra.apache.org
 Date:  Monday, November 19, 2012 2:36 AM
 
 To:  user@cassandra.apache.org
 Subject:  Re: Datatype Conversion in CQL-Client?
 
 I think Timmy might be referring to the upcoming native CQL Java driver that
 might be coming with 1.2 - It was mentioned here:
 http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Changes
 _in_Drivers.pdf
 
 I would also be interested on testing that but I can't find it from
 repositories. Any hints?
 
 Regards,
 Tommi L.
 
 From: Brian O'Neill [mailto:boneil...@gmail.com] On Behalf Of Brian O'Neill
 Sent: 18. marraskuuta 2012 17:47
 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?
 Importance: Low
  
 
  
 If you are talking about the CQL-client that comes with Cassandra (cqlsh), it
 is actually written in Python:
 
 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh
 
  
 
 For information on datatypes (and conversion) take a look at the CQL
 definition:
 
 http://www.datastax.com/docs/1.0/references/cql/index
 
 (Look at the CQL Data Types section)
 
  
 
 If that's not the client you are referencing, let us know which one you mean:
 
 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html
 
  
 
 -brian
 
  
 
 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:
 
 
 
 Thanks for the links, however I'm interested in the functionality that the
 official Cassandra client/API (which is in Java) offers.
 
  
 
 2012/11/17 aaron morton aa...@thelastpickle.com
 
 Does the official/built-in Cassandra 

Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread John Sanda
You might want to take  look a org.apache.cassandra.transport.SimpleClient
and org.apache.cassandra.transport.messages.ResultMessage.


On Mon, Nov 19, 2012 at 9:48 AM, Timmy Turner timm.t...@gmail.com wrote:

 What I meant was the method that the Cassandra-jars give you when you
 include them in your project:

   TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
   TProtocol proto = new TBinaryProtocol(tr);
   Cassandra.Client client = new Cassandra.Client(proto);
   tr.open();
   client.execute_cql_query(ByteBuffer.wrap(cql.getBytes()),
 Compression.NONE);



 2012/11/19 Brian O'Neill b...@alumni.brown.edu

 I don't think Michael and/or Jonathan have published the CQL java driver
 yet.  (CCing them)

 Hopefully they'll find a public home for it soon, I hope to include it in
 the Webinar in December.
 (http://www.datastax.com/resources/webinars/collegecredit)

 -brian

 ---

 Brian O'Neill

 Lead Architect, Software Development

 *Health Market Science*

 *The Science of Better Results*

 2700 Horizon Drive • King of Prussia, PA • 19406

 M: 215.588.6024 • @boneill42 http://www.twitter.com/boneill42  •

 healthmarketscience.com


 This information transmitted in this email message is for the intended
 recipient only and may contain confidential and/or privileged material. If
 you received this email in error and are not the intended recipient, or the
 person responsible to deliver it to the intended recipient, please contact
 the sender at the email above and delete this email and any attachments and
 destroy any copies thereof. Any review, retransmission, dissemination,
 copying or other use of, or taking any action in reliance upon, this
 information by persons or entities other than the intended recipient is
 strictly prohibited.

 ** **


 From: Tommi Laukkanen tlaukka...@gmail.com
 Reply-To: user@cassandra.apache.org
 Date: Monday, November 19, 2012 2:36 AM

 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?

 I think Timmy might be referring to the upcoming native CQL Java driver
 that might be coming with 1.2 - It was mentioned here:

 http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Changes_in_Drivers.pdf

 I would also be interested on testing that but I can't find it from
 repositories. Any hints?

 Regards,
 Tommi L.

 *From:* Brian O'Neill [mailto:boneil...@gmail.com] *On Behalf Of *Brian
 O'Neill

 *Sent:* 18. marraskuuta 2012 17:47
 *To:* user@cassandra.apache.org
 *Subject:* Re: Datatype Conversion in CQL-Client?
 *Importance:* Low

 ** **

 ** **

 If you are talking about the CQL-client that comes with Cassandra
 (cqlsh), it is actually written in Python:

 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh

 ** **

 For information on datatypes (and conversion) take a look at the CQL
 definition:

 http://www.datastax.com/docs/1.0/references/cql/index

 (Look at the CQL Data Types section)

 ** **

 If that's not the client you are referencing, let us know which one you
 mean:

 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html
 

 ** **

 -brian

 ** **

 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:



 

 Thanks for the links, however I'm interested in the functionality that
 the official Cassandra client/API (which is in Java) offers.

 ** **

 2012/11/17 aaron morton aa...@thelastpickle.com

 Does the official/built-in Cassandra CQL client (in 1.2) 

 What language ? 

 ** **

 Check the Java
 http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/ and python
 http://code.google.com/a/apache-extras.org/p/cassandra-dbapi2/ drivers.*
 ***

 ** **

 Cheers

 ** **

 ** **

 -

 Aaron Morton

 Freelance Cassandra Developer

 New Zealand

 ** **

 @aaronmorton

 http://www.thelastpickle.com

 ** **

 On 16/11/2012, at 11:21 AM, Timmy Turner timm.t...@gmail.com wrote:***
 *



 

 Does the official/built-in Cassandra CQL client (in 1.2) offer any
 built-in option to get direct values/objects when reading a field, instead
 of just a byte array? 

 ** **

 ** **

 ** **

 --
 Brian ONeill
 Lead Architect, Health Market Science (http://healthmarketscience.com)
 mobile:215.588.6024
 blog: http://weblogs.java.net/blog/boneill42/
 blog: http://brianoneill.blogspot.com/ 

 ** **






-- 

- John


Re: Collections, query for contains?

2012-11-19 Thread Sylvain Lebresne
It's not supported yet, no, but we have a ticket for it:
https://issues.apache.org/jira/browse/CASSANDRA-4511


On Mon, Nov 19, 2012 at 3:56 PM, Edward Capriolo edlinuxg...@gmail.comwrote:

 This was my first question after I git the inserts working. Hive has udfs
 like array contains. It also has lateral view syntax that is similar to
 transposed.


 On Monday, November 19, 2012, Timmy Turner timm.t...@gmail.com wrote:
  Is there no option to query for the contents of a collection?
  Something like
select * from cf where c_list contains('some_value')
  or
select * from cf where c_map contains('some_key')
  or
select * from cf where c_map['some_key'] contains('some_value')



Datastax Java Driver

2012-11-19 Thread Sylvain Lebresne
Everyone,

We've just open-sourced a new Java driver we have been working on here at
DataStax. This driver is CQL3 only and is built to use the new binary
protocol
that will be introduced with Cassandra 1.2. It will thus only work with
Cassandra 1.2 onwards. Currently, it means that testing it requires
1.2.0-beta2. This is also alpha software at this point. You are welcome to
try
and play with it and we would very much welcome feedback, but be sure that
break, it will. The driver is accessible at:
  http://github.com/datastax/java-driver

Today we're open-sourcing the core part of this driver. This main goal of
this
core module is to handle connections to the Cassandra cluster with all the
features that one would expect. The currently supported features are:
  - Asynchronous: the driver uses the new CQL binary protocol asynchronous
capabilities.
  - Nodes discovery.
  - Configurable load balancing/routing.
  - Transparent fail-over.
  - C* tracing handling.
  - Convenient schema access.
  - Configurable retry policy.

This core module provides a simple low-level API (that works directly with
query strings). We plan to release a higher-level, thin object mapping API
based on top of this core shortly.

Please refer to the project README for more information.

--
The DataStax Team


Re: Datastax Java Driver

2012-11-19 Thread Brian O'Neill
Woohoo!

Thanks for making this available.

---
Brian O'Neill
Lead Architect, Software Development
Health Market Science
The Science of Better Results
2700 Horizon Drive € King of Prussia, PA € 19406
M: 215.588.6024 € @boneill42 http://www.twitter.com/boneill42   €
healthmarketscience.com


This information transmitted in this email message is for the intended
recipient only and may contain confidential and/or privileged material. If
you received this email in error and are not the intended recipient, or the
person responsible to deliver it to the intended recipient, please contact
the sender at the email above and delete this email and any attachments and
destroy any copies thereof. Any review, retransmission, dissemination,
copying or other use of, or taking any action in reliance upon, this
information by persons or entities other than the intended recipient is
strictly prohibited.
 


From:  Sylvain Lebresne sylv...@datastax.com
Reply-To:  user@cassandra.apache.org
Date:  Monday, November 19, 2012 1:50 PM
To:  user@cassandra.apache.org user@cassandra.apache.org
Subject:  Datastax Java Driver

Everyone,

We've just open-sourced a new Java driver we have been working on here at
DataStax. This driver is CQL3 only and is built to use the new binary
protocol
that will be introduced with Cassandra 1.2. It will thus only work with
Cassandra 1.2 onwards. Currently, it means that testing it requires
1.2.0-beta2. This is also alpha software at this point. You are welcome to
try
and play with it and we would very much welcome feedback, but be sure that
break, it will. The driver is accessible at:
  http://github.com/datastax/java-driver

Today we're open-sourcing the core part of this driver. This main goal of
this
core module is to handle connections to the Cassandra cluster with all the
features that one would expect. The currently supported features are:
  - Asynchronous: the driver uses the new CQL binary protocol asynchronous
capabilities.
  - Nodes discovery.
  - Configurable load balancing/routing.
  - Transparent fail-over.
  - C* tracing handling.
  - Convenient schema access.
  - Configurable retry policy.

This core module provides a simple low-level API (that works directly with
query strings). We plan to release a higher-level, thin object mapping API
based on top of this core shortly.

Please refer to the project README for more information.

--
The DataStax Team




RE: SchemaDisagreementException

2012-11-19 Thread Everton Lima
For some reason I can not reply my old thread in that list. So I was
creating a new one.

The problem is that I do not use thrift to gain in performace. Why it is
nicer with concurrent modifications? I do not know why I have falling in
the problem of concurrent modification if I was creating 2 keyspaces
diferent in only one process with just one thread. Someone knows why?

-- 

Everton Lima Aleixo
Bacharel em Ciencia da Computação
Universidade Federal de Goiás


Re: Datastax Java Driver

2012-11-19 Thread John Sanda
Fantastic! As for the object mapping API, has there been any
discussion/consideration of http://www.hibernate.org/subprojects/ogm.html?


On Mon, Nov 19, 2012 at 1:50 PM, Sylvain Lebresne sylv...@datastax.comwrote:

 Everyone,

 We've just open-sourced a new Java driver we have been working on here at
 DataStax. This driver is CQL3 only and is built to use the new binary
 protocol
 that will be introduced with Cassandra 1.2. It will thus only work with
 Cassandra 1.2 onwards. Currently, it means that testing it requires
 1.2.0-beta2. This is also alpha software at this point. You are welcome to
 try
 and play with it and we would very much welcome feedback, but be sure that
 break, it will. The driver is accessible at:
   http://github.com/datastax/java-driver

 Today we're open-sourcing the core part of this driver. This main goal of
 this
 core module is to handle connections to the Cassandra cluster with all the
 features that one would expect. The currently supported features are:
   - Asynchronous: the driver uses the new CQL binary protocol asynchronous
 capabilities.
   - Nodes discovery.
   - Configurable load balancing/routing.
   - Transparent fail-over.
   - C* tracing handling.
   - Convenient schema access.
   - Configurable retry policy.

 This core module provides a simple low-level API (that works directly with
 query strings). We plan to release a higher-level, thin object mapping API
 based on top of this core shortly.

 Please refer to the project README for more information.

 --
 The DataStax Team




-- 

- John


Re: Upgrade 1.1.2 - 1.1.6

2012-11-19 Thread Rob Coli
On Thu, Nov 15, 2012 at 6:21 AM, Alain RODRIGUEZ arodr...@gmail.com wrote:
 We had an issue with counters over-counting even using the nodetool drain
 command before upgrading...

You're sure the over-count was caused by the upgrade?Counts can be
counted on (heh) to overcount. What is the scale of the over-count?

Also, do you realize that drain doesn't actually prevent over-replay,
though it should?

https://issues.apache.org/jira/browse/CASSANDRA-4446

Check for replayed operations in the system log..

grep -i replay /path/to/system.log


(I see further down thread that your logs do in fact contain replay.
Please comment to this effect, and how negative the experience is for
counts, on 4446?)

 I saw that the sudo apt-get install cassandra stop the server and restart
 it automatically. So it updated without draining and restart before I had
 the time to reconfigure the conf files. Is this normal ? Is there a way to
 avoid it ?

https://issues.apache.org/jira/browse/CASSANDRA-2356

Perhaps if you comment on here you can help convince the debian
packager that auto-starting a distributed database when you install or
upgrade its package has negative operational characteristics.

 After both of these updates I saw my current counters increase without any
 reason.

 Did I do anything wrong ?

Expecting counters to not over-count may qualify as wrong. But your
process seems reasonable.

=Rob

-- 
=Robert Coli
AIMGTALK - rc...@palominodb.com
YAHOO - rcoli.palominob
SKYPE - rcoli_palominodb


Re: Query regarding SSTable timestamps and counts

2012-11-19 Thread Rob Coli
On Sun, Nov 18, 2012 at 7:57 PM, Ananth Gundabattula
agundabatt...@gmail.com wrote:
 As per the above url,  After running a major compaction, automatic minor
 compactions are no longer triggered, frequently requiring you to manually
 run major compactions on a routine basis. ( Just before the heading Tuning
 Column Family compression in the above link)

This inaccurate statement has been questioned a few times on the
mailing list. Generally what happens is people discuss it for about 10
emails and then give up because they can't really make sense of it. If
you google for cassandra-user and that sentence above, you should find
the threads. I suggest mailing d...@datastax.com, explaining your
confusion, and asking them to fix it.

=Rob

-- 
=Robert Coli
AIMGTALK - rc...@palominodb.com
YAHOO - rcoli.palominob
SKYPE - rcoli_palominodb


Re: SchemaDisagreementException

2012-11-19 Thread Tyler Hobbs
Have you actually tested to see that the Thrift API is more performant than
CQL for your application?  As far as I know, CQL almost always has a
performance advantage over the Thrift API.


On Mon, Nov 19, 2012 at 1:05 PM, Everton Lima peitin.inu...@gmail.comwrote:

 For some reason I can not reply my old thread in that list. So I was
 creating a new one.

 The problem is that I do not use thrift to gain in performace. Why it is
 nicer with concurrent modifications? I do not know why I have falling in
 the problem of concurrent modification if I was creating 2 keyspaces
 diferent in only one process with just one thread. Someone knows why?


 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás




-- 
Tyler Hobbs
DataStax http://datastax.com/


Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread Timmy Turner
Do these other clients use the thrift API internaly?


2012/11/19 John Sanda john.sa...@gmail.com

 You might want to take  look a org.apache.cassandra.transport.SimpleClient
 and org.apache.cassandra.transport.messages.ResultMessage.


 On Mon, Nov 19, 2012 at 9:48 AM, Timmy Turner timm.t...@gmail.com wrote:

 What I meant was the method that the Cassandra-jars give you when you
 include them in your project:

   TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
   TProtocol proto = new TBinaryProtocol(tr);
   Cassandra.Client client = new Cassandra.Client(proto);
   tr.open();
   client.execute_cql_query(ByteBuffer.wrap(cql.getBytes()),
 Compression.NONE);



 2012/11/19 Brian O'Neill b...@alumni.brown.edu

 I don't think Michael and/or Jonathan have published the CQL java driver
 yet.  (CCing them)

 Hopefully they'll find a public home for it soon, I hope to include it
 in the Webinar in December.
 (http://www.datastax.com/resources/webinars/collegecredit)

 -brian

 ---

 Brian O'Neill

 Lead Architect, Software Development

 *Health Market Science*

 *The Science of Better Results*

 2700 Horizon Drive • King of Prussia, PA • 19406

 M: 215.588.6024 • @boneill42 http://www.twitter.com/boneill42  •

 healthmarketscience.com


 This information transmitted in this email message is for the intended
 recipient only and may contain confidential and/or privileged material. If
 you received this email in error and are not the intended recipient, or the
 person responsible to deliver it to the intended recipient, please contact
 the sender at the email above and delete this email and any attachments and
 destroy any copies thereof. Any review, retransmission, dissemination,
 copying or other use of, or taking any action in reliance upon, this
 information by persons or entities other than the intended recipient is
 strictly prohibited.

 ** **


 From: Tommi Laukkanen tlaukka...@gmail.com
 Reply-To: user@cassandra.apache.org
 Date: Monday, November 19, 2012 2:36 AM

 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?

 I think Timmy might be referring to the upcoming native CQL Java driver
 that might be coming with 1.2 - It was mentioned here:

 http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Changes_in_Drivers.pdf

 I would also be interested on testing that but I can't find it from
 repositories. Any hints?

 Regards,
 Tommi L.

 *From:* Brian O'Neill [mailto:boneil...@gmail.com] *On Behalf Of *Brian
 O'Neill

 *Sent:* 18. marraskuuta 2012 17:47
 *To:* user@cassandra.apache.org
 *Subject:* Re: Datatype Conversion in CQL-Client?
 *Importance:* Low

 ** **

 ** **

 If you are talking about the CQL-client that comes with Cassandra
 (cqlsh), it is actually written in Python:

 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh

 ** **

 For information on datatypes (and conversion) take a look at the CQL
 definition:

 http://www.datastax.com/docs/1.0/references/cql/index

 (Look at the CQL Data Types section)

 ** **

 If that's not the client you are referencing, let us know which one you
 mean:

 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html
 

 ** **

 -brian

 ** **

 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:



 

 Thanks for the links, however I'm interested in the functionality that
 the official Cassandra client/API (which is in Java) offers.

 ** **

 2012/11/17 aaron morton aa...@thelastpickle.com

 Does the official/built-in Cassandra CQL client (in 1.2) 

 What language ? 

 ** **

 Check the Java
 http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/ and
 python http://code.google.com/a/apache-extras.org/p/cassandra-dbapi2/
  drivers.

 ** **

 Cheers

 ** **

 ** **

 -

 Aaron Morton

 Freelance Cassandra Developer

 New Zealand

 ** **

 @aaronmorton

 http://www.thelastpickle.com

 ** **

 On 16/11/2012, at 11:21 AM, Timmy Turner timm.t...@gmail.com wrote:**
 **



 

 Does the official/built-in Cassandra CQL client (in 1.2) offer any
 built-in option to get direct values/objects when reading a field, instead
 of just a byte array? 

 ** **

 ** **

 ** **

 --
 Brian ONeill
 Lead Architect, Health Market Science (http://healthmarketscience.com)
 mobile:215.588.6024
 blog: http://weblogs.java.net/blog/boneill42/
 blog: http://brianoneill.blogspot.com/ 

 ** **






 --

 - John



Re: Datatype Conversion in CQL-Client?

2012-11-19 Thread Brian O'Neill

Hector does, but the newer clients/drivers no longer use Thrift.  (Thrift is
the legacy protocol)

If you are still in early stages and you know you want your primary
interface to be CQL, you may want to look at the java driver that Datastax
just released.
  http://github.com/datastax/java-driver

-brian

---
Brian O'Neill
Lead Architect, Software Development
Health Market Science
The Science of Better Results
2700 Horizon Drive € King of Prussia, PA € 19406
M: 215.588.6024 € @boneill42 http://www.twitter.com/boneill42   €
healthmarketscience.com


This information transmitted in this email message is for the intended
recipient only and may contain confidential and/or privileged material. If
you received this email in error and are not the intended recipient, or the
person responsible to deliver it to the intended recipient, please contact
the sender at the email above and delete this email and any attachments and
destroy any copies thereof. Any review, retransmission, dissemination,
copying or other use of, or taking any action in reliance upon, this
information by persons or entities other than the intended recipient is
strictly prohibited.
 


From:  Timmy Turner timm.t...@gmail.com
Reply-To:  user@cassandra.apache.org
Date:  Monday, November 19, 2012 3:37 PM
To:  user@cassandra.apache.org
Subject:  Re: Datatype Conversion in CQL-Client?

Do these other clients use the thrift API internaly?


2012/11/19 John Sanda john.sa...@gmail.com
 You might want to take  look a org.apache.cassandra.transport.SimpleClient and
 org.apache.cassandra.transport.messages.ResultMessage.
 
 
 On Mon, Nov 19, 2012 at 9:48 AM, Timmy Turner timm.t...@gmail.com wrote:
 What I meant was the method that the Cassandra-jars give you when you include
 them in your project:
 
   TTransport tr = new TFramedTransport(new TSocket(localhost, 9160));
   TProtocol proto = new TBinaryProtocol(tr);
   Cassandra.Client client = new Cassandra.Client(proto);
   tr.open();
   client.execute_cql_query(ByteBuffer.wrap(cql.getBytes()),
 Compression.NONE);
 
 
 
 2012/11/19 Brian O'Neill b...@alumni.brown.edu
 I don't think Michael and/or Jonathan have published the CQL java driver
 yet.  (CCing them)
 
 Hopefully they'll find a public home for it soon, I hope to include it in
 the Webinar in December.
 (http://www.datastax.com/resources/webinars/collegecredit)
 
 -brian
 
 ---
 Brian O'Neill
 Lead Architect, Software Development
 Health Market Science
 The Science of Better Results
 2700 Horizon Drive € King of Prussia, PA € 19406
 M: 215.588.6024 tel:215.588.6024  € @boneill42
 http://www.twitter.com/boneill42   €
 healthmarketscience.com
 
 
 This information transmitted in this email message is for the intended
 recipient only and may contain confidential and/or privileged material. If
 you received this email in error and are not the intended recipient, or the
 person responsible to deliver it to the intended recipient, please contact
 the sender at the email above and delete this email and any attachments and
 destroy any copies thereof. Any review, retransmission, dissemination,
 copying or other use of, or taking any action in reliance upon, this
 information by persons or entities other than the intended recipient is
 strictly prohibited.
  
 
 
 From:  Tommi Laukkanen tlaukka...@gmail.com
 Reply-To:  user@cassandra.apache.org
 Date:  Monday, November 19, 2012 2:36 AM
 
 To:  user@cassandra.apache.org
 Subject:  Re: Datatype Conversion in CQL-Client?
 
 I think Timmy might be referring to the upcoming native CQL Java driver that
 might be coming with 1.2 - It was mentioned here:
 http://www.datastax.com/wp-content/uploads/2012/08/7_Datastax_Upcoming_Chang
 es_in_Drivers.pdf
 
 I would also be interested on testing that but I can't find it from
 repositories. Any hints?
 
 Regards,
 Tommi L.
 
 From: Brian O'Neill [mailto:boneil...@gmail.com] On Behalf Of Brian O'Neill
 Sent: 18. marraskuuta 2012 17:47
 To: user@cassandra.apache.org
 Subject: Re: Datatype Conversion in CQL-Client?
 Importance: Low
  
 
  
 If you are talking about the CQL-client that comes with Cassandra (cqlsh),
 it is actually written in Python:
 
 https://github.com/apache/cassandra/blob/trunk/bin/cqlsh
 
  
 
 For information on datatypes (and conversion) take a look at the CQL
 definition:
 
 http://www.datastax.com/docs/1.0/references/cql/index
 
 (Look at the CQL Data Types section)
 
  
 
 If that's not the client you are referencing, let us know which one you
 mean:
 
 http://brianoneill.blogspot.com/2012/08/cassandra-apis-laundry-list.html
 
  
 
 -brian
 
  
 
 On Nov 17, 2012, at 9:54 PM, Timmy Turner wrote:
 
 
 
 Thanks for the links, however I'm interested in the functionality that the
 official Cassandra client/API (which is in Java) offers.
 
  
 
 2012/11/17 aaron morton aa...@thelastpickle.com
 
 Does the official/built-in Cassandra CQL client (in 1.2)
 What language ?
 
  
 
 Check the Java
 http://code.google.com/a/apache-extras.org/p/cassandra-jdbc/ 

Re: row cache re-fill very slow

2012-11-19 Thread aaron morton
 i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec 
 ) re-fill of the row cache at start up.
It was mentioned the other day.  

What version are you on ? 
Do you know how many rows were loaded ? When complete it will log a message 
with the pattern 

completed loading (%d ms; %d keys) row cache for %s.%s

 How is the saved row cache file processed?

In Version 1.1, after the SSTables have been opened the keys in the saved row 
cache are read one at a time and the whole row read into memory. This is a 
single threaded operation. 

In 1.2 reading the saved cache is still single threaded, but reading the rows 
goes through the read thread pool so is in parallel.

In both cases I do not believe the cache is stored in token (or key) order. 

 ( Admittedly whatever is going on is still much more preferable to starting 
 with a cold row cache )

row_cache_keys_to_save in yaml may help you find a happy half way point. 

Cheers


-
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 20/11/2012, at 3:17 AM, Andras Szerdahelyi 
andras.szerdahe...@ignitionone.com wrote:

 Hey list,
 
 i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec 
 ) re-fill of the row cache at start up. We operate with a large row cache ( 
 10-15GB currently ) and we already measure startup times in hours :-)
 
 How is the saved row cache file processed? Are the cached row keys simply 
 iterated over and their respective rows read from SSTables - possibly 
 creating random reads with small enough sstable files, if the keys were not 
 stored in a manner optimised for a quick re-fill ? -  or is there a smarter 
 algorithm ( i.e. scan through one sstable at a time, filter rows that should 
 be in row cache )  at work and this operation is purely disk i/o bound ?
 
 ( Admittedly whatever is going on is still much more preferable to starting 
 with a cold row cache )
 
 thanks!
 Andras
 
 
 
 Andras Szerdahelyi
 Solutions Architect, IgnitionOne | 1831 Diegem E.Mommaertslaan 20A
 M: +32 493 05 50 88 | Skype: sandrew84
 
 
 C4798BB9-9092-4145-880B-A72C6B7AF9A4[41].png
 
 



Re: Invalid argument

2012-11-19 Thread aaron morton
Are you running a 32 bit JVM ? What is the full JVM version ? 

As a work around you can try disabling memory mapped access set 
disk_access_mode to standard. 

Cheers

-
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 20/11/2012, at 6:27 AM, Alain RODRIGUEZ arodr...@gmail.com wrote:

 I have backed up production sstables from one of my 3 production nodes (RF=3) 
 and I want to use them on my dev environment.(C* 1.1.6 on both environments)
 
 My dev server is a 4 core, 4 GB RAM hardware runing on ubuntu.
 
 I have applied the production schema in my dev node and copied all sstable in 
 the appropriated folder and restart my node like I always do.
 
 But this time have had the following error (many times and only for ) :
 
  INFO [SSTableBatchOpen:4] 2012-11-19 17:52:52,980 SSTableReader.java (line 
 169) Opening 
 /var/lib/cassandra/data/cassa_teads/data_action/cassa_teads-data_action-hf-660
  (7015417424 bytes)
 ERROR [SSTableBatchOpen:3] 2012-11-19 17:53:17,259 
 AbstractCassandraDaemon.java (line 135) Exception in thread 
 Thread[SSTableBatchOpen:3,5,main]
 java.io.IOError: java.io.IOException: Invalid argument
 at 
 org.apache.cassandra.io.util.MmappedSegmentedFile$Builder.createSegments(MmappedSegmentedFile.java:202)
 at 
 org.apache.cassandra.io.util.MmappedSegmentedFile$Builder.complete(MmappedSegmentedFile.java:179)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:429)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:200)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:153)
 at 
 org.apache.cassandra.io.sstable.SSTableReader$1.run(SSTableReader.java:242)
 at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
 at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
 at java.util.concurrent.FutureTask.run(Unknown Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown 
 Source)
 at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 at java.lang.Thread.run(Unknown Source)
 Caused by: java.io.IOException: Invalid argument
 at sun.nio.ch.FileChannelImpl.truncate0(Native Method)
 at sun.nio.ch.FileChannelImpl.map(Unknown Source)
 at 
 org.apache.cassandra.io.util.MmappedSegmentedFile$Builder.createSegments(MmappedSegmentedFile.java:194)
 ... 11 more
 
 If I try with nodetool refresh I have the following error :
 
 Exception in thread main java.io.IOError: java.io.IOException: Invalid 
 argument
 at 
 org.apache.cassandra.io.util.MmappedSegmentedFile$Builder.createSegments(MmappedSegmentedFile.java:202)
 at 
 org.apache.cassandra.io.util.MmappedSegmentedFile$Builder.complete(MmappedSegmentedFile.java:179)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.load(SSTableReader.java:429)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:200)
 at 
 org.apache.cassandra.io.sstable.SSTableReader.open(SSTableReader.java:153)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:510)
 at 
 org.apache.cassandra.db.ColumnFamilyStore.loadNewSSTables(ColumnFamilyStore.java:468)
 at 
 org.apache.cassandra.service.StorageService.loadNewSSTables(StorageService.java:3089)
 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)
 at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown 
 Source)
 at com.sun.jmx.mbeanserver.StandardMBeanIntrospector.invokeM2(Unknown 
 Source)
 at com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM(Unknown Source)
 at com.sun.jmx.mbeanserver.PerInterface.invoke(Unknown Source)
 at com.sun.jmx.mbeanserver.MBeanSupport.invoke(Unknown Source)
 at 
 com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(Unknown Source)
 at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(Unknown Source)
 at javax.management.remote.rmi.RMIConnectionImpl.doOperation(Unknown 
 Source)
 at javax.management.remote.rmi.RMIConnectionImpl.access$200(Unknown 
 Source)
 at 
 javax.management.remote.rmi.RMIConnectionImpl$PrivilegedOperation.run(Unknown 
 Source)
 at 
 javax.management.remote.rmi.RMIConnectionImpl.doPrivilegedOperation(Unknown 
 Source)
 at javax.management.remote.rmi.RMIConnectionImpl.invoke(Unknown 
 Source)
 at sun.reflect.GeneratedMethodAccessor43.invoke(Unknown Source)
 at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
 at java.lang.reflect.Method.invoke(Unknown Source)

Re: row cache re-fill very slow

2012-11-19 Thread Wei Zhu
Last time I checked, it took about 120 seconds to load up 21125 keys with total 
about 500M in memory ( We have a pretty wide row:). So it's about 4 MB/sec.

Just curious Andras, how can you manage such a big row cache (10-15GB 
currently)? By recommendation, you will have 10% of your heap as row cache, so 
your heap is over 100G?? The largest datastax recommends is 8GB and it seems to 
be a hardcoded limit in cassandra-env.sh ( # calculate 1/4 ram and cap to 
8192MB). Does you GC hold up with such a big heap? In my experience, full GC 
could take over 20 seconds for such a big heap.

Thanks.
-Wei



 From: aaron morton aa...@thelastpickle.com
To: user@cassandra.apache.org 
Sent: Monday, November 19, 2012 1:00 PM
Subject: Re: row cache re-fill very slow
 

i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec ) 
re-fill of the row cache at start up.
It was mentioned the other day.  

What version are you on ? 
Do you know how many rows were loaded ? When complete it will log a message 
with the pattern 

completed loading (%d ms; %d keys) row cache for %s.%s

How is the saved row cache file processed?
In Version 1.1, after the SSTables have been opened the keys in the saved row 
cache are read one at a time and the whole row read into memory. This is a 
single threaded operation. 

In 1.2 reading the saved cache is still single threaded, but reading the rows 
goes through the read thread pool so is in parallel.

In both cases I do not believe the cache is stored in token (or key) order. 

( Admittedly whatever is going on is still much more preferable to starting 
with a cold row cache )
row_cache_keys_to_save in yaml may help you find a happy half way point. 

Cheers


-
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 20/11/2012, at 3:17 AM, Andras Szerdahelyi 
andras.szerdahe...@ignitionone.com wrote:

Hey list, 


i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec ) 
re-fill of the row cache at start up. We operate with a large row cache ( 
10-15GB currently ) and we already measure startup times in hours :-)


How is the saved row cache file processed? Are the cached row keys simply 
iterated over and their respective rows read from SSTables - possibly creating 
random reads with small enough sstable files, if the keys were not stored in a 
manner optimised for a quick re-fill ? -  or is there a smarter algorithm ( 
i.e. scan through one sstable at a time, filter rows that should be in row 
cache )  at work and this operation is purely disk i/o bound ?


( Admittedly whatever is going on is still much more preferable to starting 
with a cold row cache )


thanks!
Andras





Andras Szerdahelyi
Solutions Architect, IgnitionOne | 1831 Diegem E.Mommaertslaan 20A
M: +32 493 05 50 88 | Skype: sandrew84



C4798BB9-9092-4145-880B-A72C6B7AF9A4[41].png

  


Re: row cache re-fill very slow

2012-11-19 Thread Andras Szerdahelyi
Aaron,

What version are you on ?

1.1.5

Do you know how many rows were loaded ?

INFO [OptionalTasks:1] 2012-11-19 13:08:58,868 ColumnFamilyStore.java (line 
451) completed loading (5175655 ms; 13259976 keys) row cache

In both cases I do not believe the cache is stored in token (or key) order.

Am i getting this right:  the row keys are read and rows are retrieved from 
SSTables in the order their keys are in the cache file..
Would something like iterating over SSTables instead, and throwing rows at the 
cache that need to be in there feasible ? If the SSTables themselves are 
written sequentially at compaction time , which is how i remember they are 
written, SSTable-sized sequential reads with a filter ( bloom filter for the 
row cache? :-) ) must be faster than reading from all across the column family 
( i have HDDs and about 1k SSTables )

row_cache_keys_to_save in yaml may help you find a happy half way point.

If i can keep that high enough, with my data retention requirements, save for 
the absolute first get on a row, i can operate entirely out of memory.

thanks!
Andras

Andras Szerdahelyi
Solutions Architect, IgnitionOne | 1831 Diegem E.Mommaertslaan 20A
M: +32 493 05 50 88 | Skype: sandrew84


[cid:7BDF7228-D831-4D98-967A-BE04FEB17544]




On 19 Nov 2012, at 22:00, aaron morton 
aa...@thelastpickle.commailto:aa...@thelastpickle.com
 wrote:

i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec ) 
re-fill of the row cache at start up.
It was mentioned the other day.

What version are you on ?
Do you know how many rows were loaded ? When complete it will log a message 
with the pattern

completed loading (%d ms; %d keys) row cache for %s.%s

How is the saved row cache file processed?

In Version 1.1, after the SSTables have been opened the keys in the saved row 
cache are read one at a time and the whole row read into memory. This is a 
single threaded operation.

In 1.2 reading the saved cache is still single threaded, but reading the rows 
goes through the read thread pool so is in parallel.

In both cases I do not believe the cache is stored in token (or key) order.

( Admittedly whatever is going on is still much more preferable to starting 
with a cold row cache )
row_cache_keys_to_save in yaml may help you find a happy half way point.

Cheers


-
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.comhttp://www.thelastpickle.com/

On 20/11/2012, at 3:17 AM, Andras Szerdahelyi 
andras.szerdahe...@ignitionone.commailto:andras.szerdahe...@ignitionone.com 
wrote:

Hey list,

i was just wondering if anyone else is experiencing very slow ( ~ 3.5 MB/sec ) 
re-fill of the row cache at start up. We operate with a large row cache ( 
10-15GB currently ) and we already measure startup times in hours :-)

How is the saved row cache file processed? Are the cached row keys simply 
iterated over and their respective rows read from SSTables - possibly creating 
random reads with small enough sstable files, if the keys were not stored in a 
manner optimised for a quick re-fill ? -  or is there a smarter algorithm ( 
i.e. scan through one sstable at a time, filter rows that should be in row 
cache )  at work and this operation is purely disk i/o bound ?

( Admittedly whatever is going on is still much more preferable to starting 
with a cold row cache )

thanks!
Andras



Andras Szerdahelyi
Solutions Architect, IgnitionOne | 1831 Diegem E.Mommaertslaan 20A
M: +32 493 05 50 88 | Skype: sandrew84


C4798BB9-9092-4145-880B-A72C6B7AF9A4[41].png






inline: C4798BB9-9092-4145-880B-A72C6B7AF9A4[41].png

Re: row cache re-fill very slow

2012-11-19 Thread Andras Szerdahelyi
Wei,

i'm using the off-heap ( serialised ) row cache and front the entire thing with 
memcached in the middle layer ( to prevent the most actively requested rows 
from pressuring the Cassandra heap ). If you ask how much the pointers to the 
off-heap memory will take.. time will tell ( it should be easy to calculate 
though ) It's been working out great.

Andras Szerdahelyi
Solutions Architect, IgnitionOne | 1831 Diegem E.Mommaertslaan 20A
M: +32 493 05 50 88 | Skype: sandrew84


[cid:7BDF7228-D831-4D98-967A-BE04FEB17544]




On 19 Nov 2012, at 22:23, Wei Zhu wz1...@yahoo.commailto:wz1...@yahoo.com
 wrote:

Just curious Andras, how can you manage such a big row cache (10-15GB 
currently)? By recommendation, you will have 10% of your heap as row cache, so 
your heap is over 100G?? The largest datastax recommends is 8GB and it seems to 
be a hardcoded limit in cassandra-env.sh ( # calculate 1/4 ram and cap to 
8192MB). Does you GC hold up with such a big heap? In my experience, full GC 
could take over 20 seconds for such a big heap.


inline: C4798BB9-9092-4145-880B-A72C6B7AF9A4[41].png

Re: row cache re-fill very slow

2012-11-19 Thread Rob Coli
On Mon, Nov 19, 2012 at 6:17 AM, Andras Szerdahelyi 
andras.szerdahe...@ignitionone.com wrote:

 How is the saved row cache file processed? Are the cached row keys
 simply iterated over and their respective rows read from SSTables -
 possibly creating random reads with small enough sstable files, if the keys
 were not stored in a manner optimised for a quick re-fill ? -  or is there
 a smarter algorithm ( i.e. scan through one sstable at a time, filter rows
 that should be in row cache )  at work and this operation is purely disk
 i/o bound ?


Nope, that's it. I am quite confident that in the version you are running,
it just assembles the row from disk, from the relevant SSTables, via the
more or less normal read path. The more fragmented your sstables, the more
random the i/o.

These two 1.2.x era JIRA relate to the row cache startup penalty :

https://issues.apache.org/jira/browse/CASSANDRA-4282 # multi-threaded row
cache loading at startup
https://issues.apache.org/jira/browse/CASSANDRA-3762 # improvements to the
AutoSavingCache (which is the base class of AutoSavingRowCache)

=Rob

-- 
=Robert Coli
AIMGTALK - rc...@palominodb.com
YAHOO - rcoli.palominob
SKYPE - rcoli_palominodb


Using Hector from .Net

2012-11-19 Thread Peter Lin
I thought others might be interested to know.

If you've ever asked what drivers are available for Cassandra in .Net
and can I use Hector?

the answer is yes and it works quite well. Just use IKVM with hector

peter lin


Re: Datastax Java Driver

2012-11-19 Thread michael.figui...@gmail.com
We're currently talking with some guys from Hibernate OGM team. This kind
of integration is likely to happen on top of this core module. The mapping
module that will add soon isn't alike OGM as it'll be a very thin mapping
library, covering most use cases with low overhead.

Michaël

On Mon, Nov 19, 2012 at 8:29 PM, John Sanda john.sa...@gmail.com wrote:

 Fantastic! As for the object mapping API, has there been any
 discussion/consideration of http://www.hibernate.org/subprojects/ogm.html?


 On Mon, Nov 19, 2012 at 1:50 PM, Sylvain Lebresne sylv...@datastax.comwrote:

 Everyone,

 We've just open-sourced a new Java driver we have been working on here at
 DataStax. This driver is CQL3 only and is built to use the new binary
 protocol
 that will be introduced with Cassandra 1.2. It will thus only work with
 Cassandra 1.2 onwards. Currently, it means that testing it requires
 1.2.0-beta2. This is also alpha software at this point. You are welcome
 to try
 and play with it and we would very much welcome feedback, but be sure that
 break, it will. The driver is accessible at:
   http://github.com/datastax/java-driver

 Today we're open-sourcing the core part of this driver. This main goal of
 this
 core module is to handle connections to the Cassandra cluster with all the
 features that one would expect. The currently supported features are:
   - Asynchronous: the driver uses the new CQL binary protocol asynchronous
 capabilities.
   - Nodes discovery.
   - Configurable load balancing/routing.
   - Transparent fail-over.
   - C* tracing handling.
   - Convenient schema access.
   - Configurable retry policy.

 This core module provides a simple low-level API (that works directly with
 query strings). We plan to release a higher-level, thin object mapping API
 based on top of this core shortly.

 Please refer to the project README for more information.

 --
 The DataStax Team




 --

 - John



Re: Datastax Java Driver

2012-11-19 Thread Timmy Turner
Why is this being released as a separate project, instead of being bundled
up with Cassandra? Is it not a part of Cassandra?


2012/11/19 John Sanda john.sa...@gmail.com

 Fantastic! As for the object mapping API, has there been any
 discussion/consideration of http://www.hibernate.org/subprojects/ogm.html?


 On Mon, Nov 19, 2012 at 1:50 PM, Sylvain Lebresne sylv...@datastax.comwrote:

 Everyone,

 We've just open-sourced a new Java driver we have been working on here at
 DataStax. This driver is CQL3 only and is built to use the new binary
 protocol
 that will be introduced with Cassandra 1.2. It will thus only work with
 Cassandra 1.2 onwards. Currently, it means that testing it requires
 1.2.0-beta2. This is also alpha software at this point. You are welcome
 to try
 and play with it and we would very much welcome feedback, but be sure that
 break, it will. The driver is accessible at:
   http://github.com/datastax/java-driver

 Today we're open-sourcing the core part of this driver. This main goal of
 this
 core module is to handle connections to the Cassandra cluster with all the
 features that one would expect. The currently supported features are:
   - Asynchronous: the driver uses the new CQL binary protocol asynchronous
 capabilities.
   - Nodes discovery.
   - Configurable load balancing/routing.
   - Transparent fail-over.
   - C* tracing handling.
   - Convenient schema access.
   - Configurable retry policy.

 This core module provides a simple low-level API (that works directly with
 query strings). We plan to release a higher-level, thin object mapping API
 based on top of this core shortly.

 Please refer to the project README for more information.

 --
 The DataStax Team




 --

 - John



Re: Datastax Java Driver

2012-11-19 Thread michael.figui...@gmail.com
The Apache Cassandra project has traditionally not focused on client side.
Rather than modifying the scope of the project and jeopardizing the current
driver ecosystem we've preferred to open source it this way. Not that this
driver's license is Apache License 2 and it will remain so, making it easy
to integrate it in most open source projects with no license issues.

On Tue, Nov 20, 2012 at 1:19 AM, Timmy Turner timm.t...@gmail.com wrote:

 Why is this being released as a separate project, instead of being bundled
 up with Cassandra? Is it not a part of Cassandra?


 2012/11/19 John Sanda john.sa...@gmail.com

 Fantastic! As for the object mapping API, has there been any
 discussion/consideration of http://www.hibernate.org/subprojects/ogm.html
 ?


 On Mon, Nov 19, 2012 at 1:50 PM, Sylvain Lebresne 
 sylv...@datastax.comwrote:

 Everyone,

 We've just open-sourced a new Java driver we have been working on here at
 DataStax. This driver is CQL3 only and is built to use the new binary
 protocol
 that will be introduced with Cassandra 1.2. It will thus only work with
 Cassandra 1.2 onwards. Currently, it means that testing it requires
 1.2.0-beta2. This is also alpha software at this point. You are welcome
 to try
 and play with it and we would very much welcome feedback, but be sure
 that
 break, it will. The driver is accessible at:
   http://github.com/datastax/java-driver

 Today we're open-sourcing the core part of this driver. This main goal
 of this
 core module is to handle connections to the Cassandra cluster with all
 the
 features that one would expect. The currently supported features are:
   - Asynchronous: the driver uses the new CQL binary protocol
 asynchronous
 capabilities.
   - Nodes discovery.
   - Configurable load balancing/routing.
   - Transparent fail-over.
   - C* tracing handling.
   - Convenient schema access.
   - Configurable retry policy.

 This core module provides a simple low-level API (that works directly
 with
 query strings). We plan to release a higher-level, thin object mapping
 API
 based on top of this core shortly.

 Please refer to the project README for more information.

 --
 The DataStax Team




 --

 - John





Re: SchemaDisagreementException

2012-11-19 Thread Everton Lima
Yes I already have tested. I use the Object CassandraServer to do the
operations instead of open conection with CassandraClient. Both of this
object implements Iface. I think the performace of use CassandraServer
improve because it does not open an connection, and CassandraClient (that
use thrift) and CQL open a connection.

2012/11/19 Tyler Hobbs ty...@datastax.com

 Have you actually tested to see that the Thrift API is more performant
 than CQL for your application?  As far as I know, CQL almost always has a
 performance advantage over the Thrift API.


 On Mon, Nov 19, 2012 at 1:05 PM, Everton Lima peitin.inu...@gmail.comwrote:

 For some reason I can not reply my old thread in that list. So I was
 creating a new one.

 The problem is that I do not use thrift to gain in performace. Why it is
 nicer with concurrent modifications? I do not know why I have falling in
 the problem of concurrent modification if I was creating 2 keyspaces
 diferent in only one process with just one thread. Someone knows why?


 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás




 --
 Tyler Hobbs
 DataStax http://datastax.com/




-- 

Everton Lima Aleixo
Bacharel em Ciencia da Computação
Universidade Federal de Goiás


Re: SchemaDisagreementException

2012-11-19 Thread Michael Kjellman
While this might not be helpful (I don't have all the thread history here), 
have you checked that all your servers are properly synced with NTP?

From: Everton Lima peitin.inu...@gmail.commailto:peitin.inu...@gmail.com
Reply-To: user@cassandra.apache.orgmailto:user@cassandra.apache.org 
user@cassandra.apache.orgmailto:user@cassandra.apache.org
Date: Monday, November 19, 2012 6:24 PM
To: user@cassandra.apache.orgmailto:user@cassandra.apache.org 
user@cassandra.apache.orgmailto:user@cassandra.apache.org
Subject: Re: SchemaDisagreementException

Yes I already have tested. I use the Object CassandraServer to do the 
operations instead of open conection with CassandraClient. Both of this object 
implements Iface. I think the performace of use CassandraServer improve because 
it does not open an connection, and CassandraClient (that use thrift) and CQL 
open a connection.

2012/11/19 Tyler Hobbs ty...@datastax.commailto:ty...@datastax.com
Have you actually tested to see that the Thrift API is more performant than CQL 
for your application?  As far as I know, CQL almost always has a performance 
advantage over the Thrift API.


On Mon, Nov 19, 2012 at 1:05 PM, Everton Lima 
peitin.inu...@gmail.commailto:peitin.inu...@gmail.com wrote:
For some reason I can not reply my old thread in that list. So I was creating a 
new one.

The problem is that I do not use thrift to gain in performace. Why it is nicer 
with concurrent modifications? I do not know why I have falling in the problem 
of concurrent modification if I was creating 2 keyspaces diferent in only one 
process with just one thread. Someone knows why?


--

Everton Lima Aleixo
Bacharel em Ciencia da Computação
Universidade Federal de Goiás



--
Tyler Hobbs
DataStaxhttp://datastax.com/




--

Everton Lima Aleixo
Bacharel em Ciencia da Computação
Universidade Federal de Goiás

'Like' us on Facebook for exclusive content and other resources on all 
Barracuda Networks solutions.
Visit http://barracudanetworks.com/facebook




Re: Upgrade 1.1.2 - 1.1.6

2012-11-19 Thread Mike Heffner
Alain,

We performed a 1.1.3 - 1.1.6 upgrade and found that all the logs replayed
regardless of the drain. After noticing this on the first node, we did the
following:

* nodetool flush
* nodetool drain
* service cassandra stop
* mv /path/to/logs/*.log /backup/
* apt-get install cassandra
restarts automatically

I also agree that starting C* after an upgrade/install seems quite broken
if it was already stopped before the install. However annoying, I have
found this to be the default for most Ubuntu daemon packages.

Mike


On Thu, Nov 15, 2012 at 9:21 AM, Alain RODRIGUEZ arodr...@gmail.com wrote:

 We had an issue with counters over-counting even using the nodetool drain
 command before upgrading...

 Here is my bash history

69  cp /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.bak
70  cp /etc/cassandra/cassandra-env.sh
 /etc/cassandra/cassandra-env.sh.bak
71  sudo apt-get install cassandra
72  nodetool disablethrift
73  nodetool drain
74  service cassandra stop
75  cat /etc/cassandra/cassandra-env.sh
 /etc/cassandra/cassandra-env.sh.bak
76  vim /etc/cassandra/cassandra-env.sh
77  cat /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.bak
78  vim /etc/cassandra/cassandra.yaml
79  service cassandra start

 So I think I followed these steps
 http://www.datastax.com/docs/1.1/install/upgrading#upgrade-steps

 I merged my conf files with an external tool so consider I merged my conf
 files on steps 76 and 78.

 I saw that the sudo apt-get install cassandra stop the server and
 restart it automatically. So it updated without draining and restart before
 I had the time to reconfigure the conf files. Is this normal ? Is there a
 way to avoid it ?

 So for the second node I decided to try to stop C*before the upgrade.

   125  cp /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.bak
   126  cp /etc/cassandra/cassandra-env.sh
 /etc/cassandra/cassandra-env.sh.bak
   127  nodetool disablegossip
   128  nodetool disablethrift
   129  nodetool drain
   130  service cassandra stop
   131  sudo apt-get install cassandra

 //131 : This restarted cassandra

   132  nodetool disablethrift
   133  nodetool disablegossip
   134  nodetool drain
   135  service cassandra stop
   136  cat /etc/cassandra/cassandra-env.sh
 /etc/cassandra/cassandra-env.sh.bak
   137  cim /etc/cassandra/cassandra-env.sh
   138  vim /etc/cassandra/cassandra-env.sh
   139  cat /etc/cassandra/cassandra.yaml /etc/cassandra/cassandra.yaml.bak
   140  vim /etc/cassandra/cassandra.yaml
   141  service cassandra start

 After both of these updates I saw my current counters increase without any
 reason.

 Did I do anything wrong ?

 Alain




-- 

  Mike Heffner m...@librato.com
  Librato, Inc.


Re: SchemaDisagreementException

2012-11-19 Thread Edward Capriolo
http://www.acunu.com/2/post/2011/12/cql-benchmarking.html

Last I checked, thrift still had an edge over cql due to string
serialization and de serialization. Might be even more dramatic for
later columns. Not that client speed matters much overall in
cassandra's speed, but CQL client does more.



On Mon, Nov 19, 2012 at 9:27 PM, Michael Kjellman
mkjell...@barracuda.com wrote:
 While this might not be helpful (I don't have all the thread history here),
 have you checked that all your servers are properly synced with NTP?

 From: Everton Lima peitin.inu...@gmail.com
 Reply-To: user@cassandra.apache.org user@cassandra.apache.org
 Date: Monday, November 19, 2012 6:24 PM
 To: user@cassandra.apache.org user@cassandra.apache.org
 Subject: Re: SchemaDisagreementException

 Yes I already have tested. I use the Object CassandraServer to do the
 operations instead of open conection with CassandraClient. Both of this
 object implements Iface. I think the performace of use CassandraServer
 improve because it does not open an connection, and CassandraClient (that
 use thrift) and CQL open a connection.

 2012/11/19 Tyler Hobbs ty...@datastax.com

 Have you actually tested to see that the Thrift API is more performant
 than CQL for your application?  As far as I know, CQL almost always has a
 performance advantage over the Thrift API.


 On Mon, Nov 19, 2012 at 1:05 PM, Everton Lima peitin.inu...@gmail.com
 wrote:

 For some reason I can not reply my old thread in that list. So I was
 creating a new one.

 The problem is that I do not use thrift to gain in performace. Why it is
 nicer with concurrent modifications? I do not know why I have falling in the
 problem of concurrent modification if I was creating 2 keyspaces diferent in
 only one process with just one thread. Someone knows why?


 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás




 --
 Tyler Hobbs
 DataStax




 --

 Everton Lima Aleixo
 Bacharel em Ciencia da Computação
 Universidade Federal de Goiás

 --
 'Like' us on Facebook for exclusive content and other resources on all
 Barracuda Networks solutions.
 Visit http://barracudanetworks.com/facebook
   ­­