I think it might be legit to store an empty value, empty key = not gonna
happen.

but if the key has enough data in it, eg: a delete tombstone, the value
might be not interesting, so why store a placeholder?

what particular circumstance is this happening under?  I dont want to 'fix'
hfile by allowing empty/null values only to mask a different error that you
are getting...



On Sat, Apr 4, 2009 at 8:31 PM, Andrew Purtell (JIRA) <[email protected]>wrote:

>
>     [
> https://issues.apache.org/jira/browse/HBASE-1309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
>
> Andrew Purtell updated HBASE-1309:
> ----------------------------------
>
>    Summary: HFile catches key in Memcache with empty value  (was:
> HFile$Writer.checkValue: IOException: Value cannot be null or empty)
>
> Changed issue title after some initial digging in the code.
>
> Null values is one thing. Should empty values just be ignored rather than
> cause exceptions?
>
> > HFile catches key in Memcache with empty value
> > ----------------------------------------------
> >
> >                 Key: HBASE-1309
> >                 URL: https://issues.apache.org/jira/browse/HBASE-1309
> >             Project: Hadoop HBase
> >          Issue Type: Bug
> >    Affects Versions: 0.20.0
> >            Reporter: Andrew Purtell
> >         Attachments: hbase-hadoop-regionserver-nashua.zip
> >
> >
> > 2009-04-05 02:12:56,497 FATAL
> org.apache.hadoop.hbase.regionserver.MemcacheFlusher: Replay of hlog
> required. Forcing server shutdown
> > org.apache.hadoop.hbase.DroppedSnapshotException: region:
> content,,1238896745127
> >       at
> org.apache.hadoop.hbase.regionserver.HRegion.internalFlushcache(HRegion.java:878)
> >       at
> org.apache.hadoop.hbase.regionserver.HRegion.flushcache(HRegion.java:771)
> >       at
> org.apache.hadoop.hbase.regionserver.MemcacheFlusher.flushRegion(MemcacheFlusher.java:229)
> >       at
> org.apache.hadoop.hbase.regionserver.MemcacheFlusher.run(MemcacheFlusher.java:139)
> > Caused by: java.io.IOException: Value cannot be null or empty
> >       at
> org.apache.hadoop.hbase.io.hfile.HFile$Writer.checkValue(HFile.java:485)
> >       at
> org.apache.hadoop.hbase.io.hfile.HFile$Writer.append(HFile.java:447)
> >       at
> org.apache.hadoop.hbase.regionserver.Store.internalFlushCache(Store.java:501)
> >       at
> org.apache.hadoop.hbase.regionserver.Store.flushCache(Store.java:463)
> >       at
> org.apache.hadoop.hbase.regionserver.HRegion.internalFlushcache(HRegion.java:863)
> >       ... 3 more
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>

Reply via email to