You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Kamesh <ka...@gmail.com> on 2016/11/23 10:04:01 UTC

Reading Commit log files

Hi All,
 I am trying to read cassandra commit log files, but unable to do it. I am
experimenting this with 1 node cluster(laptop)

 Cassandra Version : *3.8*
 Updated cassadra.yaml with *cdc_enabled: true*

 After executing the below statments and flushing memtables, tried reading
commit log files, but there are no cdc events correpsonding to *test*
keyspace.

 CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
'replication_factor': '1'};
 CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;


 INSERT INTO foo(a, b) VALUES (0, 'static0');
 INSERT INTO foo(a, b) VALUES (1, 'static1');
 INSERT INTO foo(a, b) VALUES (2, 'static2');
 INSERT INTO foo(a, b) VALUES (3, 'static3');
 INSERT INTO foo(a, b) VALUES (4, 'static4');
 INSERT INTO foo(a, b) VALUES (5, 'static5');
 INSERT INTO foo(a, b) VALUES (6, 'static6');
 INSERT INTO foo(a, b) VALUES (7, 'static7');
 INSERT INTO foo(a, b) VALUES (8, 'static8');

 Can someone please help us.

Thanks & Regards
Kamesh.

Re: Reading Commit log files

Posted by Kamesh <ka...@gmail.com>.
Hi All,
  I am able to read cdc events from key spaces like *system *and
*system_schema,
*but not from the one that I created. Any help on this?.

Thanks & Regards
Kamesh.

On Wed, Nov 23, 2016 at 9:14 PM, Kamesh <ka...@gmail.com> wrote:

> Hi Carlos,
>  durable_writes = true.
>
>  *cqlsh:test> describe test;*
> * CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy',
> 'replication_factor': '1'}  AND durable_writes = true;*
>
> Thanks & Regards
> Kamesh.
>
> On Wed, Nov 23, 2016 at 9:10 PM, Carlos Alonso <in...@mrcalonso.com> wrote:
>
>> Did you configured your keyspace with durable_writes = false by any
>> chance? That would make operations not reach the commitlog.
>>
>>
>> On Wed, 23 Nov 2016 at 13:06 Kamesh <ka...@gmail.com> wrote:
>>
>>> Hi Carlos,
>>>  Thanks for your response.
>>>  I performed few insert statements and run my application without
>>> flushing. Still not able to read the commit logs.
>>>  However, I am able to read the commit logs of  *system* and
>>> *system_schema* key spaces but not able to read the application key
>>> space (key space created by me).
>>>
>>> Thanks & Regards
>>>
>>> Kamesh.
>>>
>>> On Wed, Nov 23, 2016 at 5:24 PM, Carlos Alonso <in...@mrcalonso.com>
>>> wrote:
>>>
>>> Hi Kamesh.
>>>
>>> Flushing memtables to disk causes the corresponding commitlog segments
>>> to be deleted. Once the data is flushed into SSTables it can be considered
>>> durable (in case of a node crash, the data won't be lost), and therefore
>>> there's no point in keeping it in the commitlog as well.
>>>
>>> Try without flushing and see if you can see your operations there.
>>>
>>> Regards
>>>
>>> On Wed, 23 Nov 2016 at 11:04 Kamesh <ka...@gmail.com> wrote:
>>>
>>> Hi All,
>>>  I am trying to read cassandra commit log files, but unable to do it. I
>>> am experimenting this with 1 node cluster(laptop)
>>>
>>>  Cassandra Version : *3.8*
>>>  Updated cassadra.yaml with *cdc_enabled: true*
>>>
>>>  After executing the below statments and flushing memtables, tried
>>> reading commit log files, but there are no cdc events correpsonding to
>>> *test*keyspace.
>>>
>>>  CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
>>> 'replication_factor': '1'};
>>>  CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;
>>>
>>>
>>>  INSERT INTO foo(a, b) VALUES (0, 'static0');
>>>  INSERT INTO foo(a, b) VALUES (1, 'static1');
>>>  INSERT INTO foo(a, b) VALUES (2, 'static2');
>>>  INSERT INTO foo(a, b) VALUES (3, 'static3');
>>>  INSERT INTO foo(a, b) VALUES (4, 'static4');
>>>  INSERT INTO foo(a, b) VALUES (5, 'static5');
>>>  INSERT INTO foo(a, b) VALUES (6, 'static6');
>>>  INSERT INTO foo(a, b) VALUES (7, 'static7');
>>>  INSERT INTO foo(a, b) VALUES (8, 'static8');
>>>
>>>  Can someone please help us.
>>>
>>> Thanks & Regards
>>>
>>> Kamesh.
>>>
>>>
>>>
>

Re: Reading Commit log files

