You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Stu Hood (JIRA)" <ji...@apache.org> on 2011/05/09 22:18:03 UTC

[jira] [Created] (CASSANDRA-2629) Move key reads into SSTII

Move key reads into SSTII
-------------------------

                 Key: CASSANDRA-2629
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
             Project: Cassandra
          Issue Type: Improvement
          Components: Core
            Reporter: Stu Hood
            Assignee: Stu Hood
             Fix For: 1.0


Unlike SSTNI or SSTSI, SSTableIdentityIterator expects that the key has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

bq. move "long rowSizeFromIndex = nextRowPositionFromIndex - currentRowPositionFromIndex;" into the IF statement where it is needed
Done.

bq. in your log warnings, specifying the actual sstable will help with debugging
Scrub starts with a log entry to indicate which file is being scrubbed... this should be sufficient unless someone is running without INFO.

bq. remove "this.key = key;" for both constructors
Good catch... that line was a noop in the second constructor: we don't know the key until init() is called, so we can't make it final.

bq. *init() method should be more descriptive
Was supposed to say "Reads the key and row length from the head of the row.": fixed.

bq. remove @param key comment from IFilter.java and SSTableSliceIterator.java
Fixed.

bq. safer to updateCache(iter) AFTER appending to writer
I think the whole thing is racey, because the entire rebuilding process can fail, which might mean that the cache was updated when it shouldn't have been.

----

I didn't make the close() change: we talked about close a little bit offline, I think we reached the consensus that having two methods that you must always call won't be an improvement over close. I also didn't add back the scrub retry: I agree that we can do better there, but I think it will be easier to improve once we have the checksumming from 674: at the moment the reasons for doing certain things with the API would not be clear at all.

Thanks for the review!

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Description: All SSTableIterators have a constructor that assumes the key and length has already been pased. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.  (was: Unlike SSTNI or SSTSI, SSTableIdentityIterator expects that the key has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.)
        Summary: Move key reads into SSTableIterators  (was: Move key reads into SSTII)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been pased. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Sylvain Lebresne commented on CASSANDRA-2629:
---------------------------------------------

bq. For convenience I removed a step from scrub in 0002 where if the key/length at the head of a row were corrupt, we retried with the key/length from the index. I'll understand if we want to add this back (would have to push it into the iterator), but either way we end up skipping the row as corrupt (using the index), so I don't think it is much of a loss.

We don't end up skipping the row either way. If the index is valid, we end up "repairing the row". I'm for adding this back, as I don't see why this is so unconvenient and doesn't justify the regression.

Other comments:
* The rewrite of IncomingStreamReader is actually more buggy that IncomingStreamReader is already, in that it uses AbstractCompactRow for everything which in the cases where LCR will be used is problematic. The code in trunk is already problematic however (CASSANDRA-3003). Nevertheless, let's keep the code there as close as it is in trunk because 1) it is more "correct" in trunk and 2) there is no point in changing this code (more than what this ticket require) that will need to be fixed anyway.
* In SSTII constructor, dataStart should be set to 0 when the input is a stream. Otherwise an assert of getColumnFamilyWithColumns() that uses headerSize() will fail. I agree that it is not used in streaming right now, but it could, there is no reason to make that fail.

Some nits:
* In SSTable{Names|Slice}Iterator first constructor, it would be nice to add back the assert that the key given is the same that the one on disk.
* In SSTSI.close(), the if (file != null) can be an assert.
* In SSTScanner.KSI.next(), there is a start variable that is unused.


> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

Rebased... applies atop CASSANDRA-2468 and CASSANDRA-2576. This one is vital to CASSANDRA-674, since the key and length are no longer located where unversioned readers expect them to be: in particular, they will be compressed with nearby buddies.

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

Patch to move key/length reading into the iterators. Applies atop the linked issues.

For convenience I removed a step from scrub in 0002 where if the key/length at the head of a row were corrupt, we retried with the key/length from the index. I'll understand if we want to add this back (would have to push it into the iterator), but either way we end up skipping the row as corrupt (using the index), so I don't think it is much of a loss.

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Description: All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.  (was: All SSTableIterators have a constructor that assumes the key and length has already been pased. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

Rebased for trunk: applies atop #2468 and #2576 (assuming r1138084 is reverted).

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Alan Liang commented on CASSANDRA-2629:
---------------------------------------

  CompactionManager.java:
  -retrying from key/length from index is useful, we should add this back, as you mentioned in your comments above.
	-move "long rowSizeFromIndex = nextRowPositionFromIndex - currentRowPositionFromIndex;" into the IF statement where it is needed
	-in your log warnings, specifying the actual sstable will help with debugging

	SSTableNamesIterator.java:
	-remove "this.key = key;" for both constructors and that means "public DecoratedKey key;" can still be final
	*init() method should be more descriptive
	-remove @param key comment from IFilter.java and SSTableSliceIterator.java

	SSTableWriter.java:
	-calling close() on an SSTableIdentityIterator to go to the end doesn't sound right. Use another name other than "close()"
  -safer to updateCache(iter) AFTER appending to writer

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Jonathan Ellis updated CASSANDRA-2629:
--------------------------------------

    Fix Version/s:     (was: 1.1)
    
> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt, 0003-CASSANDRA-2629-Add-alternate-iteration-based-consumpti.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

Rebased for trunk. This ticket is a blocker for alternate file formats.

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Priority: Critical  (was: Major)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment:     (was: 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt)

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>             Fix For: 1.0
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood updated CASSANDRA-2629:
--------------------------------

    Attachment: 0003-CASSANDRA-2629-Add-alternate-iteration-based-consumpti.txt
                0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
                0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt

Rebased, but without the changes from Sylvain's review... I'll get back to this once 3067 has had some eyes on it.

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt, 0003-CASSANDRA-2629-Add-alternate-iteration-based-consumpti.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2629) Move key reads into SSTableIterators

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

Stu Hood commented on CASSANDRA-2629:
-------------------------------------

Thanks for the review Sylvain: I commented on CASSANDRA-3003. I'll try to make these changes before Monday the 15th.

> Move key reads into SSTableIterators
> ------------------------------------
>
>                 Key: CASSANDRA-2629
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2629
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Stu Hood
>            Assignee: Stu Hood
>            Priority: Critical
>             Fix For: 1.0
>
>         Attachments: 0001-CASSANDRA-2629-Move-key-and-row-size-reading-into-the-.txt, 0002-CASSANDRA-2629-Remove-the-retry-with-key-from-index-st.txt
>
>
> All SSTableIterators have a constructor that assumes the key and length has already been parsed. Moving this logic inside the iterator will improve symmetry and allow the file format to change without iterator consumers knowing it.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira