Re: [EXTERNAL] Cassandra 3.11.X upgrades

2020-03-03 Thread Erick Ramirez
>
> Should upgradesstables not be run after every node is upgraded? If we need
> to rollback then  we will not be able to downgrade sstables to older version
>

You can choose to (a) upgrade the SSTables one node at a time as you
complete the binary upgrade, or (b) upgrade the binaries on all nodes then
perform the SSTables upgrade in one hit. The choice is up to you but beware
of the following caveats:
- there's a performance hit when C* reads "n - 1" versions of SSTables so
the sooner you do it the better
- upgrading SSTables one node at a time is preferable due to the
considerable performance hit or schedule it during low traffic periods

The idea of a rollback isn't what you're accustomed to. There is no concept
of "downgrade" in Cassandra. If you decide to rollback or backout of an
upgrade implementation, it means that you have to restore your cluster from
backups so be aware of that too. This is because once you've performed an
upgrade, things like schema and system tables are generally no longer
backward-compatible. Also, new incoming mutations are written in the new
format which again is not backward-compatible. To cut to the chase -- the
decision to upgrade the SSTables has zero bearing on rollback. Cheers!


Re: [EXTERNAL] Cassandra 3.11.X upgrades

2020-03-03 Thread Anthony Grasso
Manish is correct.

Upgrade the Cassandra version of a single node only. If that node is
behaving as expected (i.e. is in an Up/Normal state and no errors in the
logs), then upgrade the Cassandra version for each node one at a time. Be
sure to check that each node is running as expected. Once the Cassandra
version is upgraded on all nodes in the cluster and all nodes are in a
healthy state, then you upgrade the SSTables.

As Manish has pointed out, you want to be able to rollback the Cassandra
version easily if something goes wrong with the software upgrade.

If you have the disk space, I recommend taking a snapshot of the SSTables
on all nodes first before upgrading the Cassandra software version. The
snapshots are a safe guard incase there is a major problem after upgrading
SSTables.

Regards,


On Wed, 4 Mar 2020 at 15:08, manish khandelwal 
wrote:

> Should upgradesstables not be run after every node is upgraded? If we need
> to rollback then  we will not be able to downgrade sstables to older
> version.
>
> Regards
> Manish
>
> On Tue, Mar 3, 2020 at 11:26 PM Hossein Ghiyasi Mehr <
> ghiyasim...@gmail.com> wrote:
>
>> It's more safe to upgrade one node before upgrading another node to avoid
>> down time.
>> After upgrading binary and package, run upgradesstables on candidate node
>> then do it on all cluster nodes one by one.
>> *---*
>> *VafaTech  : A Total Solution for Data Gathering
>> & Analysis*
>> *---*
>>
>>
>> On Thu, Feb 13, 2020 at 9:27 PM Sergio  wrote:
>>
>>>
>>>- Verify that nodetool upgradesstables has completed successfully on
>>>all nodes from any previous upgrade
>>>- Turn off repairs and any other streaming operations (add/remove
>>>nodes)
>>>- Nodetool drain on the node that needs to be stopped (seeds first,
>>>preferably)
>>>- Stop an un-upgraded node (seeds first, preferably)
>>>- Install new binaries and configs on the down node
>>>- Restart that node and make sure it comes up clean (it will
>>>function normally in the cluster – even with mixed versions)
>>>- nodetool statusbinary to verify if it is up and running
>>>- Repeat for all nodes
>>>- Once the binary upgrade has been performed in all the nodes: Run
>>>upgradesstables on each node (as many at a time as your load will allow).
>>>Minor upgrades usually don’t require this step (only if the sstable 
>>> format
>>>has changed), but it is good to check.
>>>- NOTE: in most cases applications can keep running and will not
>>>notice much impact – unless the cluster is overloaded and a single node
>>>down causes impact.
>>>
>>>
>>>
>>>I added 2 points to the list to clarify.
>>>
>>>Should we add this in a FAQ in the cassandra doc or in the awesome
>>>cassandra https://cassandra.link/awesome/
>>>
>>>Thanks,
>>>
>>>Sergio
>>>
>>>
>>> Il giorno mer 12 feb 2020 alle ore 10:58 Durity, Sean R <
>>> sean_r_dur...@homedepot.com> ha scritto:
>>>
 Check the readme.txt for any upgrade notes, but the basic procedure is
 to:

- Verify that nodetool upgradesstables has completed successfully
on all nodes from any previous upgrade
- Turn off repairs and any other streaming operations (add/remove
nodes)
- Stop an un-upgraded node (seeds first, preferably)
- Install new binaries and configs on the down node
- Restart that node and make sure it comes up clean (it will
function normally in the cluster – even with mixed versions)
- Repeat for all nodes
- Run upgradesstables on each node (as many at a time as your load
will allow). Minor upgrades usually don’t require this step (only if the
sstable format has changed), but it is good to check.
- NOTE: in most cases applications can keep running and will not
notice much impact – unless the cluster is overloaded and a single node
down causes impact.







 Sean Durity – Staff Systems Engineer, Cassandra



 *From:* Sergio 
 *Sent:* Wednesday, February 12, 2020 11:36 AM
 *To:* user@cassandra.apache.org
 *Subject:* [EXTERNAL] Cassandra 3.11.X upgrades



 Hi guys!

 How do you usually upgrade your cluster for minor version upgrades?

 I tried to add a node with 3.11.5 version to a test cluster with 3.11.4
 nodes.

 Is there any restriction?

 Best,

 Sergio

 --

 The information in this Internet Email is confidential and may be
 legally privileged. It is intended solely for the addressee. Access to this
 Email by anyone else is unauthorized. If you are not the intended
 recipient, any disclosure, copying, distribution or any action taken or
 omitted to be taken in reliance on 

Re: [EXTERNAL] Cassandra 3.11.X upgrades

2020-03-03 Thread manish khandelwal
Should upgradesstables not be run after every node is upgraded? If we need
to rollback then  we will not be able to downgrade sstables to older
version.

Regards
Manish

On Tue, Mar 3, 2020 at 11:26 PM Hossein Ghiyasi Mehr 
wrote:

> It's more safe to upgrade one node before upgrading another node to avoid
> down time.
> After upgrading binary and package, run upgradesstables on candidate node
> then do it on all cluster nodes one by one.
> *---*
> *VafaTech  : A Total Solution for Data Gathering
> & Analysis*
> *---*
>
>
> On Thu, Feb 13, 2020 at 9:27 PM Sergio  wrote:
>
>>
>>- Verify that nodetool upgradesstables has completed successfully on
>>all nodes from any previous upgrade
>>- Turn off repairs and any other streaming operations (add/remove
>>nodes)
>>- Nodetool drain on the node that needs to be stopped (seeds first,
>>preferably)
>>- Stop an un-upgraded node (seeds first, preferably)
>>- Install new binaries and configs on the down node
>>- Restart that node and make sure it comes up clean (it will function
>>normally in the cluster – even with mixed versions)
>>- nodetool statusbinary to verify if it is up and running
>>- Repeat for all nodes
>>- Once the binary upgrade has been performed in all the nodes: Run
>>upgradesstables on each node (as many at a time as your load will allow).
>>Minor upgrades usually don’t require this step (only if the sstable format
>>has changed), but it is good to check.
>>- NOTE: in most cases applications can keep running and will not
>>notice much impact – unless the cluster is overloaded and a single node
>>down causes impact.
>>
>>
>>
>>I added 2 points to the list to clarify.
>>
>>Should we add this in a FAQ in the cassandra doc or in the awesome
>>cassandra https://cassandra.link/awesome/
>>
>>Thanks,
>>
>>Sergio
>>
>>
>> Il giorno mer 12 feb 2020 alle ore 10:58 Durity, Sean R <
>> sean_r_dur...@homedepot.com> ha scritto:
>>
>>> Check the readme.txt for any upgrade notes, but the basic procedure is
>>> to:
>>>
>>>- Verify that nodetool upgradesstables has completed successfully on
>>>all nodes from any previous upgrade
>>>- Turn off repairs and any other streaming operations (add/remove
>>>nodes)
>>>- Stop an un-upgraded node (seeds first, preferably)
>>>- Install new binaries and configs on the down node
>>>- Restart that node and make sure it comes up clean (it will
>>>function normally in the cluster – even with mixed versions)
>>>- Repeat for all nodes
>>>- Run upgradesstables on each node (as many at a time as your load
>>>will allow). Minor upgrades usually don’t require this step (only if the
>>>sstable format has changed), but it is good to check.
>>>- NOTE: in most cases applications can keep running and will not
>>>notice much impact – unless the cluster is overloaded and a single node
>>>down causes impact.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Sean Durity – Staff Systems Engineer, Cassandra
>>>
>>>
>>>
>>> *From:* Sergio 
>>> *Sent:* Wednesday, February 12, 2020 11:36 AM
>>> *To:* user@cassandra.apache.org
>>> *Subject:* [EXTERNAL] Cassandra 3.11.X upgrades
>>>
>>>
>>>
>>> Hi guys!
>>>
>>> How do you usually upgrade your cluster for minor version upgrades?
>>>
>>> I tried to add a node with 3.11.5 version to a test cluster with 3.11.4
>>> nodes.
>>>
>>> Is there any restriction?
>>>
>>> Best,
>>>
>>> Sergio
>>>
>>> --
>>>
>>> The information in this Internet Email is confidential and may be
>>> legally privileged. It is intended solely for the addressee. Access to this
>>> Email by anyone else is unauthorized. If you are not the intended
>>> recipient, any disclosure, copying, distribution or any action taken or
>>> omitted to be taken in reliance on it, is prohibited and may be unlawful.
>>> When addressed to our clients any opinions or advice contained in this
>>> Email are subject to the terms and conditions expressed in any applicable
>>> governing The Home Depot terms of business or client engagement letter. The
>>> Home Depot disclaims all responsibility and liability for the accuracy and
>>> content of this attachment and for any damages or losses arising from any
>>> inaccuracies, errors, viruses, e.g., worms, trojan horses, etc., or other
>>> items of a destructive nature, which may be contained in this attachment
>>> and shall not be liable for direct, indirect, consequential or special
>>> damages in connection with this e-mail message or its attachment.
>>>
>>


