diff --git a/hbase-shell/src/main/ruby/hbase/table.rb b/hbase-shell/src/main/ruby/hbase/table.rb index 30cdb999b2f..615cd5845f2 100644 --- a/hbase-shell/src/main/ruby/hbase/table.rb +++ b/hbase-shell/src/main/ruby/hbase/table.rb @@ -750,8 +750,9 @@ EOF [spec.family, spec.qualifier] end - def toISO8601(millis) - return java.time.Instant.ofEpochMilli(millis).toString + def toLocalDateTime(millis) + instant = java.time.Instant.ofEpochMilli(millis) + return java.time.LocalDateTime.ofInstant(instant, java.time.ZoneId.systemDefault()).toString end # Make a String of the passed kv @@ -762,7 +763,7 @@ EOF column.start_with?('info:merge') hri = org.apache.hadoop.hbase.client.RegionInfo.parseFromOrNull(kv.getValueArray, kv.getValueOffset, kv.getValueLength) - return format('timestamp=%s, value=%s', toISO8601(kv.getTimestamp), + return format('timestamp=%s, value=%s', toLocalDateTime(kv.getTimestamp), hri.nil? ? '' : hri.toString) end if column == 'info:serverstartcode' @@ -773,14 +774,14 @@ EOF str_val = org.apache.hadoop.hbase.util.Bytes.toStringBinary(kv.getValueArray, kv.getValueOffset, kv.getValueLength) end - return format('timestamp=%s, value=%s', toISO8601(kv.getTimestamp), str_val) + return format('timestamp=%s, value=%s', toLocalDateTime(kv.getTimestamp), str_val) end end if org.apache.hadoop.hbase.CellUtil.isDelete(kv) - val = "timestamp=#{toISO8601(kv.getTimestamp)}, type=#{org.apache.hadoop.hbase.KeyValue::Type.codeToType(kv.getTypeByte)}" + val = "timestamp=#{toLocalDateTime(kv.getTimestamp)}, type=#{org.apache.hadoop.hbase.KeyValue::Type.codeToType(kv.getTypeByte)}" else - val = "timestamp=#{toISO8601(kv.getTimestamp)}, value=#{convert(column, kv, converter_class, converter)}" + val = "timestamp=#{toLocalDateTime(kv.getTimestamp)}, value=#{convert(column, kv, converter_class, converter)}" end maxlength != -1 ? val[0, maxlength] : val end