You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2008/07/08 11:37:34 UTC
[jira] Created: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
client region/metadata cache should have a public method for invalidating entries
---------------------------------------------------------------------------------
Key: HBASE-729
URL: https://issues.apache.org/jira/browse/HBASE-729
Project: Hadoop HBase
Issue Type: Bug
Components: client
Affects Versions: 0.3.0
Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
Reporter: Andrew Purtell
Assignee: Andrew Purtell
Priority: Minor
While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Fix Version/s: 0.3.0
0.2.1
Affects Version/s: 0.2.1
Status: Patch Available (was: Open)
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.1, 0.3.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 0.2.1, 0.3.0
>
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Fix Version/s: (was: 0.2.1)
(was: 0.3.0)
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Attachment: 729.patch
Previous patch had linefeed issues that would cause patch to barf.
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.1, 0.3.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 0.2.1, 0.3.0
>
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Affects Version/s: (was: 0.2.1)
(was: 0.3.0)
0.2.0
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12621622#action_12621622 ]
stack commented on HBASE-729:
-----------------------------
Andrew, does TestTable unit test pass for you? Fails for me when I apply this patch.
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12621623#action_12621623 ]
stack commented on HBASE-729:
-----------------------------
Ignore my comment in above.
Cleaning and retrying all passed (just takes a while).
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "stack (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
stack updated HBASE-729:
------------------------
Resolution: Fixed
Fix Version/s: 0.3.0
0.2.1
Status: Resolved (was: Patch Available)
Committed to branch and trunk. Thanks for the patch Andrew.
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 0.2.1, 0.3.0
>
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Attachment: (was: 729.patch)
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.1, 0.3.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 0.2.1, 0.3.0
>
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HBASE-729) client region/metadata cache should
have a public method for invalidating entries
Posted by "Andrew Purtell (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HBASE-729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-729:
---------------------------------
Attachment: 729.patch
Actually just always using a MetaScanner in getHTableDescriptor is enough.
> client region/metadata cache should have a public method for invalidating entries
> ---------------------------------------------------------------------------------
>
> Key: HBASE-729
> URL: https://issues.apache.org/jira/browse/HBASE-729
> Project: Hadoop HBase
> Issue Type: Bug
> Components: client
> Affects Versions: 0.2.1, 0.3.0
> Environment: Linux CentOS 5.1 x86_64 / JDK 1.6
> Reporter: Andrew Purtell
> Assignee: Andrew Purtell
> Priority: Minor
> Fix For: 0.2.1, 0.3.0
>
> Attachments: 729.patch
>
>
> While writing a testcase for HBASE-62, I observed that table metadata is cached as part of the region information cached client side. This cached region information (and therefore table metadata) is not directly invalidated by disable/enable table, so to get up to date metadata the client may have to use a scanner over .META. directly using the meta visitor. Ideally other client code -- for example the support for HBASE-62 -- should be able to invalidate entries as necessary, so then the next HTable.getTableDescriptor() would go to meta to return up to date information instead of incorrectly reusing outdated information from the cache.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.