Re: where does c* store the schema?

2018-04-18 Thread Rahul Singh
Blake, you are right — although it’s he system keyspace not the system table. 
There are a few tables : schema_keyspaces, schema_columnfamilies, 
schema_columns which are correlated via cf_id , keyspace , columnfamilyname, 
and Columnname

I was thinking about the system_auth keyspace.

Jinhua,

It should catch up but every now and then if the changes are too great, it’s 
easier to run nodetool resetlocalschema 
https://docs.datastax.com/en/cassandra/2.1/cassandra/tools/toolsResetLocalSchema.html

--
Rahul Singh
rahul.si...@anant.us

Anant Corporation

On Apr 18, 2018, 1:17 AM -0500, Jinhua Luo <luajit...@gmail.com>, wrote:
> What happens If one node has outdated version of schema, and it
> launches a write request upon that schema to other nodes as a
> coordinator?
> The received nodes would reject the coordinator?
>
>
>
>
> 2018-04-18 8:12 GMT+08:00 Blake Eggleston <beggles...@apple.com>:
> > Rahul, none of that is true at all.
> >
> >
> >
> > Each node stores schema locally in a non-replicated system table. Schema
> > changes are disseminated directly to live nodes (not the write path), and
> > the schema version is gossiped to other nodes. If a node misses a schema
> > update, it will figure this out when it notices that it’s local schema
> > version is behind the one being gossiped by the rest of the cluster, and
> > will pull the updated schema from the other nodes in the cluster.
> >
> >
> >
> > From: Rahul Singh <rahul.xavier.si...@gmail.com
> > Reply-To: <user@cassandra.apache.org
> > Date: Tuesday, April 17, 2018 at 4:13 PM
> > To: <user@cassandra.apache.org
> > Subject: Re: where does c* store the schema?
> >
> >
> >
> > It uses a “everywhere” replication strategy and its recommended to do all
> > alter / create / drop statements with consistency level all — meaning it
> > wouldn’t make the change to the schema if the nodes are up.
> >
> >
> > --
> > Rahul Singh
> > rahul.si...@anant.us
> >
> > Anant Corporation
> >
> >
> > On Apr 17, 2018, 12:31 AM -0500, Jinhua Luo <luajit...@gmail.com>, wrote:
> >
> > Yes, I know it must be in system schema.
> >
> > But how c* replicates the user defined schema to all nodes? If it
> > applies the same RWN model to them, then what's the R and W?
> > And when a failed node comes back to the cluster, how to recover the
> > schema updates it may miss during the outage?
> >
> > 2018-04-16 17:01 GMT+08:00 DuyHai Doan <doanduy...@gmail.com>:
> >
> > There is a system_schema keyspace to store all the schema information
> >
> > https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v
> >
> > On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo <luajit...@gmail.com> wrote:
> >
> >
> > Hi All,
> >
> > Does c* use predefined keyspace/tables to store the user defined schema?
> > If so, what's the RWN of those meta schema? And what's the procedure
> > to update them?
> >
> > -
> > To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> > For additional commands, e-mail: user-h...@cassandra.apache.org
> >
> >
> >
> >
> > -
> > To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> > For additional commands, e-mail: user-h...@cassandra.apache.org
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>


Re: where does c* store the schema?

2018-04-18 Thread Jinhua Luo
What happens If one node has outdated version of schema, and it
launches a write request upon that schema to other nodes as a
coordinator?
The received nodes would reject the coordinator?




2018-04-18 8:12 GMT+08:00 Blake Eggleston <beggles...@apple.com>:
> Rahul, none of that is true at all.
>
>
>
> Each node stores schema locally in a non-replicated system table. Schema
> changes are disseminated directly to live nodes (not the write path), and
> the schema version is gossiped to other nodes. If a node misses a schema
> update, it will figure this out when it notices that it’s local schema
> version is behind the one being gossiped by the rest of the cluster, and
> will pull the updated schema from the other nodes in the cluster.
>
>
>
> From: Rahul Singh <rahul.xavier.si...@gmail.com>
> Reply-To: <user@cassandra.apache.org>
> Date: Tuesday, April 17, 2018 at 4:13 PM
> To: <user@cassandra.apache.org>
> Subject: Re: where does c* store the schema?
>
>
>
> It uses a “everywhere” replication strategy and its recommended to do all
> alter / create / drop statements with consistency level all — meaning it
> wouldn’t make the change to the schema if the nodes are up.
>
>
> --
> Rahul Singh
> rahul.si...@anant.us
>
> Anant Corporation
>
>
> On Apr 17, 2018, 12:31 AM -0500, Jinhua Luo <luajit...@gmail.com>, wrote:
>
> Yes, I know it must be in system schema.
>
> But how c* replicates the user defined schema to all nodes? If it
> applies the same RWN model to them, then what's the R and W?
> And when a failed node comes back to the cluster, how to recover the
> schema updates it may miss during the outage?
>
> 2018-04-16 17:01 GMT+08:00 DuyHai Doan <doanduy...@gmail.com>:
>
> There is a system_schema keyspace to store all the schema information
>
> https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v
>
> On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo <luajit...@gmail.com> wrote:
>
>
> Hi All,
>
> Does c* use predefined keyspace/tables to store the user defined schema?
> If so, what's the RWN of those meta schema? And what's the procedure
> to update them?
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>
>
>
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org



