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

Nick Dimiduk commented on HBASE-11523:
--------------------------------------

Mapred mode has worked in the past. I think this tool is becoming complex 
enough that it's time we add some unit tests.

Is DataBlockEncoding is not serializable by Jackson because of it's enum 
declaration? Compression and BloomType both appear to work.

The attached patch is for HBASE-11520, not this one :)

> JSON serialization of PE Options is broke
> -----------------------------------------
>
>                 Key: HBASE-11523
>                 URL: https://issues.apache.org/jira/browse/HBASE-11523
>             Project: HBase
>          Issue Type: Bug
>            Reporter: stack
>            Assignee: stack
>             Fix For: 0.99.0, 0.96.3, 0.98.5
>
>         Attachments: 11520v3.txt
>
>
> I see this when I try to run a PE MR job on master:
> {code}
> 4/07/15 22:02:27 INFO mapreduce.Job: Task Id : 
> attempt_1405482830657_0004_m_000015_2, Status : FAILED
> Error: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: 
> Unrecognized field "blockEncoding" (Class 
> org.apache.hadoop.hbase.PerformanceEvaluation$TestOptions), not marked as 
> ignorable
>  at [Source: java.io.StringReader@41c7d592; line: 1, column: 37] (through 
> reference chain: org.apache.hadoop.hbase.TestOptions["blockEncoding"])
>       at 
> org.codehaus.jackson.map.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:53)
>       at 
> org.codehaus.jackson.map.deser.StdDeserializationContext.unknownFieldException(StdDeserializationContext.java:246)
>       at 
> org.codehaus.jackson.map.deser.StdDeserializer.reportUnknownProperty(StdDeserializer.java:604)
>       at 
> org.codehaus.jackson.map.deser.StdDeserializer.handleUnknownProperty(StdDeserializer.java:590)
>       at 
> org.codehaus.jackson.map.deser.BeanDeserializer.handleUnknownProperty(BeanDeserializer.java:689)
>       at 
> org.codehaus.jackson.map.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:514)
>       at 
> org.codehaus.jackson.map.deser.BeanDeserializer.deserialize(BeanDeserializer.java:350)
>       at 
> org.codehaus.jackson.map.ObjectMapper._readMapAndClose(ObjectMapper.java:2402)
>       at 
> org.codehaus.jackson.map.ObjectMapper.readValue(ObjectMapper.java:1602)
>       at 
> org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:255)
>       at 
> org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:210)
>       at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145)
>       at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:764)
>       at org.apache.hadoop.mapred.MapTask.run(MapTask.java:340)
>       at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:167)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:415)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556)
>       at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:162)
> {code}
> The JSON serialization of PE Options does not seem to be working.  If I add a 
> setter, it does work so unless I hear otherwise, seems like adding a setter 
> for each PE option is the way to go (I like the new JSON serialization).



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to