Re: Deleting data from future

2020-03-03 Thread Erick Ramirez
>
> Inspecting sstables, we found that  timestamp(TS field value) of these
> records was 1584349956844022,  Monday, 16 March 2020 09:12:36.844.
> We neither delete these records nor truncate table.
> Is there anyway to manipulate records inside sstable manually?
>

Not really unless you plan to write code to do it which can get messy.
Unfortunately even if you delete the partitions/rows with a "future"
timestamp (i.e. greater than 1584349956844022), it still won't take effect
until after that point in time on March 16. If that's good enough, then
follow Jon's recommendation. Cheers!


Re: Should we use Materialised Views or ditch them ?

2020-03-03 Thread Erick Ramirez
I received quite a number of follow up questions directly as a result of my
response to Tobias' question. My comments on MVs specifically only relate
to MVs in OSS C*. :)

I'd like to reiterate that my responses to this mailing list are almost
exclusively relating to OSS C* but I'm going to make an exception and
address the questions about DataStax Enterprise (DSE) since I'm continually
getting asked about it. Particularly on this point:

But know the limitations
>
>
> https://docs.datastax.com/en/dse/5.1/cql/cql/cql_using/knownLimitationsMV.html
>

That page is for an old version of DSE. There have been several
enhancements/improvements/fixes in DSE that is not included in Apache
Cassandra... *yet*. Thanks to Paulo Motta, Zhao Yang & co who improved MVs
in DSE so it works with Graph. Note the stark contrast when compared to the
DSE 6.7 version of that page --
https://docs.datastax.com/en/dse/6.7/cql/cql/cql_using/knownLimitationsMV.html
.

Having said that, the situation where a view becomes permanently
out-of-sync with the base table is still outstanding in both DSE & OSS C*.
The workaround remains the same -- drop the view and recreate it. Again,
usual caveats apply and YMMV. Cheers!

GOT QUESTIONS? Apache Cassandra experts from the community and DataStax
have answers! Share your expertise on https://community.datastax.com/.


Re: [EXTERNAL] Cassandra 3.11.X upgrades

2020-03-03 Thread Hossein Ghiyasi Mehr
It's more safe to upgrade one node before upgrading another node to avoid
down time.
After upgrading binary and package, run upgradesstables on candidate node
then do it on all cluster nodes one by one.
*---*
*VafaTech  : A Total Solution for Data Gathering &
Analysis*
*---*


On Thu, Feb 13, 2020 at 9:27 PM Sergio  wrote:

