hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Julian Wissmann (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-7641) Port HBASE-6669 'Add BigDecimalColumnInterpreter for doing aggregations using AggregationClient' to trunk
Date Sun, 24 Feb 2013 14:58:13 GMT

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

Julian Wissmann commented on HBASE-7641:
----------------------------------------

Hi,

just "found" protobufs output. Followed the README to compile protobuf
and compiled following the directions on the protobuf page [1].
I added the following code snippet to hbase.proto in
/hbase/hbase-protocol/src/main/protobuf:
message BigDecimalMsg {
  required string bigdecimalMsg = 1;
}

Then I compiled from that directory using " protoc --java_out=../java
./hbase.proto". The output will then go to the correct package in the
java source tree, as it is defined at the beginning of hbase.proto.

As mentioned before, this will just define a String, though, as
defining BigDecimal directly is impossible. Therefor I made some
slight changes in BDCI:
@Override
	public BigDecimalMsg getProtoForCellType(BigDecimal t) {
		BigDecimalMsg.Builder builder = BigDecimalMsg.newBuilder();
		return builder.setBigDecimalMsg(t.toString()).build();
	}

	@Override
	public BigDecimalMsg getProtoForPromotedType(BigDecimal s) {
		BigDecimalMsg.Builder builder = BigDecimalMsg.newBuilder();
		return builder.setBigDecimalMsg(s.toString()).build();
	}

	@Override
	public BigDecimal getPromotedValueFromProto(BigDecimalMsg r) {
		return new BigDecimal(r.getBigDecimalMsg());
	}

	@Override
	public BigDecimal getCellValueFromProto(BigDecimalMsg q) {
		return new BigDecimal(q.getBigDecimalMsg());
	}

However there seem to be some methods missing in the generated source.
I'll try to get that fixed.
Also my build system seems a little fucked up right now. I'll get that
fixed and test it.

Julian

[1] https://developers.google.com/protocol-buffers/docs/javatutorial



                
> Port HBASE-6669 'Add BigDecimalColumnInterpreter for doing aggregations using AggregationClient'
to trunk
> ---------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-7641
>                 URL: https://issues.apache.org/jira/browse/HBASE-7641
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>
> ColumnInterpreter implementation in trunk is different from that in 0.94
> This issue ports BigDecimalColumnInterpreter to trunk

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message