You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "ryan rawson (JIRA)" <ji...@apache.org> on 2009/06/23 04:16:07 UTC
[jira] Created: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
using Scan(startRow,stopRow) will cause you to iterate the entire table
-----------------------------------------------------------------------
Key: HBASE-1566
URL: https://issues.apache.org/jira/browse/HBASE-1566
Project: Hadoop HBase
Issue Type: Bug
Affects Versions: 0.20.0
Reporter: ryan rawson
Priority: Blocker
Fix For: 0.20.0
Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-1566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stack resolved HBASE-1566.
--------------------------
Resolution: Fixed
Assignee: ryan rawson
> using Scan(startRow,stopRow) will cause you to iterate the entire table
> -----------------------------------------------------------------------
>
> Key: HBASE-1566
> URL: https://issues.apache.org/jira/browse/HBASE-1566
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.20.0
> Reporter: ryan rawson
> Assignee: ryan rawson
> Priority: Blocker
> Fix For: 0.20.0
>
> Attachments: HBASE-1566.patch
>
>
> Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
> This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
> Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
> We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
Posted by "ryan rawson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-1566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ryan rawson updated HBASE-1566:
-------------------------------
Attachment: HBASE-1566.patch
fixes this on my set-up
> using Scan(startRow,stopRow) will cause you to iterate the entire table
> -----------------------------------------------------------------------
>
> Key: HBASE-1566
> URL: https://issues.apache.org/jira/browse/HBASE-1566
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.20.0
> Reporter: ryan rawson
> Priority: Blocker
> Fix For: 0.20.0
>
> Attachments: HBASE-1566.patch
>
>
> Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
> This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
> Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
> We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
Posted by "ryan rawson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-1566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12722931#action_12722931 ]
ryan rawson commented on HBASE-1566:
------------------------------------
actually it doesnt _iterate_ the entire table, but it does touch every RS after the one your rows are hosted on, even if not necessary!
> using Scan(startRow,stopRow) will cause you to iterate the entire table
> -----------------------------------------------------------------------
>
> Key: HBASE-1566
> URL: https://issues.apache.org/jira/browse/HBASE-1566
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.20.0
> Reporter: ryan rawson
> Priority: Blocker
> Fix For: 0.20.0
>
>
> Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
> This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
> Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
> We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-1566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724300#action_12724300 ]
stack commented on HBASE-1566:
------------------------------
+1
That'll do for now.
> using Scan(startRow,stopRow) will cause you to iterate the entire table
> -----------------------------------------------------------------------
>
> Key: HBASE-1566
> URL: https://issues.apache.org/jira/browse/HBASE-1566
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.20.0
> Reporter: ryan rawson
> Priority: Blocker
> Fix For: 0.20.0
>
> Attachments: HBASE-1566.patch
>
>
> Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
> This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
> Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
> We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-1566) using Scan(startRow,stopRow) will
cause you to iterate the entire table
Posted by "ryan rawson (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-1566?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12724266#action_12724266 ]
ryan rawson commented on HBASE-1566:
------------------------------------
changing Scan to add a filter to handle the stop row. Hacky and annoying.
> using Scan(startRow,stopRow) will cause you to iterate the entire table
> -----------------------------------------------------------------------
>
> Key: HBASE-1566
> URL: https://issues.apache.org/jira/browse/HBASE-1566
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.20.0
> Reporter: ryan rawson
> Priority: Blocker
> Fix For: 0.20.0
>
>
> Right now the only way for the client scanner to know that we are at the 'end' of a scan is to client-side-wise use the filter to figure this out.
> This is not easy to fix because the server is unable to indicate the difference between 'done with this region', and 'you're at the end of your scan'. In both cases we return 0 results, and the client can't figure out what it means.
> Right now the best solution is to use filters, which is tricky since there is no StopRowFilter because that functionality is built in :-)
> We might have to hack the 'stop row' functionality as a filter until we can improve the client-server API/RPC.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.