>
>- Verify that nodetool upgradesstables has completed successfully on
>all nodes from any previous upgrade
>- Turn off repairs and any other streaming operations (add/remove
>nodes)
>- Nodetool drain on the node that needs to be stopped (seeds first,
>preferably)
>- Stop an un-upgraded node (seeds first, preferably)
>- Install new binaries and configs on the down node
>- Restart that node and make sure it comes up clean (it will function
>normally in the cluster – even with mixed versions)
>- nodetool statusbinary to verify if it is up and running
>- Repeat for all nodes
>- Once the binary upgrade has been performed in all the nodes: Run
>upgradesstables on each node (as many at a time as your load will allow).
>Minor upgrades usually don’t require this step (only if the sstable format
>has changed), but it is good to check.
>- NOTE: in most cases applications can keep running and will not
>notice much impact – unless the cluster is overloaded and a single node
>down causes impact.
>
>
>
>I added 2 points to the list to clarify.
>
>Should we add this in a FAQ in the cassandra doc or in the awesome
>cassandra https://cassandra.link/awesome/
>
>Thanks,
>
>Sergio
>
>
> Il giorno mer 12 feb 2020 alle ore 10:58 Durity, Sean R <
> sean_r_dur...@homedepot.com> ha scritto:
>
>> Check the readme.txt for any upgrade notes, but the basic procedure is to:
>>
>>- Verify that nodetool upgradesstables has completed successfully on
>>all nodes from any previous upgrade
>>- Turn off repairs and any other streaming operations (add/remove
>>nodes)
>>- Stop an un-upgraded node (seeds first, preferably)
>>- Install new binaries and configs on the down node
>>- Restart that node and make sure it comes up clean (it will function
>>normally in the cluster – even with mixed versions)
>>- Repeat for all nodes
>>- Run upgradesstables on each node (as many at a time as your load
>>will allow). Minor upgrades usually don’t require this step (only if the
>>sstable format has changed), but it is good to check.
>>- NOTE: in most cases applications can keep running and will not
>>notice much impact – unless the cluster is overloaded and a single node
>>down causes impact.
>>
>>
>>
>>
>>
>>
>>
>> Sean Durity – Staff Systems Engineer, Cassandra
>>
>>
>>
>> *From:* Sergio 
>> *Sent:* Wednesday, February 12, 2020 11:36 AM
>> *To:* user@cassandra.apache.org
>> *Subject:* [EXTERNAL] Cassandra 3.11.X upgrades
>>
>>
>>
>> Hi guys!
>>
>> How do you usually upgrade your cluster for minor version upgrades?
>>
>> I tried to add a node with 3.11.5 version to a test cluster with 3.11.4
>> nodes.
>>
>> Is there any restriction?
>>
>> Best,
>>
>> Sergio
>>
>> --
>>
>> The information in this Internet Email is confidential and may be legally
>> privileged. It is intended solely for the addressee. Access to this Email
>> by anyone else is unauthorized. If you are not the intended recipient, any
>> disclosure, copying, distribution or any action taken or omitted to be
>> taken in reliance on it, is prohibited and may be unlawful. When addressed
>> to our clients any opinions or advice contained in this Email are subject
>> to the terms and conditions expressed in any applicable governing The Home
>> Depot terms of business or client engagement letter. The Home Depot
>> disclaims all responsibility and liability for the accuracy and content of
>> this attachment and for any damages or losses arising from any
>> inaccuracies, errors, viruses, e.g., worms, trojan horses, etc., or other
>> items of a destructive nature, which may be contained in this attachment
>> and shall not be liable for direct, indirect, consequential or special
>> damages in connection with this e-mail message or its attachment.
>>
>


Cassandra.Link Knowledge Base - v. 0.5

2020-03-03 Thread Rahul Singh
Our apprentice / analyst team (Tanaka, Jordon, and Cynthia) at Anant.us have 
been making improvements to the best public collection of curated links for 
Apache Cassandra at https://Cassandra.Link — they’ve fixed several issues 
related to the search interface.

This week we’ll also be releasing “Cassandra.Tools”, a list of open and 
commercial tools that have been tested by us with different Variants of Apache 
Cassandra and other software that is data protocol / management protocol 
compliant with Cassandra.

Our goal with these and future sites are to add to the ecosystem and make it 
easier for Cassandra users to learn, master, and propagate knowledge around the 
Apache Cassandra “movement”.

We’re always in “beta” so if you have any feedback feel free to contact me here 
on a PM or reach out to the team through the site.  More specifically if you 
have time , I’d love to know what your challenges are in learning Cassandra. 
The feedback will also be used to help with the Documentation project for 
Apache Cassandra.

rahul.xavier.si...@gmail.com

http://cassandra.link
The Apache Cassandra Knowledge Base.