Commit c16d9cfb authored by Huachao Huang's avatar Huachao Huang Committed by GitHub

Add histogram max (#133)

parent 024a6069
......@@ -2386,7 +2386,8 @@ unsigned char crocksdb_options_statistics_get_histogram(
double* percentile95,
double* percentile99,
double* average,
double* standard_deviation) {
double* standard_deviation,
double* max) {
rocksdb::Statistics* statistics = opt->rep.statistics.get();
if (statistics) {
crocksdb_histogramdata_t data;
......@@ -2396,6 +2397,7 @@ unsigned char crocksdb_options_statistics_get_histogram(
*percentile99 = data.rep.percentile99;
*average = data.rep.average;
*standard_deviation = data.rep.standard_deviation;
*max = data.rep.max;
return 1;
}
return 0;
......
......@@ -801,7 +801,8 @@ extern C_ROCKSDB_LIBRARY_API unsigned char crocksdb_options_statistics_get_histo
double* percentile95,
double* percentile99,
double* average,
double* standard_deviation);
double* standard_deviation,
double* max);
extern C_ROCKSDB_LIBRARY_API void crocksdb_options_set_max_write_buffer_number(
crocksdb_options_t*, int);
......
......@@ -438,6 +438,7 @@ extern "C" {
percentile99: *mut c_double,
average: *mut c_double,
standard_deviation: *mut c_double,
max: *mut c_double,
) -> bool;
pub fn crocksdb_options_set_stats_dump_period_sec(options: *mut Options, v: usize);
pub fn crocksdb_options_set_num_levels(options: *mut Options, v: c_int);
......
......@@ -38,6 +38,7 @@ pub struct HistogramData {
pub percentile99: f64,
pub average: f64,
pub standard_deviation: f64,
pub max: f64,
}
pub struct BlockBasedOptions {
......@@ -570,6 +571,7 @@ impl DBOptions {
&mut data.percentile99,
&mut data.average,
&mut data.standard_deviation,
&mut data.max,
);
if !ret {
return None;
......
......@@ -73,6 +73,10 @@ fn test_enable_statistics() {
opts.enable_statistics();
opts.set_stats_dump_period_sec(60);
assert!(opts.get_statistics().is_some());
assert!(
opts.get_statistics_histogram(HistogramType::SeekMicros)
.is_some()
);
assert!(
opts.get_statistics_histogram_string(HistogramType::SeekMicros)
.is_some()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment