You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sylvain Lebresne (JIRA)" <ji...@apache.org> on 2012/06/05 15:57:23 UTC
[jira] [Created] (CASSANDRA-4308) Promote the use of IFilter for
internal commands
Sylvain Lebresne created CASSANDRA-4308:
-------------------------------------------
Summary: Promote the use of IFilter for internal commands
Key: CASSANDRA-4308
URL: https://issues.apache.org/jira/browse/CASSANDRA-4308
Project: Cassandra
Issue Type: Improvement
Components: Core
Reporter: Sylvain Lebresne
Assignee: Sylvain Lebresne
Priority: Minor
Fix For: 1.2
All read commands (the IReadCommand) work on slice and names filters, but none of them uses the SliceQueryFilter and NamesQueryFilter classes (RangeSliceCommand uses SlicePrediate from thrift and {SliceFrom, SliceByNames}ReadReadCommand interns the arguments).
The main problem of that is that it follows that those command don't share the serialization code for the column filters. Which isn't good for code reuse, but also makes it a pain to add new fields to the filter SliceQueryFilter (which CASSANDRA-3885 will need, but probably CASSANDRA-3647 too).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4308) Promote the use of IFilter for
internal commands
Posted by "Sylvain Lebresne (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-4308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sylvain Lebresne updated CASSANDRA-4308:
----------------------------------------
Attachment: 4308.txt
Attaching patch that reuse the IFilter for command serialization, which will make it easier to add new field to them if needed.
This also remove some uses of thrift internally as a bonus.
> Promote the use of IFilter for internal commands
> -------------------------------------------------
>
> Key: CASSANDRA-4308
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4308
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Sylvain Lebresne
> Assignee: Sylvain Lebresne
> Priority: Minor
> Fix For: 1.2
>
> Attachments: 4308.txt
>
>
> All read commands (the IReadCommand) work on slice and names filters, but none of them uses the SliceQueryFilter and NamesQueryFilter classes (RangeSliceCommand uses SlicePrediate from thrift and {SliceFrom, SliceByNames}ReadReadCommand interns the arguments).
> The main problem of that is that it follows that those command don't share the serialization code for the column filters. Which isn't good for code reuse, but also makes it a pain to add new fields to the filter SliceQueryFilter (which CASSANDRA-3885 will need, but probably CASSANDRA-3647 too).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CASSANDRA-4308) Promote the use of IFilter for
internal commands
Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-4308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jonathan Ellis updated CASSANDRA-4308:
--------------------------------------
Reviewer: yukim
> Promote the use of IFilter for internal commands
> -------------------------------------------------
>
> Key: CASSANDRA-4308
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4308
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Sylvain Lebresne
> Assignee: Sylvain Lebresne
> Priority: Minor
> Fix For: 1.2
>
> Attachments: 4308.txt
>
>
> All read commands (the IReadCommand) work on slice and names filters, but none of them uses the SliceQueryFilter and NamesQueryFilter classes (RangeSliceCommand uses SlicePrediate from thrift and {SliceFrom, SliceByNames}ReadReadCommand interns the arguments).
> The main problem of that is that it follows that those command don't share the serialization code for the column filters. Which isn't good for code reuse, but also makes it a pain to add new fields to the filter SliceQueryFilter (which CASSANDRA-3885 will need, but probably CASSANDRA-3647 too).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (CASSANDRA-4308) Promote the use of IFilter for
internal commands
Posted by "Yuki Morishita (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CASSANDRA-4308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13291256#comment-13291256 ]
Yuki Morishita commented on CASSANDRA-4308:
-------------------------------------------
LGTM.
nit: You can now replace QueryFilter.getFilter(SlicePredicate, AbstractType) which is only used in deprecated IndexScanCommand and ColumnFamilyStoreTest, with newly added ThriftValidation.asIFilter.
> Promote the use of IFilter for internal commands
> -------------------------------------------------
>
> Key: CASSANDRA-4308
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4308
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Sylvain Lebresne
> Assignee: Sylvain Lebresne
> Priority: Minor
> Fix For: 1.2
>
> Attachments: 4308.txt
>
>
> All read commands (the IReadCommand) work on slice and names filters, but none of them uses the SliceQueryFilter and NamesQueryFilter classes (RangeSliceCommand uses SlicePrediate from thrift and {SliceFrom, SliceByNames}ReadReadCommand interns the arguments).
> The main problem of that is that it follows that those command don't share the serialization code for the column filters. Which isn't good for code reuse, but also makes it a pain to add new fields to the filter SliceQueryFilter (which CASSANDRA-3885 will need, but probably CASSANDRA-3647 too).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira