blob: 8d92bd74b06994d44ecfd12ac31c54b7ef6091b8 [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
namespace cpp impala
namespace java org.apache.impala.thrift
// NOTE: The definitions in this file are part of the binary format of the Impala query
// profiles. They should preserve backwards compatibility and as such some rules apply
// when making changes. Please see RuntimeProfile.thrift for more details.
// Metric and counter data types.
//
// WARNING (IMPALA-8236): Adding new values to TUnit and using them in TCounter will break
// old decoders of thrift profiles. The workaround is to only use the following units in
// anything that is serialised into a TCounter:
// UNIT, UNIT_PER_SECOND, CPU_TICKS, BYTES, BYTES_PER_SECOND, TIME_NS, DOUBLE_VALUE
enum TUnit {
// A dimensionless numerical quantity
UNIT = 0
// Rate of a dimensionless numerical quantity
UNIT_PER_SECOND = 1
CPU_TICKS = 2
BYTES = 3
BYTES_PER_SECOND = 4
TIME_NS = 5
DOUBLE_VALUE = 6
// No units at all, may not be a numerical quantity
NONE = 7
TIME_MS = 8
TIME_S = 9
TIME_US = 10
// 100th of a percent, used to express ratios etc., range from 0 to 10000, pretty
// printed as integer percentages from 0 to 100.
BASIS_POINTS = 11
}
// The kind of value that a metric represents.
enum TMetricKind {
// May go up or down over time
GAUGE = 0
// A strictly increasing value
COUNTER = 1
// Fixed; will never change
PROPERTY = 2
STATS = 3
SET = 4
HISTOGRAM = 5
}