Re: where does c* store the schema?

2018-04-17 Thread Blake Eggleston
Rahul, none of that is true at all. 

 

Each node stores schema locally in a non-replicated system table. Schema 
changes are disseminated directly to live nodes (not the write path), and the 
schema version is gossiped to other nodes. If a node misses a schema update, it 
will figure this out when it notices that it’s local schema version is behind 
the one being gossiped by the rest of the cluster, and will pull the updated 
schema from the other nodes in the cluster.

 

From: Rahul Singh <rahul.xavier.si...@gmail.com>
Reply-To: <user@cassandra.apache.org>
Date: Tuesday, April 17, 2018 at 4:13 PM
To: <user@cassandra.apache.org>
Subject: Re: where does c* store the schema?

 

It uses a “everywhere” replication strategy and its recommended to do all alter 
/ create / drop statements with consistency level all — meaning it wouldn’t 
make the change to the schema if the nodes are up.


--
Rahul Singh
rahul.si...@anant.us

Anant Corporation


On Apr 17, 2018, 12:31 AM -0500, Jinhua Luo <luajit...@gmail.com>, wrote:


Yes, I know it must be in system schema.

But how c* replicates the user defined schema to all nodes? If it
applies the same RWN model to them, then what's the R and W?
And when a failed node comes back to the cluster, how to recover the
schema updates it may miss during the outage?

2018-04-16 17:01 GMT+08:00 DuyHai Doan <doanduy...@gmail.com>:


There is a system_schema keyspace to store all the schema information

https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v

On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo <luajit...@gmail.com> wrote:



Hi All,

Does c* use predefined keyspace/tables to store the user defined schema?
If so, what's the RWN of those meta schema? And what's the procedure
to update them?

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org

 


-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org



Re: where does c* store the schema?

2018-04-17 Thread Rahul Singh
It uses a “everywhere” replication strategy and its recommended to do all alter 
/ create / drop statements with consistency level all — meaning it wouldn’t 
make the change to the schema if the nodes are up.

--
Rahul Singh
rahul.si...@anant.us

Anant Corporation

On Apr 17, 2018, 12:31 AM -0500, Jinhua Luo , wrote:
> Yes, I know it must be in system schema.
>
> But how c* replicates the user defined schema to all nodes? If it
> applies the same RWN model to them, then what's the R and W?
> And when a failed node comes back to the cluster, how to recover the
> schema updates it may miss during the outage?
>
> 2018-04-16 17:01 GMT+08:00 DuyHai Doan :
> > There is a system_schema keyspace to store all the schema information
> >
> > https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v
> >
> > On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo  wrote:
> > >
> > > Hi All,
> > >
> > > Does c* use predefined keyspace/tables to store the user defined schema?
> > > If so, what's the RWN of those meta schema? And what's the procedure
> > > to update them?
> > >
> > > -
> > > To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> > > For additional commands, e-mail: user-h...@cassandra.apache.org
> > >
> >
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>


Re: where does c* store the schema?

2018-04-16 Thread Jinhua Luo
Yes, I know it must be in system schema.

But how c* replicates the user defined schema to all nodes? If it
applies the same RWN model to them, then what's the R and W?
And when a failed node comes back to the cluster, how to recover the
schema updates it may miss during the outage?

2018-04-16 17:01 GMT+08:00 DuyHai Doan :
> There is a system_schema keyspace to store all the schema information
>
> https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v
>
> On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo  wrote:
>>
>> Hi All,
>>
>> Does c* use predefined keyspace/tables to store the user defined schema?
>> If so, what's the RWN of those meta schema? And what's the procedure
>> to update them?
>>
>> -
>> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
>> For additional commands, e-mail: user-h...@cassandra.apache.org
>>
>

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org



Re: where does c* store the schema?

2018-04-16 Thread DuyHai Doan
There is a system_schema keyspace to store all the schema information

https://docs.datastax.com/en/cql/3.3/cql/cql_using/useQuerySystem.html#useQuerySystem__table_bhg_1bw_4v

On Mon, Apr 16, 2018 at 10:48 AM, Jinhua Luo  wrote:

> Hi All,
>
> Does c* use predefined keyspace/tables to store the user defined schema?
> If so, what's the RWN of those meta schema? And what's the procedure
> to update them?
>
> -
> To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
> For additional commands, e-mail: user-h...@cassandra.apache.org
>
>


where does c* store the schema?

2018-04-16 Thread Jinhua Luo
Hi All,

Does c* use predefined keyspace/tables to store the user defined schema?
If so, what's the RWN of those meta schema? And what's the procedure
to update them?

-
To unsubscribe, e-mail: user-unsubscr...@cassandra.apache.org
For additional commands, e-mail: user-h...@cassandra.apache.org