You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2010/11/10 04:21:23 UTC

[jira] Created: (CASSANDRA-1722) Index scan only ever scans first node in ring

Index scan only ever scans first node in ring
---------------------------------------------

                 Key: CASSANDRA-1722
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1722
             Project: Cassandra
          Issue Type: Bug
          Components: Core
    Affects Versions: 0.7 beta 3
            Reporter: Jonathan Ellis
             Fix For: 0.7.0


{code:Java}
        List<AbstractBounds> ranges = getRestrictedRanges(new Bounds(leftToken, p.getMinimumToken()));
{code}

when called with empty start key this means we have a Bounds(minToken, minToken), which hits the getRR special case

{code:Java}
        // special case for bounds containing exactly 1 token
        if (queryRange instanceof Bounds && queryRange.left.equals(queryRange.right))
        {
            if (logger.isDebugEnabled())
                logger.debug("restricted single token match for query " + queryRange);
            return Collections.singletonList(queryRange);
        }
{code}

Looks like this broke as a side effect of CASSANDRA-1442.  Prior to that a bounds from [T, minToken] was considered "up to infinity" by getRR so would span multiple nodes.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-1722) Unbounded key range only ever scans first node in ring

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

Jonathan Ellis updated CASSANDRA-1722:
--------------------------------------

    Fix Version/s: 0.6.8

Also committed to 0.6.

> Unbounded key range only ever scans first node in ring
> ------------------------------------------------------
>
>                 Key: CASSANDRA-1722
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1722
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.6.7, 0.7 beta 3
>            Reporter: Jonathan Ellis
>            Assignee: Stu Hood
>             Fix For: 0.6.8, 0.7.0
>
>         Attachments: 0001-Add-guard-to-the-Bounds-special-case-to-treat-min-rang.txt
>
>
> {code:Java}
>         List<AbstractBounds> ranges = getRestrictedRanges(new Bounds(leftToken, p.getMinimumToken()));
> {code}
> when called with empty start key this means we have a Bounds(minToken, minToken), which hits the getRR special case
> {code:Java}
>         // special case for bounds containing exactly 1 token
>         if (queryRange instanceof Bounds && queryRange.left.equals(queryRange.right))
>         {
>             if (logger.isDebugEnabled())
>                 logger.debug("restricted single token match for query " + queryRange);
>             return Collections.singletonList(queryRange);
>         }
> {code}
> Looks like this broke as a side effect of CASSANDRA-1442.  Prior to that a bounds from [T, minToken] was considered "up to infinity" by getRR so would span multiple nodes.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-1722) Unbounded key range only ever scans first node in ring

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

Stu Hood updated CASSANDRA-1722:
--------------------------------

    Affects Version/s: 0.6.7
              Summary: Unbounded key range only ever scans first node in ring  (was: Index scan only ever scans first node in ring)

This actually affects get_range_slices as well: querying a key range for start_key='' and end_key='' results in an empty bounds. jbellis backported it to the 0.6 branch.

> Unbounded key range only ever scans first node in ring
> ------------------------------------------------------
>
>                 Key: CASSANDRA-1722
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1722
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.6.7, 0.7 beta 3
>            Reporter: Jonathan Ellis
>            Assignee: Stu Hood
>             Fix For: 0.7.0
>
>         Attachments: 0001-Add-guard-to-the-Bounds-special-case-to-treat-min-rang.txt
>
>
> {code:Java}
>         List<AbstractBounds> ranges = getRestrictedRanges(new Bounds(leftToken, p.getMinimumToken()));
> {code}
> when called with empty start key this means we have a Bounds(minToken, minToken), which hits the getRR special case
> {code:Java}
>         // special case for bounds containing exactly 1 token
>         if (queryRange instanceof Bounds && queryRange.left.equals(queryRange.right))
>         {
>             if (logger.isDebugEnabled())
>                 logger.debug("restricted single token match for query " + queryRange);
>             return Collections.singletonList(queryRange);
>         }
> {code}
> Looks like this broke as a side effect of CASSANDRA-1442.  Prior to that a bounds from [T, minToken] was considered "up to infinity" by getRR so would span multiple nodes.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (CASSANDRA-1722) Index scan only ever scans first node in ring

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

Stu Hood updated CASSANDRA-1722:
--------------------------------

    Attachment: 0001-Add-guard-to-the-Bounds-special-case-to-treat-min-rang.txt

Guard the "exact one token" special case from the minimum token: a minimum token range should wrap.

> Index scan only ever scans first node in ring
> ---------------------------------------------
>
>                 Key: CASSANDRA-1722
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1722
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.7 beta 3
>            Reporter: Jonathan Ellis
>             Fix For: 0.7.0
>
>         Attachments: 0001-Add-guard-to-the-Bounds-special-case-to-treat-min-rang.txt
>
>
> {code:Java}
>         List<AbstractBounds> ranges = getRestrictedRanges(new Bounds(leftToken, p.getMinimumToken()));
> {code}
> when called with empty start key this means we have a Bounds(minToken, minToken), which hits the getRR special case
> {code:Java}
>         // special case for bounds containing exactly 1 token
>         if (queryRange instanceof Bounds && queryRange.left.equals(queryRange.right))
>         {
>             if (logger.isDebugEnabled())
>                 logger.debug("restricted single token match for query " + queryRange);
>             return Collections.singletonList(queryRange);
>         }
> {code}
> Looks like this broke as a side effect of CASSANDRA-1442.  Prior to that a bounds from [T, minToken] was considered "up to infinity" by getRR so would span multiple nodes.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.