hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Kellerman (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HBASE-1039) Compaction fails if bloomfilters are enabled
Date Mon, 01 Dec 2008 17:31:44 GMT

    [ https://issues.apache.org/jira/browse/HBASE-1039?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652069#action_12652069

Jim Kellerman commented on HBASE-1039:

You can neither enable nor disable bloomfilters once a column has data in it.

If you enable it on a table with existing data, compact assumes all stores have a bloom filter
and will NPE because it cannot read it.

If you disable bloom filters on a table that has data in it, compact will fail because the
store file knows it has a bloom filter.

It is easier to fix the latter than the former by going through the store files and deleting
the bloom filter file.

Enabling bloom filters after the table has data in it is much harder as all store files must
be read and a bloom filter created for each.

It would be better to disallow the enabling of bloom filters once the table has been created.
This would at least prevent shooting yourself in the foot.

> Compaction fails if bloomfilters are enabled
> --------------------------------------------
>                 Key: HBASE-1039
>                 URL: https://issues.apache.org/jira/browse/HBASE-1039
>             Project: Hadoop HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.18.1
>            Reporter: Andrew Purtell
> From Thibaut up on the list.
> As soon as hbase tries to compact the table, the following exception appears in the logfile:
(Other compactations also work fine without any errors)
> 2008-11-30 00:55:57,769 ERROR
> org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction failed for region
> java.lang.IllegalArgumentException: maxValue must be > 0
>     at org.onelab.filter.HashFunction.<init>(HashFunction.java:84)
>     at org.onelab.filter.Filter.<init>(Filter.java:97)
>     at org.onelab.filter.BloomFilter.<init>(BloomFilter.java:102)
>     at org.apache.hadoop.hbase.regionserver.HStoreFile$BloomFilterMapFile$Writer.<init>(HStoreFile.java:829)
>     at org.apache.hadoop.hbase.regionserver.HStoreFile.getWriter(HStoreFile.java:436)
>     at org.apache.hadoop.hbase.regionserver.HStore.compact(HStore.java:889)
>     at org.apache.hadoop.hbase.regionserver.HRegion.compactStores(HRegion.java:902)
>     at org.apache.hadoop.hbase.regionserver.HRegion.compactStores(HRegion.java:860)
>     at org.apache.hadoop.hbase.regionserver.CompactSplitThread.run(CompactSplitThread.java:83)
> Because the region cannot compact and/or split, it is soon dead after (re)assignment.

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

View raw message