[ 
https://issues.apache.org/jira/browse/CASSANDRA-8487?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14571720#comment-14571720
 ] 

Kishan Karunaratne edited comment on CASSANDRA-8487 at 6/3/15 10:06 PM:
------------------------------------------------------------------------

I was able to reproduce this in C* 2.2.0-beta1 on Windows 64-bit. This is on a 
single-dc, 3 node cluster. In my case, I'm missing both 
system.schema_columnfamilies and system.schema_columns:

{noformat}
cqlsh> desc tables;

Keyspace system_auth
--------------------
resource_role_permissons_index  role_permissions  role_members  roles

Keyspace system
---------------
<empty>

Keyspace system_distributed
---------------------------
repair_history  parent_repair_history

Keyspace system_traces
----------------------
events  sessions

cqlsh> select * from system.schema_columnfamilies;
Column family 'schema_columnfamilies' not found
{noformat}

Using python-driver 2.6.0-rc, I was able to do some further investigation:

{noformat}
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system'), Row(keyspace_name=u'system_traces')]
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system'), Row(keyspace_name=u'system_traces')]
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system_traces')]
{noformat}

Since the python-driver executes its queries with round-robin, we can see here 
that each SELECT query was routed to each node, and the 3rd one is missing the 
metadata about the keyspace "system". I'm not sure why I'm able to query 
against a "nonexistent" schemacolumnfamilies table in the python-driver, but 
not in cqlsh. Does cqlsh run at CL.ALL or require metadata for formatting the 
results?


was (Author: kishkaru):
I was able to reproduce this in C* 2.2.0-beta1 on Windows 64-bit. This is on a 
single-dc, 3 node cluster. In my case, I'm missing both 
system.schema_columnfamilies and system.schema_columns:

{noformat}
cqlsh> desc tables;

Keyspace system_auth
--------------------
resource_role_permissons_index  role_permissions  role_members  roles

Keyspace system
---------------
<empty>

Keyspace system_distributed
---------------------------
repair_history  parent_repair_history

Keyspace system_traces
----------------------
events  sessions

cqlsh> select * from system.schema_columnfamilies;
Column family 'schema_columnfamilies' not found
{noformat}

Using python-driver 2.6.0-rc, I was able to do some further investigation:

{noformat}
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system'), Row(keyspace_name=u'system_traces')]
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system'), Row(keyspace_name=u'system_traces')]
>>> s.execute("select distinct keyspace_name from system.schema_columnfamilies")
[Row(keyspace_name=u'test3rf'), Row(keyspace_name=u'system_auth'), 
Row(keyspace_name=u'system_distributed'), Row(keyspac
e_name=u'system_traces')]
{noformat}

Since the python-driver executes its queries with round-robin, we can see here 
that each SELECT query was routed to each node, and the 3rd one is missing the 
metadata about the keyspace "system".

> system.schema_columns sometimes missing for 'system' keyspace
> -------------------------------------------------------------
>
>                 Key: CASSANDRA-8487
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8487
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Adam Holmberg
>            Assignee: Aleksey Yeschenko
>            Priority: Minor
>
> Occasionally a Cassandra node will have missing schema_columns information 
> where keyspace_name='system'.
> {code}
> cqlsh> select * from system.schema_columns where keyspace_name='system';
>  keyspace_name | columnfamily_name | column_name
> ---------------+-------------------+-------------
> (0 rows)
> {code}
> All keyspace and column family schema info is present for 'system' -- it's 
> only the column information missing.
> This can occur on an existing cluster following node restart. The data 
> usually appears again after bouncing the node.
> This is impactful to client drivers that expect column meta for configured 
> tables.
> Reproducible in 2.1.2. Have not seen it crop up in 2.0.11.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to