Posted by Kamesh <ka...@gmail.com>.
Hi Carlos,
 durable_writes = true.

 *cqlsh:test> describe test;*
* CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy',
'replication_factor': '1'}  AND durable_writes = true;*

Thanks & Regards
Kamesh.

On Wed, Nov 23, 2016 at 9:10 PM, Carlos Alonso <in...@mrcalonso.com> wrote:

> Did you configured your keyspace with durable_writes = false by any
> chance? That would make operations not reach the commitlog.
>
>
> On Wed, 23 Nov 2016 at 13:06 Kamesh <ka...@gmail.com> wrote:
>
>> Hi Carlos,
>>  Thanks for your response.
>>  I performed few insert statements and run my application without
>> flushing. Still not able to read the commit logs.
>>  However, I am able to read the commit logs of  *system* and
>> *system_schema* key spaces but not able to read the application key
>> space (key space created by me).
>>
>> Thanks & Regards
>>
>> Kamesh.
>>
>> On Wed, Nov 23, 2016 at 5:24 PM, Carlos Alonso <in...@mrcalonso.com>
>> wrote:
>>
>> Hi Kamesh.
>>
>> Flushing memtables to disk causes the corresponding commitlog segments to
>> be deleted. Once the data is flushed into SSTables it can be considered
>> durable (in case of a node crash, the data won't be lost), and therefore
>> there's no point in keeping it in the commitlog as well.
>>
>> Try without flushing and see if you can see your operations there.
>>
>> Regards
>>
>> On Wed, 23 Nov 2016 at 11:04 Kamesh <ka...@gmail.com> wrote:
>>
>> Hi All,
>>  I am trying to read cassandra commit log files, but unable to do it. I
>> am experimenting this with 1 node cluster(laptop)
>>
>>  Cassandra Version : *3.8*
>>  Updated cassadra.yaml with *cdc_enabled: true*
>>
>>  After executing the below statments and flushing memtables, tried
>> reading commit log files, but there are no cdc events correpsonding to
>> *test*keyspace.
>>
>>  CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
>> 'replication_factor': '1'};
>>  CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;
>>
>>
>>  INSERT INTO foo(a, b) VALUES (0, 'static0');
>>  INSERT INTO foo(a, b) VALUES (1, 'static1');
>>  INSERT INTO foo(a, b) VALUES (2, 'static2');
>>  INSERT INTO foo(a, b) VALUES (3, 'static3');
>>  INSERT INTO foo(a, b) VALUES (4, 'static4');
>>  INSERT INTO foo(a, b) VALUES (5, 'static5');
>>  INSERT INTO foo(a, b) VALUES (6, 'static6');
>>  INSERT INTO foo(a, b) VALUES (7, 'static7');
>>  INSERT INTO foo(a, b) VALUES (8, 'static8');
>>
>>  Can someone please help us.
>>
>> Thanks & Regards
>>
>> Kamesh.
>>
>>
>>

Re: Reading Commit log files

Posted by Carlos Alonso <in...@mrcalonso.com>.
Did you configured your keyspace with durable_writes = false by any chance?
That would make operations not reach the commitlog.


On Wed, 23 Nov 2016 at 13:06 Kamesh <ka...@gmail.com> wrote:

> Hi Carlos,
>  Thanks for your response.
>  I performed few insert statements and run my application without
> flushing. Still not able to read the commit logs.
>  However, I am able to read the commit logs of  *system* and
> *system_schema* key spaces but not able to read the application key space
> (key space created by me).
>
> Thanks & Regards
>
> Kamesh.
>
> On Wed, Nov 23, 2016 at 5:24 PM, Carlos Alonso <in...@mrcalonso.com> wrote:
>
> Hi Kamesh.
>
> Flushing memtables to disk causes the corresponding commitlog segments to
> be deleted. Once the data is flushed into SSTables it can be considered
> durable (in case of a node crash, the data won't be lost), and therefore
> there's no point in keeping it in the commitlog as well.
>
> Try without flushing and see if you can see your operations there.
>
> Regards
>
> On Wed, 23 Nov 2016 at 11:04 Kamesh <ka...@gmail.com> wrote:
>
> Hi All,
>  I am trying to read cassandra commit log files, but unable to do it. I am
> experimenting this with 1 node cluster(laptop)
>
>  Cassandra Version : *3.8*
>  Updated cassadra.yaml with *cdc_enabled: true*
>
>  After executing the below statments and flushing memtables, tried reading
> commit log files, but there are no cdc events correpsonding to *test*
> keyspace.
>
>  CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
> 'replication_factor': '1'};
>  CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;
>
>
>  INSERT INTO foo(a, b) VALUES (0, 'static0');
>  INSERT INTO foo(a, b) VALUES (1, 'static1');
>  INSERT INTO foo(a, b) VALUES (2, 'static2');
>  INSERT INTO foo(a, b) VALUES (3, 'static3');
>  INSERT INTO foo(a, b) VALUES (4, 'static4');
>  INSERT INTO foo(a, b) VALUES (5, 'static5');
>  INSERT INTO foo(a, b) VALUES (6, 'static6');
>  INSERT INTO foo(a, b) VALUES (7, 'static7');
>  INSERT INTO foo(a, b) VALUES (8, 'static8');
>
>  Can someone please help us.
>
> Thanks & Regards
>
> Kamesh.
>
>
>

