You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Sam Tunnicliffe (JIRA)" <ji...@apache.org> on 2012/10/03 12:40:07 UTC

[jira] [Created] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Sam Tunnicliffe created CASSANDRA-4752:
------------------------------------------

             Summary: Drop keyspace causes schema disagreement 
                 Key: CASSANDRA-4752
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
             Project: Cassandra
          Issue Type: Bug
    Affects Versions: 1.1.6
            Reporter: Sam Tunnicliffe


The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 

{code}
	ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());
{code}

in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.

Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "Sam Tunnicliffe (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sam Tunnicliffe updated CASSANDRA-4752:
---------------------------------------

    Attachment: 0001-CASSANDRA-4752.txt
    
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4752:
--------------------------------------

    Reviewer: jbellis
    
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-4752:
--------------------------------------

    Attachment: 4752-v2.txt

Thanks, Sam!  I think you nailed it with your diagnosis of the problem.  But the fix will not actually correct the timestamp (neither did the original code).  Attaching v2 that makes the code do what I think was originally intended -- copy the old timestamp into the clone, or cap it at current time if necessary.
                
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "T Jake Luciani (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

T Jake Luciani updated CASSANDRA-4752:
--------------------------------------

    Comment: was deleted

(was: Verified Jonathans fix +1)
    
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "T Jake Luciani (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469452#comment-13469452 ] 

T Jake Luciani commented on CASSANDRA-4752:
-------------------------------------------

Verified Jonathans fix +1
                
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "T Jake Luciani (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469381#comment-13469381 ] 

T Jake Luciani commented on CASSANDRA-4752:
-------------------------------------------

Verified Jonathans fix +1
                
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>         Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt
>
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement

Posted by "Sam Tunnicliffe (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sam Tunnicliffe updated CASSANDRA-4752:
---------------------------------------

    Description: 
The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 

{code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}

in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.

Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.


  was:
The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 

{code}
	ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());
{code}

in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.

Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.


    
> Drop keyspace causes schema disagreement 
> -----------------------------------------
>
>                 Key: CASSANDRA-4752
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4752
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 1.1.6
>            Reporter: Sam Tunnicliffe
>
> The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the 
> {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code}
> in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement.
> Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira