cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <>
Subject [jira] Commented: (CASSANDRA-1501) remove Clock from Thrift API
Date Wed, 15 Sep 2010 08:59:35 GMT


Sylvain Lebresne commented on CASSANDRA-1501:

On the patch itself, and as far as removing clocks from *thrift* api is
concerned, few minor comments:
  * In, there is a Clock remaining in test_cf_recreate().
    I also get 3 errors in the avro system tests, but it seems unrelated.
  * As remarked by Johan, in the thift interface, the timestamp is still called
    clock. It's not a bad name per se, but renaming it back to timestamp would
    ease migration for those coming from 0.6.
  * Cli client doesn't remove fully reconciler and clock_type (in the
    AddColumnFamilyArgument enum and at line 261, in the add column family
    documentation). It's not completely necessary, but as is the
    assert at the end of the switch in executeAddColumnFamily() is wrong.

The patch does not remove the clocks from all of what I could call 'the
cassandra exported api'. I'm mostly thinking of:
  * the avro API.
  * the fact that DatabaseDescriptor.readTablesFromYaml() (and
    RawColumnFamily) still tries to read a reconciler and clock_type.
The ticket's name makes it clear that it is about thrift, and if not done
before, that will have to be tackled in #1502, but as it's not strictly
speaking 'internals', I thought I'd mentionned it (in particular, whatever we
decide for CASSANDRA-1502, those will have to be done).

I agree that for CASSANDRA-1072, we need some way to distinguish between cfs with
counters and other cfs. But if we're just talking counters, and as far as the
thrift api is concerned, it will be enough to have a 'Counter' cf type (and
a 'SuperCounter' one). Or, alternatively, we could user the validateWith
option to distinguish counter cfs. So I see no reason why we shouldn't remove
clock_type and reconciler in this patch. Modulo the (minor) comments above,
I'm +1 on this.

Removing the clock interface from the internals is another matter, but I'll
comment on the CASSANDRA-1502 ticket.

> remove Clock from Thrift API
> ----------------------------
>                 Key: CASSANDRA-1501
>                 URL:
>             Project: Cassandra
>          Issue Type: Task
>          Components: API
>    Affects Versions: 0.7 beta 1
>            Reporter: Jonathan Ellis
>            Assignee: Jonathan Ellis
>             Fix For: 0.7 beta 2
>         Attachments: 1501.txt
> Clock was introduced back when we insufficiently understood the limitations of CASSANDRA-580.
It turns out to not be necessary. This ticket removes it from the Thrift API to get ready
for 0.7.0; removing it from the rest of the internals can follow.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message