Re: Reading Commit log files

Posted by Kamesh <ka...@gmail.com>.
Hi Carlos,
 Thanks for your response.
 I performed few insert statements and run my application without flushing.
Still not able to read the commit logs.
 However, I am able to read the commit logs of  *system* and *system_schema*
key spaces but not able to read the application key space (key space
created by me).

Thanks & Regards
Kamesh.

On Wed, Nov 23, 2016 at 5:24 PM, Carlos Alonso <in...@mrcalonso.com> wrote:

> Hi Kamesh.
>
> Flushing memtables to disk causes the corresponding commitlog segments to
> be deleted. Once the data is flushed into SSTables it can be considered
> durable (in case of a node crash, the data won't be lost), and therefore
> there's no point in keeping it in the commitlog as well.
>
> Try without flushing and see if you can see your operations there.
>
> Regards
>
> On Wed, 23 Nov 2016 at 11:04 Kamesh <ka...@gmail.com> wrote:
>
>> Hi All,
>>  I am trying to read cassandra commit log files, but unable to do it. I
>> am experimenting this with 1 node cluster(laptop)
>>
>>  Cassandra Version : *3.8*
>>  Updated cassadra.yaml with *cdc_enabled: true*
>>
>>  After executing the below statments and flushing memtables, tried
>> reading commit log files, but there are no cdc events correpsonding to
>> *test*keyspace.
>>
>>  CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
>> 'replication_factor': '1'};
>>  CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;
>>
>>
>>  INSERT INTO foo(a, b) VALUES (0, 'static0');
>>  INSERT INTO foo(a, b) VALUES (1, 'static1');
>>  INSERT INTO foo(a, b) VALUES (2, 'static2');
>>  INSERT INTO foo(a, b) VALUES (3, 'static3');
>>  INSERT INTO foo(a, b) VALUES (4, 'static4');
>>  INSERT INTO foo(a, b) VALUES (5, 'static5');
>>  INSERT INTO foo(a, b) VALUES (6, 'static6');
>>  INSERT INTO foo(a, b) VALUES (7, 'static7');
>>  INSERT INTO foo(a, b) VALUES (8, 'static8');
>>
>>  Can someone please help us.
>>
>> Thanks & Regards
>>
>> Kamesh.
>>
>

Re: Reading Commit log files

Posted by Carlos Alonso <in...@mrcalonso.com>.
Hi Kamesh.

Flushing memtables to disk causes the corresponding commitlog segments to
be deleted. Once the data is flushed into SSTables it can be considered
durable (in case of a node crash, the data won't be lost), and therefore
there's no point in keeping it in the commitlog as well.

Try without flushing and see if you can see your operations there.

Regards

On Wed, 23 Nov 2016 at 11:04 Kamesh <ka...@gmail.com> wrote:

> Hi All,
>  I am trying to read cassandra commit log files, but unable to do it. I am
> experimenting this with 1 node cluster(laptop)
>
>  Cassandra Version : *3.8*
>  Updated cassadra.yaml with *cdc_enabled: true*
>
>  After executing the below statments and flushing memtables, tried reading
> commit log files, but there are no cdc events correpsonding to *test*
> keyspace.
>
>  CREATE KEYSPACE *test* WITH replication = {'class': 'SimpleStrategy',
> 'replication_factor': '1'};
>  CREATE TABLE foo (a int, b text, PRIMARY KEY(a)) WITH cdc=true;
>
>
>  INSERT INTO foo(a, b) VALUES (0, 'static0');
>  INSERT INTO foo(a, b) VALUES (1, 'static1');
>  INSERT INTO foo(a, b) VALUES (2, 'static2');
>  INSERT INTO foo(a, b) VALUES (3, 'static3');
>  INSERT INTO foo(a, b) VALUES (4, 'static4');
>  INSERT INTO foo(a, b) VALUES (5, 'static5');
>  INSERT INTO foo(a, b) VALUES (6, 'static6');
>  INSERT INTO foo(a, b) VALUES (7, 'static7');
>  INSERT INTO foo(a, b) VALUES (8, 'static8');
>
>  Can someone please help us.
>
> Thanks & Regards
>
> Kamesh.
>