Embedding Cassandra

2015-03-24 Thread Ersin Er
Hi all,

As far as I understand it seems to be enough to initialize and activate
CassandraDaemon for embedding Cassandra. (Right?)

My question is what's the next step? Which class or classes should I use in
order to execute CQL queries for example?

Any pointers would be great.

Thanks!

-- 
Ersin Er


Re: Embedding Cassandra

2015-03-24 Thread Jack Krupansky
Are you trying to use Cassandra as a simple single-node data store within a
process, or are you trying to wrap Cassandra and run a cluster of custom
nodes? IOW, what are you trying to accomplish.

You could always run Cassandra as a spawned, background process, fully
controlled by a parent process.

Who is doing the queries, the program in which Cassandra is embedded, or an
external client over the net?


-- Jack Krupansky

On Tue, Mar 24, 2015 at 5:38 AM, Ersin Er ersin...@gmail.com wrote:

 Hi all,

 As far as I understand it seems to be enough to initialize and activate
 CassandraDaemon for embedding Cassandra. (Right?)

 My question is what's the next step? Which class or classes should I use in
 order to execute CQL queries for example?

 Any pointers would be great.

 Thanks!

 --
 Ersin Er



[discuss] Modernization of Cassandra build system

2015-03-24 Thread Łukasz Dywicki
Dear cassandra commiters and development process followers,
I would like to bring an important topic off build process of cassandra. I am 
an external user from community point of view, however I been walking around 
various  projects close to cassandra over past year or even more. What is 
worrying me a lot is how cassandra is publishing artifacts and how many 
problems are reported due that.

First of all - I want to note that I am not born enemy of Ant itself. I never 
used it. I am also aware of problems with custom builds made with Maven, 
however I don’t really want to discuss any particular replacement, yet I want 
to note that Cassandra JIRA project contains about 116 issues related somehow 
to maven (http://bit.ly/1GRoXl5 http://bit.ly/1GRoXl5, project=CASSANDRA, 
text ~ maven). Depends on the point of view it might be a lot or a little. By 
simple statistics it is around 21 issues a year or almost 2 issues a month, 
many of them breaking maintanance/major releases from user point of view. From 
other hand it’s not bad considering how project is being built.

Current structure has a very big disadvantage - ONE source root for multiple 
artifacts published in maven repositories and copying classes to jar AFTER they 
are compiled. Obviously ant copy task doesn’t follow import statements and does 
not include dependant classes. For example just by making test relocations and 
extraction of clientutil jar on master branch into separate source root I have 
found a bug where ListSerializer depends on org.apache.cassandra.transpor 
package. More over clientutil (MapSerializer) does depends on 
org.apache.cassandra.db.marshal package leading to the fact that it can not be 
used without cassandra-all present at classpath.
Luckily for cassandra CQL as a new interface reduces thrift and clientutil 
usage reducing amount of issues reported around these, however this just hides 
a real problem in previous paragraph. I have found a handy tool and made a 
graph of circular dependencies in cassandra-all.jar. Graph of results can found 
here: http://grab.by/FRnO http://grab.by/FRnO. As you can see this graph has 
multiple levels and solving it is not a simple task. I am afraid a current way 
of building and packaging cassandra can create huge hiccups when it will come 
to code rafactorings cause entire cassandra will become a house of cards.
Restructuring project into smaller pieces is also beneficiary for community 
since solving bugs in smaller units is definitelly easier.

At the end of this mail I would like to propose moving Cassandra build system 
forward, regardless of tool which will be choosen for it. Personally I can 
volunteer in maven related changes to extract cassandra-thrift, 
cassandra-clientutil and cassandra-all to make regular maven build. It might be 
seen as a switch from one big XML into couple smaller. :-) All this depends on 
Cassandra developers decission to devide source roots or not.

Kind regards,
Łukasz Dywicki
—
l...@code-house.org
Twitter: ldywicki
Blog: http://dywicki.pl
Code-House - http://code-house.org



Re: Embedding Cassandra

2015-03-24 Thread Ersin Er
I am trying to use Cassandra as a distributed systems infrastructure
component.
So it's gonna be embedded in Java processes to form a cluster and
queries will be executed by the wrapping process, not external clients.

On Tue, Mar 24, 2015 at 5:33 PM, Jack Krupansky jack.krupan...@gmail.com
wrote:

 Are you trying to use Cassandra as a simple single-node data store within a
 process, or are you trying to wrap Cassandra and run a cluster of custom
 nodes? IOW, what are you trying to accomplish.

 You could always run Cassandra as a spawned, background process, fully
 controlled by a parent process.

 Who is doing the queries, the program in which Cassandra is embedded, or an
 external client over the net?


 -- Jack Krupansky

 On Tue, Mar 24, 2015 at 5:38 AM, Ersin Er ersin...@gmail.com wrote:

  Hi all,
 
  As far as I understand it seems to be enough to initialize and activate
  CassandraDaemon for embedding Cassandra. (Right?)
 
  My question is what's the next step? Which class or classes should I use
 in
  order to execute CQL queries for example?
 
  Any pointers would be great.
 
  Thanks!
 
  --
  Ersin Er
 




-- 
Ersin Er


Re: 3.0 and the Cassandra release process

2015-03-24 Thread Chris Burroughs
Broadly as a contributor and operator I like the idea of more frequent 
releases off of an always stable master.  First customer ship quality 
all the time [1]!


I'm a little concerned that the specific tick-tock proposal could 
devolve into a 'devodd' style where the 'feature release' becomes a 
thing no one wants to run in production.  However, if master is always 
stable it doesn't really matter when releases are cut and if master is 
*not* stable that is a larger problem then the details of the release 
cadence.  I say give it a shot.



[1] http://wiki.illumos.org/display/illumos/On+the+Quality+Death+Spiral