[
https://issues.apache.org/jira/browse/CASSANDRA-12768?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15687479#comment-15687479
]
Tyler Hobbs commented on CASSANDRA-12768:
-----------------------------------------
Sorry for the slow review, this fell off my radar.
Overall I think the patches will be fine to apply to both 3.0 and 3.x. I just
have a few questions and comments on the patch:
* Why doesn't {{returnStaticContentOnPartitionWithNoRows()}} specifically
handle secondary index queries specially like the 3.0 patch? It looks like
this was already the case elsewhere in 3.x, but I'd like to confirm the reason.
* We might as well rename {{isFetchAllRegulars}} to {{fetchAllRegulars}} in the
3.x patch, since the latter feels more natural.
* Why doesn't the 3.0 patch include the change to {{ColumnFilter.newTester()}}
that you have in 3.x?
Additionally, it looks like there's a static column related test error in the
[3.0
dtests|http://cassci.datastax.com/job/pcmanus-12768-3.0-dtest/lastCompletedBuild/testReport/paging_test/TestPagingData/static_columns_paging_test/].
Can you look into that?
> CQL often queries static columns unnecessarily
> ----------------------------------------------
>
> Key: CASSANDRA-12768
> URL: https://issues.apache.org/jira/browse/CASSANDRA-12768
> Project: Cassandra
> Issue Type: Bug
> Reporter: Sylvain Lebresne
> Assignee: Sylvain Lebresne
> Fix For: 3.0.x, 3.x
>
>
> While looking at CASSANDRA-12694 (which isn't directly related, but some of
> the results in this ticket are explained by this), I realized that CQL was
> always querying static columns even in cases where this is unnecessary.
> More precisely, for reasons long described elsewhere, we have to query all
> the columns for a row (we have optimizations, see CASSANDRA-10657, but they
> don't change that general fact) to be able to distinguish between the case
> where a row doesn't exist from when it exists but has no values for the
> columns selected by the query. *However*, this really only extend to
> "regular" columns (static columns play no role in deciding whether a
> particular row exists or not) but the implementation in 3.x, which is in
> {{ColumnFilter}}, still always query all static columns.
> We shouldn't do that and it's arguably a performance regression from 2.x.
> Which is why I'm tentatively marking this a bug and for the 3.0 line. It's a
> tiny bit scary for 3.0 though so really more asking for other opinions and
> I'd be happy to stick to 3.x.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)