diff --git a/.gitignore b/.gitignore index fe34bf0ef8c3d23f0762da9fbdff8458967a2011..11445db1817f21997e06282715e074fec0baa503 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ build .baidu* .bcloud* output +*~ diff --git a/CMakeLists.txt b/CMakeLists.txt index dbccc0249991a298ec91b08a3c6d5e0e01d79e41..39398133285f432c962b95764b4d255f304e26f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved. +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -27,7 +27,7 @@ message(STATUS "CXX compiler: ${CMAKE_CXX_COMPILER}, version: " message(STATUS "C compiler: ${CMAKE_C_COMPILER}, version: " "${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION}") - + find_package(Git REQUIRED) find_package(Threads REQUIRED) find_package(CUDA QUIET) @@ -62,17 +62,22 @@ if (NOT DEFINED WITH_MKLDNN) endif() endif() +if (NOT CLIENT_ONLY) include(external/jsoncpp) -include(external/leveldb) include(external/rocksdb) +include(external/gtest) +endif() + +include(external/snappy) +include(external/leveldb) include(external/zlib) include(external/boost) include(external/protobuf) include(external/brpc) include(external/gflags) include(external/glog) -include(external/snappy) -include(external/gtest) +include(external/pybind11) +include(external/python) include(generic) include(flags) @@ -82,50 +87,55 @@ include(paddlepaddle) include(external/opencv) endif() +message("paddle serving source dir: " ${PADDLE_SERVING_SOURCE_DIR}) include_directories(${PADDLE_SERVING_SOURCE_DIR}) include_directories(${PADDLE_SERVING_BINARY_DIR}) +if(NOT CLIENT_ONLY) + set(EXTERNAL_LIBS + jsoncpp + gflags + rocksdb + glog + protobuf + paddlepaddle + brpc) +endif() + set(EXTERNAL_LIBS - jsoncpp - gflags - rocksdb - glog - protobuf - paddlepaddle - brpc + gflags + glog + protobuf + brpc ) +if(NOT CLIENT_ONLY) if(WITH_MKLML) list(APPEND EXTERNAL_LIBS ${MKLML_IOMP_LIB}) endif() +endif() +if(NOT CLIENT_ONLY) if(WITH_MKLDNN) list(APPEND EXTERNAL_LIBS ${MKLDNN_LIB}) endif() +endif() if (NOT CLIENT_ONLY) list(APPEND EXTERNAL_LIBS paddlepaddle) list(APPEND EXTERNAL_LIBS opencv) endif() -add_subdirectory(cube) -add_subdirectory(configure) -add_subdirectory(pdcodegen) -add_subdirectory(sdk-cpp) -add_subdirectory(demo-client) -add_subdirectory(kvdb) - -if (NOT CLIENT_ONLY) -add_subdirectory(predictor) -add_subdirectory(inferencer-fluid-cpu) -if (WITH_GPU) -add_subdirectory(inferencer-fluid-gpu) -endif() -add_subdirectory(demo-serving) +add_subdirectory(core) +if(NOT CLIENT_ONLY) +add_subdirectory(paddle_inference) endif() -# Paddle Serving Solutions -if (WITH_ELASTIC_CTR) -add_subdirectory(elastic-ctr) +if(CLIENT_ONLY) +add_subdirectory(python) +set(PYTHON_INCLUDE_DIR ${PYTHON_INCLUDE}) +set(PYTHON_LIBRARIES ${PYTHON_LIB}) endif() + +add_subdirectory(examples) diff --git a/cmake/external/pybind11.cmake b/cmake/external/pybind11.cmake new file mode 100644 index 0000000000000000000000000000000000000000..ca7bcaa19331101523ae9790ef4acd5d77a158ce --- /dev/null +++ b/cmake/external/pybind11.cmake @@ -0,0 +1,42 @@ +# Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. + +include(ExternalProject) + +set(PYBIND_SOURCE_DIR ${THIRD_PARTY_PATH}/pybind) + +include_directories(${PYBIND_SOURCE_DIR}/src/extern_pybind/include) + +ExternalProject_Add( + extern_pybind + ${EXTERNAL_PROJECT_LOG_ARGS} + GIT_REPOSITORY "https://github.com/pybind/pybind11.git" + GIT_TAG "v2.2.4" + PREFIX ${PYBIND_SOURCE_DIR} + UPDATE_COMMAND "" + CONFIGURE_COMMAND "" + BUILD_COMMAND "" + INSTALL_COMMAND "" + TEST_COMMAND "" +) + +if(${CMAKE_VERSION} VERSION_LESS "3.3.0") + set(dummyfile ${CMAKE_CURRENT_BINARY_DIR}/pybind_dummy.c) + file(WRITE ${dummyfile} "const char * dummy_pybind = \"${dummyfile}\";") + add_library(pybind STATIC ${dummyfile}) +else() + add_library(pybind INTERFACE) +endif() + +add_dependencies(pybind extern_pybind) diff --git a/cmake/external/python.cmake b/cmake/external/python.cmake new file mode 100644 index 0000000000000000000000000000000000000000..6ab7cd91dd4c77b61b8004d39f51488bd0d0cff4 --- /dev/null +++ b/cmake/external/python.cmake @@ -0,0 +1,65 @@ +# Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. + +FIND_PACKAGE(PythonInterp ${PY_VERSION} REQUIRED) +FIND_PACKAGE(PythonLibs ${PY_VERSION} REQUIRED) + +if(WIN32) + execute_process(COMMAND "${PYTHON_EXECUTABLE}" "-c" +"from distutils import sysconfig as s;import sys;import struct; +print(sys.prefix); +print(s.get_config_var('LDVERSION') or s.get_config_var('VERSION')); +" + RESULT_VARIABLE _PYTHON_SUCCESS + OUTPUT_VARIABLE _PYTHON_VALUES + ERROR_VARIABLE _PYTHON_ERROR_VALUE) + + if(NOT _PYTHON_SUCCESS MATCHES 0) + set(PYTHONLIBS_FOUND FALSE) + return() + endif() + + # Convert the process output into a list + string(REGEX REPLACE ";" "\\\\;" _PYTHON_VALUES ${_PYTHON_VALUES}) + string(REGEX REPLACE "\n" ";" _PYTHON_VALUES ${_PYTHON_VALUES}) + list(GET _PYTHON_VALUES 0 PYTHON_PREFIX) + list(GET _PYTHON_VALUES 1 PYTHON_LIBRARY_SUFFIX) + + # Make sure all directory separators are '/' + string(REGEX REPLACE "\\\\" "/" PYTHON_PREFIX ${PYTHON_PREFIX}) + + set(PYTHON_LIBRARY + "${PYTHON_PREFIX}/libs/Python${PYTHON_LIBRARY_SUFFIX}.lib") + + # when run in a venv, PYTHON_PREFIX points to it. But the libraries remain in the + # original python installation. They may be found relative to PYTHON_INCLUDE_DIR. + if(NOT EXISTS "${PYTHON_LIBRARY}") + get_filename_component(_PYTHON_ROOT ${PYTHON_INCLUDE_DIR} DIRECTORY) + set(PYTHON_LIBRARY + "${_PYTHON_ROOT}/libs/Python${PYTHON_LIBRARY_SUFFIX}.lib") + endif() + + # raise an error if the python libs are still not found. + if(NOT EXISTS "${PYTHON_LIBRARY}") + message(FATAL_ERROR "Python libraries not found") + endif() + SET(PYTHON_LIBRARIES "${PYTHON_LIBRARY}") +endif(WIN32) + +# Fixme: Maybe find a static library. Get SHARED/STATIC by FIND_PACKAGE. +ADD_LIBRARY(python SHARED IMPORTED GLOBAL) +SET_PROPERTY(TARGET python PROPERTY IMPORTED_LOCATION ${PYTHON_LIBRARIES}) + +SET(py_env "") +INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIR}) diff --git a/cmake/generic.cmake b/cmake/generic.cmake index 2570e3f41d4fee46a8f256c5c5376c9d68d1a381..03066aca2b85e9c5473e1ec0dae648fdd86e41ad 100644 --- a/cmake/generic.cmake +++ b/cmake/generic.cmake @@ -838,9 +838,9 @@ function(PROTOBUF_GENERATE_SERVING_CPP FOR_SERVING_SIDE SRCS HDRS ) "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h" COMMAND ${Protobuf_PROTOC_EXECUTABLE} ARGS --cpp_out=${CMAKE_CURRENT_BINARY_DIR} - --pdcodegen_out=${CMAKE_CURRENT_BINARY_DIR} - --plugin=protoc-gen-pdcodegen=${CMAKE_BINARY_DIR}/pdcodegen/pdcodegen - --proto_path=${CMAKE_SOURCE_DIR}/predictor/proto + --pdcodegen_out=${CMAKE_CURRENT_BINARY_DIR}/core + --plugin=protoc-gen-pdcodegen=${CMAKE_BINARY_DIR}/core/pdcodegen/pdcodegen + --proto_path=${CMAKE_SOURCE_DIR}/core/predictor/proto ${_protobuf_include_path} ${ABS_FIL} DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE} COMMENT "Running Paddle-serving C++ protocol buffer compiler on ${FIL}" diff --git a/cmake/paddlepaddle.cmake b/cmake/paddlepaddle.cmake index c0d6e93198f0393fc061dc969fcf03f1974ab558..c0c020576552875aff2eabcccdf0c77fecfc7226 100644 --- a/cmake/paddlepaddle.cmake +++ b/cmake/paddlepaddle.cmake @@ -20,6 +20,7 @@ SET(PADDLE_INSTALL_DIR ${THIRD_PARTY_PATH}/install/Paddle/) SET(PADDLE_INCLUDE_DIR "${PADDLE_INSTALL_DIR}/include" CACHE PATH "PaddlePaddle include directory." FORCE) SET(PADDLE_LIBRARIES "${PADDLE_INSTALL_DIR}/lib/libpaddle_fluid.a" CACHE FILEPATH "Paddle library." FORCE) +message("paddle install dir: " ${PADDLE_INSTALL_DIR}) # Reference https://stackoverflow.com/questions/45414507/pass-a-list-of-prefix-paths-to-externalproject-add-in-cmake-args set(prefix_path "${THIRD_PARTY_PATH}/install/gflags|${THIRD_PARTY_PATH}/install/leveldb|${THIRD_PARTY_PATH}/install/snappy|${THIRD_PARTY_PATH}/install/gtest|${THIRD_PARTY_PATH}/install/protobuf|${THIRD_PARTY_PATH}/install/zlib|${THIRD_PARTY_PATH}/install/glog") @@ -62,7 +63,7 @@ ExternalProject_Add( ${CMAKE_COMMAND} -E copy_directory ${PADDLE_DOWNLOAD_DIR}/paddle/include ${PADDLE_INSTALL_DIR}/include && ${CMAKE_COMMAND} -E copy_directory ${PADDLE_DOWNLOAD_DIR}/paddle/lib ${PADDLE_INSTALL_DIR}/lib && ${CMAKE_COMMAND} -E copy_directory ${PADDLE_DOWNLOAD_DIR}/third_party ${PADDLE_INSTALL_DIR}/third_party && - ${CMAKE_COMMAND} -E copy ${PADDLE_INSTALL_DIR}/third_party/install/mkldnn/lib/libmkldnn.so.1 ${PADDLE_INSTALL_DIR}/third_party/install/mkldnn/lib/libmkldnn.so + ${CMAKE_COMMAND} -E copy ${PADDLE_INSTALL_DIR}/third_party/install/mkldnn/lib/libmkldnn.so.0 ${PADDLE_INSTALL_DIR}/third_party/install/mkldnn/lib/libmkldnn.so ) INCLUDE_DIRECTORIES(${PADDLE_INCLUDE_DIR}) diff --git a/configure/CMakeLists.txt b/configure/CMakeLists.txt deleted file mode 100644 index e14b875efb38b95fa007266c798ac1729e3adfdf..0000000000000000000000000000000000000000 --- a/configure/CMakeLists.txt +++ /dev/null @@ -1,27 +0,0 @@ -LIST(APPEND protofiles - ${CMAKE_CURRENT_LIST_DIR}/proto/server_configure.proto - ${CMAKE_CURRENT_LIST_DIR}/proto/sdk_configure.proto - ${CMAKE_CURRENT_LIST_DIR}/proto/inferencer_configure.proto -) - -PROTOBUF_GENERATE_CPP(configure_proto_srcs configure_proto_hdrs ${protofiles}) -list(APPEND configure_srcs ${configure_proto_srcs}) - -list(APPEND configure_srcs ${CMAKE_CURRENT_LIST_DIR}/src/configure_parser.cpp) - -add_library(configure ${configure_srcs}) -add_dependencies(configure brpc) - -add_executable(test_configure - ${CMAKE_CURRENT_LIST_DIR}/tests/test_configure.cpp) -target_link_libraries(test_configure configure protobuf) - -install(TARGETS configure - ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib - ) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/include/configure_parser.h - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/configure/include) - -FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) -install(FILES ${inc} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/configure) diff --git a/configure/proto/sdk_configure.proto b/configure/proto/sdk_configure.proto deleted file mode 100644 index 7658a9b609a50cdc90b70b85198086293bf19dc4..0000000000000000000000000000000000000000 --- a/configure/proto/sdk_configure.proto +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -syntax = "proto2"; -package baidu.paddle_serving.configure; - -message ConnectionConf { - required int32 connect_timeout_ms = 1; - required int32 rpc_timeout_ms = 2; - required int32 connect_retry_count = 3; - required int32 max_connection_per_host = 4; - required int32 hedge_request_timeout_ms = 5; - required int32 hedge_fetch_retry_count = 6; - required string connection_type = 7; -}; - -message NamingConf { - optional string cluster_filter_strategy = 1; - optional string load_balance_strategy = 2; - optional string cluster = 3; -}; - -message RpcParameter { - // 0-NONE, 1-SNAPPY, 2-GZIP, 3-ZLIB, 4-LZ4 - required int32 compress_type = 1; - required int32 package_size = 2; - required string protocol = 3; - required int32 max_channel_per_request = 4; -}; - -message SplitConf { - optional string split_tag_name = 1; - optional string tag_candidates = 2; -}; - -message VariantConf { - required string tag = 1; - optional ConnectionConf connection_conf = 2; - optional NamingConf naming_conf = 3; - optional RpcParameter rpc_parameter = 4; - optional SplitConf split_conf = 5; - optional string variant_router = 6; -}; - -message WeightedRandomRenderConf { required string variant_weight_list = 1; }; - -message Predictor { - required string name = 1; - required string service_name = 2; - required string endpoint_router = 3; - required WeightedRandomRenderConf weighted_random_render_conf = 4; - repeated VariantConf variants = 5; -}; - -// SDK conf -message SDKConf { - required VariantConf default_variant_conf = 1; - repeated Predictor predictors = 2; -}; diff --git a/configure/src/configure_parser.cpp b/configure/src/configure_parser.cpp deleted file mode 100644 index 300d2509e882d5de8eaf2e8a3afa70b64a9d5f0c..0000000000000000000000000000000000000000 --- a/configure/src/configure_parser.cpp +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "configure/include/configure_parser.h" -#include -#include -#include -#include - -#ifdef BCLOUD -#include "base/logging.h" -#else -#include "butil/logging.h" -#endif - -#include "google/protobuf/io/zero_copy_stream_impl.h" -#include "google/protobuf/text_format.h" - -namespace baidu { -namespace paddle_serving { -namespace configure { - -int read_proto_conf(const std::string &conf_path, - const std::string &conf_file, - google::protobuf::Message *conf) { - std::string file_str = conf_path + "/" + conf_file; - int fd = open(file_str.c_str(), O_RDONLY); - if (fd == -1) { - LOG(WARNING) << "File not found: " << file_str.c_str(); - return -1; - } - - google::protobuf::io::FileInputStream input(fd); - bool success = google::protobuf::TextFormat::Parse(&input, conf); - close(fd); - if (!success) { - return -1; - } - - return 0; -} - -int write_proto_conf(google::protobuf::Message *message, - const std::string &output_path, - const std::string &output_file) { - std::string binary_str; - google::protobuf::TextFormat::PrintToString(*message, &binary_str); - - std::string file_str = output_path + "/" + output_file; - std::ofstream fout_bin((file_str.c_str())); - if (!fout_bin) { - LOG(WARNING) << "Open file error: " << file_str.c_str(); - return -1; - } - - fout_bin.write(binary_str.c_str(), binary_str.size()); - fout_bin.close(); - - return 0; -} - -} // namespace configure -} // namespace paddle_serving -} // namespace baidu -/* vim: set expandtab ts=2 sw=2 sts=2 tw=100: */ diff --git a/configure/tests/test_configure.cpp b/configure/tests/test_configure.cpp deleted file mode 100644 index 361791c4bd454618e1dec3bdf0ce96d4711df763..0000000000000000000000000000000000000000 --- a/configure/tests/test_configure.cpp +++ /dev/null @@ -1,296 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include "configure/include/configure_parser.h" -#include "configure/inferencer_configure.pb.h" -#include "configure/sdk_configure.pb.h" -#include "configure/server_configure.pb.h" - -using baidu::paddle_serving::configure::EngineDesc; -using baidu::paddle_serving::configure::ModelToolkitConf; - -using baidu::paddle_serving::configure::ResourceConf; - -using baidu::paddle_serving::configure::DAGNodeDependency; -using baidu::paddle_serving::configure::DAGNode; -using baidu::paddle_serving::configure::Workflow; -using baidu::paddle_serving::configure::WorkflowConf; - -using baidu::paddle_serving::configure::InferService; -using baidu::paddle_serving::configure::InferServiceConf; - -using baidu::paddle_serving::configure::ConnectionConf; -using baidu::paddle_serving::configure::WeightedRandomRenderConf; -using baidu::paddle_serving::configure::NamingConf; -using baidu::paddle_serving::configure::RpcParameter; -using baidu::paddle_serving::configure::Predictor; -using baidu::paddle_serving::configure::VariantConf; -using baidu::paddle_serving::configure::SDKConf; - -using baidu::paddle_serving::configure::SigmoidConf; - -const char *output_dir = "./conf/"; -const char *model_toolkit_conf_file = "model_toolkit.prototxt"; -const char *resource_conf_file = "resource.prototxt"; -const char *workflow_conf_file = "workflow.prototxt"; -const char *service_conf_file = "service.prototxt"; -const char *sdk_conf_file = "predictors.prototxt"; -const char *sigmoid_conf_file = "inferencer.prototxt"; - -int test_write_conf() { - // model_toolkit conf - ModelToolkitConf model_toolkit_conf; - - // This engine has a default version - EngineDesc *engine = model_toolkit_conf.add_engines(); - engine->set_name("image_classification_resnet"); - engine->set_type("FLUID_CPU_NATIVE_DIR"); - engine->set_reloadable_meta("./data/model/paddle/fluid_time_file"); - engine->set_reloadable_type("timestamp_ne"); - engine->set_model_data_path("./data/model/paddle/fluid/SE_ResNeXt50_32x4d"); - engine->set_runtime_thread_num(0); - engine->set_batch_infer_size(0); - engine->set_enable_batch_align(0); - engine->set_sparse_param_service_type(EngineDesc::LOCAL); - engine->set_sparse_param_service_table_name("local_kv"); - engine->set_enable_memory_optimization(true); - engine->set_static_optimization(false); - engine->set_force_update_static_cache(false); - - int ret = baidu::paddle_serving::configure::write_proto_conf( - &model_toolkit_conf, output_dir, model_toolkit_conf_file); - if (ret != 0) { - return ret; - } - - // resource conf - ResourceConf resource_conf; - resource_conf.set_model_toolkit_path(output_dir); - resource_conf.set_model_toolkit_file("model_toolkit.prototxt"); - resource_conf.set_cube_config_file("./conf/cube.conf"); - ret = baidu::paddle_serving::configure::write_proto_conf( - &resource_conf, output_dir, resource_conf_file); - if (ret != 0) { - return ret; - } - - // workflow entries conf - WorkflowConf workflow_conf; - Workflow *workflow = workflow_conf.add_workflows(); - workflow->set_name("workflow1"); - workflow->set_workflow_type("Sequence"); - - DAGNode *dag_node = workflow->add_nodes(); - dag_node->set_name("image_reader_op"); - dag_node->set_type("ReaderOp"); - - dag_node = workflow->add_nodes(); - dag_node->set_name("imag_classify_op"); - dag_node->set_type("ClassifyOp"); - DAGNodeDependency *node_dependency = dag_node->add_dependencies(); - node_dependency->set_name("image_reader_op"); - node_dependency->set_mode("RO"); - - dag_node = workflow->add_nodes(); - dag_node->set_name("write_json_op"); - dag_node->set_type("WriteOp"); - node_dependency = dag_node->add_dependencies(); - node_dependency->set_name("image_classify_op"); - node_dependency->set_mode("RO"); - - workflow = workflow_conf.add_workflows(); - workflow->set_name("workflow2"); - workflow->set_workflow_type("Sequence"); - - dag_node = workflow->add_nodes(); - dag_node->set_name("dense_op"); - dag_node->set_type("DenseOp"); - - ret = baidu::paddle_serving::configure::write_proto_conf( - &workflow_conf, output_dir, workflow_conf_file); - if (ret != 0) { - return ret; - } - - InferServiceConf infer_service_conf; - infer_service_conf.set_port(0); - InferService *infer_service = infer_service_conf.add_services(); - infer_service->set_name("ImageClassifyService"); - infer_service->add_workflows("workflow1"); - infer_service->add_workflows("workflow2"); - - infer_service = infer_service_conf.add_services(); - infer_service->set_name("BuiltinDenseFormatService"); - infer_service->add_workflows("workflow2"); - - ret = baidu::paddle_serving::configure::write_proto_conf( - &infer_service_conf, output_dir, service_conf_file); - if (ret != 0) { - return ret; - } - - SDKConf sdk_conf; - VariantConf *default_variant_conf = sdk_conf.mutable_default_variant_conf(); - default_variant_conf->set_tag("default"); - - ConnectionConf *connection_conf = - default_variant_conf->mutable_connection_conf(); - connection_conf->set_connect_timeout_ms(2000); - connection_conf->set_rpc_timeout_ms(20000); - connection_conf->set_connect_retry_count(2); - connection_conf->set_max_connection_per_host(100); - connection_conf->set_hedge_request_timeout_ms(-1); - connection_conf->set_hedge_fetch_retry_count(2); - connection_conf->set_connection_type("pooled"); - - NamingConf *naming_conf = default_variant_conf->mutable_naming_conf(); - naming_conf->set_cluster_filter_strategy("Default"); - naming_conf->set_load_balance_strategy("la"); - - RpcParameter *rpc_parameter = default_variant_conf->mutable_rpc_parameter(); - rpc_parameter->set_compress_type(0); - rpc_parameter->set_package_size(20); - rpc_parameter->set_protocol("baidu_std"); - rpc_parameter->set_max_channel_per_request(3); - - Predictor *predictor = sdk_conf.add_predictors(); - predictor->set_name("ximage"); - predictor->set_service_name( - "baidu.paddle_serving.predictor.image_classification." - "ImageClassifyService"); - predictor->set_endpoint_router("WeightedRandomRender"); - - WeightedRandomRenderConf *weighted_random_render_conf = - predictor->mutable_weighted_random_render_conf(); - weighted_random_render_conf->set_variant_weight_list("50"); - - VariantConf *variant_conf = predictor->add_variants(); - variant_conf->set_tag("var1"); - naming_conf = variant_conf->mutable_naming_conf(); - naming_conf->set_cluster("list://127.0.0.1:8010"); - - ret = baidu::paddle_serving::configure::write_proto_conf( - &sdk_conf, output_dir, sdk_conf_file); - if (ret != 0) { - return ret; - } - - SigmoidConf sigmoid_conf; - sigmoid_conf.set_dnn_model_path("data/dnn_model"); - sigmoid_conf.set_sigmoid_w_file("data/dnn_model/_sigmoid_.w_0"); - sigmoid_conf.set_sigmoid_b_file("data/dnn_model/_sigmoid_.b_0"); - sigmoid_conf.set_exp_max_input(0.75); - sigmoid_conf.set_exp_min_input(0.25); - - ret = baidu::paddle_serving::configure::write_proto_conf( - &sigmoid_conf, output_dir, sigmoid_conf_file); - if (ret != 0) { - return ret; - } - - return 0; -} - -int test_read_conf() { - int ret = 0; - - ModelToolkitConf model_toolkit_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, model_toolkit_conf_file, &model_toolkit_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << model_toolkit_conf_file << std::endl; - return -1; - } - - ResourceConf resource_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, resource_conf_file, &resource_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << resource_conf_file << std::endl; - return -1; - } - - WorkflowConf workflow_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, workflow_conf_file, &workflow_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << workflow_conf_file << std::endl; - return -1; - } - - InferServiceConf service_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, service_conf_file, &service_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << service_conf_file << std::endl; - return -1; - } - - SDKConf sdk_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, sdk_conf_file, &sdk_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << sdk_conf_file << std::endl; - return -1; - } - - SigmoidConf sigmoid_conf; - ret = baidu::paddle_serving::configure::read_proto_conf( - output_dir, sigmoid_conf_file, &sigmoid_conf); - if (ret != 0) { - std::cout << "Read conf fail: " << sdk_conf_file << std::endl; - return -1; - } - - return 0; -} - -int main() { - int ret = 0; - struct stat stat_buf; - if (stat(output_dir, &stat_buf) != 0) { - int ret = mkdir("./conf", 0777); - if (ret != 0) { - std::cout << "mkdir ./conf fail" << std::endl; - return -1; - } - if (stat("./conf", &stat_buf) != 0) { - std::cout << "./conf not exist and creating it failed" << std::endl; - return -1; - } - } - - ret = test_write_conf(); - if (ret != 0) { - std::cout << "test_write_conf fail" << std::endl; - return -1; - } - - std::cout << "test_write_conf success" << std::endl; - - ret = test_read_conf(); - if (ret != 0) { - std::cout << "test_read_conf fail" << std::endl; - return -1; - } - std::cout << "test_read_conf success" << std::endl; - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cf8c84602c008d1be089d7c178a631a718fb1317 --- /dev/null +++ b/core/CMakeLists.txt @@ -0,0 +1,28 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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 + +if(NOT CLIENT_ONLY) +add_subdirectory(cube) +add_subdirectory(kvdb) +endif() +add_subdirectory(configure) +add_subdirectory(pdcodegen) +add_subdirectory(sdk-cpp) +if(CLIENT_ONLY) +add_subdirectory(general-client) +endif() + +if (NOT CLIENT_ONLY) +add_subdirectory(predictor) +endif() diff --git a/core/configure/CMakeLists.txt b/core/configure/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6590a82a50c4aaafc3bd3785258065269a612899 --- /dev/null +++ b/core/configure/CMakeLists.txt @@ -0,0 +1,39 @@ +LIST(APPEND protofiles + ${CMAKE_CURRENT_LIST_DIR}/proto/server_configure.proto + ${CMAKE_CURRENT_LIST_DIR}/proto/sdk_configure.proto + ${CMAKE_CURRENT_LIST_DIR}/proto/inferencer_configure.proto + ${CMAKE_CURRENT_LIST_DIR}/proto/general_model_config.proto +) + +PROTOBUF_GENERATE_CPP(configure_proto_srcs configure_proto_hdrs ${protofiles}) +list(APPEND configure_srcs ${configure_proto_srcs}) + +list(APPEND configure_srcs ${CMAKE_CURRENT_LIST_DIR}/src/configure_parser.cpp) + +add_library(configure ${configure_srcs}) +add_dependencies(configure brpc) + +add_executable(test_configure + ${CMAKE_CURRENT_LIST_DIR}/tests/test_configure.cpp) +target_link_libraries(test_configure configure protobuf) + +install(TARGETS configure + ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib + ) + +install(FILES ${CMAKE_CURRENT_LIST_DIR}/include/configure_parser.h + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/configure/include) + +FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) + +install(FILES ${inc} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/configure) + +py_proto_compile(sdk_configure_py_proto SRCS proto/sdk_configure.proto) +add_custom_target(sdk_configure_py_proto_init ALL COMMAND ${CMAKE_COMMAND} -E touch __init__.py) +add_dependencies(sdk_configure_py_proto sdk_configure_py_proto_init) +add_custom_command(TARGET sdk_configure_py_proto POST_BUILD + COMMAND ${CMAKE_COMMAND} -E make_directory ${PADDLE_SERVING_BINARY_DIR}/python/paddle_serving/proto + COMMAND cp *.py ${PADDLE_SERVING_BINARY_DIR}/python/paddle_serving/proto + COMMENT "Copy generated python proto into directory paddle_serving/proto." + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) diff --git a/configure/include/configure_parser.h b/core/configure/include/configure_parser.h similarity index 100% rename from configure/include/configure_parser.h rename to core/configure/include/configure_parser.h diff --git a/core/configure/proto/general_model_config.proto b/core/configure/proto/general_model_config.proto new file mode 100644 index 0000000000000000000000000000000000000000..537ec9dac2161836fd912f2bdb68e44733e01698 --- /dev/null +++ b/core/configure/proto/general_model_config.proto @@ -0,0 +1,26 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +package baidu.paddle_serving.configure; + +message Shape { + repeated int32 shape = 1; +}; + +message GeneralModelConfig { + repeated bool is_lod_feed = 1; + repeated int32 feed_type = 2; + repeated Shape feed_shape = 4; +}; diff --git a/configure/proto/inferencer_configure.proto b/core/configure/proto/inferencer_configure.proto similarity index 100% rename from configure/proto/inferencer_configure.proto rename to core/configure/proto/inferencer_configure.proto diff --git a/core/configure/proto/sdk_configure.proto b/core/configure/proto/sdk_configure.proto new file mode 100644 index 0000000000000000000000000000000000000000..83099daf1fcfef8e3ae6564d1aa78f637253d0d6 --- /dev/null +++ b/core/configure/proto/sdk_configure.proto @@ -0,0 +1,70 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +package baidu.paddle_serving.configure; + +message ConnectionConf { + required int32 connect_timeout_ms = 1 [default = 2000]; + required int32 rpc_timeout_ms = 2 [default = 20000]; + required int32 connect_retry_count = 3 [default = 2]; + required int32 max_connection_per_host = 4 [default = 100]; + required int32 hedge_request_timeout_ms = 5 [default = -1]; + required int32 hedge_fetch_retry_count = 6 [default = 2]; + required string connection_type = 7 [default = "pooled"]; +}; + +message NamingConf { + optional string cluster_filter_strategy = 1 [default="Default"]; + optional string load_balance_strategy = 2 [default = "la"]; + optional string cluster = 3; +}; + +message RpcParameter { + // 0-NONE, 1-SNAPPY, 2-GZIP, 3-ZLIB, 4-LZ4 + required int32 compress_type = 1 [default = 0]; + required int32 package_size = 2 [default = 20]; + required string protocol = 3 [default = "baidu_std"]; + required int32 max_channel_per_request = 4 [default = 3]; +}; + +message SplitConf { + optional string split_tag_name = 1; + optional string tag_candidates = 2; +}; + +message VariantConf { + required string tag = 1; + optional ConnectionConf connection_conf = 2; + optional NamingConf naming_conf = 3; + optional RpcParameter rpc_parameter = 4; + optional SplitConf split_conf = 5; + optional string variant_router = 6; +}; + +message WeightedRandomRenderConf { required string variant_weight_list = 1 [default= "50" ]; }; + +message Predictor { + required string name = 1 [default="general_model"]; + required string service_name = 2 [default="baidu.paddle_serving.predictor.general_model.GeneralModelService"]; + required string endpoint_router = 3 [default="WeightedRandomRender"]; + required WeightedRandomRenderConf weighted_random_render_conf = 4; + repeated VariantConf variants = 5; +}; + +// SDK conf +message SDKConf { + required VariantConf default_variant_conf = 1; + repeated Predictor predictors = 2; +}; diff --git a/configure/proto/server_configure.proto b/core/configure/proto/server_configure.proto similarity index 100% rename from configure/proto/server_configure.proto rename to core/configure/proto/server_configure.proto diff --git a/core/configure/src/configure_parser.cpp b/core/configure/src/configure_parser.cpp new file mode 100644 index 0000000000000000000000000000000000000000..2ce6fa9b51458edb57cfa3625eb8811b17fc3ae5 --- /dev/null +++ b/core/configure/src/configure_parser.cpp @@ -0,0 +1,76 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/configure/include/configure_parser.h" +#include +#include +#include +#include + +#ifdef BCLOUD +#include "base/logging.h" +#else +#include "butil/logging.h" +#endif + +#include "google/protobuf/io/zero_copy_stream_impl.h" +#include "google/protobuf/text_format.h" + +namespace baidu { +namespace paddle_serving { +namespace configure { + +int read_proto_conf(const std::string &conf_path, + const std::string &conf_file, + google::protobuf::Message *conf) { + std::string file_str = conf_path + "/" + conf_file; + int fd = open(file_str.c_str(), O_RDONLY); + if (fd == -1) { + LOG(WARNING) << "File not found: " << file_str.c_str(); + return -1; + } + + google::protobuf::io::FileInputStream input(fd); + bool success = google::protobuf::TextFormat::Parse(&input, conf); + close(fd); + if (!success) { + return -1; + } + + return 0; +} + +int write_proto_conf(google::protobuf::Message *message, + const std::string &output_path, + const std::string &output_file) { + std::string binary_str; + google::protobuf::TextFormat::PrintToString(*message, &binary_str); + + std::string file_str = output_path + "/" + output_file; + std::ofstream fout_bin((file_str.c_str())); + if (!fout_bin) { + LOG(WARNING) << "Open file error: " << file_str.c_str(); + return -1; + } + + fout_bin.write(binary_str.c_str(), binary_str.size()); + fout_bin.close(); + + return 0; +} + +} // namespace configure +} // namespace paddle_serving +} // namespace baidu +/* vim: set expandtab ts=2 sw=2 sts=2 tw=100: */ diff --git a/core/configure/tests/test_configure.cpp b/core/configure/tests/test_configure.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9ef35acb0ba22fc4bdc274ba5ee550605a7b3016 --- /dev/null +++ b/core/configure/tests/test_configure.cpp @@ -0,0 +1,296 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include "core/configure/include/configure_parser.h" +#include "core/configure/inferencer_configure.pb.h" +#include "core/configure/sdk_configure.pb.h" +#include "core/configure/server_configure.pb.h" + +using baidu::paddle_serving::configure::EngineDesc; +using baidu::paddle_serving::configure::ModelToolkitConf; + +using baidu::paddle_serving::configure::ResourceConf; + +using baidu::paddle_serving::configure::DAGNodeDependency; +using baidu::paddle_serving::configure::DAGNode; +using baidu::paddle_serving::configure::Workflow; +using baidu::paddle_serving::configure::WorkflowConf; + +using baidu::paddle_serving::configure::InferService; +using baidu::paddle_serving::configure::InferServiceConf; + +using baidu::paddle_serving::configure::ConnectionConf; +using baidu::paddle_serving::configure::WeightedRandomRenderConf; +using baidu::paddle_serving::configure::NamingConf; +using baidu::paddle_serving::configure::RpcParameter; +using baidu::paddle_serving::configure::Predictor; +using baidu::paddle_serving::configure::VariantConf; +using baidu::paddle_serving::configure::SDKConf; + +using baidu::paddle_serving::configure::SigmoidConf; + +const char *output_dir = "./conf/"; +const char *model_toolkit_conf_file = "model_toolkit.prototxt"; +const char *resource_conf_file = "resource.prototxt"; +const char *workflow_conf_file = "workflow.prototxt"; +const char *service_conf_file = "service.prototxt"; +const char *sdk_conf_file = "predictors.prototxt"; +const char *sigmoid_conf_file = "inferencer.prototxt"; + +int test_write_conf() { + // model_toolkit conf + ModelToolkitConf model_toolkit_conf; + + // This engine has a default version + EngineDesc *engine = model_toolkit_conf.add_engines(); + engine->set_name("image_classification_resnet"); + engine->set_type("FLUID_CPU_NATIVE_DIR"); + engine->set_reloadable_meta("./data/model/paddle/fluid_time_file"); + engine->set_reloadable_type("timestamp_ne"); + engine->set_model_data_path("./data/model/paddle/fluid/SE_ResNeXt50_32x4d"); + engine->set_runtime_thread_num(0); + engine->set_batch_infer_size(0); + engine->set_enable_batch_align(0); + engine->set_sparse_param_service_type(EngineDesc::LOCAL); + engine->set_sparse_param_service_table_name("local_kv"); + engine->set_enable_memory_optimization(true); + engine->set_static_optimization(false); + engine->set_force_update_static_cache(false); + + int ret = baidu::paddle_serving::configure::write_proto_conf( + &model_toolkit_conf, output_dir, model_toolkit_conf_file); + if (ret != 0) { + return ret; + } + + // resource conf + ResourceConf resource_conf; + resource_conf.set_model_toolkit_path(output_dir); + resource_conf.set_model_toolkit_file("model_toolkit.prototxt"); + resource_conf.set_cube_config_file("./conf/cube.conf"); + ret = baidu::paddle_serving::configure::write_proto_conf( + &resource_conf, output_dir, resource_conf_file); + if (ret != 0) { + return ret; + } + + // workflow entries conf + WorkflowConf workflow_conf; + Workflow *workflow = workflow_conf.add_workflows(); + workflow->set_name("workflow1"); + workflow->set_workflow_type("Sequence"); + + DAGNode *dag_node = workflow->add_nodes(); + dag_node->set_name("image_reader_op"); + dag_node->set_type("ReaderOp"); + + dag_node = workflow->add_nodes(); + dag_node->set_name("imag_classify_op"); + dag_node->set_type("ClassifyOp"); + DAGNodeDependency *node_dependency = dag_node->add_dependencies(); + node_dependency->set_name("image_reader_op"); + node_dependency->set_mode("RO"); + + dag_node = workflow->add_nodes(); + dag_node->set_name("write_json_op"); + dag_node->set_type("WriteOp"); + node_dependency = dag_node->add_dependencies(); + node_dependency->set_name("image_classify_op"); + node_dependency->set_mode("RO"); + + workflow = workflow_conf.add_workflows(); + workflow->set_name("workflow2"); + workflow->set_workflow_type("Sequence"); + + dag_node = workflow->add_nodes(); + dag_node->set_name("dense_op"); + dag_node->set_type("DenseOp"); + + ret = baidu::paddle_serving::configure::write_proto_conf( + &workflow_conf, output_dir, workflow_conf_file); + if (ret != 0) { + return ret; + } + + InferServiceConf infer_service_conf; + infer_service_conf.set_port(0); + InferService *infer_service = infer_service_conf.add_services(); + infer_service->set_name("ImageClassifyService"); + infer_service->add_workflows("workflow1"); + infer_service->add_workflows("workflow2"); + + infer_service = infer_service_conf.add_services(); + infer_service->set_name("BuiltinDenseFormatService"); + infer_service->add_workflows("workflow2"); + + ret = baidu::paddle_serving::configure::write_proto_conf( + &infer_service_conf, output_dir, service_conf_file); + if (ret != 0) { + return ret; + } + + SDKConf sdk_conf; + VariantConf *default_variant_conf = sdk_conf.mutable_default_variant_conf(); + default_variant_conf->set_tag("default"); + + ConnectionConf *connection_conf = + default_variant_conf->mutable_connection_conf(); + connection_conf->set_connect_timeout_ms(2000); + connection_conf->set_rpc_timeout_ms(20000); + connection_conf->set_connect_retry_count(2); + connection_conf->set_max_connection_per_host(100); + connection_conf->set_hedge_request_timeout_ms(-1); + connection_conf->set_hedge_fetch_retry_count(2); + connection_conf->set_connection_type("pooled"); + + NamingConf *naming_conf = default_variant_conf->mutable_naming_conf(); + naming_conf->set_cluster_filter_strategy("Default"); + naming_conf->set_load_balance_strategy("la"); + + RpcParameter *rpc_parameter = default_variant_conf->mutable_rpc_parameter(); + rpc_parameter->set_compress_type(0); + rpc_parameter->set_package_size(20); + rpc_parameter->set_protocol("baidu_std"); + rpc_parameter->set_max_channel_per_request(3); + + Predictor *predictor = sdk_conf.add_predictors(); + predictor->set_name("ximage"); + predictor->set_service_name( + "baidu.paddle_serving.predictor.image_classification." + "ImageClassifyService"); + predictor->set_endpoint_router("WeightedRandomRender"); + + WeightedRandomRenderConf *weighted_random_render_conf = + predictor->mutable_weighted_random_render_conf(); + weighted_random_render_conf->set_variant_weight_list("50"); + + VariantConf *variant_conf = predictor->add_variants(); + variant_conf->set_tag("var1"); + naming_conf = variant_conf->mutable_naming_conf(); + naming_conf->set_cluster("list://127.0.0.1:8010"); + + ret = baidu::paddle_serving::configure::write_proto_conf( + &sdk_conf, output_dir, sdk_conf_file); + if (ret != 0) { + return ret; + } + + SigmoidConf sigmoid_conf; + sigmoid_conf.set_dnn_model_path("data/dnn_model"); + sigmoid_conf.set_sigmoid_w_file("data/dnn_model/_sigmoid_.w_0"); + sigmoid_conf.set_sigmoid_b_file("data/dnn_model/_sigmoid_.b_0"); + sigmoid_conf.set_exp_max_input(0.75); + sigmoid_conf.set_exp_min_input(0.25); + + ret = baidu::paddle_serving::configure::write_proto_conf( + &sigmoid_conf, output_dir, sigmoid_conf_file); + if (ret != 0) { + return ret; + } + + return 0; +} + +int test_read_conf() { + int ret = 0; + + ModelToolkitConf model_toolkit_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, model_toolkit_conf_file, &model_toolkit_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << model_toolkit_conf_file << std::endl; + return -1; + } + + ResourceConf resource_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, resource_conf_file, &resource_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << resource_conf_file << std::endl; + return -1; + } + + WorkflowConf workflow_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, workflow_conf_file, &workflow_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << workflow_conf_file << std::endl; + return -1; + } + + InferServiceConf service_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, service_conf_file, &service_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << service_conf_file << std::endl; + return -1; + } + + SDKConf sdk_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, sdk_conf_file, &sdk_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << sdk_conf_file << std::endl; + return -1; + } + + SigmoidConf sigmoid_conf; + ret = baidu::paddle_serving::configure::read_proto_conf( + output_dir, sigmoid_conf_file, &sigmoid_conf); + if (ret != 0) { + std::cout << "Read conf fail: " << sdk_conf_file << std::endl; + return -1; + } + + return 0; +} + +int main() { + int ret = 0; + struct stat stat_buf; + if (stat(output_dir, &stat_buf) != 0) { + int ret = mkdir("./conf", 0777); + if (ret != 0) { + std::cout << "mkdir ./conf fail" << std::endl; + return -1; + } + if (stat("./conf", &stat_buf) != 0) { + std::cout << "./conf not exist and creating it failed" << std::endl; + return -1; + } + } + + ret = test_write_conf(); + if (ret != 0) { + std::cout << "test_write_conf fail" << std::endl; + return -1; + } + + std::cout << "test_write_conf success" << std::endl; + + ret = test_read_conf(); + if (ret != 0) { + std::cout << "test_read_conf fail" << std::endl; + return -1; + } + std::cout << "test_read_conf success" << std::endl; + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/cube/CMakeLists.txt b/core/cube/CMakeLists.txt similarity index 100% rename from cube/CMakeLists.txt rename to core/cube/CMakeLists.txt diff --git a/cube/cube-agent/CMakeLists.txt b/core/cube/cube-agent/CMakeLists.txt similarity index 100% rename from cube/cube-agent/CMakeLists.txt rename to core/cube/cube-agent/CMakeLists.txt diff --git a/cube/cube-agent/cmake/CMakeDetermineGoCompiler.cmake b/core/cube/cube-agent/cmake/CMakeDetermineGoCompiler.cmake similarity index 100% rename from cube/cube-agent/cmake/CMakeDetermineGoCompiler.cmake rename to core/cube/cube-agent/cmake/CMakeDetermineGoCompiler.cmake diff --git a/cube/cube-agent/cmake/CMakeGoCompiler.cmake.in b/core/cube/cube-agent/cmake/CMakeGoCompiler.cmake.in similarity index 100% rename from cube/cube-agent/cmake/CMakeGoCompiler.cmake.in rename to core/cube/cube-agent/cmake/CMakeGoCompiler.cmake.in diff --git a/cube/cube-agent/cmake/CMakeGoInformation.cmake b/core/cube/cube-agent/cmake/CMakeGoInformation.cmake similarity index 100% rename from cube/cube-agent/cmake/CMakeGoInformation.cmake rename to core/cube/cube-agent/cmake/CMakeGoInformation.cmake diff --git a/cube/cube-agent/cmake/CMakeTestGoCompiler.cmake b/core/cube/cube-agent/cmake/CMakeTestGoCompiler.cmake similarity index 100% rename from cube/cube-agent/cmake/CMakeTestGoCompiler.cmake rename to core/cube/cube-agent/cmake/CMakeTestGoCompiler.cmake diff --git a/cube/cube-agent/cmake/golang.cmake b/core/cube/cube-agent/cmake/golang.cmake similarity index 100% rename from cube/cube-agent/cmake/golang.cmake rename to core/cube/cube-agent/cmake/golang.cmake diff --git a/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/logex.a b/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/logex.a new file mode 100644 index 0000000000000000000000000000000000000000..050c2aacf46583498e44b7944940577c799f1454 Binary files /dev/null and b/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/logex.a differ diff --git a/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/pipeline.a b/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/pipeline.a new file mode 100644 index 0000000000000000000000000000000000000000..4917f91688c2ca3770c8468f47ad661896ff521f Binary files /dev/null and b/core/cube/cube-agent/pkg/linux_amd64/github.com/Badangel/pipeline.a differ diff --git a/core/cube/cube-agent/pkg/linux_amd64/github.com/docopt/docopt-go.a b/core/cube/cube-agent/pkg/linux_amd64/github.com/docopt/docopt-go.a new file mode 100644 index 0000000000000000000000000000000000000000..c6b4d680a2b8023edc2cc4c20c7fa1ea7cf8f58c Binary files /dev/null and b/core/cube/cube-agent/pkg/linux_amd64/github.com/docopt/docopt-go.a differ diff --git a/core/cube/cube-agent/pkg/linux_amd64/github.com/mipearson/rfw.a b/core/cube/cube-agent/pkg/linux_amd64/github.com/mipearson/rfw.a new file mode 100644 index 0000000000000000000000000000000000000000..20cf2739ca7849f9a26022d0b2101ed9a81aca46 Binary files /dev/null and b/core/cube/cube-agent/pkg/linux_amd64/github.com/mipearson/rfw.a differ diff --git a/cube/cube-agent/src/CMakeLists.txt b/core/cube/cube-agent/src/CMakeLists.txt similarity index 100% rename from cube/cube-agent/src/CMakeLists.txt rename to core/cube/cube-agent/src/CMakeLists.txt diff --git a/cube/cube-agent/src/agent/define.go b/core/cube/cube-agent/src/agent/define.go similarity index 100% rename from cube/cube-agent/src/agent/define.go rename to core/cube/cube-agent/src/agent/define.go diff --git a/cube/cube-agent/src/agent/http.go b/core/cube/cube-agent/src/agent/http.go similarity index 100% rename from cube/cube-agent/src/agent/http.go rename to core/cube/cube-agent/src/agent/http.go diff --git a/cube/cube-agent/src/agent/http_get.go b/core/cube/cube-agent/src/agent/http_get.go similarity index 100% rename from cube/cube-agent/src/agent/http_get.go rename to core/cube/cube-agent/src/agent/http_get.go diff --git a/cube/cube-agent/src/agent/http_post.go b/core/cube/cube-agent/src/agent/http_post.go similarity index 100% rename from cube/cube-agent/src/agent/http_post.go rename to core/cube/cube-agent/src/agent/http_post.go diff --git a/cube/cube-agent/src/agent/util.go b/core/cube/cube-agent/src/agent/util.go similarity index 100% rename from cube/cube-agent/src/agent/util.go rename to core/cube/cube-agent/src/agent/util.go diff --git a/cube/cube-agent/src/agent/work.go b/core/cube/cube-agent/src/agent/work.go similarity index 100% rename from cube/cube-agent/src/agent/work.go rename to core/cube/cube-agent/src/agent/work.go diff --git a/cube/cube-agent/src/agent/work_pool.go b/core/cube/cube-agent/src/agent/work_pool.go similarity index 100% rename from cube/cube-agent/src/agent/work_pool.go rename to core/cube/cube-agent/src/agent/work_pool.go diff --git a/cube/cube-agent/src/cube-agent.go b/core/cube/cube-agent/src/cube-agent.go similarity index 100% rename from cube/cube-agent/src/cube-agent.go rename to core/cube/cube-agent/src/cube-agent.go diff --git a/core/cube/cube-agent/src/github.com/Badangel/logex b/core/cube/cube-agent/src/github.com/Badangel/logex new file mode 160000 index 0000000000000000000000000000000000000000..1e897307c07004df144afedbf975228745a5a9e8 --- /dev/null +++ b/core/cube/cube-agent/src/github.com/Badangel/logex @@ -0,0 +1 @@ +Subproject commit 1e897307c07004df144afedbf975228745a5a9e8 diff --git a/core/cube/cube-agent/src/github.com/Badangel/pipeline b/core/cube/cube-agent/src/github.com/Badangel/pipeline new file mode 160000 index 0000000000000000000000000000000000000000..c5d633d2d3353a6638b07f46055a6413d50db520 --- /dev/null +++ b/core/cube/cube-agent/src/github.com/Badangel/pipeline @@ -0,0 +1 @@ +Subproject commit c5d633d2d3353a6638b07f46055a6413d50db520 diff --git a/core/cube/cube-agent/src/github.com/docopt/docopt-go b/core/cube/cube-agent/src/github.com/docopt/docopt-go new file mode 160000 index 0000000000000000000000000000000000000000..ee0de3bc6815ee19d4a46c7eb90f829db0e014b1 --- /dev/null +++ b/core/cube/cube-agent/src/github.com/docopt/docopt-go @@ -0,0 +1 @@ +Subproject commit ee0de3bc6815ee19d4a46c7eb90f829db0e014b1 diff --git a/core/cube/cube-agent/src/github.com/mipearson/rfw b/core/cube/cube-agent/src/github.com/mipearson/rfw new file mode 160000 index 0000000000000000000000000000000000000000..6f0a6f3266ba1058df9ef0c94cda1cecd2e62852 --- /dev/null +++ b/core/cube/cube-agent/src/github.com/mipearson/rfw @@ -0,0 +1 @@ +Subproject commit 6f0a6f3266ba1058df9ef0c94cda1cecd2e62852 diff --git a/core/cube/cube-api/CMakeLists.txt b/core/cube/cube-api/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9149f41b0c496a37dea96cab3c6a2db41ae007a8 --- /dev/null +++ b/core/cube/cube-api/CMakeLists.txt @@ -0,0 +1,80 @@ +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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 + +protobuf_generate_cpp(PROTO_SRC PROTO_HEADER idl/cube.proto idl/control.proto) +# include PROTO_HEADER +include_directories(${CMAKE_CURRENT_BINARY_DIR}/core) + +if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + include(CheckFunctionExists) + CHECK_FUNCTION_EXISTS(clock_gettime HAVE_CLOCK_GETTIME) + if(NOT HAVE_CLOCK_GETTIME) + set(DEFINE_CLOCK_GETTIME "-DNO_CLOCK_GETTIME_IN_MAC") + endif() +endif() + +set(CMAKE_CXX_FLAGS "${CMAKE_CPP_FLAGS} -DNDEBUG -O2 -D__const__= -pipe -W -Wall -Wno-unused-parameter -fPIC -fno-omit-frame-pointer") + +if(CMAKE_VERSION VERSION_LESS "3.1.3") + if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + endif() + if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") + endif() +else() + set(CMAKE_CXX_STANDARD 11) + set(CMAKE_CXX_STANDARD_REQUIRED ON) +endif() + +add_executable(cube-cli src/cube_cli.cpp src/cube_api.cpp src/meta.cpp + ${PROTO_SRC} ${PROTO_HEADER}) + +add_library(cube-api STATIC src/cube_api.cpp src/meta.cpp + ${PROTO_SRC} ${PROTO_HEADER}) + +set(DYNAMIC_LIB + gflags + protobuf + leveldb + -lssl + -lcrypto + ) + +if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + set(DYNAMIC_LIB ${DYNAMIC_LIB} + "-framework CoreFoundation" + "-framework CoreGraphics" + "-framework CoreData" + "-framework CoreText" + "-framework Security" + "-framework Foundation" + "-Wl,-U,_MallocExtension_ReleaseFreeMemory" + "-Wl,-U,_ProfilerStart" + "-Wl,-U,_ProfilerStop") +endif() + +target_link_libraries(cube-cli brpc ${DYNAMIC_LIB} -lpthread -ldl -lz) +target_link_libraries(cube-api ${DYNAMIC_LIB} brpc -lpthread -ldl -lz) + +# install +install(TARGETS cube-api + ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib + ) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/cube-api) + +FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) +install(FILES ${inc} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/cube-api) diff --git a/cube/cube-api/conf/cube.conf b/core/cube/cube-api/conf/cube.conf similarity index 100% rename from cube/cube-api/conf/cube.conf rename to core/cube/cube-api/conf/cube.conf diff --git a/cube/cube-api/conf/cube.conf.ipport_list b/core/cube/cube-api/conf/cube.conf.ipport_list similarity index 100% rename from cube/cube-api/conf/cube.conf.ipport_list rename to core/cube/cube-api/conf/cube.conf.ipport_list diff --git a/cube/cube-api/idl/control.proto b/core/cube/cube-api/idl/control.proto similarity index 100% rename from cube/cube-api/idl/control.proto rename to core/cube/cube-api/idl/control.proto diff --git a/cube/cube-api/idl/cube.proto b/core/cube/cube-api/idl/cube.proto similarity index 100% rename from cube/cube-api/idl/cube.proto rename to core/cube/cube-api/idl/cube.proto diff --git a/core/cube/cube-api/include/cube_api.h b/core/cube/cube-api/include/cube_api.h new file mode 100644 index 0000000000000000000000000000000000000000..90a6c690e061a8e11697aa5a82b5d38200cf22cc --- /dev/null +++ b/core/cube/cube-api/include/cube_api.h @@ -0,0 +1,115 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include + +#ifdef BCLOUD +#include "baidu/rpc/server.h" +#else +#include "brpc/server.h" +#endif + +#include "core/cube/cube-api/cube.pb.h" +#include "core/cube/cube-api/include/meta.h" + +namespace rec { +namespace mcube { + +struct CubeValue { + int error; + std::string buff; +}; + +class CubeAPI { + public: + static CubeAPI* instance(); + + static void cleanup(); + + public: + CubeAPI(); + ~CubeAPI(); + + /** + * @brief: init api, not thread safe, should be called before seek. + * @param [in] conf_file: filepath of config file. + * @return: error code. 0 for succ. + */ + int init(const char* conf_file); + + /** + * @brief: destroy api, should be called before program exit. + * @return: error code. 0 for succ. + */ + int destroy(); + + /** brief: get data from cube server, thread safe. + * @param [in] dict_name: dict name. + * @param [in] key: key to seek. + * @param [out] val: value of key. + * @return: error code. 0 for succ. + */ + int seek(const std::string& dict_name, const uint64_t& key, CubeValue* val); + + /** + * @brief: get data from cube server, thread safe. + * @param [in] dict_name: dict name. + * @param [in] keys: keys to seek. + * @param [out] vals: value of keys. + * @return: TODO + */ + int seek(const std::string& dict_name, + const std::vector& keys, + std::vector* vals); + + int opt_seek(const std::string& dict_name, + const std::vector& keys, + std::function parse); + + /** + * @brief: get data from cube server, thread safe. + * @param [in] dict_name: dict name. + * @param [in] keys: keys to seek. + * @param [out] vals: value of keys. + * @param [out] version: data version. + * @return: TODO + */ + int seek(const std::string& dict_name, + const std::vector& keys, + std::vector* vals, + std::string* version); + + int opt_seek(const std::string& dict_name, + const std::vector& keys, + std::function parse, + std::string* version); + + public: + static const char* error_msg(int error_code); + + private: + CubeAPI(const CubeAPI&) {} + + private: + Meta* _meta; + bthread_key_t _tls_key; + // void split(const std::vector& keys); +}; + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-api/include/cube_api_bvar.h b/core/cube/cube-api/include/cube_api_bvar.h similarity index 100% rename from cube/cube-api/include/cube_api_bvar.h rename to core/cube/cube-api/include/cube_api_bvar.h diff --git a/cube/cube-api/include/error.h b/core/cube/cube-api/include/error.h similarity index 100% rename from cube/cube-api/include/error.h rename to core/cube/cube-api/include/error.h diff --git a/cube/cube-api/include/meta.h b/core/cube/cube-api/include/meta.h similarity index 100% rename from cube/cube-api/include/meta.h rename to core/cube/cube-api/include/meta.h diff --git a/core/cube/cube-api/src/cube_api.cpp b/core/cube/cube-api/src/cube_api.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4963d307171c7e32fc4add720c092c257d063e83 --- /dev/null +++ b/core/cube/cube-api/src/cube_api.cpp @@ -0,0 +1,686 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-api/include/cube_api.h" +#ifdef BCLOUD +#include +#include +#else +#include +#include +#endif + +#include +#include "core/cube/cube-api/include/cube_api_bvar.h" + +#include "core/cube/cube-api/include/error.h" +#include "core/cube/cube-api/include/meta.h" + +namespace { +static ::rec::mcube::CubeAPI* g_ins = NULL; +} + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +#endif + +namespace rec { +namespace mcube { + +struct DictRpcData { + std::vector sub_reqs; + std::vector sub_res; +}; + +static void dict_rpc_deleter(void* d) { delete static_cast(d); } + +static void sub_seek_done(DictResponse* response, + brpc::Controller* cntl, + std::vector* offset, + std::function parse) { + // std::unique_ptr response_guard(response); + // std::unique_ptr cntl_guard(cntl); + if (cntl->Failed()) { + for (int i = 0; i < response->values().size(); ++i) { + DictValue* val = response->mutable_values(i); + val->set_status(CubeError::E_SEEK_FAILED); + *val->mutable_value() = ""; + parse(val, (*offset)[i]); + } + } else { + for (int i = 0; i < response->values().size(); ++i) { + DictValue* val = response->mutable_values(i); + parse(val, (*offset)[i]); + } + } +} + +struct DoNothing : public google::protobuf::Closure { + void Run() {} +}; + +CubeAPI* CubeAPI::instance() { + if (g_ins == NULL) { + g_ins = new CubeAPI(); + } + + return g_ins; +} + +void CubeAPI::cleanup() { + if (g_ins != NULL) { + g_ins->destroy(); + delete g_ins; + g_ins = NULL; + } +} + +CubeAPI::CubeAPI() : _meta(NULL) {} +CubeAPI::~CubeAPI() { CHECK_EQ(0, bthread_key_delete(_tls_key)); } + +int CubeAPI::init(const char* conf_file) { + // init meta + + _meta = Meta::instance(); + int ret = _meta->init(conf_file); + + if (ret != 0) { + LOG(ERROR) << "Init cube meta failed"; + return ret; + } + + CHECK_EQ(0, bthread_key_create(&_tls_key, dict_rpc_deleter)); + + return 0; +} + +int CubeAPI::destroy() { + // Meta* meta = Meta::instance(); + if (_meta == NULL) { + LOG(WARNING) << "Destroy, cube meta is null"; + return 0; + } + + int ret = _meta->destroy(); + + if (ret != 0) { + LOG(WARNING) << "Destroy cube meta failed"; + } + + return 0; +} + +int CubeAPI::seek(const std::string& dict_name, + const uint64_t& key, + CubeValue* val) { + if (_meta == NULL) { + LOG(ERROR) << "seek, meta is null"; + return -1; + } + + MetaInfo* info = _meta->get_meta(dict_name); + + if (info == NULL) { + LOG(ERROR) << "get meta [" << dict_name << "] failed"; + return -1; + } + + int shard_id = key % info->shard_num; + DictRequest req; + DictResponse res; + + req.add_keys(key); + + ::brpc::Channel* chan = info->cube_conn[shard_id]; + + DictService_Stub* stub = new DictService_Stub(chan); + brpc::Controller* cntl = new ::brpc::Controller(); + + stub->seek(cntl, &req, &res, NULL); + + int ret = CubeError::E_OK; + if (cntl->Failed()) { + info->cube_rpcfail_num << 1; + + val->error = CubeError::E_SEEK_FAILED; + val->buff.assign(""); + + ret = CubeError::E_ALL_SEEK_FAILED; + LOG(WARNING) << "cube seek from shard [" << shard_id << "] failed [" + << cntl->ErrorText() << "]"; + } else if (res.values().size() > 0) { + DictValue* res_val = res.mutable_values(0); + if (static_cast(res_val->status()) == CubeError::E_NO_SUCH_KEY) { + g_cube_keys_miss_num << 1; + } + val->error = res_val->status(); + val->buff.swap(*res_val->mutable_value()); + } else { + val->error = CubeError::E_SEEK_FAILED; + val->buff.assign(""); + ret = CubeError::E_ALL_SEEK_FAILED; + } + info->cube_request_num << 1; + g_cube_keys_num << 1; + + // cleanup + delete stub; + stub = NULL; + delete cntl; + cntl = NULL; + + return ret; +} + +int CubeAPI::seek(const std::string& dict_name, + const std::vector& keys, + std::vector* vals) { + // Meta* meta = Meta::instance(); + if (_meta == NULL) { + LOG(ERROR) << "seek, meta is null"; + return -1; + } + + MetaInfo* info = _meta->get_meta(dict_name); + + if (info == NULL) { + LOG(ERROR) << "get meta [" << dict_name << "] failed"; + return -1; + } + + int shard_num = info->shard_num; + + DictRpcData* rpc_data = + static_cast(bthread_getspecific(_tls_key)); + + if (rpc_data == NULL) { + rpc_data = new DictRpcData; + CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); + } + + rpc_data->sub_reqs.resize(shard_num); + rpc_data->sub_res.resize(shard_num); + + std::vector> offset; + offset.resize(shard_num); + int init_cnt = keys.size() * 2 / shard_num; + + for (int i = 0; i < shard_num; ++i) { + offset[i].reserve(init_cnt); + } + + for (size_t i = 0; i < keys.size(); ++i) { + uint64_t shard_id = keys[i] % shard_num; + rpc_data->sub_reqs[shard_id].add_keys(keys[i]); + offset[shard_id].push_back(i); + } + + std::vector stubs(shard_num); + std::vector cntls(shard_num); + + for (int i = 0; i < shard_num; ++i) { + ::brpc::Channel* chan = info->cube_conn[i]; + stubs[i] = new DictService_Stub(chan); + cntls[i] = new ::brpc::Controller(); + } + + DoNothing do_nothing; + + for (int i = 0; i < shard_num; ++i) { + stubs[i]->seek( + cntls[i], &rpc_data->sub_reqs[i], &rpc_data->sub_res[i], &do_nothing); + } + + int cntls_failed_cnt = 0; + + for (int i = 0; i < shard_num; ++i) { + brpc::Join(cntls[i]->call_id()); + + if (cntls[i]->Failed()) { + ++cntls_failed_cnt; + LOG(WARNING) << "cube seek from shard [" << i << "] failed [" + << cntls[i]->ErrorText() << "]"; + } + } + + int ret = CubeError::E_OK; + + info->cube_request_num << 1; + + if (cntls_failed_cnt > 0) { + info->cube_rpcfail_num << 1; + if (cntls_failed_cnt == shard_num) { + ret = CubeError::E_ALL_SEEK_FAILED; + } else { + ret = CubeError::E_SEEK_FAILED; + } + } + + vals->resize(keys.size()); + + // merge + size_t miss_cnt = 0; + for (int i = 0; i < shard_num; ++i) { + if (cntls[i]->Failed()) { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + (*vals)[offset[i][j]].error = CubeError::E_SEEK_FAILED; + (*vals)[offset[i][j]].buff.assign(""); + } + } else { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + DictValue* val = rpc_data->sub_res[i].mutable_values(j); + if (static_cast(val->status()) == CubeError::E_NO_SUCH_KEY) { + miss_cnt += 1; + } + (*vals)[offset[i][j]].error = val->status(); + (*vals)[offset[i][j]].buff.swap(*val->mutable_value()); + } + } + } + + // bvar stats + g_cube_keys_num << keys.size(); + if (keys.size() > 0) { + g_cube_keys_miss_num << miss_cnt; + g_cube_value_size << (*vals)[0].buff.size(); + } + + // cleanup + for (int i = 0; i < shard_num; ++i) { + delete stubs[i]; + stubs[i] = NULL; + delete cntls[i]; + cntls[i] = NULL; + rpc_data->sub_reqs[i].Clear(); + rpc_data->sub_res[i].Clear(); + } + + return ret; +} + +int CubeAPI::opt_seek(const std::string& dict_name, + const std::vector& keys, + std::function parse) { + if (_meta == NULL) { + LOG(ERROR) << "seek, meta is null"; + return -1; + } + + MetaInfo* info = _meta->get_meta(dict_name); + + if (info == NULL) { + LOG(ERROR) << "get meta [" << dict_name << "] failed"; + return -1; + } + + int shard_num = info->shard_num; + + DictRpcData* rpc_data = + static_cast(bthread_getspecific(_tls_key)); + + if (rpc_data == NULL) { + rpc_data = new DictRpcData; + CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); + } + + rpc_data->sub_reqs.resize(shard_num); + rpc_data->sub_res.resize(shard_num); + + std::vector> offset; + offset.resize(shard_num); + int init_cnt = keys.size() * 2 / shard_num; + + for (int i = 0; i < shard_num; ++i) { + offset[i].reserve(init_cnt); + } + + for (size_t i = 0; i < keys.size(); ++i) { + uint64_t shard_id = keys[i] % shard_num; + rpc_data->sub_reqs[shard_id].add_keys(keys[i]); + offset[shard_id].push_back(i); + } + + std::vector stubs(shard_num); + std::vector cntls(shard_num); + + for (int i = 0; i < shard_num; ++i) { + ::brpc::Channel* chan = info->cube_conn[i]; + stubs[i] = new DictService_Stub(chan); + cntls[i] = new ::brpc::Controller(); + } + + for (int i = 0; i < shard_num; ++i) { + stubs[i]->seek(cntls[i], + &rpc_data->sub_reqs[i], + &rpc_data->sub_res[i], + brpc::NewCallback(sub_seek_done, + &rpc_data->sub_res[i], + cntls[i], + &(offset[i]), + parse)); + } + + int cntls_failed_cnt = 0; + + for (int i = 0; i < shard_num; ++i) { + brpc::Join(cntls[i]->call_id()); + + if (cntls[i]->Failed()) { + ++cntls_failed_cnt; + LOG(WARNING) << "cube seek from shard [" << i << "] failed [" + << cntls[i]->ErrorText() << "]"; + } + } + + int ret = CubeError::E_OK; + + info->cube_request_num << 1; + + if (cntls_failed_cnt > 0) { + info->cube_rpcfail_num << 1; + if (cntls_failed_cnt == shard_num) { + ret = CubeError::E_ALL_SEEK_FAILED; + } else { + ret = CubeError::E_SEEK_FAILED; + } + } + + // merge + size_t miss_cnt = 0; + for (int i = 0; i < shard_num; ++i) { + if (!cntls[i]->Failed()) { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + if (static_cast(rpc_data->sub_res[i].values(j).status()) == + CubeError::E_NO_SUCH_KEY) { + ++miss_cnt; + } + } + } + } + + // bvar stats + g_cube_keys_num << keys.size(); + if (keys.size() > 0) { + g_cube_keys_miss_num << miss_cnt; + } + + // cleanup + for (int i = 0; i < shard_num; ++i) { + delete stubs[i]; + stubs[i] = NULL; + delete cntls[i]; + cntls[i] = NULL; + rpc_data->sub_reqs[i].Clear(); + rpc_data->sub_res[i].Clear(); + } + + return ret; +} + +int CubeAPI::seek(const std::string& dict_name, + const std::vector& keys, + std::vector* vals, + std::string* version) { + // Meta* meta = Meta::instance(); + if (_meta == NULL) { + LOG(ERROR) << "seek, meta is null"; + return -1; + } + + MetaInfo* info = _meta->get_meta(dict_name); + + if (info == NULL) { + LOG(ERROR) << "get meta [" << dict_name << "] failed"; + return -1; + } + + int shard_num = info->shard_num; + + DictRpcData* rpc_data = + static_cast(bthread_getspecific(_tls_key)); + + if (rpc_data == NULL) { + rpc_data = new DictRpcData; + CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); + } + + rpc_data->sub_reqs.resize(shard_num); + rpc_data->sub_res.resize(shard_num); + + std::vector> offset; + offset.resize(shard_num); + int init_cnt = keys.size() * 2 / shard_num; + + for (int i = 0; i < shard_num; ++i) { + offset[i].reserve(init_cnt); + rpc_data->sub_reqs[i].set_version_required(true); + } + + for (size_t i = 0; i < keys.size(); ++i) { + uint64_t shard_id = keys[i] % shard_num; + rpc_data->sub_reqs[shard_id].add_keys(keys[i]); + offset[shard_id].push_back(i); + } + + std::vector stubs(shard_num); + std::vector cntls(shard_num); + + for (int i = 0; i < shard_num; ++i) { + ::brpc::Channel* chan = info->cube_conn[i]; + stubs[i] = new DictService_Stub(chan); + cntls[i] = new ::brpc::Controller(); + } + + DoNothing do_nothing; + + for (int i = 0; i < shard_num; ++i) { + stubs[i]->seek( + cntls[i], &rpc_data->sub_reqs[i], &rpc_data->sub_res[i], &do_nothing); + } + + int cntls_failed_cnt = 0; + + for (int i = 0; i < shard_num; ++i) { + brpc::Join(cntls[i]->call_id()); + + if (cntls[i]->Failed()) { + ++cntls_failed_cnt; + LOG(WARNING) << "cube seek from shard [" << i << "] failed [" + << cntls[i]->ErrorText() << "]"; + } + } + + int ret = CubeError::E_OK; + info->cube_request_num << 1; + + if (cntls_failed_cnt > 0) { + info->cube_rpcfail_num << 1; + if (cntls_failed_cnt == shard_num) { + ret = CubeError::E_ALL_SEEK_FAILED; + } else { + ret = CubeError::E_SEEK_FAILED; + } + } + + vals->resize(keys.size()); + + // merge + size_t miss_cnt = 0; + for (int i = 0; i < shard_num; ++i) { + if (cntls[i]->Failed()) { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + (*vals)[offset[i][j]].error = CubeError::E_SEEK_FAILED; + (*vals)[offset[i][j]].buff.assign(""); + } + } else { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + DictValue* val = rpc_data->sub_res[i].mutable_values(j); + if (static_cast(val->status()) == CubeError::E_NO_SUCH_KEY) { + miss_cnt += 1; + } + (*vals)[offset[i][j]].error = val->status(); + (*vals)[offset[i][j]].buff.swap(*val->mutable_value()); + } + if (version->compare(rpc_data->sub_res[i].version()) < 0) { + *version = rpc_data->sub_res[i].version(); + } + } + } + + // bvar stats + g_cube_keys_num << keys.size(); + if (keys.size() > 0) { + g_cube_keys_miss_num << miss_cnt; + g_cube_value_size << (*vals)[0].buff.size(); + } + + // cleanup + for (int i = 0; i < shard_num; ++i) { + delete stubs[i]; + stubs[i] = NULL; + delete cntls[i]; + cntls[i] = NULL; + rpc_data->sub_reqs[i].Clear(); + rpc_data->sub_res[i].Clear(); + } + + return ret; +} + +int CubeAPI::opt_seek(const std::string& dict_name, + const std::vector& keys, + std::function parse, + std::string* version) { + if (_meta == NULL) { + LOG(ERROR) << "seek, meta is null"; + return -1; + } + + MetaInfo* info = _meta->get_meta(dict_name); + + if (info == NULL) { + LOG(ERROR) << "get meta [" << dict_name << "] failed"; + return -1; + } + + int shard_num = info->shard_num; + + DictRpcData* rpc_data = + static_cast(bthread_getspecific(_tls_key)); + + if (rpc_data == NULL) { + rpc_data = new DictRpcData; + CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); + } + + rpc_data->sub_reqs.resize(shard_num); + rpc_data->sub_res.resize(shard_num); + + std::vector> offset; + offset.resize(shard_num); + int init_cnt = keys.size() * 2 / shard_num; + + for (int i = 0; i < shard_num; ++i) { + offset[i].reserve(init_cnt); + rpc_data->sub_reqs[i].set_version_required(true); + } + + for (size_t i = 0; i < keys.size(); ++i) { + uint64_t shard_id = keys[i] % shard_num; + rpc_data->sub_reqs[shard_id].add_keys(keys[i]); + offset[shard_id].push_back(i); + } + + std::vector stubs(shard_num); + std::vector cntls(shard_num); + + for (int i = 0; i < shard_num; ++i) { + ::brpc::Channel* chan = info->cube_conn[i]; + stubs[i] = new DictService_Stub(chan); + cntls[i] = new ::brpc::Controller(); + } + + for (int i = 0; i < shard_num; ++i) { + stubs[i]->seek(cntls[i], + &rpc_data->sub_reqs[i], + &rpc_data->sub_res[i], + brpc::NewCallback(sub_seek_done, + &rpc_data->sub_res[i], + cntls[i], + &(offset[i]), + parse)); + } + + int cntls_failed_cnt = 0; + + for (int i = 0; i < shard_num; ++i) { + brpc::Join(cntls[i]->call_id()); + + if (cntls[i]->Failed()) { + ++cntls_failed_cnt; + LOG(WARNING) << "cube seek from shard [" << i << "] failed [" + << cntls[i]->ErrorText() << "]"; + } + } + + int ret = CubeError::E_OK; + + info->cube_request_num << 1; + + if (cntls_failed_cnt > 0) { + info->cube_rpcfail_num << 1; + if (cntls_failed_cnt == shard_num) { + ret = CubeError::E_ALL_SEEK_FAILED; + } else { + ret = CubeError::E_SEEK_FAILED; + } + } + + // merge + size_t miss_cnt = 0; + for (int i = 0; i < shard_num; ++i) { + if (!cntls[i]->Failed()) { + for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { + if (static_cast(rpc_data->sub_res[i].values(j).status()) == + CubeError::E_NO_SUCH_KEY) { + ++miss_cnt; + } + } + if (version->compare(rpc_data->sub_res[i].version()) < 0) { + *version = rpc_data->sub_res[i].version(); + } + } + } + + // bvar stats + g_cube_keys_num << keys.size(); + if (keys.size() > 0) { + g_cube_keys_miss_num << miss_cnt; + } + + // cleanup + for (int i = 0; i < shard_num; ++i) { + delete stubs[i]; + stubs[i] = NULL; + delete cntls[i]; + cntls[i] = NULL; + rpc_data->sub_reqs[i].Clear(); + rpc_data->sub_res[i].Clear(); + } + + return ret; +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-api/src/cube_cli.cpp b/core/cube/cube-api/src/cube_cli.cpp new file mode 100644 index 0000000000000000000000000000000000000000..6bbbd435db0448bb6a96fe5c160f292992d813e9 --- /dev/null +++ b/core/cube/cube-api/src/cube_cli.cpp @@ -0,0 +1,225 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include //NOLINT +#include "core/cube/cube-api/include/cube_api.h" +#define TIME_FLAG(flag) \ + struct timeval flag; \ + gettimeofday(&(flag), NULL); + +DEFINE_string(config_file, "./cube.conf", "m-cube config file"); +DEFINE_string(keys, "keys", "keys to seek"); +DEFINE_string(dict, "dict", "dict to seek"); +DEFINE_uint64(batch, 500, "batch size"); +DEFINE_int32(timeout, 200, "timeout in ms"); +DEFINE_int32(retry, 3, "retry times"); +DEFINE_bool(print_output, false, "print output flag"); +DEFINE_int32(thread_num, 1, "thread num"); +std::atomic g_concurrency(0); + +std::vector time_list; +std::vector request_list; + +namespace { +inline uint64_t time_diff(const struct timeval& start_time, + const struct timeval& end_time) { + return (end_time.tv_sec - start_time.tv_sec) * 1000000 + + (end_time.tv_usec - start_time.tv_usec); +} +} + +namespace rec { +namespace mcube { +std::string string_to_hex(const std::string& input) { + static const char* const lut = "0123456789ABCDEF"; + size_t len = input.length(); + + std::string output; + output.reserve(2 * len); + for (size_t i = 0; i < len; ++i) { + const unsigned char c = input[i]; + output.push_back(lut[c >> 4]); + output.push_back(lut[c & 15]); + } + return output; +} + +int run(int argc, char** argv, int thread_id) { + google::ParseCommandLineFlags(&argc, &argv, true); + + CubeAPI* cube = CubeAPI::instance(); + int ret = cube->init(FLAGS_config_file.c_str()); + if (ret != 0) { + LOG(ERROR) << "init cube api failed err=" << ret; + return ret; + } + /* + FILE* key_file = fopen(FLAGS_keys.c_str(), "r"); + if (key_file == NULL) { + LOG(ERROR) << "open key file [" << FLAGS_keys << "] failed"; + return -1; + } + */ + std::atomic seek_counter(0); + std::atomic seek_cost_total(0); + uint64_t seek_cost_max = 0; + uint64_t seek_cost_min = 500000; + + char buffer[1024]; + std::vector keys; + std::vector values; + + std::string line; + std::vector key_list; + std::ifstream key_file(FLAGS_keys.c_str()); + while (getline(key_file, line)) { + key_list.push_back(std::stoll(line)); + } + + uint64_t file_size = key_list.size(); + uint64_t index = 0; + uint64_t request = 0; + + while (g_concurrency.load() >= FLAGS_thread_num) { + } + g_concurrency++; + + while (index < file_size) { + // uint64_t key = strtoul(buffer, NULL, 10); + + keys.push_back(key_list[index]); + index += 1; + int ret = 0; + if (keys.size() > FLAGS_batch) { + TIME_FLAG(seek_start); + ret = cube->seek(FLAGS_dict, keys, &values); + TIME_FLAG(seek_end); + request += 1; + if (ret != 0) { + LOG(WARNING) << "cube seek failed"; + } else if (FLAGS_print_output) { + for (size_t i = 0; i < keys.size(); ++i) { + fprintf(stdout, + "key:%lu value:%s\n", + keys[i], + string_to_hex(values[i].buff).c_str()); + } + } + ++seek_counter; + uint64_t seek_cost = time_diff(seek_start, seek_end); + seek_cost_total += seek_cost; + if (seek_cost > seek_cost_max) { + seek_cost_max = seek_cost; + } + if (seek_cost < seek_cost_min) { + seek_cost_min = seek_cost; + } + + keys.clear(); + values.clear(); + } + } + /* + if (keys.size() > 0) { + int ret = 0; + values.resize(keys.size()); + TIME_FLAG(seek_start); + ret = cube->seek(FLAGS_dict, keys, &values); + TIME_FLAG(seek_end); + if (ret != 0) { + LOG(WARNING) << "cube seek failed"; + } else if (FLAGS_print_output) { + for (size_t i = 0; i < keys.size(); ++i) { + fprintf(stdout, + "key:%lu value:%s\n", + keys[i], + string_to_hex(values[i].buff).c_str()); + } + } + + ++seek_counter; + uint64_t seek_cost = time_diff(seek_start, seek_end); + seek_cost_total += seek_cost; + if (seek_cost > seek_cost_max) { + seek_cost_max = seek_cost; + } + if (seek_cost < seek_cost_min) { + seek_cost_min = seek_cost; + } + } + */ + g_concurrency--; + + // fclose(key_file); + + // ret = cube->destroy(); + if (ret != 0) { + LOG(WARNING) << "destroy cube api failed err=" << ret; + } + + uint64_t seek_cost_avg = seek_cost_total / seek_counter; + LOG(INFO) << "seek cost avg = " << seek_cost_avg; + LOG(INFO) << "seek cost max = " << seek_cost_max; + LOG(INFO) << "seek cost min = " << seek_cost_min; + + time_list[thread_id] = seek_cost_avg; + request_list[thread_id] = request; + + return 0; +} + +int run_m(int argc, char** argv) { + google::ParseCommandLineFlags(&argc, &argv, true); + int thread_num = FLAGS_thread_num; + request_list.resize(thread_num); + time_list.resize(thread_num); + std::vector thread_pool; + for (int i = 0; i < thread_num; i++) { + thread_pool.push_back(new std::thread(run, argc, argv, i)); + } + for (int i = 0; i < thread_num; i++) { + thread_pool[i]->join(); + delete thread_pool[i]; + } + uint64_t sum_time = 0; + uint64_t max_time = 0; + uint64_t min_time = 1000000; + uint64_t request_num = 0; + for (int i = 0; i < thread_num; i++) { + sum_time += time_list[i]; + if (time_list[i] > max_time) { + max_time = time_list[i]; + } + if (time_list[i] < min_time) { + min_time = time_list[i]; + } + request_num += request_list[i]; + } + uint64_t mean_time = sum_time / thread_num; + LOG(INFO) << thread_num << " thread seek cost" + << " avg = " << std::to_string(mean_time) + << " max = " << std::to_string(max_time) + << " min = " << std::to_string(min_time); + LOG(INFO) << " total_request = " << std::to_string(request_num) + << " speed = " << std::to_string(1000000 * thread_num / mean_time) + << " query per second"; +} + +} // namespace mcube +} // namespace rec + +int main(int argc, char** argv) { return ::rec::mcube::run_m(argc, argv); } diff --git a/core/cube/cube-api/src/meta.cpp b/core/cube/cube-api/src/meta.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9b1656b4975999370f5f817b981fab0a0be7359a --- /dev/null +++ b/core/cube/cube-api/src/meta.cpp @@ -0,0 +1,297 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-api/include/meta.h" + +#include +#include +#include +#include +#include + +#include "core/cube/cube-api/cube.pb.h" + +namespace { +static ::rec::mcube::Meta* g_ins = NULL; +} + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +#endif + +namespace rec { +namespace mcube { + +Meta* Meta::instance() { + if (g_ins == NULL) { + g_ins = new Meta(); + } + + return g_ins; +} + +Meta::~Meta() {} + +int Meta::init(const char* conf_file) { + std::ifstream ifs(conf_file); + if (!ifs.is_open()) { + LOG(ERROR) << "open conf file [" << conf_file << "]"; + return -1; + } + + std::string content((std::istreambuf_iterator(ifs)), + std::istreambuf_iterator()); + + BUTIL_RAPIDJSON_NAMESPACE::Document document; + document.Parse(content.c_str()); + + int ret = 0; + if (document.IsArray()) { + for (auto it = document.Begin(); it != document.End(); ++it) { + MetaInfo* info = create_meta(*it); + + if (info == NULL) { + LOG(ERROR) << "create dict meta failed"; + ret = -1; + break; + } + + LOG(INFO) << "init cube dict [" << info->dict_name << "] succ"; + _metas[info->dict_name] = info; + } + } else { + LOG(ERROR) + << "conf file [" << conf_file + << "] json schema error, please ensure that the json is an array"; + } + + if (_metas.size() == 0) { + LOG(ERROR) << "no valid cube"; + ret = -1; + } + + return ret; +} + +int Meta::destroy() { + for (auto it = _metas.begin(); it != _metas.end(); ++it) { + if (it->second != NULL) { + delete it->second; + it->second = NULL; + } + } + _metas.clear(); + return 0; +} + +MetaInfo* Meta::get_meta(const std::string& dict_name) { + auto iter = _metas.find(dict_name); + + if (iter != _metas.end()) { + return iter->second; + } + + return NULL; +} + +void Meta::reset_bvar(const std::string& dict_name) { + auto iter = _metas.find(dict_name); + + if (iter != _metas.end()) { + iter->second->cube_request_num.reset(); + iter->second->cube_rpcfail_num.reset(); + } else { + LOG(WARNING) << "reset_bvar to invalid dict [" << dict_name << "]"; + } +} + +MetaInfo* Meta::create_meta(const BUTIL_RAPIDJSON_NAMESPACE::Value& config) { + if (!config.HasMember("dict_name") || !config.HasMember("shard") || + !config.HasMember("dup") || !config.HasMember("timeout") || + !config.HasMember("retry") || !config.HasMember("backup_request") || + !config.HasMember("type")) { + LOG(ERROR) << "create meta failed, required fields miss"; + return NULL; + } + + if (!config["dict_name"].IsString() || !config["shard"].IsInt() || + !config["dup"].IsInt() || !config["timeout"].IsInt() || + !config["retry"].IsInt() || !config["backup_request"].IsInt() || + !config["type"].IsString()) { + LOG(ERROR) << "create meta failed, required fields type error"; + return NULL; + } + + MetaInfo* info = new MetaInfo(); + info->dict_name = config["dict_name"].GetString(); + info->shard_num = config["shard"].GetInt(); + info->dup_num = config["dup"].GetInt(); + + int timeout = config["timeout"].GetInt(); + int retry = config["retry"].GetInt(); + int backup_request = config["backup_request"].GetInt(); + std::string type = config["type"].GetString(); + std::string load_balancer = "rr"; + + if (config.HasMember("load_balancer") && config["load_balancer"].IsString()) { + load_balancer = config["load_balancer"].GetString(); + } + + int ret = 0; + + if (type.compare("ipport") == 0) { + ret = create_meta_from_ipport( + info, config["nodes"], timeout, retry, backup_request); + } else if (type.compare("ipport_list") == 0) { + ret = create_meta_from_ipport_list( + info, config["nodes"], timeout, retry, backup_request, load_balancer); + } else if (type.compare("ipport_parallel") == 0) { + ret = create_meta_from_ipport_parallel( + info, config["nodes"], timeout, retry, backup_request); + } else { + ret = -1; + } + + if (ret != 0) { + LOG(ERROR) << "create meta failed error=" << ret; + delete info; + return NULL; + } + + return info; +} + +int Meta::create_meta_from_ipport(MetaInfo* meta, + const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, + int timeout, + int retry, + int backup_request) { + brpc::ChannelOptions options; + options.timeout_ms = timeout; + options.max_retry = retry; + + if (backup_request > 0) { + options.backup_request_ms = backup_request; + } + + meta->cube_conn.resize(meta->shard_num, NULL); + + for (int i = 0; i < static_cast(nodes.Size()); ++i) { + const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[i]; + const std::string& node_ip = node["ip"].GetString(); + int node_port = node["port"].GetInt(); + + ::brpc::Channel* chan = new ::brpc::Channel(); + + if (chan->Init(node_ip.c_str(), node_port, &options) != 0) { + LOG(ERROR) << "Init connection to [" << node_ip << ":" << node_port + << "] failed"; + delete chan; + return -1; + } + + meta->cube_conn[i] = chan; + } + + return 0; +} + +int Meta::create_meta_from_ipport_list( + MetaInfo* meta, + const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, + int timeout, + int retry, + int backup_request, + const std::string& load_balancer) { + brpc::ChannelOptions options; + options.timeout_ms = timeout; + options.max_retry = retry; + + if (backup_request > 0) { + options.backup_request_ms = backup_request; + } + + meta->cube_conn.resize(meta->shard_num, NULL); + + for (int i = 0; i < static_cast(nodes.Size()); ++i) { + const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[i]; + const std::string& ipport_list = node["ipport_list"].GetString(); + + ::brpc::Channel* chan = new ::brpc::Channel(); + + if (chan->Init(ipport_list.c_str(), load_balancer.c_str(), &options) != 0) { + LOG(ERROR) << "Init connection to [" << ipport_list << "] failed"; + delete chan; + return -1; + } + + meta->cube_conn[i] = chan; + } + + return 0; +} + +int Meta::create_meta_from_ipport_parallel( + MetaInfo* meta, + const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, + int timeout, + int retry, + int backup_request) { + if (nodes.Size() < 1) { + LOG(ERROR) << "Config nodes size less than 0"; + return -1; + } + + brpc::ChannelOptions options; + options.timeout_ms = timeout; + options.max_retry = retry; + + if (backup_request > 0) { + options.backup_request_ms = backup_request; + } + + meta->cube_conn.resize(meta->shard_num, NULL); + + for (int i = 0; i < meta->shard_num; ++i) { + const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[0]; + const std::string& node_ip = node["ip"].GetString(); + int node_port = node["port"].GetInt(); + + ::brpc::Channel* chan = new ::brpc::Channel(); + + if (chan->Init(node_ip.c_str(), node_port, &options) != 0) { + LOG(ERROR) << "Init connection to [" << node_ip << ":" << node_port + << "] failed"; + delete chan; + return -1; + } + + meta->cube_conn[i] = chan; + } + + return 0; +} + +const std::vector Meta::metas() { + std::vector metas; + + for (auto i : _metas) { + metas.push_back(i.second); + } + + return metas; +} + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-builder/CMakeLists.txt b/core/cube/cube-builder/CMakeLists.txt similarity index 100% rename from cube/cube-builder/CMakeLists.txt rename to core/cube/cube-builder/CMakeLists.txt diff --git a/core/cube/cube-builder/include/cube-builder/builder_job.h b/core/cube/cube-builder/include/cube-builder/builder_job.h new file mode 100644 index 0000000000000000000000000000000000000000..18475dd6191ca6b6719599a7f4da2127013d82e7 --- /dev/null +++ b/core/cube/cube-builder/include/cube-builder/builder_job.h @@ -0,0 +1,57 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include +#include "core/cube/cube-builder/include/cube-builder/crovl_builder_increment.h" +#include "core/cube/cube-builder/include/cube-builder/define.h" +using std::string; +using std::vector; + +class Job { + public: + void set_shard_num(int num); + + int get_shard_num(); + + void set_input_path(string path); + + string get_input_path(); + + void set_output_path(string path); + + string get_output_path(); + + void set_job_mode(mode mmode); + + mode get_job_mode(); + + void set_dict_name(string name); + + string get_dict_name(); + + private: + int shard_num; + string input_path; + string output_path; + mode job_mode; + string dict_name; +}; + +void mapFileLocal(Job job, + string file, + vector reduces); diff --git a/cube/cube-builder/include/cube-builder/crovl_builder_increment.h b/core/cube/cube-builder/include/cube-builder/crovl_builder_increment.h similarity index 100% rename from cube/cube-builder/include/cube-builder/crovl_builder_increment.h rename to core/cube/cube-builder/include/cube-builder/crovl_builder_increment.h diff --git a/cube/cube-builder/include/cube-builder/curl_simple.h b/core/cube/cube-builder/include/cube-builder/curl_simple.h similarity index 100% rename from cube/cube-builder/include/cube-builder/curl_simple.h rename to core/cube/cube-builder/include/cube-builder/curl_simple.h diff --git a/cube/cube-builder/include/cube-builder/define.h b/core/cube/cube-builder/include/cube-builder/define.h similarity index 100% rename from cube/cube-builder/include/cube-builder/define.h rename to core/cube/cube-builder/include/cube-builder/define.h diff --git a/cube/cube-builder/include/cube-builder/raw_reader.h b/core/cube/cube-builder/include/cube-builder/raw_reader.h similarity index 100% rename from cube/cube-builder/include/cube-builder/raw_reader.h rename to core/cube/cube-builder/include/cube-builder/raw_reader.h diff --git a/core/cube/cube-builder/include/cube-builder/seqfile_reader.h b/core/cube/cube-builder/include/cube-builder/seqfile_reader.h new file mode 100644 index 0000000000000000000000000000000000000000..c26b5ad877cb1b853b8e9046848da323c3d96510 --- /dev/null +++ b/core/cube/cube-builder/include/cube-builder/seqfile_reader.h @@ -0,0 +1,45 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include "core/cube/cube-builder/include/cube-builder/define.h" +#include "core/cube/cube-builder/include/cube-builder/raw_reader.h" +class SequenceFileRecordReader : public RecordReader { + public: + SequenceFileRecordReader() {} + explicit SequenceFileRecordReader(const std::string& path) { + _path = path; + _raw_reader = new FileRawReader(_path); + } + virtual ~SequenceFileRecordReader() { + if (_raw_reader != nullptr) { + delete _raw_reader; + } + } + virtual int open(); + virtual int close(); + virtual int next(Record* record); + const Header& get_header() { return _header; } + int read_header(); + + private: + std::string _path{""}; + RawReader* _raw_reader{nullptr}; + Header _header; +}; + +typedef std::shared_ptr SequenceFileRecordReaderPtr; diff --git a/cube/cube-builder/include/cube-builder/util.h b/core/cube/cube-builder/include/cube-builder/util.h similarity index 100% rename from cube/cube-builder/include/cube-builder/util.h rename to core/cube/cube-builder/include/cube-builder/util.h diff --git a/core/cube/cube-builder/include/cube-builder/vtext.h b/core/cube/cube-builder/include/cube-builder/vtext.h new file mode 100644 index 0000000000000000000000000000000000000000..67f15db1c7f7fb28ae76729f2f5cbea859cb72d7 --- /dev/null +++ b/core/cube/cube-builder/include/cube-builder/vtext.h @@ -0,0 +1,87 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include "core/cube/cube-builder/include/cube-builder/define.h" +#include "core/cube/cube-builder/include/cube-builder/raw_reader.h" + +class VInt { + public: + static int32_t decode_vint_size(const char &value) { + if (value >= -112) { + return 1; + } else if (value < -120) { + return -119 - value; + } + return -111 - value; + } + static bool is_negative_vint(const char &value) { + return value < -120 || (value >= -112 && value < 0); + } + static bool read_vint(RawReader *reader, int32_t *vint) { + char first_byte; + if (reader->read(&first_byte) <= 0) { + return false; + } + int32_t len = decode_vint_size(first_byte); + if (len == 1) { + *vint = first_byte; + return true; + } + char ch; + int32_t bitlen = 0; + int32_t i = 0, lch; + for (int idx = len - 2; idx >= 0; idx--) { + if (reader->read(&ch) <= 0) { + return false; + } + bitlen = 8 * idx; + lch = ch; + i = i | ((lch << bitlen) & (0xFFL << bitlen)); + } + *vint = (is_negative_vint(first_byte) ? (i ^ (int32_t)(-1)) : i); + return true; + } +}; + +class VString { + public: + static const char *encode(std::string str) { return encode(str, true); } + + static const char *encode(std::string str, bool /*replace*/) { + // todo + return str.c_str(); + } + + static std::string decode(char *bytes) { return decode(bytes, true); } + + static std::string decode(char *bytes, bool /*replace*/) { + // todo + return std::string(bytes); + } + + // todo + static bool read_string(RawReader *reader, std::string *str) { + int length; + if (!VInt::read_vint(reader, &length)) { + return false; + } + if (reader->read_buf(str, length) != length) { + return false; + } + return true; + } +}; diff --git a/core/cube/cube-builder/src/builder_job.cpp b/core/cube/cube-builder/src/builder_job.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4fd8994d9082f55f20da3793e54dec27b89a5edb --- /dev/null +++ b/core/cube/cube-builder/src/builder_job.cpp @@ -0,0 +1,75 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-builder/include/cube-builder/builder_job.h" +#include +#include +#include "butil/logging.h" +#include "core/cube/cube-builder/include/cube-builder/seqfile_reader.h" +#include "core/cube/cube-builder/include/cube-builder/util.h" +using std::string; +void Job::set_shard_num(int num) { shard_num = num; } + +int Job::get_shard_num() { return shard_num; } + +void Job::set_input_path(string path) { input_path = path; } + +string Job::get_input_path() { return input_path; } + +void Job::set_output_path(string path) { output_path = path; } + +string Job::get_output_path() { return output_path; } + +void Job::set_job_mode(mode mmode) { job_mode = mmode; } + +mode Job::get_job_mode() { return job_mode; } + +void Job::set_dict_name(string name) { dict_name = name; } + +string Job::get_dict_name() { return dict_name; } + +void mapFileLocal(Job job, + string file, + vector reduces) { + SequenceFileRecordReader reader(file.c_str()); + + if (reader.open() != 0) { + LOG(ERROR) << "open file failed! " << file; + return; + } + if (reader.read_header() != 0) { + LOG(ERROR) << "read header error! " << file; + reader.close(); + return; + } + + Record record(reader.get_header()); + int total_count = 0; + + while (reader.next(&record) == 0) { + uint64_t key = + *reinterpret_cast(const_cast(record.key.data())); + + total_count++; + int part = key % job.get_shard_num(); + int64_t value_length = record.record_len - record.key_len; + + reduces[part]->add(key, value_length, record.value.c_str()); + } + + if (reader.close() != 0) { + LOG(ERROR) << "close file failed! " << file; + return; + } +} diff --git a/core/cube/cube-builder/src/crovl_builder_increment.cpp b/core/cube/cube-builder/src/crovl_builder_increment.cpp new file mode 100644 index 0000000000000000000000000000000000000000..469eec3894761d50e04e8c771a62cf367a92e600 --- /dev/null +++ b/core/cube/cube-builder/src/crovl_builder_increment.cpp @@ -0,0 +1,847 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-builder/include/cube-builder/crovl_builder_increment.h" +#include +#include +#include +#include +#include +#include +#include "boost/lexical_cast.hpp" +#include "core/cube/cube-builder/include/cube-builder/curl_simple.h" +#include "core/cube/cube-builder/include/cube-builder/define.h" +#include "core/cube/cube-builder/include/cube-builder/util.h" +#include "json/json.h" + +static const uint64_t MB = 1048576; +// CSpinLock g_sLock; + +CROVLBuilderIncremental::CROVLBuilderIncremental() { + _index = NULL; + _data = NULL; + // _index_file = NULL; + _inner_sort_size = 32 * MB; + _memory_quota = 4 * 1024 * MB; +} + +bool CROVLBuilderIncremental::Clear() { + if (_index != NULL) { + delete[] _index; + _index = NULL; + } + + if (_data != NULL) { + delete[] _data; + _data = NULL; + } + + _data_file_list.clear(); + + return true; +} + +CROVLBuilderIncremental::~CROVLBuilderIncremental() { Clear(); } + +bool CROVLBuilderIncremental::Init(int index_type, + uint32_t data_file_len, + const char *mode, + const char *data_dir, + const char *data_real_dir, + const char *dict_name, + const std::string &shard_id, + const std::string &split_id, + const std::string &last_version, + const std::string &cur_version, + const std::string &depend_version, + const std::string &master_address, + const std::string &id, + const std::string &key, + const std::string &extra, + bool bFix, + uint32_t nFixLen) { + if (index_type != IT_HASH) { + LOG(ERROR) << "Error: incremental_build not support IT_SORT"; + return false; + } + + if (index_type != IT_HASH && index_type != IT_SORT) { + LOG(ERROR) << "Error: invalid index type"; + return false; + } + + if (index_type == IT_HASH && bFix) { + LOG(ERROR) << "Error: can not set fix when index type is IT_HASH"; + return false; + } + + if (nFixLen > MAX_FIXDATA_LEN) { + LOG(ERROR) << "Error: fix length too large"; + return false; + } + + if (data_file_len < MAX_DATA_LEN + 4 || data_file_len > MAX_DATA_FILE_LEN) { + LOG(ERROR) << "Error: invalid data file length" << data_file_len; + return false; + } + + if (strlen(data_dir) > MAX_DATA_DIR_LEN) { + LOG(ERROR) << "Error: data directory too long :" << data_dir; + return false; + } + + Clear(); + + strncpy(_data_dir, data_dir, sizeof(_data_dir)); + strncpy(_data_real_dir, data_real_dir, sizeof(_data_real_dir)); + + _index_type = index_type; + _data_file_len = data_file_len; + _data_file = 0; + _data_buf_len = 0; + _index_buf_len = 0; + _index_file_num = 0; // incremental_build for index + _count = 0; + _cur_count = 0; + _fix = bFix; + _fix_len = nFixLen; + _index_file_len = 0; + + _dict_name = dict_name; + _shard_id = shard_id; + _split_id = split_id; + _last_version = last_version; + _cur_version = cur_version; + _depend_version = depend_version; + _master_address = master_address; + _id = id; + _key = key; + _extra = extra; + + if (_fix) { + _rec_size = nFixLen + sizeof(uint64_t); + } else { + _rec_size = 2 * sizeof(uint64_t); + } + + _index = new uint64_t[INDEX_BUFFER]; + + if (!_fix) { + _data = new char[_data_file_len]; + } else if (_fix_len != 8) { + _data = new char[_rec_size * INDEX_BUFFER]; + } + + if (!checkDirectory(_data_dir)) { + LOG(ERROR) << "create _data_dir path failed: " << _data_dir; + return false; + } + + // read old info from data.n and index.n + _mode = mode; + LOG(INFO) << "mode: " << mode; + + if (strcmp(mode, "base") != 0) { + if (_master_address == "") { + if (!read_last_meta_from_local()) { + LOG(ERROR) << "read last meta from db error! "; + return false; + } + } else { + if (!read_last_meta_from_transfer()) { + LOG(ERROR) << "read last meta from transfer error! "; + return false; + } + } + } + LOG(INFO) << "incremental_build data file:" << _data_file + << ", count:" << _count << ", index file:" << _index_file_num; + return true; +} + +bool CROVLBuilderIncremental::flush_data() { + LOG(INFO) << "flush data" << _data_file; + if (_data_buf_len == 0) { + LOG(ERROR) << "_data_buf_len == 0"; + return true; + } + + char file[MAX_DATA_DIR_LEN * 2]; + snprintf(file, sizeof(file), "%s/data.%lu", _data_dir, _data_file); + FILE *fp; + if ((fp = fopen(file, "ab")) == NULL) { + LOG(ERROR) << "open file failed! " << file; + return false; + } + + if (fwrite(_data, 1, _data_buf_len, fp) != _data_buf_len) { + fclose(fp); + LOG(ERROR) << "write file:" << file << " error!"; + return false; + } + fclose(fp); + + _data_file_list.push_back(_data_buf_len); + _data_buf_len = 0; + ++_data_file; + return true; +} + +bool CROVLBuilderIncremental::FlushIndex() { + LOG(INFO) << "flush index:" << _index_file_num; + + if (_index_buf_len == 0) { + LOG(ERROR) << "_index_buf_len == 0"; + return true; + } + + char file[MAX_DATA_DIR_LEN * 2]; + snprintf(file, sizeof(file), "%s/index.%d", _data_dir, _index_file_num); + FILE *fp; + if ((fp = fopen(file, "ab")) == NULL) { + LOG(ERROR) << "open file failed! " << file; + return false; + } + + if (_fix && _fix_len != 8) { + if (fwrite(_data, _rec_size, _index_buf_len, fp) != _index_buf_len) { + LOG(ERROR) << "_index_buf_len error:" << _index_buf_len; + return false; + } + _index_buf_len = 0; + return true; + } + + if (fwrite(_index, sizeof(uint64_t), _index_buf_len, fp) != _index_buf_len) { + LOG(ERROR) << "write file:" << file << " error!"; + return false; + } + fclose(fp); + + _index_file_len += _index_buf_len * sizeof(uint64_t); + _index_buf_len = 0; + return true; +} + +int CROVLBuilderIncremental::add(uint64_t nKey, + uint32_t nLen, + const char *pData) { + uint64_t naddr; + uint32_t nTotalLen; + + if (nLen > MAX_DATA_LEN || _fix) { + return 0; + } + + nTotalLen = nLen + 4; + + do { + if (_data_buf_len + nTotalLen > _data_file_len) { + if (!flush_data()) { + break; + } + } + + *reinterpret_cast(_data + _data_buf_len) = nTotalLen; + memcpy(_data + _data_buf_len + 4, pData, nLen); + naddr = (_data_file << 32) + _data_buf_len; + _data_buf_len += nTotalLen; + + if (_index_buf_len + 2 > INDEX_BUFFER) { + if (!FlushIndex()) { + break; + } + } + + _index[_index_buf_len] = nKey; + _index[_index_buf_len + 1] = naddr; + _index_buf_len += 2; + ++_count; + ++_cur_count; + return 1; + } while (false); + + return -1; +} + +int CROVLBuilderIncremental::add(uint64_t nKey, uint64_t nValue) { + if (!_fix || _fix_len != 8) { + return 0; + } + + if (_index_buf_len + 2 > INDEX_BUFFER) { + if (!FlushIndex()) { + return -1; + } + } + + _index[_index_buf_len] = nKey; + _index[_index_buf_len + 1] = nValue; + _index_buf_len += 2; + ++_count; + ++_cur_count; + return 1; +} + +int CROVLBuilderIncremental::add(uint64_t nKey, const char *pData) { + if (!_fix) { + return 0; + } + + if (_fix && _fix_len == 8) { + return add(nKey, *reinterpret_cast(const_cast(pData))); + } + + if (_index_buf_len + 1 > INDEX_BUFFER) { + if (!FlushIndex()) { + return -1; + } + } + + *reinterpret_cast(_data + _index_buf_len * _rec_size) = nKey; + memcpy( + _data + (_index_buf_len * _rec_size + sizeof(uint64_t)), pData, _fix_len); + _index_buf_len++; + ++_count; + ++_cur_count; + return 1; +} + +bool CROVLBuilderIncremental::done() { + LOG(INFO) << "done"; + if (!_fix) { + if (!flush_data()) { + return false; + } + } + + if (!FlushIndex()) { + return false; + } + + if (!_fix) { + if (_data_file == 0) { + return false; + } + } + + char buffer[64]; + char file[MAX_DATA_DIR_LEN * 2]; + + // write data.n + snprintf(file, sizeof(file), "%s/data.n", _data_dir); + FILE *fp; + if ((fp = fopen(file, "wb")) == NULL) { + LOG(ERROR) << "open file failed! " << file; + return false; + } + + *reinterpret_cast(buffer) = _data_file; + if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { + fclose(fp); + return false; + } + + for (uint32_t i = 0; i < _data_file_list.size(); ++i) { + *reinterpret_cast(buffer) = _data_file_list[i]; + + if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { + fclose(fp); + return false; + } + } + fclose(fp); + + // write index.n + if (_index_type == IT_HASH) { + if (_count > (uint64_t)((uint32_t)-1)) { + return false; + } + + snprintf(file, sizeof(file), "%s/index.n", _data_dir); + + if ((fp = fopen(file, "wb")) == nullptr) { + LOG(ERROR) << "open file failed! " << file; + return false; + } + + *reinterpret_cast(buffer) = IT_HASH; + *reinterpret_cast(buffer + sizeof(uint32_t)) = (uint32_t)_count; + + if (fwrite(buffer, sizeof(uint32_t), 2, fp) != 2) { + fclose(fp); + return false; + } + + // fix empty data bug + // if the version no data, filter this version, index_file_num no add + // only can patch is null, not base + if (_cur_count > 0) { + *reinterpret_cast(buffer) = ++_index_file_num; + } else { + *reinterpret_cast(buffer) = _index_file_num; + } + + if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { + fclose(fp); + return false; + } + + if (_cur_count > 0) { + _index_file_list.push_back(_index_file_len); + } + for (uint32_t i = 0; i < _index_file_list.size(); ++i) { + *reinterpret_cast(buffer) = _index_file_list[i]; + + if (fwrite(buffer, sizeof(uint64_t), 1, fp) != 1) { + fclose(fp); + return false; + } + } + fclose(fp); + + if (_master_address == "") { + if (!write_cur_meta_to_local()) { + LOG(ERROR) << "write cur meta to local error"; + return false; + } + } else { + if (!write_cur_meta_to_transfer()) { + LOG(ERROR) << "write cur meta to db error master addr:" + << _master_address.c_str(); + return false; + } + } + + } else { + snprintf(file, sizeof(file), "%s/index.d", _data_dir); + LOG(ERROR) << "HASH is error!"; + } + + if (!Clear()) { + LOG(ERROR) << "clear error!"; + return false; + } + + return true; +} + +void CROVLBuilderIncremental::archive() { CmdTarfiles(_data_dir); } + +void CROVLBuilderIncremental::md5sum() { CmdMd5sum(_data_dir); } + +bool CROVLBuilderIncremental::read_last_meta_from_transfer() { + std::string url = "http://" + _master_address + "/dict/meta_info?name=" + + _dict_name + "&shard=" + _shard_id + "&split=" + _split_id + + "&version=" + _last_version + "&depend=" + _depend_version; + + LOG(INFO) << "name:" << _dict_name.c_str() << " shard:" << _shard_id.c_str() + << " split:" << _split_id.c_str() + << " last version:" << _last_version.c_str() + << " depend version:" << _depend_version.c_str(); + + CurlSimple cs; + std::string result = cs.curl_get(url.c_str()); + + if (result == "") { + LOG(ERROR) << "curl get error!"; + return false; + } + + LOG(INFO) << "curl result:" << result.c_str(); + Json::Reader reader(Json::Features::strictMode()); + Json::Value val; + + if (!reader.parse(result, val)) { + LOG(ERROR) << "parse result json error!"; + return false; + } + + if (!val.isObject()) { + LOG(ERROR) << "no valild json error!"; + return false; + } + + if (val["success"].isNull() || !val["success"].isString()) { + LOG(ERROR) << "parse field success error!"; + return false; + } + + std::string success = val["success"].asString(); + + if (success != "0") { + LOG(ERROR) << "parse field success error!" << success.c_str(); + return false; + } + + if (val["data"].isNull() || !val["data"].isObject()) { + LOG(ERROR) << "parse field data error!"; + return false; + } + + Json::Value data = val["data"]; + + if (data["meta"].isNull() || !data["meta"].isString()) { + LOG(ERROR) << "parse field meta error!"; + return false; + } + + Json::Reader meta_reader(Json::Features::strictMode()); + Json::Value meta; + + if (!meta_reader.parse(data["meta"].asString(), meta)) { + LOG(ERROR) << "parse meta json error!"; + return false; + } + + if (!meta.isObject()) { + LOG(ERROR) << "parse meta json error!"; + return false; + } + + if (meta["data_len_list"].isNull() || !meta["data_len_list"].isArray()) { + LOG(ERROR) << "parse data_len_list json error!"; + return false; + } + + Json::Value data_len_list = meta["data_len_list"]; + _data_file = data_len_list.size(); + + if (_data_file == 0) { + LOG(ERROR) << "data len list size is 0!"; + return false; + } + + for (int i = 0; i < static_cast(_data_file); ++i) { + LOG(INFO) << "data_len:" << data_len_list[i].asString().c_str(); + + try { + _data_file_list.push_back( + boost::lexical_cast(data_len_list[i].asString())); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + if (meta["index_len_list"].isNull() || !meta["index_len_list"].isArray()) { + LOG(ERROR) << "parse index_len_list json error!"; + return false; + } + + Json::Value index_len_list = meta["index_len_list"]; + _index_file_num = index_len_list.size(); + + if (_index_file_num == 0) { + LOG(ERROR) << "index len list size is 0!"; + return false; + } + + for (uint32_t i = 0; i < _index_file_num; ++i) { + LOG(INFO) << "index_len:" << index_len_list[i].asString().c_str(); + + try { + _index_file_list.push_back( + boost::lexical_cast(index_len_list[i].asString())); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + if (meta["index_total_count"].isNull() || + !meta["index_total_count"].isString()) { + LOG(ERROR) << "parse index_total_count json error!"; + return false; + } + + LOG(INFO) << "index_total_count:" + << meta["index_total_count"].asString().c_str(); + try { + _count = + boost::lexical_cast(meta["index_total_count"].asString()); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + + return true; +} + +bool CROVLBuilderIncremental::write_cur_meta_to_transfer() { + CurlSimple cs; + std::string url = "http://" + _master_address + "/dict/meta_info/register"; + + std::map args; + args["name"] = _dict_name; + args["shard"] = _shard_id; + args["split"] = _split_id; + args["version"] = _cur_version; + args["depend"] = _depend_version; + + LOG(INFO) << "name:" << _dict_name.c_str() << " shard:" << _shard_id.c_str() + << " split:" << _split_id.c_str() + << " cur version:" << _cur_version.c_str() + << " depend version:" << _depend_version.c_str(); + + Json::Value root; + + try { + root["index_total_count"] = boost::lexical_cast(_count); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + + Json::Value data; + + for (size_t i = 0; i < _data_file_list.size(); ++i) { + try { + data.append(boost::lexical_cast(_data_file_list[i])); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + root["data_len_list"] = data; + + Json::Value index; + + for (size_t i = 0; i < _index_file_list.size(); ++i) { + try { + index.append(boost::lexical_cast(_index_file_list[i])); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + root["index_len_list"] = index; + + Json::FastWriter writer; + // Json::StreamWriterBuilder writer; + std::string meta = writer.write(root); + + // std::string meta = Json::writeString(writer, root); + if (meta[meta.size() - 1] == '\n') { + meta.erase(meta.size() - 1, 1); + } + + LOG(INFO) << "meta:" << meta.c_str() << " size:" << meta.size(); + args["meta"] = meta; + std::string result = cs.curl_post(url.c_str(), args); + + if (result == "") { + LOG(ERROR) << "curl get error!"; + return false; + } + + LOG(INFO) << "curl result:" << result.c_str(); + + Json::Reader reader(Json::Features::strictMode()); + Json::Value val; + + if (!reader.parse(result, val)) { + LOG(ERROR) << "parse result json error!"; + return false; + } + + if (!val.isObject()) { + LOG(ERROR) << "no valild json error!"; + return false; + } + + if (val["success"].isNull() || !val["success"].isString()) { + LOG(ERROR) << "parse field success error!"; + return false; + } + + std::string success = val["success"].asString(); + + if (success != "0") { + LOG(ERROR) << "parse field success error!" << success.c_str(); + return false; + } + + LOG(INFO) << "curl post ok"; + return true; +} + +bool CROVLBuilderIncremental::read_last_meta_from_local() { + char file[MAX_DATA_DIR_LEN * 2]; + + snprintf(file, + sizeof(file), + "%s/../../meta_info/%s_%s_%s_%s.json", + _data_dir, + _last_version.c_str(), + _depend_version.c_str(), + _shard_id.c_str(), + _split_id.c_str()); + + // read from local meta file + std::string input_meta; + Json::Reader meta_reader(Json::Features::strictMode()); + Json::Value meta; + + std::ifstream ifs; + ifs.open(file); + if (!ifs) { + LOG(ERROR) << "open file failed! " << file; + return false; + } + + if (!meta_reader.parse(ifs, meta)) { + LOG(ERROR) << "parse meta json error!"; + return false; + } + ifs.close(); + + if (!meta.isObject()) { + LOG(ERROR) << "parse meta json error!"; + return false; + } + + if (meta["data_len_list"].isNull() || !meta["data_len_list"].isArray()) { + LOG(ERROR) << "parse data_len_list json error !"; + return false; + } + + Json::Value data_len_list = meta["data_len_list"]; + _data_file = data_len_list.size(); + + if (_data_file == 0) { + LOG(ERROR) << "data len list size is 0 !"; + return false; + } + + for (int i = 0; i < static_cast(_data_file); ++i) { + LOG(INFO) << "data_len:" << data_len_list[i].asString().c_str(); + + try { + _data_file_list.push_back( + boost::lexical_cast(data_len_list[i].asString())); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + if (meta["index_len_list"].isNull() || !meta["index_len_list"].isArray()) { + LOG(ERROR) << "parse index_len_list json error!"; + return false; + } + + Json::Value index_len_list = meta["index_len_list"]; + _index_file_num = index_len_list.size(); + + if (_index_file_num == 0) { + LOG(ERROR) << "index len list size is 0!"; + return false; + } + + for (uint32_t i = 0; i < _index_file_num; ++i) { + LOG(INFO) << "index_len:" << index_len_list[i].asString().c_str(); + + try { + _index_file_list.push_back( + boost::lexical_cast(index_len_list[i].asString())); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + if (meta["index_total_count"].isNull() || + !meta["index_total_count"].isString()) { + LOG(ERROR) << "parse index_total_count json error!"; + return false; + } + + LOG(INFO) << "index_total_count:" + << meta["index_total_count"].asString().c_str(); + try { + _count = + boost::lexical_cast(meta["index_total_count"].asString()); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + + return true; +} + +bool CROVLBuilderIncremental::write_cur_meta_to_local() { + char file[MAX_DATA_DIR_LEN * 2]; + std::string meta_path = _data_dir; + meta_path = meta_path + "/../../meta_info"; + if (!checkDirectory(meta_path)) { + LOG(ERROR) << "create meta_path path failed:" << meta_path.c_str(); + return false; + } + snprintf(file, + sizeof(file), + "%s/%s_%s_%s_%s.json", + meta_path.c_str(), + _cur_version.c_str(), + _depend_version.c_str(), + _shard_id.c_str(), + _split_id.c_str()); + + Json::Value meta; + + try { + meta["index_total_count"] = boost::lexical_cast(_count); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + + Json::Value data; + + for (size_t i = 0; i < _data_file_list.size(); ++i) { + try { + data.append(boost::lexical_cast(_data_file_list[i])); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + meta["data_len_list"] = data; + + Json::Value index; + + for (size_t i = 0; i < _index_file_list.size(); ++i) { + try { + index.append(boost::lexical_cast(_index_file_list[i])); + } catch (boost::bad_lexical_cast &e) { + LOG(ERROR) << "bad lexical cast:" << e.what(); + return false; + } + } + + meta["index_len_list"] = index; + + std::ofstream ofs; + ofs.open(file); + if (!ofs) { + LOG(ERROR) << "open file failed!" << file; + return false; + } + ofs << meta.toStyledString(); + ofs.close(); + return true; +} diff --git a/core/cube/cube-builder/src/curl_simple.cpp b/core/cube/cube-builder/src/curl_simple.cpp new file mode 100644 index 0000000000000000000000000000000000000000..e5cc993792777d4dc072fc8b777431c8da0f2f5b --- /dev/null +++ b/core/cube/cube-builder/src/curl_simple.cpp @@ -0,0 +1,159 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-builder/include/cube-builder/curl_simple.h" +#include +#include +#include +#include +#include +#include +#include + +const size_t BUFFER_SIZE = 9096; + +CurlSimple::CurlSimple() { _p_curl = curl_easy_init(); } + +CurlSimple::~CurlSimple() { curl_easy_cleanup(_p_curl); } + +/* * + * @method write_callback + * @para: + * contents, the pointer response data, it will cast to information you + * need + * size * nmemb is the memory size of contents + * userp, the poinser user return info + * @return: + * size_t must return size * nmemb, or it was failed + * */ +size_t CurlSimple::write_callback(void *contents, + size_t size, + size_t nmemb, + void *userp) { + size_t realsize = size * nmemb; + snprintf(static_cast(userp), + BUFFER_SIZE, + "%s", + static_cast(contents)); + return realsize; +} // end write_callback + /* * + * @method curl_get + * @para: + * _p_curl, the pointer of CURL, + * url , string, input url string with get parameters + * @return: + * void + * */ +std::string CurlSimple::curl_get(const char *url) { + char buffer[BUFFER_SIZE]; + CURLcode res; + /* specify URL to get */ + curl_easy_setopt(_p_curl, CURLOPT_URL, url); + /* send all data to this function */ + curl_easy_setopt(_p_curl, CURLOPT_WRITEFUNCTION, CurlSimple::write_callback); + /* we pass our 'chunk' struct to the callback function */ + curl_easy_setopt(_p_curl, CURLOPT_WRITEDATA, static_cast(buffer)); + /* some servers don't like requests that are made without a user-agent + field, so we provide one */ + curl_easy_setopt(_p_curl, CURLOPT_USERAGENT, "libcurl-agent/1.0"); + /* get it! */ + res = curl_easy_perform(_p_curl); + + /* check for errors */ + if (res != CURLE_OK) { + LOG(ERROR) << "curl_easy_perform() failed: " << curl_easy_strerror(res); + return ""; + } else { + /* + * Now, our chunk.memory points to a memory block that is chunk.size + * bytes big and contains the remote file. + * + * Do something nice with it! + */ + return buffer; + } +} // end curl_get + /* * + * @method curl_post + * @para: + * _p_curl, the pointer of CURL, + * url , the input url string without post parameters + * para_map, std::map the input post parameters + * @return: + * void + * */ +std::string CurlSimple::curl_post( + const char *url, const std::map ¶_map) { + char buffer[BUFFER_SIZE]; + CURLcode res; + std::string para_url = ""; + std::map::const_iterator para_iterator; + bool is_first = true; + + for (para_iterator = para_map.begin(); para_iterator != para_map.end(); + para_iterator++) { + if (is_first) { + is_first = false; + } else { + para_url.append("&"); + } + + std::string key = para_iterator->first; + std::string value = para_iterator->second; + para_url.append(key); + para_url.append("="); + para_url.append(value); + } + + LOG(INFO) << "para_url=" << para_url.c_str() << " size:" << para_url.size(); + + /* specify URL to get */ + curl_easy_setopt(_p_curl, CURLOPT_URL, url); + /* send all data to this function */ + curl_easy_setopt(_p_curl, CURLOPT_WRITEFUNCTION, CurlSimple::write_callback); + + /* send all data to this function */ + curl_easy_setopt(_p_curl, CURLOPT_POSTFIELDS, para_url.c_str()); + /* we pass our 'chunk' struct to the callback function */ + curl_easy_setopt( + _p_curl, CURLOPT_WRITEDATA, reinterpret_cast(buffer)); + /* some servers don't like requests that are made without a user-agent + field, so we provide one */ + curl_easy_setopt(_p_curl, CURLOPT_USERAGENT, "libcurl-agent/1.0"); + /* get it! */ + int retry_num = 3; + bool is_succ = false; + + for (int i = 0; i < retry_num; ++i) { + res = curl_easy_perform(_p_curl); + + /* check for errors */ + if (res != CURLE_OK) { + std::cerr << "curl_easy_perform() failed:" << curl_easy_strerror(res) + << std::endl; + } else { + /* + * Now, our chunk.memory points to a memory block that is chunk.size + * bytes big and contains the remote file. + * + * Do something nice with it! + */ + is_succ = true; + break; + } + } + + return is_succ ? buffer : ""; +} diff --git a/core/cube/cube-builder/src/main.cpp b/core/cube/cube-builder/src/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..dbf4cfc00989f324f0574d0efce88b96642f9265 --- /dev/null +++ b/core/cube/cube-builder/src/main.cpp @@ -0,0 +1,135 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include "butil/logging.h" +#include "core/cube/cube-builder/include/cube-builder/builder_job.h" +#include "core/cube/cube-builder/include/cube-builder/crovl_builder_increment.h" +#include "core/cube/cube-builder/include/cube-builder/util.h" + +DEFINE_string(dict_name, "", "dict name, no need"); +DEFINE_string(input_path, "", "source data input path"); +DEFINE_string(output_path, "", "source data input path"); + +DEFINE_string(job_mode, "base", "job mode base/delta default:base"); +DEFINE_int32(last_version, 0, "last version, job mode delta need"); +DEFINE_int32(cur_version, 0, "current version, no need"); +DEFINE_int32(depend_version, 0, "depend version, job mode delta need"); +DEFINE_int32(shard_num, -1, "shard num"); + +DEFINE_string(master_address, "", "master address, no need"); +DEFINE_bool(only_build, true, "wheather build need transfer"); + +int main(int argc, char *argv[]) { + google::SetVersionString("1.0.0.0"); + google::SetUsageMessage("Usage : ./cube-builder --help "); + google::ParseCommandLineFlags(&argc, &argv, true); + google::InitGoogleLogging(argv[0]); + google::SetLogDestination(google::GLOG_INFO, "./log_"); + google::SetStderrLogging(google::GLOG_WARNING); + + LOG(INFO) << "start"; + + string last_version = std::to_string(FLAGS_last_version); + string cur_version = std::to_string(FLAGS_cur_version); + string depend_version = std::to_string(FLAGS_depend_version); + + if (FLAGS_input_path == "" || FLAGS_output_path == "" || + FLAGS_shard_num == -1) { + LOG(ERROR) << "Param error! Usage: " << argv[0] << " --help"; + return -1; + } + if (FLAGS_job_mode == "base") { + if (FLAGS_only_build) { + time_t t; + time(&t); + cur_version = std::to_string(t); + depend_version = cur_version; + } + + } else if (FLAGS_job_mode == "delta") { + if (FLAGS_last_version == 0 || FLAGS_depend_version == 0) { + LOG(ERROR) << "Param error! need last_version and depend_version! Usage: " + << argv[0] << " --help"; + return -1; + } else { + if (FLAGS_only_build) { + time_t t; + time(&t); + cur_version = std::to_string(t); + } + } + } else { + LOG(ERROR) << "Job mode error! Usage: " << argv[0] << " --help"; + return -1; + } + + Job job; + job.set_dict_name(FLAGS_dict_name); + job.set_shard_num(FLAGS_shard_num); + job.set_input_path(FLAGS_input_path); + job.set_output_path(FLAGS_output_path + "/" + depend_version + "_" + + cur_version); + job.set_job_mode(FLAGS_job_mode); + + vector files; + getAllFiles(job.get_input_path(), &files); + + if (!checkDirectory(job.get_output_path())) { + LOG(ERROR) << "create output_path path failed: " + << job.get_output_path().c_str(); + return -1; + } + + vector reduces; + for (auto i = 0; i < job.get_shard_num(); i++) { + string tar_path = job.get_output_path() + "/" + job.get_dict_name() + + "_part" + std::to_string(i) + ".tar"; + string build_path = job.get_output_path() + "/" + job.get_dict_name() + + "_part" + std::to_string(i); + + CROVLBuilderIncremental *_builder = new CROVLBuilderIncremental(); + if (!_builder->Init(IT_HASH, + MAX_BLOCK_SIZE, + job.get_job_mode().c_str(), + build_path.c_str(), + tar_path.c_str(), + job.get_dict_name().c_str(), + std::to_string(i), + std::to_string(0), + last_version, + cur_version, + depend_version, + FLAGS_master_address.c_str())) { + LOG(ERROR) << "CROVLBuilderIncremental init failed " << build_path; + return -1; + } + reduces.push_back(_builder); + } + + for (auto file : files) { + mapFileLocal(job, file, reduces); + LOG(INFO) << "next file to reduce!"; + } + for (auto reduce : reduces) { + reduce->done(); + reduce->archive(); + reduce->md5sum(); + } + google::ShutdownGoogleLogging(); + return 0; +} diff --git a/core/cube/cube-builder/src/seqfile_reader.cpp b/core/cube/cube-builder/src/seqfile_reader.cpp new file mode 100644 index 0000000000000000000000000000000000000000..cc3342ed039e7bf28eda1dffb8c864afcd9bb606 --- /dev/null +++ b/core/cube/cube-builder/src/seqfile_reader.cpp @@ -0,0 +1,150 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-builder/include/cube-builder/seqfile_reader.h" +#include +#include "butil/logging.h" +#include "core/cube/cube-builder/include/cube-builder/vtext.h" + +int SequenceFileRecordReader::open() { + if (_raw_reader->open() != 0) { + return -1; + } + LOG(INFO) << "open sequence file ok! file:" << _path.c_str(); + return 0; +} +int SequenceFileRecordReader::close() { + if (_raw_reader->close() != 0) { + return -1; + } + LOG(INFO) << "close sequence file ok! file:" << _path.c_str(); + return 0; +} +int SequenceFileRecordReader::next(Record* record) { + uint32_t record_len = 0; + int64_t ret = _raw_reader->read(&record_len); + if (ret == 0) { + return 1; // ?????1??????????????? + } else if (ret != sizeof(record_len)) { + LOG(ERROR) << "read sequence file:" << _path + << " record(record_len) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + record->record_len = static_cast(ntohl(record_len)); + // got marker + if (record->record_len == -1) { + std::string marker; + if ((ret = _raw_reader->read_buf(&marker, 16)) != 16) { + LOG(ERROR) << "read sequence file:" << _path + << " record(marker) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + if (marker != record->sync_marker) { + LOG(ERROR) << "read sequence file:" << _path + << " record(sync_marker) error!"; + return -1; + } + if ((ret = _raw_reader->read(&record->record_len)) != + sizeof(record->record_len)) { + LOG(ERROR) << "read sequence file:" << _path + << " record(len) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + record->record_len = static_cast(ntohl(record->record_len)); + } + uint32_t key_len = 0; + if ((ret = _raw_reader->read(&key_len)) != sizeof(key_len)) { + LOG(ERROR) << "read sequence file:" << _path + << " record(key_len) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + record->key_len = static_cast(ntohl(key_len)); + if ((ret = _raw_reader->read_buf(&record->key, record->key_len)) != + record->key_len) { + LOG(ERROR) << "read sequence file:" << _path + << " record(key_len) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + if ((ret = _raw_reader->read_buf(&record->value, + record->record_len - record->key_len)) != + (record->record_len - record->key_len)) { + LOG(ERROR) << "read sequence file:" << _path + << " record(value_len) errno:" << ret + << ", errmsg:" << _raw_reader->errno_to_str(ret); + return -1; + } + return 0; +} + +int SequenceFileRecordReader::read_header() { + LOG(INFO) << "start to read sequence file header:" << _path; + char version[4]; + if (_raw_reader->read_buf(&version, 4) != 4) { + LOG(ERROR) << "read sequence file header(version) error:" << _path; + return -1; + } + _header.version = version[3]; + if (!VString::read_string(_raw_reader, &_header.key_class)) { + LOG(ERROR) << "read sequence file header(key_class) error:" << _path; + return -1; + } + if (!VString::read_string(_raw_reader, &_header.value_class)) { + LOG(ERROR) << "read sequence file header(value_class) error:" << _path; + return -1; + } + if (_raw_reader->read(&_header.is_compress) != sizeof(bool)) { + LOG(ERROR) << "read sequence file header(is_compress) error:" << _path; + return -1; + } + if (_raw_reader->read(&_header.is_block_compress) != sizeof(bool)) { + LOG(ERROR) << "read sequence file header(is_block_compress) error:" + << _path; + return -1; + } + if (_header.is_compress) { + if (!VString::read_string(_raw_reader, &_header.compress_class)) { + LOG(ERROR) << "read sequence file header(compress_class) error:" << _path; + return -1; + } + } + int32_t meta_cnt = 0; + if (_raw_reader->read(&meta_cnt) != sizeof(int32_t)) { + LOG(ERROR) << "read sequence file header(meta_cnt) error:" << _path; + return -1; + } + _header.metas.resize(meta_cnt); + for (int32_t i = 0; i != meta_cnt; ++i) { + if (!VString::read_string(_raw_reader, &_header.metas[i].key)) { + LOG(ERROR) << "read sequence file header(meta_key) error:" << _path; + return -1; + } + if (!VString::read_string(_raw_reader, &_header.metas[i].value)) { + LOG(ERROR) << "read sequence file header(meta_value) error:" << _path; + return -1; + } + } + if (_raw_reader->read_buf(&_header.sync_marker, 16) != 16) { + LOG(ERROR) << "read sequence file header(sync_marker) error:" << _path; + return -1; + } + + LOG(INFO) << "sync_marker:" << _header.sync_marker; + LOG(INFO) << "read sequence file header ok:" << _path; + return 0; +} diff --git a/core/cube/cube-builder/src/util.cpp b/core/cube/cube-builder/src/util.cpp new file mode 100644 index 0000000000000000000000000000000000000000..e99fdcd44df7074b77c1e68f7dea5e40ba1630c2 --- /dev/null +++ b/core/cube/cube-builder/src/util.cpp @@ -0,0 +1,77 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-builder/include/cube-builder/util.h" +#include +#include +#include +#include +#include +#include +#include "butil/logging.h" + +void getAllFiles(std::string path, std::vector *files) { + DIR *dir; + struct dirent *ptr; + if ((dir = opendir(path.c_str())) == NULL) { + perror("Open dri error..."); + exit(1); + } + while ((ptr = readdir(dir)) != NULL) { + if (strcmp(ptr->d_name, ".") == 0 || strcmp(ptr->d_name, "..") == 0) { + continue; + } else if ((ptr->d_type) == 8) { // file + if (ptr->d_name[0] != '.') files->push_back(path + "/" + ptr->d_name); + } else if (ptr->d_type == 10) { // link file + continue; + } else if (ptr->d_type == 4) { + getAllFiles(path + "/" + ptr->d_name, files); + } + } + closedir(dir); +} + +std::string string_to_hex(const std::string &input) { + static const char *const lut = "0123456789ABCDEF"; + size_t len = input.length(); + std::string output; + output.reserve(2 * len); + for (size_t i = 0; i < len; ++i) { + const unsigned char c = input[i]; + output.push_back(lut[c >> 4]); + output.push_back(lut[c & 15]); + } + return output; +} + +bool checkDirectory(const std::string folder) { + LOG(INFO) << "check dir:" << folder; + if (access(folder.c_str(), F_OK) == 0) { + return 1; + } + LOG(WARNING) << "no dir will mkdir:" << folder; + return (mkdir(folder.c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) == 0); +} + +void CmdTarfiles(const std::string folder) { + std::string cmd = "cd " + folder + " && tar -cvPf " + folder + ".tar ."; + LOG(INFO) << "tar file cmd:" << cmd; + system(cmd.c_str()); +} + +void CmdMd5sum(const std::string folder) { + std::string cmd = "md5sum " + folder + ".tar > " + folder + ".tar.md5"; + LOG(INFO) << "md5sum file cmd:" << cmd; + system(cmd.c_str()); +} diff --git a/cube/cube-builder/tool/kv_to_seqfile.py b/core/cube/cube-builder/tool/kv_to_seqfile.py similarity index 100% rename from cube/cube-builder/tool/kv_to_seqfile.py rename to core/cube/cube-builder/tool/kv_to_seqfile.py diff --git a/cube/cube-builder/tool/kvtool.py b/core/cube/cube-builder/tool/kvtool.py similarity index 100% rename from cube/cube-builder/tool/kvtool.py rename to core/cube/cube-builder/tool/kvtool.py diff --git a/cube/cube-builder/tool/source/file.txt b/core/cube/cube-builder/tool/source/file.txt similarity index 100% rename from cube/cube-builder/tool/source/file.txt rename to core/cube/cube-builder/tool/source/file.txt diff --git a/cube/cube-server/CMakeLists.txt b/core/cube/cube-server/CMakeLists.txt similarity index 100% rename from cube/cube-server/CMakeLists.txt rename to core/cube/cube-server/CMakeLists.txt diff --git a/cube/cube-server/conf/gflags.conf b/core/cube/cube-server/conf/gflags.conf similarity index 100% rename from cube/cube-server/conf/gflags.conf rename to core/cube/cube-server/conf/gflags.conf diff --git a/core/cube/cube-server/include/cube/control.h b/core/cube/cube-server/include/cube/control.h new file mode 100644 index 0000000000000000000000000000000000000000..19ba793ce6be2e98578f0ee926f45934d44acadc --- /dev/null +++ b/core/cube/cube-server/include/cube/control.h @@ -0,0 +1,63 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include + +#include "core/cube/cube-server/control.pb.h" + +#include "butil/third_party/rapidjson/document.h" +#include "butil/third_party/rapidjson/prettywriter.h" +#include "butil/third_party/rapidjson/stringbuffer.h" + +namespace rec { +namespace mcube { + +class Control : public ControlService { + public: + Control(); + + virtual ~Control(); + + virtual void cmd(::google::protobuf::RpcController* controller, + const ::rec::mcube::HttpRequest* request, + ::rec::mcube::HttpResponse* response, + ::google::protobuf::Closure* done); + + private: + int handle_status(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, + BUTIL_RAPIDJSON_NAMESPACE::Document* res); + + int handle_reload_base(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, + const std::string& v_path); + int handle_reload_patch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, + const std::string& v_path); + + int handle_bg_load_base(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, + const std::string& v_path); + int handle_bg_load_patch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, + const std::string& v_path); + + int handle_bg_unload(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); + + int handle_bg_switch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); + + int handle_enable(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); + + std::mutex _cmd_mutex; +}; // class Control + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-server/include/cube/cube_bvar.h b/core/cube/cube-server/include/cube/cube_bvar.h similarity index 100% rename from cube/cube-server/include/cube/cube_bvar.h rename to core/cube/cube-server/include/cube/cube_bvar.h diff --git a/core/cube/cube-server/include/cube/dict.h b/core/cube/cube-server/include/cube/dict.h new file mode 100644 index 0000000000000000000000000000000000000000..7535400857b35ce094f233328f6a70a91de3b25b --- /dev/null +++ b/core/cube/cube-server/include/cube/dict.h @@ -0,0 +1,96 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include + +#include +#include +#include +#include + +#include "core/cube/cube-server/include/cube/rw_lock.h" +#include "core/cube/cube-server/include/cube/slim_hash_map.h" +#include "core/cube/cube-server/include/cube/virtual_dict.h" + +namespace rec { +namespace mcube { + +class Dict : public VirtualDict { + public: + Dict(); + + virtual ~Dict(); + + /* + void set_base_dict(const Dict * dict){ + _base_dict = dict; + } + */ + + virtual void set_base_dict(const VirtualDict* dict) { + _base_dict = static_cast(dict); + } + + int load(const std::string& dict_path, + bool in_mem, + const std::string& v_path); + + int destroy(); + + bool seek(uint64_t key, char* buff, uint64_t* buff_size); + + const std::string& version(); // no lock, used by framework seek + + std::string guard_version(); + + void atom_inc_seek_num(); + + void atom_dec_seek_num(); + + uint32_t atom_seek_num(); + + private: + int load_index(const std::string& dict_path, const std::string& v_path); + + int load_data(const std::string& dict_path, const std::string& v_path); + + int load_data_mmap(const std::string& dict_path, const std::string& v_path); + + void set_version(const std::string& v_path); + + private: + struct DataBlock { + DataBlock() : size(0), fd(-1) {} + + std::shared_ptr s_data; + uint32_t size; + int fd; + }; + + private: + // boost::unordered_map _table; + slim_hash_map _slim_table; + std::vector _block_set; + std::atomic _seek_num; + const Dict* _base_dict; + std::string _version; + RWLock _rw_lock; +}; // class Dict + +typedef std::shared_ptr DictPtr; + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/include/cube/dict_set.h b/core/cube/cube-server/include/cube/dict_set.h new file mode 100644 index 0000000000000000000000000000000000000000..ef2d5ffb9180176b0498463ac71b96061d4e6ee7 --- /dev/null +++ b/core/cube/cube-server/include/cube/dict_set.h @@ -0,0 +1,62 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include + +#include "core/cube/cube-server/include/cube/dict.h" +#include "core/cube/cube-server/include/cube/virtual_dict.h" + +namespace rec { +namespace mcube { + +class DictSet : public VirtualDict { + public: + explicit DictSet(int dict_split); + + virtual ~DictSet(); + + virtual int load(const std::vector& dict_path, + bool in_mem, + const std::string& v_path); + + virtual int destroy(); + + virtual const std::string& version(); + + virtual std::string guard_version(); + + virtual void set_base_dict(const VirtualDict* dict); + + virtual bool seek(uint64_t key, char* buff, uint64_t* buff_size); + + virtual void atom_inc_seek_num(); + + virtual void atom_dec_seek_num(); + + virtual uint32_t atom_seek_num(); + + private: + std::atomic _seek_num{0}; + std::vector _dict_set; + int _dict_split{0}; + std::string _version{""}; + RWLock _rw_lock; +}; // DictSet + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-server/include/cube/error.h b/core/cube/cube-server/include/cube/error.h similarity index 100% rename from cube/cube-server/include/cube/error.h rename to core/cube/cube-server/include/cube/error.h diff --git a/core/cube/cube-server/include/cube/framework.h b/core/cube/cube-server/include/cube/framework.h new file mode 100644 index 0000000000000000000000000000000000000000..b76f0a5c3f79f168712fa0127246183aba4eb870 --- /dev/null +++ b/core/cube/cube-server/include/cube/framework.h @@ -0,0 +1,128 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include + +#include "butil/third_party/rapidjson/document.h" +#include "butil/third_party/rapidjson/prettywriter.h" +#include "butil/third_party/rapidjson/stringbuffer.h" + +#include "core/cube/cube-server/cube.pb.h" +#include "core/cube/cube-server/include/cube/rw_lock.h" +#include "core/cube/cube-server/include/cube/virtual_dict.h" + +namespace rec { +namespace mcube { + +struct Status { + enum StatusCode { F_RUNNING = 0, F_LOADING }; +}; + +class Framework { + public: + static Framework* instance(); + + public: + ~Framework(); + + int init(uint32_t dict_split, bool in_mem); + + int destroy(); + + int status(BUTIL_RAPIDJSON_NAMESPACE::Document* res); + + int seek(const DictRequest* req, DictResponse* res); + + int reload(const std::string& v_path); + + int patch(const std::string& v_path); + + // load dict base + int bg_load_base(const std::string& v_path); + + // load dict patch + int bg_load_patch(const std::string& v_path); + + int bg_unload(); + + int bg_switch(); + + int enable(const std::string& version); + + private: + void init_dict(uint32_t dict_split); + + VirtualDict* create_dict(); + + private: + VirtualDict* get_cur_dict() { + _rw_lock.r_lock(); + VirtualDict* dict = _dict[_dict_idx]; + dict->atom_inc_seek_num(); + _rw_lock.unlock(); + return dict; + } + + std::string get_cur_version() { + _rw_lock.r_lock(); + VirtualDict* dict = _dict[_dict_idx]; + std::string version = dict->version(); + _rw_lock.unlock(); + return version; + } + + VirtualDict* get_bg_dict() const { return _dict[1 - _dict_idx]; } + + std::string get_bg_version() { + _bg_rw_lock.r_lock(); + VirtualDict* dict = _dict[1 - _dict_idx]; + std::string version = ""; + if (dict) { + version = dict->guard_version(); + } + _bg_rw_lock.unlock(); + return version; + } + + void set_bg_dict(VirtualDict* dict) { + _bg_rw_lock.w_lock(); + _dict[1 - _dict_idx] = dict; + _bg_rw_lock.unlock(); + } + + void release(VirtualDict* dict); + + private: + Framework() : _dict_idx(0) {} + Framework(const Framework&) {} + + private: + VirtualDict* _dict[2]{nullptr, nullptr}; + int _dict_idx{0}; + std::string _dict_path{""}; + bool _in_mem{true}; + std::atomic_int _status; + RWLock _rw_lock; + RWLock _bg_rw_lock; + uint32_t _max_val_size{0}; + uint32_t _dict_split{0}; + std::vector _dict_set_path; +}; // class Framework + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/include/cube/recycle.h b/core/cube/cube-server/include/cube/recycle.h new file mode 100644 index 0000000000000000000000000000000000000000..acf3db3037b2ddbb6b55ad85539a1720a2e2b58f --- /dev/null +++ b/core/cube/cube-server/include/cube/recycle.h @@ -0,0 +1,76 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include + +#include "core/cube/cube-server/include/cube/dict.h" + +namespace rec { +namespace mcube { + +class Recycle { + public: + static Recycle* get_instance(); + + public: + ~Recycle(); + + /** + * @brief init recycle module + */ + int init(); + + /** + * @brief destroy recycle module and wait recycle quit + */ + int destroy(); + + /** + * @brief send dict to recycle module + */ + // void recycle(Dict* dict); + + /** + * @brief send dict to recycle module + */ + void recycle(VirtualDict* dict); + + private: + static void* recycle_func(void*); + + Recycle(); + + /** + * @brief lock recycle list + */ + void lock(); + + /** + * @brief unlock recycle list + */ + void unlock(); + + private: + pthread_t _recycle_thread; + pthread_mutex_t _recycle_mutex; + // std::queue _recycle_list; + std::queue _recycle_list; + bool _running; +}; // class Recycle + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-server/include/cube/rw_lock.h b/core/cube/cube-server/include/cube/rw_lock.h similarity index 100% rename from cube/cube-server/include/cube/rw_lock.h rename to core/cube/cube-server/include/cube/rw_lock.h diff --git a/core/cube/cube-server/include/cube/server.h b/core/cube/cube-server/include/cube/server.h new file mode 100644 index 0000000000000000000000000000000000000000..3e0d451368ae5132eed77964caea0ac9bec17151 --- /dev/null +++ b/core/cube/cube-server/include/cube/server.h @@ -0,0 +1,35 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include "core/cube/cube-server/cube.pb.h" + +namespace rec { +namespace mcube { + +class Server : public DictService { + public: + Server(); + + virtual ~Server(); + + virtual void seek(::google::protobuf::RpcController* controller, + const ::rec::mcube::DictRequest* request, + ::rec::mcube::DictResponse* response, + ::google::protobuf::Closure* done); +}; + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-server/include/cube/slim_hash_map.h b/core/cube/cube-server/include/cube/slim_hash_map.h similarity index 100% rename from cube/cube-server/include/cube/slim_hash_map.h rename to core/cube/cube-server/include/cube/slim_hash_map.h diff --git a/cube/cube-server/include/cube/util.h b/core/cube/cube-server/include/cube/util.h similarity index 100% rename from cube/cube-server/include/cube/util.h rename to core/cube/cube-server/include/cube/util.h diff --git a/core/cube/cube-server/include/cube/virtual_dict.h b/core/cube/cube-server/include/cube/virtual_dict.h new file mode 100644 index 0000000000000000000000000000000000000000..f38577b55ca64b6b1b4a032458baab79af7d8bee --- /dev/null +++ b/core/cube/cube-server/include/cube/virtual_dict.h @@ -0,0 +1,66 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include + +#include "core/cube/cube-server/include/cube/error.h" + +namespace rec { +namespace mcube { + +class VirtualDict { + public: + VirtualDict() {} + + virtual ~VirtualDict() {} + + virtual int load(const std::string& /*dict_path*/, + bool /*in_mem*/, + const std::string& /*v_path*/) { + return E_NOT_IMPL; + } + + virtual int load(const std::vector& /*dict_path*/, + bool /*in_mem*/, + const std::string& /*v_path*/) { + return E_NOT_IMPL; + } + + virtual int destroy() { return E_NOT_IMPL; } + + virtual const std::string& version() { + static std::string UNKNOWN_VERSION = "UNKNOWN"; + return UNKNOWN_VERSION; + } + + virtual std::string guard_version() { + static std::string UNKNOWN_VERSION = "UNKNOWN"; + return UNKNOWN_VERSION; + } + + virtual void set_base_dict(const VirtualDict* dict) = 0; + + virtual bool seek(uint64_t key, char* buff, uint64_t* buff_size) = 0; + + virtual void atom_inc_seek_num() = 0; + + virtual void atom_dec_seek_num() = 0; + virtual uint32_t atom_seek_num() = 0; +}; // class VirtualDict + +} // namespace mcube +} // namespace rec diff --git a/cube/cube-server/proto/control.proto b/core/cube/cube-server/proto/control.proto similarity index 100% rename from cube/cube-server/proto/control.proto rename to core/cube/cube-server/proto/control.proto diff --git a/cube/cube-server/proto/cube.proto b/core/cube/cube-server/proto/cube.proto similarity index 100% rename from cube/cube-server/proto/cube.proto rename to core/cube/cube-server/proto/cube.proto diff --git a/core/cube/cube-server/src/control.cpp b/core/cube/cube-server/src/control.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4ba72af06a0fc84694637b27ce8426a852721343 --- /dev/null +++ b/core/cube/cube-server/src/control.cpp @@ -0,0 +1,168 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include + +#include "core/cube/cube-server/include/cube/control.h" +#include "core/cube/cube-server/include/cube/framework.h" + +namespace rec { +namespace mcube { + +using ::rec::mcube::HttpRequest; +using ::rec::mcube::HttpResponse; + +using ::google::protobuf::RpcController; +using ::google::protobuf::Closure; + +using ::brpc::HttpHeader; +using ::brpc::URI; +using ::brpc::Controller; +using ::brpc::ClosureGuard; + +using BUTIL_RAPIDJSON_NAMESPACE::Document; + +std::string rapidjson_value_to_string( + const BUTIL_RAPIDJSON_NAMESPACE::Value& value) { + BUTIL_RAPIDJSON_NAMESPACE::StringBuffer buffer; + BUTIL_RAPIDJSON_NAMESPACE::PrettyWriter< + BUTIL_RAPIDJSON_NAMESPACE::StringBuffer> + writer(buffer); + value.Accept(writer); + return buffer.GetString(); +} + +Control::Control() {} + +Control::~Control() {} + +void Control::cmd(::google::protobuf::RpcController* cntl_base, + const ::rec::mcube::HttpRequest* /*request*/, + ::rec::mcube::HttpResponse* /*response*/, + ::google::protobuf::Closure* done) { + ClosureGuard done_guard(done); + Controller* cntl = static_cast(cntl_base); + + std::string cmd_str = cntl->request_attachment().to_string(); + Document cmd; + cmd.Parse(cmd_str.c_str()); + LOG(INFO) << "HANDLE CMD: " << cmd_str; + if (!cmd.IsObject()) { + LOG(ERROR) << "parse command failed"; + cntl->http_response().set_status_code(brpc::HTTP_STATUS_BAD_REQUEST); + return; + } + + if (!cmd.HasMember("cmd") || !cmd["cmd"].IsString()) { + cntl->http_response().set_status_code(brpc::HTTP_STATUS_BAD_REQUEST); + return; + } + + std::string cmd_name = cmd["cmd"].GetString(); + + std::string version_path = ""; + if (cmd.HasMember("version_path") && cmd["version_path"].IsString()) { + version_path = cmd["version_path"].GetString(); + } + + int ret = 0; + Document response; + if (cmd_name.compare("status") == 0) { + ret = handle_status(cmd, &response); + } else if (_cmd_mutex.try_lock()) { + if (cmd_name.compare("reload_base") == 0) { + ret = handle_reload_base(cmd, version_path); + } else if (cmd_name.compare("reload_patch") == 0) { + ret = handle_reload_patch(cmd, version_path); + } else if (cmd_name.compare("bg_load_base") == 0) { + ret = handle_bg_load_base(cmd, version_path); + } else if (cmd_name.compare("bg_load_patch") == 0) { + ret = handle_bg_load_patch(cmd, version_path); + } else if (cmd_name.compare("bg_unload") == 0) { + ret = handle_bg_unload(cmd); + } else if (cmd_name.compare("bg_switch") == 0) { + ret = handle_bg_switch(cmd); + } else if (cmd_name.compare("enable") == 0) { + ret = handle_enable(cmd); + } else { + ret = -1; + LOG(ERROR) << "unknown cmd: " << cmd_name; + } + _cmd_mutex.unlock(); + } else { + LOG(ERROR) << "try to get cmd mutex failed cmd: " << cmd_name; + ret = -1; + } + + cntl->response_attachment().append(rapidjson_value_to_string(response)); + if (ret == 0) { + cntl->http_response().set_status_code(brpc::HTTP_STATUS_OK); + } else { + cntl->http_response().set_status_code( + brpc::HTTP_STATUS_INTERNAL_SERVER_ERROR); + } + + LOG(INFO) << "CMD DONE: " << cmd_str; + return; +} + +int Control::handle_status(const Document& /*cmd*/, Document* res) { + Framework* framework = Framework::instance(); + return framework->status(res); +} + +int Control::handle_reload_patch(const Document& /*cmd*/, + const std::string& v_path) { + Framework* framework = Framework::instance(); + return framework->patch(v_path); +} + +int Control::handle_reload_base(const Document& /*cmd*/, + const std::string& v_path) { + Framework* framework = Framework::instance(); + return framework->reload(v_path); +} + +int Control::handle_bg_load_patch(const Document& /*cmd*/, + const std::string& v_path) { + Framework* framework = Framework::instance(); + return framework->bg_load_patch(v_path); +} + +int Control::handle_bg_load_base(const Document& /*cmd*/, + const std::string& v_path) { + Framework* framework = Framework::instance(); + return framework->bg_load_base(v_path); +} + +int Control::handle_bg_unload(const Document& /*cmd*/) { + Framework* framework = Framework::instance(); + return framework->bg_unload(); +} + +int Control::handle_bg_switch(const Document& /*cmd*/) { + Framework* framework = Framework::instance(); + return framework->bg_switch(); +} + +int Control::handle_enable(const Document& cmd) { + if (!cmd.HasMember("version") || !cmd["version"].IsString()) { + return -1; + } + Framework* framework = Framework::instance(); + return framework->enable(cmd["version"].GetString()); +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/cube_bvar.cpp b/core/cube/cube-server/src/cube_bvar.cpp new file mode 100644 index 0000000000000000000000000000000000000000..035b676749a2b8a781f111d16c43eae25f7b88ac --- /dev/null +++ b/core/cube/cube-server/src/cube_bvar.cpp @@ -0,0 +1,46 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-server/include/cube/cube_bvar.h" + +namespace rec { +namespace mcube { + +bvar::IntRecorder g_keys_num; +bvar::Window g_keys_win("keys_per_request_num", + &g_keys_num, + bvar::FLAGS_bvar_dump_interval); + +bvar::Adder g_request_num("request_num"); +bvar::Window> g_request_num_minute("request_num_minute", + &g_request_num, + 60); + +bvar::IntRecorder g_data_load_time("data_load_time"); + +bvar::IntRecorder g_data_size("data_size"); + +bvar::Adder g_long_value_num("long_value_num"); +bvar::Window> g_long_value_num_minute( + "long_value_num_minute", &g_long_value_num, 60); + +bvar::Adder g_unfound_key_num("unfound_key_num"); +bvar::Window> g_unfound_key_num_minute( + "unfound_key_num_minute", &g_unfound_key_num, 60); + +bvar::Adder g_total_key_num("total_key_num"); +bvar::Window> g_total_key_num_minute( + "total_key_num_minute", &g_total_key_num, 60); +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/dict.cpp b/core/cube/cube-server/src/dict.cpp new file mode 100644 index 0000000000000000000000000000000000000000..05f401115ab5e95f8b014bf30bda71d8a10a74cb --- /dev/null +++ b/core/cube/cube-server/src/dict.cpp @@ -0,0 +1,432 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +#include "core/cube/cube-server/include/cube/cube_bvar.h" +#include "core/cube/cube-server/include/cube/dict.h" +#include "core/cube/cube-server/include/cube/error.h" +#include "core/cube/cube-server/include/cube/util.h" + +namespace rec { +namespace mcube { + +static void munmap_deleter(void* data, uint32_t size) { + if (data != MAP_FAILED) { + munmap(data, size); + } +} + +Dict::Dict() : _seek_num(0), _base_dict(NULL) {} + +Dict::~Dict() {} + +void Dict::atom_dec_seek_num() { --_seek_num; } + +void Dict::atom_inc_seek_num() { ++_seek_num; } + +uint32_t Dict::atom_seek_num() { return _seek_num; } + +int Dict::load(const std::string& dict_path, + bool in_mem, + const std::string& v_path) { + TIME_FLAG(load_start); + + int ret = load_index(dict_path, v_path); + if (ret != E_OK) { + LOG(WARNING) << "load index failed"; + return ret; + } + + if (in_mem) { + ret = load_data(dict_path, v_path); + if (ret != E_OK) { + LOG(ERROR) << "load data failed"; + return ret; + } + } else { + ret = load_data_mmap(dict_path, v_path); + if (ret != E_OK) { + LOG(ERROR) << "load data failed"; + return ret; + } + } + set_version(v_path); + TIME_FLAG(load_end); + g_data_load_time << time_diff(load_start, load_end); + return E_OK; +} + +int Dict::load_index(const std::string& dict_path, const std::string& v_path) { + std::string index_n_path(dict_path); + index_n_path.append(v_path); + index_n_path.append("/index.n"); + LOG(INFO) << "index file path: " << index_n_path; + + std::unique_ptr pf(fopen(index_n_path.c_str(), "rb"), + &fclose); + if (pf.get() == NULL) { + LOG(WARNING) << "open index: " << index_n_path << " failed"; + return E_DATA_ERROR; + } + + int type = 0; + if (fread(reinterpret_cast(&type), sizeof(int), 1, pf.get()) != 1) { + LOG(ERROR) << "index syntax error"; + return E_DATA_ERROR; + } + + uint32_t count = 0; + if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf.get()) != + 1) { + LOG(ERROR) << "index syntax error"; + return E_DATA_ERROR; + } + + uint32_t file_num = 0; + if (fread( + reinterpret_cast(&file_num), sizeof(uint32_t), 1, pf.get()) != + 1) { + LOG(ERROR) << "index syntax error"; + return E_DATA_ERROR; + } + LOG(INFO) << "index type:" << type << ", count:" << count + << ", file_num:" << file_num; + + // read file_lens begin + uint32_t file_cnt = file_num; + uint64_t len[1024]; + std::vector file_lens; + file_lens.reserve(file_num); + while (file_cnt > 0) { + uint32_t to_read = file_cnt > 1024 ? 1024 : file_cnt; + file_cnt -= to_read; + if (fread(reinterpret_cast(&len), + sizeof(uint64_t), + to_read, + pf.get()) != to_read) { + return E_DATA_ERROR; + } + for (uint32_t i = 0; i < to_read; ++i) { + file_lens.push_back(len[i]); + } + } + + if (file_lens.size() != file_num) { + LOG(ERROR) << "file_num[" << file_num << "] != file_lens size[" + << file_lens.size() << "], shouldn't happen"; + return E_DATA_ERROR; + } + + // try patch mode + size_t file_idx = 0; + if (_base_dict) { + if (_base_dict->_slim_table.check_file_len(file_lens, &file_idx)) { + LOG(INFO) << "index check file len ok in patch mode, set file_idx to " + << file_idx; + + if (_slim_table.copy_data_from(_base_dict->_slim_table) != 0) { + LOG(ERROR) << "copy data from old index failed in patch mode"; + return E_DATA_ERROR; + } + } else { + file_idx = 0; + LOG(INFO) + << "index check file len failed in patch mode, set file_idx to 0"; + } + } + + _slim_table.resize(count / 2); + + char file[1024]; + struct stat fstat; + for (; file_idx < file_num; ++file_idx) { + snprintf(file, + sizeof(file), + "%s%s/index.%lu", + dict_path.c_str(), + v_path.c_str(), + file_idx); + if (stat(file, &fstat) < 0) { + if (errno == ENOENT) { + LOG(WARNING) << "index." << file_idx << " not exist"; + _slim_table.add_file_len(0); + continue; + } + return E_DATA_ERROR; + } + if ((uint64_t)fstat.st_size != file_lens[file_idx]) { + LOG(ERROR) << "load_index failed, expect index file[" << file_idx + << "] size is " << file_lens[file_idx] << ", actual size is " + << (uint64_t)fstat.st_size; + return E_DATA_ERROR; + } + LOG(INFO) << "loading from index." << file_idx; + if (!_slim_table.load(file) || _slim_table.size() > count) { + return E_DATA_ERROR; + } + + _slim_table.add_file_len(file_lens[file_idx]); + } + + return E_OK; +} + +int Dict::load_data(const std::string& dict_path, const std::string& v_path) { + if (_base_dict) { + _block_set = _base_dict->_block_set; + } + + std::string data_n_path(dict_path); + data_n_path.append(v_path); + data_n_path.append("/data.n"); + FILE* pf = fopen(data_n_path.c_str(), "rb"); + if (pf == NULL) { + LOG(ERROR) << "open data [" << data_n_path << "] failed"; + return E_DATA_ERROR; + } + uint32_t count = 0; + if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf) != 1) { + LOG(ERROR) << "data syntax error"; + fclose(pf); + return E_DATA_ERROR; + } + + std::vector block_size; + uint64_t total_data_size = 0; + for (uint32_t i = 0; i < count; ++i) { + uint32_t size = 0; + if (fread(reinterpret_cast(&size), sizeof(uint32_t), 1, pf) != 1) { + LOG(ERROR) << "data syntax error"; + fclose(pf); + return E_DATA_ERROR; + } + block_size.push_back(size); + total_data_size += size; + } + g_data_size << (total_data_size / 1024 / 1024); + fclose(pf); + pf = NULL; + + uint32_t old_size = _block_set.size(); + for (size_t i = 0; i < old_size; ++i) { + if (_block_set[i].size != block_size[i]) { + old_size = 0; + break; + } + } + _block_set.resize(count); + for (size_t i = old_size; i < _block_set.size(); ++i) { + char data_path[1024]; + LOG(INFO) << "load from data." << i; + snprintf( + data_path, 1024, "%s%s/data.%lu", dict_path.c_str(), v_path.c_str(), i); + + FILE* data_file = fopen(data_path, "rb"); + if (data_file == NULL) { + LOG(WARNING) << "open data file [" << data_path << " failed"; + _block_set[i].s_data.reset(); + _block_set[i].size = 0; + continue; + } + + _block_set[i].s_data.reset( + reinterpret_cast(malloc(block_size[i] * sizeof(char)))); + if (_block_set[i].s_data.get() == NULL) { + LOG(ERROR) << "malloc data failed"; + fclose(data_file); + return E_OOM; + } + _block_set[i].size = block_size[i]; + + if (fread(reinterpret_cast(_block_set[i].s_data.get()), + sizeof(char), + _block_set[i].size, + data_file) != _block_set[i].size) { + LOG(ERROR) << "read data failed"; + fclose(data_file); + return E_DATA_ERROR; + } + + fclose(data_file); + } + + return E_OK; +} + +int Dict::load_data_mmap(const std::string& dict_path, + const std::string& v_path) { + std::string data_n_path(dict_path); + data_n_path.append(v_path); + data_n_path.append("/data.n"); + FILE* pf = fopen(data_n_path.c_str(), "rb"); + if (pf == NULL) { + LOG(ERROR) << "open data [" << data_n_path << "] failed"; + return E_DATA_ERROR; + } + uint32_t count = 0; + if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf) != 1) { + LOG(ERROR) << "data syntax error"; + fclose(pf); + return E_DATA_ERROR; + } + + std::vector block_size; + uint64_t total_data_size = 0; + for (uint32_t i = 0; i < count; ++i) { + uint32_t size = 0; + if (fread(reinterpret_cast(&size), sizeof(uint32_t), 1, pf) != 1) { + LOG(ERROR) << "data syntax error"; + fclose(pf); + return E_DATA_ERROR; + } + block_size.push_back(size); + total_data_size += size; + } + g_data_size << (total_data_size / 1024 / 1024); + fclose(pf); + pf = NULL; + + uint32_t old_size = _block_set.size(); + _block_set.resize(count); + for (size_t i = old_size; i < _block_set.size(); ++i) { + char data_path[1024]; + LOG(INFO) << "load from data." << i; + snprintf( + data_path, 1024, "%s%s/data.%lu", dict_path.c_str(), v_path.c_str(), i); + + int data_fd = open(data_path, + O_RDONLY | O_NONBLOCK, + S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); + if (data_fd < 0) { + LOG(WARNING) << "open data file [" << data_path << "] failed"; + _block_set[i].s_data.reset(); + _block_set[i].size = 0; + continue; + } + + _block_set[i].s_data.reset( + reinterpret_cast( + mmap(NULL, block_size[i], PROT_READ, MAP_SHARED, data_fd, 0)), + std::bind(munmap_deleter, std::placeholders::_1, block_size[i])); + + if (_block_set[i].s_data.get() == MAP_FAILED) { + LOG(WARNING) << "map data file [" << data_path << "] failed"; + _block_set[i].s_data.reset(); + _block_set[i].size = 0; + continue; + } + _block_set[i].size = block_size[i]; + _block_set[i].fd = data_fd; + } + + return E_OK; +} + +int Dict::destroy() { + for (size_t i = 0; i < _block_set.size(); ++i) { + if (_block_set[i].fd > 0) { + close(_block_set[i].fd); + _block_set[i].fd = -1; + } + _block_set[i].size = 0; + } + return E_OK; +} + +void Dict::set_version(const std::string& v_path) { + _rw_lock.w_lock(); + _version = (v_path == "") ? "" : v_path.substr(1); + _rw_lock.unlock(); +} + +const std::string& Dict::version() { return _version; } + +std::string Dict::guard_version() { + _rw_lock.r_lock(); + std::string version = _version; + _rw_lock.unlock(); + return version; +} + +bool Dict::seek(uint64_t key, char* buff, uint64_t* buff_size) { + slim_hash_map::iterator it = _slim_table.find(key); + if (it.get_node() == NULL) { + *(reinterpret_cast(buff)) = 0; + *buff_size = sizeof(uint32_t); + g_unfound_key_num << 1; + return false; + } + if (it == _slim_table.end()) { + *(reinterpret_cast(buff)) = 0; + *buff_size = sizeof(uint32_t); + return false; + } + + uint64_t flag = it->second; + uint32_t id = (uint32_t)(flag >> 32); + uint64_t addr = (uint32_t)(flag); + + if (_block_set.size() > id) { + uint32_t block_size = _block_set[id].size; + char* block_data = NULL; + block_data = _block_set[id].s_data.get(); + + if (block_data && addr + sizeof(uint32_t) <= block_size) { + uint32_t len = *(reinterpret_cast(block_data + addr)); + if (addr + len <= block_size && len >= sizeof(uint32_t)) { + uint64_t default_buffer_size = *buff_size; + + *buff_size = len - sizeof(uint32_t); + if (*buff_size > default_buffer_size) { + g_long_value_num << 1; + LOG(ERROR) << "value len is " << *buff_size + << ", larger than default_buffer_size " + << default_buffer_size; + return false; + } + memcpy(buff, + (block_data + addr + sizeof(uint32_t)), + len - sizeof(uint32_t)); + return true; + } else { + *(reinterpret_cast(buff)) = 0; + *buff_size = sizeof(uint32_t); + return false; + } + } else { + *(reinterpret_cast(buff)) = 0; + *buff_size = sizeof(uint32_t); + return false; + } + } else { + *(reinterpret_cast(buff)) = 0; + *buff_size = sizeof(uint32_t); + return false; + } + + return false; +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/dict_set.cpp b/core/cube/cube-server/src/dict_set.cpp new file mode 100644 index 0000000000000000000000000000000000000000..b0260f79a33db955d2ac3a3d75086c09503dada1 --- /dev/null +++ b/core/cube/cube-server/src/dict_set.cpp @@ -0,0 +1,91 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-server/include/cube/dict_set.h" + +namespace rec { +namespace mcube { + +DictSet::DictSet(int dict_split) : VirtualDict(), _dict_split(dict_split) { + _dict_set.resize(_dict_split); +} + +DictSet::~DictSet() {} + +void DictSet::set_base_dict(const VirtualDict* dict) { + const DictSet* dict_set = static_cast(dict); + for (size_t i = 0; i < _dict_set.size(); ++i) { + if (!_dict_set[i]) { + _dict_set[i] = std::make_shared(); + } + _dict_set[i]->set_base_dict(dict_set->_dict_set[i].get()); + } +} + +int DictSet::load(const std::vector& dict_path, + bool in_mem, + const std::string& v_path) { + if ((uint32_t)_dict_split != dict_path.size()) { + return E_DATA_ERROR; + } + + for (size_t i = 0; i < dict_path.size(); ++i) { + if (!_dict_set[i]) { + _dict_set[i] = std::make_shared(); + } + + if (_dict_set[i]->load(dict_path[i], in_mem, v_path) != E_OK) { + LOG(ERROR) << "dict split[" << i << "] load failed"; + return E_DATA_ERROR; + } + } + + _rw_lock.w_lock(); + _version = (v_path == "") ? "" : v_path.substr(1); + _rw_lock.unlock(); + + return E_OK; +} + +int DictSet::destroy() { + for (size_t i = 0; i < _dict_set.size(); ++i) { + if (_dict_set[i]->destroy() != E_OK) { + LOG(WARNING) << "dict split[" << i << "] destory failed"; + } + } + + return E_OK; +} + +const std::string& DictSet::version() { return _version; } + +std::string DictSet::guard_version() { + _rw_lock.r_lock(); + std::string version = _version; + _rw_lock.unlock(); + return version; +} + +bool DictSet::seek(uint64_t key, char* buff, uint64_t* buff_size) { + return _dict_set[key % _dict_split]->seek(key, buff, buff_size); +} + +void DictSet::atom_inc_seek_num() { ++_seek_num; } + +void DictSet::atom_dec_seek_num() { --_seek_num; } + +uint32_t DictSet::atom_seek_num() { return _seek_num; } + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/framework.cpp b/core/cube/cube-server/src/framework.cpp new file mode 100644 index 0000000000000000000000000000000000000000..b03fdebd05e44e108ce50c1fb1a44d69c04a2ec0 --- /dev/null +++ b/core/cube/cube-server/src/framework.cpp @@ -0,0 +1,339 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include "core/cube/cube-server/include/cube/cube_bvar.h" +#include "core/cube/cube-server/include/cube/dict.h" +#include "core/cube/cube-server/include/cube/dict_set.h" +#include "core/cube/cube-server/include/cube/framework.h" +#include "core/cube/cube-server/include/cube/recycle.h" + +using BUTIL_RAPIDJSON_NAMESPACE::Document; +using BUTIL_RAPIDJSON_NAMESPACE::Value; +using BUTIL_RAPIDJSON_NAMESPACE::StringRef; + +namespace { +static ::rec::mcube::Framework* g_instance = NULL; +} + +namespace rec { +namespace mcube { + +Framework* Framework::instance() { + if (g_instance == NULL) { + g_instance = new Framework(); + } + + return g_instance; +} + +Framework::~Framework() {} + +int Framework::init(uint32_t dict_split, bool in_mem) { + Recycle* rec = Recycle::get_instance(); + int ret = rec->init(); + if (ret != 0) { + LOG(ERROR) << "init recycle failed"; + return ret; + } + + /* + _dict[0] = new (std::nothrow) Dict(); + _dict[1] = NULL; + */ + init_dict(dict_split); + VirtualDict* cur_dict = _dict[_dict_idx]; + _dict_path = "./data"; + _max_val_size = 1024; + _in_mem = in_mem; + + std::string version_file = _dict_path + "/VERSION"; + std::string version_path = ""; + std::ifstream input(version_file.c_str()); + if (!std::getline(input, version_path)) { + version_path = ""; + } else { + version_path = "/" + version_path; + } + input.close(); + + LOG(INFO) << "load dict from" << _dict_path << version_path; + if (_dict_split > 1) { + _dict_set_path.clear(); + _dict_set_path.resize(_dict_split); + std::stringstream dict_set_path_buf; + for (size_t i = 0; i < _dict_split; ++i) { + dict_set_path_buf.str(std::string()); + dict_set_path_buf.clear(); + dict_set_path_buf << _dict_path << "/" << i; + _dict_set_path[i] = dict_set_path_buf.str(); + } + ret = cur_dict->load(_dict_set_path, _in_mem, version_path); + } else { + ret = cur_dict->load(_dict_path, _in_mem, version_path); + } + + if (ret != 0) { + LOG(WARNING) << "init: load dict data failed err=" << ret + << ". starting service with empty data."; + } else { + LOG(INFO) << "load dict from " << _dict_path << version_path << " done"; + } + + _status = Status::F_RUNNING; + + return 0; +} + +int Framework::destroy() { + Recycle* recycle = Recycle::get_instance(); + int ret = recycle->destroy(); + if (ret != 0) { + LOG(WARNING) << "destroy recycle failed"; + } + return 0; +} + +void Framework::init_dict(uint32_t dict_split) { + _dict_split = dict_split; + + if (_dict_split <= 1) { + _dict[0] = new (std::nothrow) Dict(); + _dict[1] = NULL; + } else { + _dict[0] = new (std::nothrow) DictSet(_dict_split); + _dict[1] = NULL; + } +} + +VirtualDict* Framework::create_dict() { + if (_dict_split > 1) { + return new (std::nothrow) DictSet(_dict_split); + } else { + return new (std::nothrow) Dict(); + } +} + +void Framework::release(VirtualDict* dict) { dict->atom_dec_seek_num(); } + +int Framework::status(Document* res) { + res->SetObject(); + Document::AllocatorType& allocator = res->GetAllocator(); + Value cur_version; + Value bg_version; + cur_version.SetString(StringRef(get_cur_version().c_str())); + bg_version.SetString(StringRef((get_bg_version().c_str()))); + res->AddMember("cur_version", cur_version, allocator); + res->AddMember("bg_version", bg_version, allocator); + res->AddMember("status", _status.load(), allocator); + return 0; +} + +int Framework::seek(const DictRequest* req, DictResponse* res) { + g_request_num << 1; + VirtualDict* cur_dict = get_cur_dict(); + char* val_buf = new char[_max_val_size]; + g_keys_num << req->keys_size(); + g_total_key_num << req->keys_size(); + + std::vector values(req->keys_size()); + for (int i = 0; i < req->keys_size(); ++i) { + values[i] = res->add_values(); + } + + for (int i = 0; i < req->keys_size(); ++i) { + uint64_t val_size = _max_val_size; + // DictValue* val = res->add_values(); + DictValue* val = values[i]; + if (cur_dict->seek(req->keys(i), val_buf, &val_size)) { + val->set_status(0); + val->set_value(val_buf, val_size); + } else { + val->set_status(-1); + val->set_value(""); + } + } + + if (req->version_required()) { + res->set_version(cur_dict->version()); + } + + // delete [] keys; + delete[] val_buf; + release(cur_dict); + return 0; +} + +int Framework::reload(const std::string& v_path) { + int ret = bg_load_base(v_path); + if (ret != 0) { + LOG(WARNING) << "background load dict base failed"; + } else { + LOG(INFO) << "background load dict base succ"; + } + + ret = bg_switch(); + if (ret != 0) { + LOG(WARNING) << "switch background dict failed"; + } else { + LOG(INFO) << "switch background dict succ"; + } + + ret = bg_unload(); + if (ret != 0) { + LOG(WARNING) << "unload background dict failed"; + } else { + LOG(INFO) << "unload background dict succ"; + } + + return ret; +} + +int Framework::patch(const std::string& v_path) { + int ret = bg_load_patch(v_path); + if (ret != 0) { + LOG(WARNING) << "background load dict patch failed"; + } else { + LOG(INFO) << "background load dict patch succ"; + } + + ret = bg_switch(); + if (ret != 0) { + LOG(WARNING) << "switch background dict failed"; + } else { + LOG(INFO) << "switch background dict succ"; + } + + ret = bg_unload(); + if (ret != 0) { + LOG(WARNING) << "unload background dict failed"; + } else { + LOG(INFO) << "unload background dict succ"; + } + + return ret; +} + +int Framework::bg_load_base(const std::string& v_path) { + int ret = bg_unload(); + if (ret != 0) { + LOG(WARNING) << "unload background dict failed"; + } + + VirtualDict* bg_dict = create_dict(); + + if (!bg_dict) { + LOG(ERROR) << "create Dict failed"; + return -1; + } + + _status = Status::F_LOADING; + if (_dict_split > 1) { + ret = bg_dict->load(_dict_set_path, _in_mem, v_path); + } else { + ret = bg_dict->load(_dict_path, _in_mem, v_path); + } + _status = Status::F_RUNNING; + if (ret != 0) { + LOG(WARNING) << "load background dict failed"; + delete bg_dict; + bg_dict = NULL; + return ret; + } else { + LOG(INFO) << "load background dict succ"; + set_bg_dict(bg_dict); + } + + return ret; +} + +int Framework::bg_load_patch(const std::string& v_path) { + int ret = bg_unload(); + if (ret != 0) { + LOG(WARNING) << "unload background dict failed"; + } + + VirtualDict* bg_dict = create_dict(); + + if (!bg_dict) { + LOG(ERROR) << "create Dict failed"; + return -1; + } + + _status = Status::F_LOADING; + if (_dict[_dict_idx]) { + bg_dict->set_base_dict(_dict[_dict_idx]); + LOG(INFO) << "set base dict from current dict " << _dict_idx; + } + + if (_dict_split > 1) { + ret = bg_dict->load(_dict_set_path, _in_mem, v_path); + } else { + ret = bg_dict->load(_dict_path, _in_mem, v_path); + } + _status = Status::F_RUNNING; + if (ret != 0) { + LOG(WARNING) << "load background dict failed"; + delete bg_dict; + bg_dict = NULL; + return ret; + } else { + LOG(INFO) << "load background dict succ"; + set_bg_dict(bg_dict); + } + return ret; +} + +int Framework::bg_unload() { + VirtualDict* bg_dict = get_bg_dict(); + if (bg_dict != NULL) { + set_bg_dict(NULL); + Recycle* recycle = Recycle::get_instance(); + recycle->recycle(bg_dict); + } + LOG(INFO) << "unload background dict succ"; + return 0; +} + +int Framework::bg_switch() { + _rw_lock.w_lock(); + int bg_idx = 1 - _dict_idx; + if (!_dict[bg_idx]) { + LOG(WARNING) << "switch dict failed because NULL"; + _rw_lock.unlock(); + return -1; + } + _dict_idx = bg_idx; + _rw_lock.unlock(); + return 0; +} + +int Framework::enable(const std::string& version) { + int ret = 0; + if (version != "" && version == get_cur_version()) { + ret = 0; + } else if (version == get_bg_version()) { + ret = bg_switch(); + } else { + LOG(WARNING) << "bg dict version not matched"; + ret = -1; + } + return ret; +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/main.cpp b/core/cube/cube-server/src/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..8c3f3f3fa09bc65e07670f2ef88049d89c5fa9a4 --- /dev/null +++ b/core/cube/cube-server/src/main.cpp @@ -0,0 +1,134 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#include +#include +#ifdef BCLOUD +#include "base/logging.h" +#else +#include "butil/logging.h" +#endif + +#include "core/cube/cube-server/include/cube/control.h" +#include "core/cube/cube-server/include/cube/framework.h" +#include "core/cube/cube-server/include/cube/server.h" + +DEFINE_int32(port, 8000, "TCP Port of this server"); +DEFINE_int32(dict_split, 1, "data dict split for dictset"); +DEFINE_bool(in_mem, + true, + "True[load data into memory] False[mmap data in disk]"); +DECLARE_string(flagfile); + +namespace rec { +namespace mcube { + +bool g_signal_quit = false; +static void sigint_handler(int) { g_signal_quit = true; } // sigint_handler + +int run(int argc, char** argv) { + google::ParseCommandLineFlags(&argc, &argv, true); + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = + strdup((std::string("./log/") + filename + ".log").c_str()); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + if (FLAGS_log_dir == "") { + FLAGS_log_dir = "./log"; + } + + struct stat st_buf; + int ret = 0; + if ((ret = stat(FLAGS_log_dir.c_str(), &st_buf)) != 0) { + mkdir(FLAGS_log_dir.c_str(), 0777); + ret = stat(FLAGS_log_dir.c_str(), &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path " << FLAGS_log_dir + << " not exist, and create fail"; + return -1; + } + } + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + LOG(INFO) << "Succ initialize logger"; + + Framework* framework = Framework::instance(); + ret = framework->init(FLAGS_dict_split, FLAGS_in_mem); + if (ret != 0) { + LOG(ERROR) << "init predict framework failed"; + return ret; + } + + Server cube; + Control cntl; + + brpc::Server server; + server.set_version("Cube Service"); + brpc::ServerOptions option; + + if (server.AddService(&cube, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { + LOG(ERROR) << "Failed to add predict service"; + return -1; + } + + if (server.AddService(&cntl, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { + LOG(ERROR) << "Failed to add predict service"; + return -1; + } + + if (server.Start(FLAGS_port, &option) != 0) { + LOG(ERROR) << "Fail to start service"; + return -1; + } + LOG(INFO) << "cube service start"; + + signal(SIGINT, sigint_handler); + while (!g_signal_quit) { + sleep(1); + } + + return 0; +} + +} // namespace mcube +} // namespace rec + +int main(int argc, char** argv) { + if (google::SetCommandLineOption("bvar_dump", "true").empty()) { + LOG(ERROR) << "Failed to dump bvar file"; + return -1; + } + google::SetCommandLineOption("flagfile", "conf/gflags.conf"); + return ::rec::mcube::run(argc, argv); +} + +/* vim: set ts=4 sw=4 sts=4 tw=100 */ diff --git a/core/cube/cube-server/src/recycle.cpp b/core/cube/cube-server/src/recycle.cpp new file mode 100644 index 0000000000000000000000000000000000000000..429c6e70802826e20f094f0583e5aadbbfe92cd8 --- /dev/null +++ b/core/cube/cube-server/src/recycle.cpp @@ -0,0 +1,121 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/cube/cube-server/include/cube/recycle.h" + +namespace { +using rec::mcube::Recycle; +static Recycle* g_instance = NULL; +} + +namespace rec { +namespace mcube { + +Recycle* Recycle::get_instance() { + if (g_instance == NULL) { + g_instance = new Recycle(); + } + + return g_instance; +} + +Recycle::Recycle() : _running(false) {} + +Recycle::~Recycle() {} + +int Recycle::init() { + // init mutex lock; + if (pthread_mutex_init(&_recycle_mutex, NULL) != 0) { + LOG(ERROR) << "init recycle lock failed"; + return -1; + } + + _running = true; + + // init thread; + if (pthread_create(&_recycle_thread, + NULL, + Recycle::recycle_func, + reinterpret_cast(this)) != 0) { + LOG(ERROR) << "init recycle thread failed"; + return -1; + } + return 0; +} + +int Recycle::destroy() { + _running = false; + // join thread; + if (pthread_join(_recycle_thread, NULL) != 0) { + LOG(WARNING) << "join recycle thread failed"; + } + // destroy lock + if (pthread_mutex_destroy(&_recycle_mutex) != 0) { + LOG(WARNING) << "destroy recycle lock failed"; + } + + return 0; +} + +/* +void Recycle::recycle(Dict* dict) { + lock(); + _recycle_list.push(dict); + unlock(); +} +*/ + +void Recycle::recycle(VirtualDict* dict) { + lock(); + _recycle_list.push(dict); + unlock(); +} + +void Recycle::lock() { pthread_mutex_lock(&_recycle_mutex); } + +void Recycle::unlock() { pthread_mutex_unlock(&_recycle_mutex); } + +void* Recycle::recycle_func(void* arg) { + Recycle* recycle = reinterpret_cast(arg); + std::queue& recycle_list = recycle->_recycle_list; + + while (recycle->_running) { + recycle->lock(); + if (recycle_list.empty()) { + recycle->unlock(); + sleep(1); + continue; + } + + VirtualDict* dict = recycle_list.front(); + recycle_list.pop(); + recycle->unlock(); + + while (dict->atom_seek_num() != 0) { + sleep(1); + } + + int ret = dict->destroy(); + if (ret != 0) { + LOG(WARNING) << "destroy dict failed"; + } + + delete dict; + } + + return NULL; +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/src/server.cpp b/core/cube/cube-server/src/server.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f431e4a377109a13cf4585308fd27ac207460109 --- /dev/null +++ b/core/cube/cube-server/src/server.cpp @@ -0,0 +1,40 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "core/cube/cube-server/include/cube/framework.h" +#include "core/cube/cube-server/include/cube/server.h" + +namespace rec { +namespace mcube { + +Server::Server() {} + +Server::~Server() {} + +void Server::seek(::google::protobuf::RpcController* /*cntl_base*/, + const ::rec::mcube::DictRequest* request, + ::rec::mcube::DictResponse* response, + ::google::protobuf::Closure* done) { + brpc::ClosureGuard done_guard(done); + + Framework* framework = Framework::instance(); + int ret = framework->seek(request, response); + if (ret != 0) { + LOG(ERROR) << "seek failed err=" << ret; + } +} + +} // namespace mcube +} // namespace rec diff --git a/core/cube/cube-server/test/cube_test.cpp b/core/cube/cube-server/test/cube_test.cpp new file mode 100644 index 0000000000000000000000000000000000000000..a8882b137dc7eba4b1411fb7fbd65cd689b0fb46 --- /dev/null +++ b/core/cube/cube-server/test/cube_test.cpp @@ -0,0 +1,56 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "gtest/gtest.h" + +#include "core/cube/cube-server/include/cube/control.h" + +namespace rec { +namespace mcube { +namespace unittest { +struct DoNothing : public google::protobuf::Closure { + void Run() {} +}; + +class ControlTest : public ::testing::Test { + protected: + ControlTest() {} + virtual ~ControlTest() {} + virtual void SetUp() {} + virtual void TearDown() {} +}; // class ControlTest + +TEST_F(ControlTest, control_cmd) { + brpc::Controller cntl; + DoNothing do_nothing; + Control control; + + control.cmd(&cntl, NULL, NULL, &do_nothing); + ASSERT_EQ(brpc::HTTP_STATUS_BAD_REQUEST, cntl.http_response().status_code()); + cntl.Reset(); +} + +int run(int argc, char** argv) { + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} + +} // namespace unittest +} // namespace mcube +} // namespace rec + +int main(int argc, char** argv) { + return ::rec::mcube::unittest::run(argc, argv); +} diff --git a/cube/cube-transfer/CMakeLists.txt b/core/cube/cube-transfer/CMakeLists.txt similarity index 100% rename from cube/cube-transfer/CMakeLists.txt rename to core/cube/cube-transfer/CMakeLists.txt diff --git a/cube/cube-transfer/cmake/CMakeDetermineGoCompiler.cmake b/core/cube/cube-transfer/cmake/CMakeDetermineGoCompiler.cmake similarity index 100% rename from cube/cube-transfer/cmake/CMakeDetermineGoCompiler.cmake rename to core/cube/cube-transfer/cmake/CMakeDetermineGoCompiler.cmake diff --git a/cube/cube-transfer/cmake/CMakeGoCompiler.cmake.in b/core/cube/cube-transfer/cmake/CMakeGoCompiler.cmake.in similarity index 100% rename from cube/cube-transfer/cmake/CMakeGoCompiler.cmake.in rename to core/cube/cube-transfer/cmake/CMakeGoCompiler.cmake.in diff --git a/cube/cube-transfer/cmake/CMakeGoInformation.cmake b/core/cube/cube-transfer/cmake/CMakeGoInformation.cmake similarity index 100% rename from cube/cube-transfer/cmake/CMakeGoInformation.cmake rename to core/cube/cube-transfer/cmake/CMakeGoInformation.cmake diff --git a/cube/cube-transfer/cmake/CMakeTestGoCompiler.cmake b/core/cube/cube-transfer/cmake/CMakeTestGoCompiler.cmake similarity index 100% rename from cube/cube-transfer/cmake/CMakeTestGoCompiler.cmake rename to core/cube/cube-transfer/cmake/CMakeTestGoCompiler.cmake diff --git a/cube/cube-transfer/cmake/golang.cmake b/core/cube/cube-transfer/cmake/golang.cmake similarity index 100% rename from cube/cube-transfer/cmake/golang.cmake rename to core/cube/cube-transfer/cmake/golang.cmake diff --git a/cube/cube-transfer/conf/transfer.conf b/core/cube/cube-transfer/conf/transfer.conf similarity index 100% rename from cube/cube-transfer/conf/transfer.conf rename to core/cube/cube-transfer/conf/transfer.conf diff --git a/core/cube/cube-transfer/pkg/linux_amd64/github.com/Badangel/logex.a b/core/cube/cube-transfer/pkg/linux_amd64/github.com/Badangel/logex.a new file mode 100644 index 0000000000000000000000000000000000000000..ababbbdd0f86ba3ac4a21594d088055ffcba48bd Binary files /dev/null and b/core/cube/cube-transfer/pkg/linux_amd64/github.com/Badangel/logex.a differ diff --git a/core/cube/cube-transfer/pkg/linux_amd64/github.com/docopt/docopt-go.a b/core/cube/cube-transfer/pkg/linux_amd64/github.com/docopt/docopt-go.a new file mode 100644 index 0000000000000000000000000000000000000000..571cfd8ab20bbf329db58fc499b56a0fd31b56a0 Binary files /dev/null and b/core/cube/cube-transfer/pkg/linux_amd64/github.com/docopt/docopt-go.a differ diff --git a/core/cube/cube-transfer/pkg/linux_amd64/github.com/mipearson/rfw.a b/core/cube/cube-transfer/pkg/linux_amd64/github.com/mipearson/rfw.a new file mode 100644 index 0000000000000000000000000000000000000000..59a8e07c4fe2da6af1cd46e1f6886d2b003b9262 Binary files /dev/null and b/core/cube/cube-transfer/pkg/linux_amd64/github.com/mipearson/rfw.a differ diff --git a/cube/cube-transfer/src/CMakeLists.txt b/core/cube/cube-transfer/src/CMakeLists.txt similarity index 100% rename from cube/cube-transfer/src/CMakeLists.txt rename to core/cube/cube-transfer/src/CMakeLists.txt diff --git a/cube/cube-transfer/src/cube-transfer.go b/core/cube/cube-transfer/src/cube-transfer.go similarity index 100% rename from cube/cube-transfer/src/cube-transfer.go rename to core/cube/cube-transfer/src/cube-transfer.go diff --git a/core/cube/cube-transfer/src/github.com/Badangel/logex b/core/cube/cube-transfer/src/github.com/Badangel/logex new file mode 160000 index 0000000000000000000000000000000000000000..1e897307c07004df144afedbf975228745a5a9e8 --- /dev/null +++ b/core/cube/cube-transfer/src/github.com/Badangel/logex @@ -0,0 +1 @@ +Subproject commit 1e897307c07004df144afedbf975228745a5a9e8 diff --git a/core/cube/cube-transfer/src/github.com/docopt/docopt-go b/core/cube/cube-transfer/src/github.com/docopt/docopt-go new file mode 160000 index 0000000000000000000000000000000000000000..ee0de3bc6815ee19d4a46c7eb90f829db0e014b1 --- /dev/null +++ b/core/cube/cube-transfer/src/github.com/docopt/docopt-go @@ -0,0 +1 @@ +Subproject commit ee0de3bc6815ee19d4a46c7eb90f829db0e014b1 diff --git a/core/cube/cube-transfer/src/github.com/mipearson/rfw b/core/cube/cube-transfer/src/github.com/mipearson/rfw new file mode 160000 index 0000000000000000000000000000000000000000..6f0a6f3266ba1058df9ef0c94cda1cecd2e62852 --- /dev/null +++ b/core/cube/cube-transfer/src/github.com/mipearson/rfw @@ -0,0 +1 @@ +Subproject commit 6f0a6f3266ba1058df9ef0c94cda1cecd2e62852 diff --git a/cube/cube-transfer/src/transfer/builder.go b/core/cube/cube-transfer/src/transfer/builder.go similarity index 100% rename from cube/cube-transfer/src/transfer/builder.go rename to core/cube/cube-transfer/src/transfer/builder.go diff --git a/cube/cube-transfer/src/transfer/config.go b/core/cube/cube-transfer/src/transfer/config.go similarity index 100% rename from cube/cube-transfer/src/transfer/config.go rename to core/cube/cube-transfer/src/transfer/config.go diff --git a/cube/cube-transfer/src/transfer/deployer.go b/core/cube/cube-transfer/src/transfer/deployer.go similarity index 100% rename from cube/cube-transfer/src/transfer/deployer.go rename to core/cube/cube-transfer/src/transfer/deployer.go diff --git a/cube/cube-transfer/src/transfer/dict/cube_agent_server.go b/core/cube/cube-transfer/src/transfer/dict/cube_agent_server.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/cube_agent_server.go rename to core/cube/cube-transfer/src/transfer/dict/cube_agent_server.go diff --git a/cube/cube-transfer/src/transfer/dict/define.go b/core/cube/cube-transfer/src/transfer/dict/define.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/define.go rename to core/cube/cube-transfer/src/transfer/dict/define.go diff --git a/cube/cube-transfer/src/transfer/dict/dict_info.go b/core/cube/cube-transfer/src/transfer/dict/dict_info.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/dict_info.go rename to core/cube/cube-transfer/src/transfer/dict/dict_info.go diff --git a/cube/cube-transfer/src/transfer/dict/dict_instance_status.go b/core/cube/cube-transfer/src/transfer/dict/dict_instance_status.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/dict_instance_status.go rename to core/cube/cube-transfer/src/transfer/dict/dict_instance_status.go diff --git a/cube/cube-transfer/src/transfer/dict/dict_shard_info.go b/core/cube/cube-transfer/src/transfer/dict/dict_shard_info.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/dict_shard_info.go rename to core/cube/cube-transfer/src/transfer/dict/dict_shard_info.go diff --git a/cube/cube-transfer/src/transfer/dict/dict_version_info.go b/core/cube/cube-transfer/src/transfer/dict/dict_version_info.go similarity index 100% rename from cube/cube-transfer/src/transfer/dict/dict_version_info.go rename to core/cube/cube-transfer/src/transfer/dict/dict_version_info.go diff --git a/cube/cube-transfer/src/transfer/global.go b/core/cube/cube-transfer/src/transfer/global.go similarity index 100% rename from cube/cube-transfer/src/transfer/global.go rename to core/cube/cube-transfer/src/transfer/global.go diff --git a/cube/cube-transfer/src/transfer/http.go b/core/cube/cube-transfer/src/transfer/http.go similarity index 100% rename from cube/cube-transfer/src/transfer/http.go rename to core/cube/cube-transfer/src/transfer/http.go diff --git a/cube/cube-transfer/src/transfer/http_get.go b/core/cube/cube-transfer/src/transfer/http_get.go similarity index 100% rename from cube/cube-transfer/src/transfer/http_get.go rename to core/cube/cube-transfer/src/transfer/http_get.go diff --git a/cube/cube-transfer/src/transfer/http_post.go b/core/cube/cube-transfer/src/transfer/http_post.go similarity index 100% rename from cube/cube-transfer/src/transfer/http_post.go rename to core/cube/cube-transfer/src/transfer/http_post.go diff --git a/cube/cube-transfer/src/transfer/transfer.go b/core/cube/cube-transfer/src/transfer/transfer.go similarity index 100% rename from cube/cube-transfer/src/transfer/transfer.go rename to core/cube/cube-transfer/src/transfer/transfer.go diff --git a/cube/cube-transfer/src/transfer/trigger.go b/core/cube/cube-transfer/src/transfer/trigger.go similarity index 100% rename from cube/cube-transfer/src/transfer/trigger.go rename to core/cube/cube-transfer/src/transfer/trigger.go diff --git a/cube/cube-transfer/src/transfer/util.go b/core/cube/cube-transfer/src/transfer/util.go similarity index 100% rename from cube/cube-transfer/src/transfer/util.go rename to core/cube/cube-transfer/src/transfer/util.go diff --git a/cube/doc/performance.md b/core/cube/doc/performance.md similarity index 100% rename from cube/doc/performance.md rename to core/cube/doc/performance.md diff --git a/core/general-client/CMakeLists.txt b/core/general-client/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4588218b4e72030ad3aa4240c7ce0289494bfb95 --- /dev/null +++ b/core/general-client/CMakeLists.txt @@ -0,0 +1,5 @@ +if(CLIENT_ONLY) +add_subdirectory(pybind11) +pybind11_add_module(serving_client src/general_model.cpp src/pybind_general_model.cpp) +target_link_libraries(serving_client -Wl,--whole-archive sdk-cpp pybind python -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) +endif() diff --git a/core/general-client/README.md b/core/general-client/README.md new file mode 100644 index 0000000000000000000000000000000000000000..4045f2221b5e3456ad84c34d4d7e401489c6b2e5 --- /dev/null +++ b/core/general-client/README.md @@ -0,0 +1,25 @@ +# install +pip install paddle-serving-client +# quick-start example +``` python +# train text classification problem with paddle +# save serving model +``` +from serving_client import serving_io + +serving_io.save_serving_model() + + +``` python +# load serving model configuration and start service +``` + +``` python +# load serving model configuration in client and do prediction +``` + +# design +paddle sering as remote executor run + +# high level features +C++ client diff --git a/core/general-client/include/general_model.h b/core/general-client/include/general_model.h new file mode 100644 index 0000000000000000000000000000000000000000..cec57bdd9e5ae955586693a2ad5a5143e5e4b74b --- /dev/null +++ b/core/general-client/include/general_model.h @@ -0,0 +1,87 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. +#pragma once + +#include +#include +#include + +#include +#include +#include +#include + +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/general_model_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; + +// given some input data, pack into pb, and send request +namespace baidu { +namespace paddle_serving { +namespace general_model { + +typedef std::map> FetchedMap; + +typedef std::map > > + BatchFetchedMap; + +class PredictorClient { + public: + PredictorClient() {} + ~PredictorClient() {} + + void init(const std::string & client_conf); + + void set_predictor_conf( + const std::string& conf_path, + const std::string& conf_file); + + int create_predictor(); + + std::vector > predict( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name); + + std::vector > predict_with_profile( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name); + + private: + PredictorApi _api; + Predictor * _predictor; + std::string _predictor_conf; + std::string _predictor_path; + std::string _conf_file; + std::map _feed_name_to_idx; + std::map _fetch_name_to_idx; + std::map _fetch_name_to_var_name; + std::vector > _shape; + std::vector _type; +}; + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/core/general-client/inference.conf b/core/general-client/inference.conf new file mode 100644 index 0000000000000000000000000000000000000000..fe6710ddad0d498b3d1aebfd7efd3368c874d353 --- /dev/null +++ b/core/general-client/inference.conf @@ -0,0 +1,6 @@ +2 3 +words 1 -1 +label 1 1 +cost mean_0.tmp_0 +acc accuracy_0.tmp_0 +prediction fc_1.tmp_2 diff --git a/core/general-client/predictor.conf b/core/general-client/predictor.conf new file mode 100644 index 0000000000000000000000000000000000000000..33d0a84418b24b3ba590f4acfe7dab876c004694 --- /dev/null +++ b/core/general-client/predictor.conf @@ -0,0 +1,37 @@ +default_variant_conf { + tag: "default" + connection_conf { + connect_timeout_ms: 2000 + rpc_timeout_ms: 20000 + connect_retry_count: 2 + max_connection_per_host: 100 + hedge_request_timeout_ms: -1 + hedge_fetch_retry_count: 2 + connection_type: "pooled" + } + naming_conf { + cluster_filter_strategy: "Default" + load_balance_strategy: "la" + } + rpc_parameter { + compress_type: 0 + package_size: 20 + protocol: "baidu_std" + max_channel_per_request: 3 + } +} + +predictors { + name: "general_model" + service_name: "baidu.paddle_serving.predictor.general_model.GeneralModelService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:9292" + } + } +} diff --git a/core/general-client/pybind11 b/core/general-client/pybind11 new file mode 160000 index 0000000000000000000000000000000000000000..9a19306fbf30642ca331d0ec88e7da54a96860f9 --- /dev/null +++ b/core/general-client/pybind11 @@ -0,0 +1 @@ +Subproject commit 9a19306fbf30642ca331d0ec88e7da54a96860f9 diff --git a/core/general-client/src/general_model.cpp b/core/general-client/src/general_model.cpp new file mode 100644 index 0000000000000000000000000000000000000000..2b18543c8d278eae96adf144d4b0d108e542c296 --- /dev/null +++ b/core/general-client/src/general_model.cpp @@ -0,0 +1,186 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "core/general-client/include/general_model.h" +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::predictor::general_model::Request; +using baidu::paddle_serving::predictor::general_model::Response; +using baidu::paddle_serving::predictor::general_model::Tensor; +using baidu::paddle_serving::predictor::general_model::FeedInst; +using baidu::paddle_serving::predictor::general_model::FetchInst; + +namespace baidu { +namespace paddle_serving { +namespace general_model { + +void PredictorClient::init(const std::string & conf_file) { + _conf_file = conf_file; + std::ifstream fin(conf_file); + if (!fin) { + LOG(ERROR) << "Your inference conf file can not be found"; + exit(-1); + } + _feed_name_to_idx.clear(); + _fetch_name_to_idx.clear(); + _shape.clear(); + int feed_var_num = 0; + int fetch_var_num = 0; + fin >> feed_var_num >> fetch_var_num; + std::string name; + std::string fetch_var_name; + int shape_num = 0; + int dim = 0; + int type_value = 0; + for (int i = 0; i < feed_var_num; ++i) { + fin >> name; + _feed_name_to_idx[name] = i; + fin >> shape_num; + std::vector tmp_feed_shape; + for (int j = 0; j < shape_num; ++j) { + fin >> dim; + tmp_feed_shape.push_back(dim); + } + fin >> type_value; + _type.push_back(type_value); + _shape.push_back(tmp_feed_shape); + } + + for (int i = 0; i < fetch_var_num; ++i) { + fin >> name; + fin >> fetch_var_name; + _fetch_name_to_idx[name] = i; + _fetch_name_to_var_name[name] = fetch_var_name; + } +} + +void PredictorClient::set_predictor_conf( + const std::string & conf_path, + const std::string & conf_file) { + _predictor_path = conf_path; + _predictor_conf = conf_file; +} + +int PredictorClient::create_predictor() { + if (_api.create(_predictor_path.c_str(), _predictor_conf.c_str()) != 0) { + LOG(ERROR) << "Predictor Creation Failed"; + return -1; + } + _api.thrd_initialize(); +} + +std::vector > PredictorClient::predict( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name) { + + std::vector > fetch_result; + if (fetch_name.size() == 0) { + return fetch_result; + } + fetch_result.resize(fetch_name.size()); + + _api.thrd_clear(); + _predictor = _api.fetch_predictor("general_model"); + Request req; + std::vector tensor_vec; + FeedInst * inst = req.add_insts(); + for (auto & name : float_feed_name) { + tensor_vec.push_back(inst->add_tensor_array()); + } + + for (auto & name : int_feed_name) { + tensor_vec.push_back(inst->add_tensor_array()); + } + + int vec_idx = 0; + for (auto & name : float_feed_name) { + int idx = _feed_name_to_idx[name]; + Tensor * tensor = tensor_vec[idx]; + for (int j = 0; j < _shape[idx].size(); ++j) { + tensor->add_shape(_shape[idx][j]); + } + tensor->set_elem_type(1); + for (int j = 0; j < float_feed[vec_idx].size(); ++j) { + tensor->add_data( + (char *)(&(float_feed[vec_idx][j])), sizeof(float)); + } + vec_idx++; + } + + vec_idx = 0; + for (auto & name : int_feed_name) { + int idx = _feed_name_to_idx[name]; + Tensor * tensor = tensor_vec[idx]; + for (int j = 0; j < _shape[idx].size(); ++j) { + tensor->add_shape(_shape[idx][j]); + } + tensor->set_elem_type(0); + for (int j = 0; j < int_feed[vec_idx].size(); ++j) { + tensor->add_data( + (char *)(&(int_feed[vec_idx][j])), sizeof(int64_t)); + } + vec_idx++; + } + + // std::map > result; + Response res; + + res.Clear(); + if (_predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req: " << req.ShortDebugString(); + exit(-1); + } else { + for (auto & name : fetch_name) { + int idx = _fetch_name_to_idx[name]; + int len = res.insts(0).tensor_array(idx).data_size(); + VLOG(3) << "fetch name: " << name; + VLOG(3) << "tensor data size: " << len; + fetch_result[idx].resize(len); + for (int i = 0; i < len; ++i) { + /* + (*fetch_result)[name][i] = *(const float *) + res.insts(0).tensor_array(idx).data(i).c_str(); + VLOG(3) << *(const float *) + res.insts(0).tensor_array(idx).data(i).c_str(); + fetch_result[name][i] = *(const float *) + res.insts(0).tensor_array(idx).data(i).c_str(); + */ + fetch_result[idx][i] = *(const float *) + res.insts(0).tensor_array(idx).data(i).c_str(); + } + } + } + + return fetch_result; +} + +std::vector > PredictorClient::predict_with_profile( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name) { + std::vector > res; + return res; +} + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu diff --git a/core/general-client/src/general_model_main.cpp b/core/general-client/src/general_model_main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..d5090b1f410f02d12c82f0f66d18183080fdf469 --- /dev/null +++ b/core/general-client/src/general_model_main.cpp @@ -0,0 +1,71 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#include "core/general-client/include/general_model.h" + +using namespace std; + +using baidu::paddle_serving::general_model::PredictorClient; +using baidu::paddle_serving::general_model::FetchedMap; + +int main(int argc, char * argv[]) { + PredictorClient * client = new PredictorClient(); + client->init("inference.conf"); + client->set_predictor_conf("./", "predictor.conf"); + client->create_predictor(); + std::vector > float_feed; + std::vector > int_feed; + std::vector float_feed_name; + std::vector int_feed_name = {"words", "label"}; + std::vector fetch_name = {"cost", "acc", "prediction"}; + + std::string line; + int64_t text_id = 0; + int64_t label = 0; + int text_id_num = 0; + int label_num = 0; + int line_num = 0; + while (cin >> text_id_num) { + int_feed.clear(); + float_feed.clear(); + std::vector ids; + ids.reserve(text_id_num); + for (int i = 0; i < text_id_num; ++i) { + cin >> text_id; + ids.push_back(text_id); + } + int_feed.push_back(ids); + cin >> label_num; + cin >> label; + int_feed.push_back({label}); + + + FetchedMap result; + + client->predict( + float_feed, float_feed_name, + int_feed, int_feed_name, fetch_name, + &result); + + cout << label << "\t" << result["prediction"][1] << endl; + + line_num++; + if (line_num % 100 == 0) { + cerr << "line num: " << line_num << endl; + } + } +} diff --git a/core/general-client/src/pybind_general_model.cpp b/core/general-client/src/pybind_general_model.cpp new file mode 100644 index 0000000000000000000000000000000000000000..287b7e337d78f2f4ac0a11fc0334a79c53680eee --- /dev/null +++ b/core/general-client/src/pybind_general_model.cpp @@ -0,0 +1,49 @@ +#include +#include +#include +#include "core/general-client/include/general_model.h" + +#include + +namespace py = pybind11; + +using baidu::paddle_serving::general_model::FetchedMap; + +namespace baidu { +namespace paddle_serving { +namespace general_model { + +PYBIND11_MODULE(serving_client, m) { + m.doc() = R"pddoc(this is a practice + )pddoc"; + py::class_(m, "PredictorClient", py::buffer_protocol()) + .def(py::init()) + .def("init", + [](PredictorClient &self, const std::string & conf) { + self.init(conf); + }) + .def("set_predictor_conf", + [](PredictorClient &self, const std::string & conf_path, + const std::string & conf_file) { + self.set_predictor_conf(conf_path, conf_file); + }) + .def("create_predictor", + [](PredictorClient & self) { + self.create_predictor(); + }) + .def("predict", + [](PredictorClient &self, + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name) { + + return self.predict(float_feed, float_feed_name, + int_feed, int_feed_name, fetch_name); + }); +} + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu diff --git a/kvdb/CMakeLists.txt b/core/kvdb/CMakeLists.txt similarity index 100% rename from kvdb/CMakeLists.txt rename to core/kvdb/CMakeLists.txt diff --git a/kvdb/include/kvdb/kvdb_impl.h b/core/kvdb/include/kvdb/kvdb_impl.h similarity index 100% rename from kvdb/include/kvdb/kvdb_impl.h rename to core/kvdb/include/kvdb/kvdb_impl.h diff --git a/kvdb/include/kvdb/paddle_rocksdb.h b/core/kvdb/include/kvdb/paddle_rocksdb.h similarity index 100% rename from kvdb/include/kvdb/paddle_rocksdb.h rename to core/kvdb/include/kvdb/paddle_rocksdb.h diff --git a/core/kvdb/include/kvdb/rocksdb_impl.h b/core/kvdb/include/kvdb/rocksdb_impl.h new file mode 100644 index 0000000000000000000000000000000000000000..e600403fae0ede56fc2b6fd8ce17bf7a4c30dbb4 --- /dev/null +++ b/core/kvdb/include/kvdb/rocksdb_impl.h @@ -0,0 +1,32 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "core/kvdb/include/kvdb/kvdb_impl.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +class RocksKVDB : public AbstractKVDB { + public: + void CreateDB(); + void SetDBName(std::string); + void Set(std::string key, std::string value); + std::string Get(std::string key); + void Close(); + ~RocksKVDB(); + + private: + std::shared_ptr db_; + + public: + static int db_count; +}; diff --git a/core/kvdb/src/gtest_db_func.cpp b/core/kvdb/src/gtest_db_func.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fbc65c834f4ad8e53fa050efb63dbd8a3692f72b --- /dev/null +++ b/core/kvdb/src/gtest_db_func.cpp @@ -0,0 +1,67 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include +#include "core/kvdb/include/kvdb/kvdb_impl.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/kvdb/include/kvdb/rocksdb_impl.h" +class KVDBTest : public ::testing::Test { + protected: + void SetUp() override {} + + static void SetUpTestCase() {} +}; +int my_argc; +char** my_argv; + +std::vector StringSplit(std::string str, char split) { + std::vector strs; + std::istringstream f(str); + std::string s; + while (getline(f, s, split)) { + strs.push_back(s); + } + return strs; +} + +TEST_F(KVDBTest, AbstractKVDB_Func_Test) { + AbsKVDBPtr kvdb = std::make_shared(); + kvdb->CreateDB(); + std::string set_list = "setlist.txt"; + std::string get_list = "getlist.txt"; + std::ifstream set_file(set_list); + std::ifstream get_file(get_list); + for (std::string line; getline(set_file, line);) { + std::vector strs = StringSplit(line, ' '); + kvdb->Set(strs[0], strs[1]); + } + + for (std::string line; getline(get_file, line);) { + std::vector strs = StringSplit(line, ' '); + std::string val = kvdb->Get(strs[0]); + ASSERT_EQ(val, strs[1]); + } +} + +int main(int argc, char** argv) { + my_argc = argc; + my_argv = argv; + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/core/kvdb/src/gtest_db_thread.cpp b/core/kvdb/src/gtest_db_thread.cpp new file mode 100644 index 0000000000000000000000000000000000000000..b04d65bf44b2e2e6c985194ea5a9b34170167044 --- /dev/null +++ b/core/kvdb/src/gtest_db_thread.cpp @@ -0,0 +1,70 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include "core/kvdb/include/kvdb/kvdb_impl.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/kvdb/include/kvdb/rocksdb_impl.h" +class KVDBTest : public ::testing::Test { + protected: + void SetUp() override {} + + static void SetUpTestCase() {} +}; + +int my_argc; +char** my_argv; + +void db_thread_test(AbsKVDBPtr kvdb, int size) { + for (int i = 0; i < size; i++) { + kvdb->Set(std::to_string(i), std::to_string(i)); + kvdb->Get(std::to_string(i)); + } +} + +TEST_F(KVDBTest, AbstractKVDB_Thread_Test) { + if (my_argc != 3) { + std::cerr << "illegal input! should be db_thread ${num_of_thread} " + "${num_of_ops_each_thread}" + << std::endl; + return; + } + int num_of_thread = atoi(my_argv[1]); + int nums_of_ops_each_thread = atoi(my_argv[2]); + std::vector kvdbptrs; + for (int i = 0; i < num_of_thread; i++) { + kvdbptrs.push_back(std::make_shared()); + kvdbptrs[i]->CreateDB(); + } + std::vector tarr; + for (int i = 0; i < num_of_thread; i++) { + tarr.push_back( + std::thread(db_thread_test, kvdbptrs[i], nums_of_ops_each_thread)); + } + for (int i = 0; i < num_of_thread; i++) { + tarr[i].join(); + } + return; +} + +int main(int argc, char** argv) { + my_argc = argc; + my_argv = argv; + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/core/kvdb/src/gtest_kvdb.cpp b/core/kvdb/src/gtest_kvdb.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f8026691d7db9708cdc3d773275e27ee43c82d47 --- /dev/null +++ b/core/kvdb/src/gtest_kvdb.cpp @@ -0,0 +1,125 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include +#include "core/kvdb/include/kvdb/kvdb_impl.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/kvdb/include/kvdb/rocksdb_impl.h" +class KVDBTest : public ::testing::Test { + protected: + void SetUp() override {} + + static void SetUpTestCase() { + kvdb = std::make_shared(); + dict_reader = std::make_shared(); + param_dict = std::make_shared(); + } + + static AbsKVDBPtr kvdb; + static FileReaderPtr dict_reader; + static ParamDictPtr param_dict; + static ParamDictMgr dict_mgr; +}; +AbsKVDBPtr KVDBTest::kvdb; +FileReaderPtr KVDBTest::dict_reader; +ParamDictPtr KVDBTest::param_dict; +ParamDictMgr KVDBTest::dict_mgr; + +void GenerateTestIn(std::string); +void UpdateTestIn(std::string); + +TEST_F(KVDBTest, AbstractKVDB_Unit_Test) { + kvdb->CreateDB(); + kvdb->SetDBName("test_kvdb"); + for (int i = 0; i < 100; i++) { + kvdb->Set(std::to_string(i), std::to_string(i * 2)); + } + for (int i = 0; i < 100; i++) { + std::string val = kvdb->Get(std::to_string(i)); + ASSERT_EQ(val, std::to_string(i * 2)); + } + kvdb->Close(); +} + +TEST_F(KVDBTest, FileReader_Unit_Test) { + std::string test_in_filename = "abs_dict_reader_test_in.txt"; + GenerateTestIn(test_in_filename); + dict_reader->SetFileName(test_in_filename); + + std::string md5_1 = dict_reader->GetMD5(); + std::chrono::system_clock::time_point timestamp_1 = + dict_reader->GetTimeStamp(); + + std::string md5_2 = dict_reader->GetMD5(); + std::chrono::system_clock::time_point timestamp_2 = + dict_reader->GetTimeStamp(); + + ASSERT_EQ(md5_1, md5_2); + ASSERT_EQ(timestamp_1, timestamp_2); + + UpdateTestIn(test_in_filename); + + std::string md5_3 = dict_reader->GetMD5(); + std::chrono::system_clock::time_point timestamp_3 = + dict_reader->GetTimeStamp(); + + ASSERT_NE(md5_2, md5_3); + ASSERT_NE(timestamp_2, timestamp_3); +} +#include +void GenerateTestIn(std::string filename) { + std::ifstream in_file(filename); + if (in_file.good()) { + in_file.close(); + std::string cmd = "rm -rf " + filename; + system(cmd.c_str()); + } + std::ofstream out_file(filename); + for (size_t i = 0; i < 100000; i++) { + out_file << i << " " << i << " "; + for (size_t j = 0; j < 3; j++) { + out_file << i << " "; + } + out_file << std::endl; + } + out_file.close(); +} + +void UpdateTestIn(std::string filename) { + std::ifstream in_file(filename); + if (in_file.good()) { + in_file.close(); + std::string cmd = "rm -rf " + filename; + system(cmd.c_str()); + } + std::ofstream out_file(filename); + for (size_t i = 0; i < 10000; i++) { + out_file << i << " " << i << " "; + for (size_t j = 0; j < 3; j++) { + out_file << i + 1 << " "; + } + out_file << std::endl; + } + out_file.close(); +} + +int main(int argc, char** argv) { + ::testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/core/kvdb/src/mock_param_dict_impl.cpp b/core/kvdb/src/mock_param_dict_impl.cpp new file mode 100644 index 0000000000000000000000000000000000000000..5f76ebcea3d46271fcc1e9ce187007e1c2e5143b --- /dev/null +++ b/core/kvdb/src/mock_param_dict_impl.cpp @@ -0,0 +1,144 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include "core/kvdb/include/kvdb/rocksdb_impl.h" + +std::vector ParamDict::GetDictReaderLst() { + return this->file_reader_lst_; +} + +void ParamDict::SetFileReaderLst(std::vector lst) { + for (size_t i = 0; i < lst.size(); i++) { + FileReaderPtr fr = std::make_shared(); + fr->SetFileName(lst[i]); + this->file_reader_lst_.push_back(fr); + } +} + +std::vector ParamDict::GetSparseValue(std::string feasign, + std::string slot) { + auto BytesToFloat = [](uint8_t* byte_array) { return *((float*)byte_array); }; + // TODO: the concatation of feasign and slot is TBD. + std::string result = front_db->Get(feasign + slot); + std::vector value; + if (result == "NOT_FOUND") return value; + uint8_t* raw_values_ptr = reinterpret_cast(&result[0]); + for (size_t i = 0; i < result.size(); i += sizeof(float)) { + float temp = BytesToFloat(raw_values_ptr + i); + value.push_back(temp); + } + return value; +} + +void ParamDict::SetReader( + std::function(std::string)> func) { + read_func_ = func; +} + +std::vector ParamDict::GetSparseValue(int64_t feasign, int64_t slot) { + return this->GetSparseValue(std::to_string(feasign), std::to_string(slot)); +} + +bool ParamDict::InsertSparseValue(int64_t feasign, + int64_t slot, + const std::vector& values) { + return this->InsertSparseValue( + std::to_string(feasign), std::to_string(slot), values); +} + +bool ParamDict::InsertSparseValue(std::string feasign, + std::string slot, + const std::vector& values) { + auto FloatToBytes = [](float fvalue, uint8_t* arr) { + unsigned char* pf = nullptr; + unsigned char* px = nullptr; + unsigned char i = 0; + pf = (unsigned char*)&fvalue; + px = arr; + for (i = 0; i < sizeof(float); i++) { + *(px + i) = *(pf + i); + } + }; + + std::string key = feasign + slot; + uint8_t* values_ptr = new uint8_t[values.size() * sizeof(float)]; + std::string value; + for (size_t i = 0; i < values.size(); i++) { + FloatToBytes(values[i], values_ptr + sizeof(float) * i); + } + char* raw_values_ptr = reinterpret_cast(values_ptr); + for (size_t i = 0; i < values.size() * sizeof(float); i++) { + value.push_back(raw_values_ptr[i]); + } + back_db->Set(key, value); + // TODO: change stateless to stateful + return true; +} + +void ParamDict::UpdateBaseModel() { + auto is_number = [](const std::string& s) { + return !s.empty() && std::find_if(s.begin(), s.end(), [](char c) { + return !std::isdigit(c); + }) == s.end(); + }; + std::thread t([&]() { + for (FileReaderPtr file_reader : this->file_reader_lst_) { + std::string line; + std::ifstream infile(file_reader->GetFileName()); + if (infile.is_open()) { + while (getline(infile, line)) { + std::pair kvpair = read_func_(line); + std::vector nums; + for (size_t i = 0; i < kvpair.second.size(); i++) { + if (is_number(kvpair.second[i])) { + nums.push_back(std::stof(kvpair.second[i])); + } + } + this->InsertSparseValue(kvpair.first, "", nums); + } + } + infile.close(); + } + AbsKVDBPtr temp = front_db; + front_db = back_db; + back_db = temp; + }); + t.detach(); +} + +void ParamDict::UpdateDeltaModel() { UpdateBaseModel(); } + +std::pair ParamDict::GetKVDB() { + return {front_db, back_db}; +} + +void ParamDict::SetKVDB(std::pair kvdbs) { + this->front_db = kvdbs.first; + this->back_db = kvdbs.second; +} + +void ParamDict::CreateKVDB() { + this->front_db = std::make_shared(); + this->back_db = std::make_shared(); + this->front_db->CreateDB(); + this->back_db->CreateDB(); +} + +ParamDict::~ParamDict() { +} diff --git a/core/kvdb/src/paddle_rocksdb.cpp b/core/kvdb/src/paddle_rocksdb.cpp new file mode 100644 index 0000000000000000000000000000000000000000..a60b93c7ef980a8c6f3b1b77b1d500bfb5829160 --- /dev/null +++ b/core/kvdb/src/paddle_rocksdb.cpp @@ -0,0 +1,62 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" + +RocksDBWrapper::RocksDBWrapper(std::string db_name) { + rocksdb::Options options; + options.create_if_missing = true; + db_name_ = db_name; + db_ = nullptr; + rocksdb::Status s = rocksdb::DB::Open(options, db_name, &db_); + return; +} + +std::string RocksDBWrapper::Get(std::string key) { + rocksdb::ReadOptions options; + options.verify_checksums = true; + std::string result; + rocksdb::Status s = db_->Get(options, key, &result); + if (s.IsNotFound()) { + result = "NOT_FOUND"; + } + return result; +} + +bool RocksDBWrapper::Put(std::string key, std::string value) { + rocksdb::WriteOptions options; + rocksdb::Status s = db_->Put(options, key, value); + if (s.ok()) { + return true; + } else { + return false; + } +} + +void RocksDBWrapper::SetDBName(std::string db_name) { + this->db_name_ = db_name; +} + +void RocksDBWrapper::Close() { + if (db_ != nullptr) { + db_->Close(); + delete(db_); + db_ = nullptr; + } +} + +std::shared_ptr RocksDBWrapper::RocksDBWrapperFactory( + std::string db_name) { + return std::make_shared(db_name); +} diff --git a/core/kvdb/src/param_dict_mgr_impl.cpp b/core/kvdb/src/param_dict_mgr_impl.cpp new file mode 100644 index 0000000000000000000000000000000000000000..712cfe998dc62b941b2686a43bc836921bffa165 --- /dev/null +++ b/core/kvdb/src/param_dict_mgr_impl.cpp @@ -0,0 +1,28 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/kvdb/include/kvdb/kvdb_impl.h" + +void ParamDictMgr::UpdateAll() { + for (auto it = this->ParamDictMap.begin(); it != this->ParamDictMap.end(); + ++it) { + it->second->UpdateBaseModel(); + } +} + +void ParamDictMgr::InsertParamDict(std::string key, ParamDictPtr value) { + this->ParamDictMap.insert(std::make_pair(key, value)); +} + +AbstractKVDB::~AbstractKVDB() {} diff --git a/core/kvdb/src/rockskvdb_impl.cpp b/core/kvdb/src/rockskvdb_impl.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4b2c177a373d71593dce039642ca9092c01e01ab --- /dev/null +++ b/core/kvdb/src/rockskvdb_impl.cpp @@ -0,0 +1,43 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/kvdb/include/kvdb/rocksdb_impl.h" + +int RocksKVDB::db_count; +void RocksKVDB::CreateDB() { + this->db_ = RocksDBWrapper::RocksDBWrapperFactory( + "RocksDB_" + std::to_string(RocksKVDB::db_count)); + RocksKVDB::db_count++; + return; +} + +void RocksKVDB::SetDBName(std::string db_name) { + this->db_->SetDBName(db_name); + return; +} + +void RocksKVDB::Set(std::string key, std::string value) { + this->db_->Put(key, value); + return; +} + +void RocksKVDB::Close() { + this->db_->Close(); +} + +std::string RocksKVDB::Get(std::string key) { return this->db_->Get(key); } + +RocksKVDB::~RocksKVDB() { + this->db_->Close(); +} diff --git a/core/kvdb/src/test_rocksdb.cpp b/core/kvdb/src/test_rocksdb.cpp new file mode 100644 index 0000000000000000000000000000000000000000..81f2de4ca0ba1208704ae8e62ea7ad820c5408e0 --- /dev/null +++ b/core/kvdb/src/test_rocksdb.cpp @@ -0,0 +1,45 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/kvdb/include/kvdb/rocksdb_impl.h" +void test_rockskvdb() { + RocksKVDB db; + db.CreateDB(); + db.SetDBName("Sparse Matrix"); + db.Set("1", "One"); + std::cout << db.Get("1") << std::endl; + return; +} + +void test_rocksdbwrapper() { + std::shared_ptr db = + RocksDBWrapper::RocksDBWrapperFactory("TEST"); + for (size_t i = 0; i < 1000; i++) { + db->Put(std::to_string(i), std::to_string(i * 2)); + } + for (size_t i = 0; i < 1000; i++) { + std::string res = db->Get(std::to_string(i)); + std::cout << res << " "; + } + std::cout << std::endl; +} + +#ifdef RAW_TEST +int main() { + test_rockskvdb(); + test_rocksdbwrapper(); +} +#endif diff --git a/core/pdcodegen/CMakeLists.txt b/core/pdcodegen/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6f113a97e86d27a5b41925cc47ff1e8b2e87e237 --- /dev/null +++ b/core/pdcodegen/CMakeLists.txt @@ -0,0 +1,17 @@ +include(plugin/CMakeLists.txt) +include(src/CMakeLists.txt) + +PROTOBUF_GENERATE_CPP(pdcodegen_proto_srcs pdcodegen_proto_hdrs + ${CMAKE_SOURCE_DIR}/core/predictor/proto/pds_option.proto) + +LIST(APPEND pdcodegen_srcs ${pdcodegen_proto_srcs}) + +add_executable(pdcodegen ${pdcodegen_srcs}) +target_link_libraries(pdcodegen protobuf ${PROTOBUF_PROTOC_LIBRARY}) + +# install +install(TARGETS pdcodegen + RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/bin + ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib + LIBRARY DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/so + ) diff --git a/pdcodegen/plugin/CMakeLists.txt b/core/pdcodegen/plugin/CMakeLists.txt similarity index 100% rename from pdcodegen/plugin/CMakeLists.txt rename to core/pdcodegen/plugin/CMakeLists.txt diff --git a/pdcodegen/plugin/pdcodegen b/core/pdcodegen/plugin/pdcodegen similarity index 100% rename from pdcodegen/plugin/pdcodegen rename to core/pdcodegen/plugin/pdcodegen diff --git a/pdcodegen/plugin/stl_util-inl.h b/core/pdcodegen/plugin/stl_util-inl.h similarity index 100% rename from pdcodegen/plugin/stl_util-inl.h rename to core/pdcodegen/plugin/stl_util-inl.h diff --git a/pdcodegen/plugin/strutil.h b/core/pdcodegen/plugin/strutil.h similarity index 100% rename from pdcodegen/plugin/strutil.h rename to core/pdcodegen/plugin/strutil.h diff --git a/core/pdcodegen/plugin/substitute.cc b/core/pdcodegen/plugin/substitute.cc new file mode 100644 index 0000000000000000000000000000000000000000..e964971ba6846087848b5907f19fd5e837b0e3da --- /dev/null +++ b/core/pdcodegen/plugin/substitute.cc @@ -0,0 +1,175 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// http://code.google.com/p/protobuf/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) + +// #include +#include "core/pdcodegen/plugin/substitute.h" +#include "core/pdcodegen/plugin/stl_util-inl.h" +#include "core/pdcodegen/plugin/strutil.h" + +namespace google { +namespace protobuf { +namespace strings { + +using internal::SubstituteArg; + +// Returns the number of args in arg_array which were passed explicitly +// to Substitute(). +static int CountSubstituteArgs(const SubstituteArg* const* args_array) { + int count = 0; + while (args_array[count] != NULL && args_array[count]->size() != -1) { + ++count; + } + return count; +} + +string Substitute(const char* format, + const SubstituteArg& arg0, + const SubstituteArg& arg1, + const SubstituteArg& arg2, + const SubstituteArg& arg3, + const SubstituteArg& arg4, + const SubstituteArg& arg5, + const SubstituteArg& arg6, + const SubstituteArg& arg7, + const SubstituteArg& arg8, + const SubstituteArg& arg9) { + string result; + SubstituteAndAppend(&result, + format, + arg0, + arg1, + arg2, + arg3, + arg4, + arg5, + arg6, + arg7, + arg8, + arg9); + return result; +} + +void SubstituteAndAppend(string* output, + const char* format, + const SubstituteArg& arg0, + const SubstituteArg& arg1, + const SubstituteArg& arg2, + const SubstituteArg& arg3, + const SubstituteArg& arg4, + const SubstituteArg& arg5, + const SubstituteArg& arg6, + const SubstituteArg& arg7, + const SubstituteArg& arg8, + const SubstituteArg& arg9) { + const SubstituteArg* const args_array[] = {&arg0, + &arg1, + &arg2, + &arg3, + &arg4, + &arg5, + &arg6, + &arg7, + &arg8, + &arg9, + NULL}; + + // Determine total size needed. + int size = 0; + for (int i = 0; format[i] != '\0'; i++) { + if (format[i] == '$') { + if (ascii_isdigit(format[i + 1])) { + int index = format[i + 1] - '0'; + if (args_array[index]->size() == -1) { + GOOGLE_LOG(DFATAL) + << "strings::Substitute format string invalid: asked for \"$" + << index << "\", but only " << CountSubstituteArgs(args_array) + << " args were given. Full format string was: \"" + << CEscape(format) << "\"."; + return; + } + size += args_array[index]->size(); + ++i; // Skip next char. + } else if (format[i + 1] == '$') { + ++size; + ++i; // Skip next char. + } else { + GOOGLE_LOG(DFATAL) << "Invalid strings::Substitute() format string: \"" + << CEscape(format) << "\"."; + return; + } + } else { + ++size; + } + } + + if (size == 0) return; + + // Build the string. + int original_size = output->size(); + STLStringResizeUninitialized(output, original_size + size); + char* target = string_as_array(output) + original_size; + for (int i = 0; format[i] != '\0'; i++) { + if (format[i] == '$') { + if (ascii_isdigit(format[i + 1])) { + const SubstituteArg* src = args_array[format[i + 1] - '0']; + memcpy(target, src->data(), src->size()); + target += src->size(); + ++i; // Skip next char. + } else if (format[i + 1] == '$') { + *target++ = '$'; + ++i; // Skip next char. + } + } else { + *target++ = format[i]; + } + } + + GOOGLE_DCHECK_EQ(target - output->data(), output->size()); +} + +} // namespace strings +} // namespace protobuf +} // namespace google diff --git a/core/pdcodegen/plugin/substitute.h b/core/pdcodegen/plugin/substitute.h new file mode 100644 index 0000000000000000000000000000000000000000..289244b8db755f3e4d00ed4fce2c6a40f429e806 --- /dev/null +++ b/core/pdcodegen/plugin/substitute.h @@ -0,0 +1,189 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +// Protocol Buffers - Google's data interchange format +// Copyright 2008 Google Inc. All rights reserved. +// http://code.google.com/p/protobuf/ +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +// Author: kenton@google.com (Kenton Varda) +// from google3/strings/substitute.h + +#include +#include +// hmmm... +// #include +#include "core/pdcodegen/plugin/strutil.h" + +#pragma once +namespace google { +namespace protobuf { +namespace strings { + +// ---------------------------------------------------------------------- +// strings::Substitute() +// strings::SubstituteAndAppend() +// Kind of like StringPrintf, but different. +// +// Example: +// string GetMessage(string first_name, string last_name, int age) { +// return strings::Substitute("My name is $0 $1 and I am $2 years old.", +// first_name, last_name, age); +// } +// +// Differences from StringPrintf: +// * The format string does not identify the types of arguments. +// Instead, the magic of C++ deals with this for us. See below +// for a list of accepted types. +// * Substitutions in the format string are identified by a '$' +// followed by a digit. So, you can use arguments out-of-order and +// use the same argument multiple times. +// * It's much faster than StringPrintf. +// +// Supported types: +// * Strings (const char*, const string&) +// * Note that this means you do not have to add .c_str() to all of +// your strings. In fact, you shouldn't; it will be slower. +// * int32, int64, uint32, uint64: Formatted using SimpleItoa(). +// * float, double: Formatted using SimpleFtoa() and SimpleDtoa(). +// * bool: Printed as "true" or "false". +// +// SubstituteAndAppend() is like Substitute() but appends the result to +// *output. Example: +// +// string str; +// strings::SubstituteAndAppend(&str, +// "My name is $0 $1 and I am $2 years old.", +// first_name, last_name, age); +// +// Substitute() is significantly faster than StringPrintf(). For very +// large strings, it may be orders of magnitude faster. +// ---------------------------------------------------------------------- + +namespace internal { // Implementation details. + +class SubstituteArg { + public: + explicit inline SubstituteArg(const char* value) + : text_(value), size_(strlen(text_)) {} + explicit inline SubstituteArg(const string& value) + : text_(value.data()), size_(value.size()) {} + + // Indicates that no argument was given. + inline SubstituteArg() : text_(NULL), size_(-1) {} + + // Primitives + // We don't overload for signed and unsigned char because if people are + // explicitly declaring their chars as signed or unsigned then they are + // probably actually using them as 8-bit integers and would probably + // prefer an integer representation. But, we don't really know. So, we + // make the caller decide what to do. + explicit inline SubstituteArg(char value) : text_(scratch_), size_(1) { + scratch_[0] = value; + } + explicit inline SubstituteArg(short value) // NOLINT + : text_(FastInt32ToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(unsigned short value) // NOLINT + : text_(FastUInt32ToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(int value) + : text_(FastInt32ToBuffer(value, scratch_)), size_(strlen(text_)) {} + explicit inline SubstituteArg(unsigned int value) + : text_(FastUInt32ToBuffer(value, scratch_)), size_(strlen(text_)) {} + explicit inline SubstituteArg(long value) // NOLINT + : text_(FastLongToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(unsigned long value) // NOLINT + : text_(FastULongToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(long long value) // NOLINT + : text_(FastInt64ToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(unsigned long long value) // NOLINT + : text_(FastUInt64ToBuffer(value, scratch_)), + size_(strlen(text_)) {} + explicit inline SubstituteArg(float value) + : text_(FloatToBuffer(value, scratch_)), size_(strlen(text_)) {} + explicit inline SubstituteArg(double value) + : text_(DoubleToBuffer(value, scratch_)), size_(strlen(text_)) {} + explicit inline SubstituteArg(bool value) + : text_(value ? "true" : "false"), size_(strlen(text_)) {} + + inline const char* data() const { return text_; } + inline int size() const { return size_; } + + private: + const char* text_; + int size_; + char scratch_[kFastToBufferSize]; +}; + +} // namespace internal + +LIBPROTOBUF_EXPORT string +Substitute(const char* format, + const internal::SubstituteArg& arg0 = internal::SubstituteArg(), + const internal::SubstituteArg& arg1 = internal::SubstituteArg(), + const internal::SubstituteArg& arg2 = internal::SubstituteArg(), + const internal::SubstituteArg& arg3 = internal::SubstituteArg(), + const internal::SubstituteArg& arg4 = internal::SubstituteArg(), + const internal::SubstituteArg& arg5 = internal::SubstituteArg(), + const internal::SubstituteArg& arg6 = internal::SubstituteArg(), + const internal::SubstituteArg& arg7 = internal::SubstituteArg(), + const internal::SubstituteArg& arg8 = internal::SubstituteArg(), + const internal::SubstituteArg& arg9 = internal::SubstituteArg()); + +LIBPROTOBUF_EXPORT void SubstituteAndAppend( + string* output, + const char* format, + const internal::SubstituteArg& arg0 = internal::SubstituteArg(), + const internal::SubstituteArg& arg1 = internal::SubstituteArg(), + const internal::SubstituteArg& arg2 = internal::SubstituteArg(), + const internal::SubstituteArg& arg3 = internal::SubstituteArg(), + const internal::SubstituteArg& arg4 = internal::SubstituteArg(), + const internal::SubstituteArg& arg5 = internal::SubstituteArg(), + const internal::SubstituteArg& arg6 = internal::SubstituteArg(), + const internal::SubstituteArg& arg7 = internal::SubstituteArg(), + const internal::SubstituteArg& arg8 = internal::SubstituteArg(), + const internal::SubstituteArg& arg9 = internal::SubstituteArg()); + +} // namespace strings +} // namespace protobuf +} // namespace google diff --git a/pdcodegen/src/CMakeLists.txt b/core/pdcodegen/src/CMakeLists.txt similarity index 100% rename from pdcodegen/src/CMakeLists.txt rename to core/pdcodegen/src/CMakeLists.txt diff --git a/core/pdcodegen/src/pdcodegen.cpp b/core/pdcodegen/src/pdcodegen.cpp new file mode 100644 index 0000000000000000000000000000000000000000..007c43c65ca8431982a3f1574df96f558b25f94c --- /dev/null +++ b/core/pdcodegen/src/pdcodegen.cpp @@ -0,0 +1,1549 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "boost/algorithm/string.hpp" +#include "boost/scoped_ptr.hpp" +#include "google/protobuf/compiler/code_generator.h" +#include "google/protobuf/compiler/plugin.h" +#include "google/protobuf/descriptor.h" +#include "google/protobuf/io/printer.h" +#include "google/protobuf/io/zero_copy_stream.h" +#include "core/pdcodegen/pds_option.pb.h" +#include "core/pdcodegen/plugin/strutil.h" +#include "core/pdcodegen/plugin/substitute.h" +using std::string; +using google::protobuf::Descriptor; +using google::protobuf::FileDescriptor; +using google::protobuf::FieldDescriptor; +using google::protobuf::MethodDescriptor; +using google::protobuf::ServiceDescriptor; +using google::protobuf::compiler::CodeGenerator; +using google::protobuf::compiler::GeneratorContext; +using google::protobuf::HasSuffixString; +using google::protobuf::StripSuffixString; +namespace google { +namespace protobuf { +string dots_to_colons(const string& name) { + return StringReplace(name, ".", "::", true); +} +string full_class_name(const Descriptor* descriptor) { + // Find "outer", the descriptor of the top-level message in which + // "descriptor" is embedded. + const Descriptor* outer = descriptor; + while (outer->containing_type() != NULL) { + outer = outer->containing_type(); + } + return outer->full_name(); +} +} // namespace protobuf +} // namespace google +string strip_proto(const string& filename) { + if (HasSuffixString(filename, ".protolevel")) { + return StripSuffixString(filename, ".protolevel"); + } else { + return StripSuffixString(filename, ".proto"); + } +} +void string_format(std::string& source) { // NOLINT + size_t len = source.length(); + std::string sep = "_"; + for (int i = 0; i < len; i++) { + if (source[i] >= 'A' && source[i] <= 'Z') { + source[i] += 32; + if (i == 0) { + continue; + } + source.insert(i, sep); + i++; + len++; + } + } +} +bool valid_service_method(const std::vector& methods) { + if (methods.size() != 2) { + return false; + } + if (methods[0]->name() == "inference" && methods[1]->name() == "debug") { + return true; + } + if (methods[1]->name() == "inference" && methods[0]->name() == "debug") { + return true; + } + return false; +} + +#ifdef BCLOUD +class PdsCodeGenerator : public CodeGenerator { + public: + virtual bool Generate(const FileDescriptor* file, + const string& parameter, + GeneratorContext* context, + std::string* error) const { + const string header = strip_proto(file->name()) + ".pb.h"; + const string body = strip_proto(file->name()) + ".pb.cc"; + bool include_inserted = false; + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* descriptor = file->service(i); + if (!descriptor) { + *error = "get descriptor failed"; + return false; + } + pds::PaddleServiceOption options = + descriptor->options().GetExtension(pds::options); + bool generate_impl = options.generate_impl(); + bool generate_stub = options.generate_stub(); + if (!generate_impl && !generate_stub) { + return true; + } + if (!include_inserted) { + boost::scoped_ptr output( + context->OpenForInsert(header, "includes")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (generate_impl) { + printer.Print("#include \"core/predictor/common/inner_common.h\"\n"); + printer.Print("#include \"core/predictor/framework/service.h\"\n"); + printer.Print("#include \"core/predictor/framework/manager.h\"\n"); + printer.Print("#include \"core/predictor/framework/service_manager.h\"\n"); + } + if (generate_stub) { + printer.Print("#include \n"); + printer.Print("#include \"core/sdk-cpp/include/factory.h\"\n"); + printer.Print("#include \"core/sdk-cpp/include/stub.h\"\n"); + printer.Print("#include \"core/sdk-cpp/include/stub_impl.h\"\n"); + } + include_inserted = true; + } + const std::string& class_name = descriptor->name(); + const std::string& service_name = descriptor->name(); + // xxx.ph.h + { + if (generate_impl) { + // service scope + // namespace scope + boost::scoped_ptr output( + context->OpenForInsert(header, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_head( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + if (generate_stub) { + // service class scope + + // namespace scope + { + boost::scoped_ptr + output(context->OpenForInsert(header, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_stub_head( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + } + } + // xxx.pb.cc + { + if (generate_impl) { + // service scope + // namespace scope + boost::scoped_ptr output( + context->OpenForInsert(body, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_body( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + if (generate_stub) { + // service class scope + {} // namespace scope + { + boost::scoped_ptr + output(context->OpenForInsert(body, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_stub_body( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + } + } + } + return true; + } + + private: + bool generate_paddle_serving_head(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + std::string variable_name = class_name; + string_format(variable_name); + printer->Print( + "class $name$Impl : public $name$ {\n" + "public:\n" + " virtual ~$name$Impl() {}\n" + " static $name$Impl& instance() {\n" + " return _s_$variable_name$_impl;\n" + " }\n\n" + " $name$Impl(const std::string& service_name) {\n" + " REGIST_FORMAT_SERVICE(\n" + " service_name, &$name$Impl::instance());\n" + " }\n\n", + "name", + class_name, + "variable_name", + variable_name); + for (int i = 0; i < methods.size(); i++) { + const MethodDescriptor* m = methods[i]; + printer->Print( + " virtual void $name$(google::protobuf::RpcController* cntl_base,\n" + " const $input_name$* request,\n" + " $output_name$* response,\n" + " google::protobuf::Closure* done);\n\n", + "name", + m->name(), + "input_name", + google::protobuf::dots_to_colons(m->input_type()->full_name()), + "output_name", + google::protobuf::dots_to_colons(m->output_type()->full_name())); + } + printer->Print( + " static $name$Impl _s_$variable_name$_impl;\n" + "};", + "name", + class_name, + "variable_name", + variable_name); + return true; + } + bool generate_paddle_serving_body(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + std::string variable_name = class_name; + string_format(variable_name); + for (int i = 0; i < methods.size(); i++) { + const MethodDescriptor* m = methods[i]; + printer->Print("void $name$Impl::$method$(\n", + "name", + class_name, + "method", + m->name()); + printer->Print( + " google::protobuf::RpcController* cntl_base,\n" + " const $input_name$* request,\n" + " $output_name$* response,\n" + " google::protobuf::Closure* done) {\n" + " struct timeval tv;\n" + " gettimeofday(&tv, NULL);" + " long start = tv.tv_sec * 1000000 + tv.tv_usec;", + "input_name", + google::protobuf::dots_to_colons(m->input_type()->full_name()), + "output_name", + google::protobuf::dots_to_colons(m->output_type()->full_name())); + if (m->name() == "inference") { + printer->Print( + " baidu::rpc::ClosureGuard done_guard(done);\n" + " baidu::rpc::Controller* cntl = \n" + " static_cast(cntl_base);\n" + " ::baidu::paddle_serving::predictor::InferService* svr = \n" + " " + "::baidu::paddle_serving::predictor::InferServiceManager::instance(" + ").item(\"$service$\");\n" + " if (svr == NULL) {\n" + " LOG(ERROR) << \"Not found service: $service$\";\n" + " cntl->SetFailed(404, \"Not found service: $service$\");\n" + " return ;\n" + " }\n" + " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT + " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT + " int err_code = svr->inference(request, response);\n" + " if (err_code != 0) {\n" + " LOG(WARNING)\n" + " << \"Failed call inferservice[$name$], name[$service$]\"\n" + " << \", error_code: \" << err_code;\n" + " cntl->SetFailed(err_code, \"InferService inference " + "failed!\");\n" + " }\n" + " gettimeofday(&tv, NULL);\n" + " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" + " // flush notice log\n" + " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n", // NOLINT + "name", + class_name, + "service", + service_name); + } + if (m->name() == "debug") { + printer->Print( + " baidu::rpc::ClosureGuard done_guard(done);\n" + " baidu::rpc::Controller* cntl = \n" + " static_cast(cntl_base);\n" + " ::baidu::paddle_serving::predictor::InferService* svr = \n" + " " + "::baidu::paddle_serving::predictor::InferServiceManager::instance(" + ").item(\"$service$\");\n" + " if (svr == NULL) {\n" + " LOG(ERROR) << \"Not found service: $service$\";\n" + " cntl->SetFailed(404, \"Not found service: $service$\");\n" + " return ;\n" + " }\n" + " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT + " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT + " butil::IOBufBuilder debug_os;\n" + " int err_code = svr->inference(request, response, &debug_os);\n" + " if (err_code != 0) {\n" + " LOG(WARNING)\n" + " << \"Failed call inferservice[$name$], name[$service$]\"\n" + " << \", error_code: \" << err_code;\n" + " cntl->SetFailed(err_code, \"InferService inference " + "failed!\");\n" + " }\n" + " debug_os.move_to(cntl->response_attachment());\n" + " gettimeofday(&tv, NULL);\n" + " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" + " // flush notice log\n" + " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n" // NOLINT + " LOG(INFO)\n" + " << \"TC=[\" << (end - start) << \"] Received debug " + "request[log_id=\" << cntl->log_id()\n" + " << \"] from \" << cntl->remote_side()\n" + " << \" to \" << cntl->local_side();\n", + "name", + class_name, + "service", + service_name); + } + printer->Print("}\n"); + } + printer->Print( + "$name$Impl $name$Impl::_s_$variable_name$_impl(\"$service$\");\n", + "name", + class_name, + "variable_name", + variable_name, + "service", + service_name); + return true; + } + bool generate_paddle_serving_stub_head(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "class $name$_StubCallMapper : public baidu::rpc::CallMapper {\n" + "private:\n" + " uint32_t _package_size;\n" + " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" + "public:\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "$name$_StubCallMapper(uint32_t package_size, " + "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" + " _package_size = package_size;\n" + " _stub_handler = stub;\n" + "}\n", + "name", + class_name); + + printer->Print( + "baidu::rpc::SubCall default_map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"default_map\", channel_index);", + "name", + class_name); + printer->Indent(); + + if (!generate_paddle_serving_stub_default_map( + printer, descriptor, error, service_name, class_name)) { + return false; + } + + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "baidu::rpc::SubCall sub_package_map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope scope(\"sub_map\", " + "channel_index);", + "name", + class_name); + printer->Indent(); + + std::vector in_shared_fields; + std::vector in_item_fields; + const MethodDescriptor* md = descriptor->FindMethodByName("inference"); + if (!md) { + *error = "not found inference method!"; + return false; + } + for (int i = 0; i < md->input_type()->field_count(); ++i) { + const FieldDescriptor* fd = md->input_type()->field(i); + if (!fd) { + *error = "invalid fd at: " + i; + return false; + } + bool pack_on = fd->options().GetExtension(pds::pack_on); + if (pack_on && !fd->is_repeated()) { + *error = "Pack fields must be repeated, field: " + fd->name(); + return false; + } + if (pack_on) { + in_item_fields.push_back(fd); + } else { + in_shared_fields.push_back(fd); + } + } + + if (!generate_paddle_serving_stub_package_map(printer, + descriptor, + error, + service_name, + class_name, + in_shared_fields, + in_item_fields)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "baidu::rpc::SubCall Map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n", + "name", + class_name); + printer->Indent(); + + if (in_item_fields.size() <= 0) { + printer->Print( + "// No packed items found in proto file, use default map method\n" + "return default_map(channel_index, method, request, response);\n"); + } else { + printer->Print( + "butil::Timer tt(butil::Timer::STARTED);\n" + "baidu::rpc::SubCall ret;\n" + "if (_package_size == 0) {\n" + " ret = default_map(channel_index, method, request, response);\n" + "} else {\n" + " ret = sub_package_map(channel_index, method, request, " + "response);\n" + "}\n" + "tt.stop();\n" + "if (ret.flags != baidu::rpc::SKIP_SUB_CHANNEL && ret.method != " + "NULL) {\n" + " _stub_handler->update_latency(tt.u_elapsed(), \"pack_map\");\n" + "}\n" + "return ret;\n"); + } + + printer->Outdent(); + printer->Print("}\n"); + + printer->Outdent(); + printer->Print("};\n"); + + //////////////////////////////////////////////////////////////// + printer->Print( + "class $name$_StubResponseMerger : public baidu::rpc::ResponseMerger " + "{\n" + "private:\n" + " uint32_t _package_size;\n" + " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" + "public:\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "$name$_StubResponseMerger(uint32_t package_size, " + "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" + " _package_size = package_size;\n" + " _stub_handler = stub;\n" + "}\n", + "name", + class_name); + + printer->Print( + "baidu::rpc::ResponseMerger::Result default_merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"default_merge\");", + "name", + class_name); + printer->Indent(); + if (!generate_paddle_serving_stub_default_merger( + printer, descriptor, error, service_name, class_name)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "baidu::rpc::ResponseMerger::Result sub_package_merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"sub_merge\");", + "name", + class_name); + printer->Indent(); + if (!generate_paddle_serving_stub_package_merger( + printer, descriptor, error, service_name, class_name)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "baidu::rpc::ResponseMerger::Result Merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "butil::Timer tt(butil::Timer::STARTED);\n" + "baidu::rpc::ResponseMerger::Result ret;" + "if (_package_size <= 0) {\n" + " ret = default_merge(response, sub_response);\n" + "} else {\n" + " ret = sub_package_merge(response, sub_response);\n" + "}\n" + "tt.stop();\n" + "if (ret != baidu::rpc::ResponseMerger::FAIL) {\n" + " _stub_handler->update_latency(tt.u_elapsed(), \"pack_merge\");\n" + "}\n" + "return ret;\n"); + printer->Outdent(); + printer->Print("}\n"); + + printer->Outdent(); + printer->Print("};\n"); + return true; + } + bool generate_paddle_serving_stub_default_map( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "if (channel_index > 0) { \n" + " return baidu::rpc::SubCall::Skip();\n" + "}\n"); + printer->Print( + "google::protobuf::Message* cur_res = " + "_stub_handler->fetch_response();\n" + "if (cur_res == NULL) {\n" + " LOG(INFO) << \"Failed fetch response from stub handler, new it\";\n" + " cur_res = response->New();\n" + " if (cur_res == NULL) {\n" + " LOG(ERROR) << \"Failed new response item!\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::SubCall::Bad();\n" + " }\n" + " return baidu::rpc::SubCall(method, request, cur_res, " + "baidu::rpc::DELETE_RESPONSE);\n" + "}\n"); + "LOG(INFO) \n" + " << \"[default] Succ map, channel_index: \" << channel_index;\n"; + printer->Print( + "return baidu::rpc::SubCall(method, request, cur_res, 0);\n"); + return true; + } + bool generate_paddle_serving_stub_default_merger( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "try {\n" + " response->MergeFrom(*sub_response);\n" + " return baidu::rpc::ResponseMerger::MERGED;\n" + "} catch (const std::exception& e) {\n" + " LOG(ERROR) << \"Merge failed.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::ResponseMerger::FAIL;\n" + "}\n"); + return true; + } + bool generate_paddle_serving_stub_package_map( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name, + std::vector& in_shared_fields, // NOLINT + std::vector& in_item_fields) const { // NOLINT + const MethodDescriptor* md = descriptor->FindMethodByName("inference"); + if (!md) { + *error = "not found inference method!"; + return false; + } + + printer->Print( + "const $req_type$* req \n" + " = dynamic_cast(request);\n" + "$req_type$* sub_req = NULL;", + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + + // 1. pack fields 逐字段计算index范围,并从req copy值sub_req + printer->Print("\n// 1. 样本字段(必须为repeated类型)按指定下标复制\n"); + for (uint32_t ii = 0; ii < in_item_fields.size(); ii++) { + const FieldDescriptor* fd = in_item_fields[ii]; + std::string field_name = fd->name(); + printer->Print("\n/////$field_name$\n", "field_name", field_name); + if (ii == 0) { + printer->Print( + "uint32_t total_size = req->$field_name$_size();\n" + "if (channel_index == 0) {\n" + " _stub_handler->update_average(total_size, \"item_size\");\n" + "}\n", + "field_name", + field_name); + + printer->Print( + "int start = _package_size * channel_index;\n" + "if (start >= total_size) {\n" + " return baidu::rpc::SubCall::Skip();\n" + "}\n" + "int end = _package_size * (channel_index + 1);\n" + "if (end > total_size) {\n" + " end = total_size;\n" + "}\n"); + + printer->Print( + "sub_req = " + "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" + "if (sub_req == NULL) {\n" + " LOG(ERROR) << \"failed fetch sub_req from stub.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::SubCall::Bad();\n" + "}\n", + "name", + class_name, + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + + } else { + printer->Print( + "if (req->$field_name$_size() != total_size) {\n" + " LOG(ERROR) << \"pack field size not consistency: \"\n" + " << total_size << \"!=\" << " + "req->$field_name$_size()\n" + " << \", field: $field_name$.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::SubCall::Bad();\n" + "}\n", + "field_name", + field_name); + } + + printer->Print("for (uint32_t i = start; i < end; ++i) {\n"); + printer->Indent(); + if (fd->cpp_type() == + google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE) { + printer->Print( + "sub_req->add_$field_name$()->CopyFrom(req->$field_name$(i));\n", + "field_name", + field_name); + } else { + printer->Print("sub_req->add_$field_name$(req->$field_name$(i));\n", + "field_name", + field_name); + } + printer->Outdent(); + printer->Print("}\n"); + } + + // 2. shared fields逐字段从req copy至sub_req + printer->Print("\n// 2. 共享字段,从req逐个复制到sub_req\n"); + if (in_item_fields.size() == 0) { + printer->Print( + "if (sub_req == NULL) { // no packed items\n" + " sub_req = " + "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" + " if (!sub_req) {\n" + " LOG(ERROR) << \"failed fetch sub_req from stub handler.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::SubCall::Bad();\n" + " }\n" + "}\n", + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + } + for (uint32_t si = 0; si < in_shared_fields.size(); si++) { + const FieldDescriptor* fd = in_shared_fields[si]; + std::string field_name = fd->name(); + printer->Print("\n/////$field_name$\n", "field_name", field_name); + if (fd->is_optional()) { + printer->Print( + "if (req->has_$field_name$()) {\n", "field_name", field_name); + printer->Indent(); + } + if (fd->cpp_type() == + google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE || + fd->is_repeated()) { + printer->Print( + "sub_req->mutable_$field_name$()->CopyFrom(req->$field_name$());\n", + "field_name", + field_name); + } else { + printer->Print("sub_req->set_$field_name$(req->$field_name$());\n", + "field_name", + field_name); + } + if (fd->is_optional()) { + printer->Outdent(); + printer->Print("}\n"); + } + } + + printer->Print( + "LOG(INFO)\n" + " << \"[pack] Succ map req at: \"\n" + " << channel_index;\n"); + printer->Print( + "google::protobuf::Message* sub_res = " + "_stub_handler->fetch_response();\n" + "if (sub_res == NULL) {\n" + " LOG(ERROR) << \"failed create sub_res from res.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return baidu::rpc::SubCall::Bad();\n" + "}\n" + "return baidu::rpc::SubCall(method, sub_req, sub_res, 0);\n"); + return true; + } + bool generate_paddle_serving_stub_package_merger( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + return generate_paddle_serving_stub_default_merger( + printer, descriptor, error, service_name, class_name); + } + bool generate_paddle_serving_stub_body(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + + const MethodDescriptor* md = methods[0]; + std::map variables; + variables["name"] = class_name; + variables["req_type"] = + google::protobuf::dots_to_colons(md->input_type()->full_name()); + variables["res_type"] = + google::protobuf::dots_to_colons(md->output_type()->full_name()); + variables["fullname"] = descriptor->full_name(); + printer->Print(variables, + "REGIST_STUB_OBJECT_WITH_TAG(\n" + " $name$_Stub,\n" + " $name$_StubCallMapper,\n" + " $name$_StubResponseMerger,\n" + " $req_type$,\n" + " $res_type$,\n" + " \"$fullname$\");\n"); + variables.clear(); + return true; + } +}; +#else // #ifdef BCLOUD +class PdsCodeGenerator : public CodeGenerator { + public: + virtual bool Generate(const FileDescriptor* file, + const string& parameter, + GeneratorContext* context, + std::string* error) const { + const string header = strip_proto(file->name()) + ".pb.h"; + const string body = strip_proto(file->name()) + ".pb.cc"; + bool include_inserted = false; + for (int i = 0; i < file->service_count(); ++i) { + const ServiceDescriptor* descriptor = file->service(i); + if (!descriptor) { + *error = "get descriptor failed"; + return false; + } + pds::PaddleServiceOption options = + descriptor->options().GetExtension(pds::options); + bool generate_impl = options.generate_impl(); + bool generate_stub = options.generate_stub(); + if (!generate_impl && !generate_stub) { + return true; + } + if (!include_inserted) { + boost::scoped_ptr output( + context->OpenForInsert(header, "includes")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (generate_impl) { + printer.Print("#include \"core/predictor/common/inner_common.h\"\n"); + printer.Print("#include \"core/predictor/framework/service.h\"\n"); + printer.Print("#include \"core/predictor/framework/manager.h\"\n"); + printer.Print("#include \"core/predictor/framework/service_manager.h\"\n"); + } + if (generate_stub) { + printer.Print("#include \n"); + printer.Print("#include \"core/sdk-cpp/include/factory.h\"\n"); + printer.Print("#include \"core/sdk-cpp/include/stub.h\"\n"); + printer.Print("#include \"core/sdk-cpp/include/stub_impl.h\"\n"); + } + include_inserted = true; + } + const std::string& class_name = descriptor->name(); + const std::string& service_name = descriptor->name(); + // xxx.ph.h + { + if (generate_impl) { + // service scope + // namespace scope + boost::scoped_ptr output( + context->OpenForInsert(header, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_head( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + if (generate_stub) { + // service class scope + + // namespace scope + { + boost::scoped_ptr + output(context->OpenForInsert(header, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_stub_head( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + } + } + // xxx.pb.cc + { + if (generate_impl) { + // service scope + // namespace scope + boost::scoped_ptr output( + context->OpenForInsert(body, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_body( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + if (generate_stub) { + // service class scope + {} // namespace scope + { + boost::scoped_ptr + output(context->OpenForInsert(body, "namespace_scope")); + google::protobuf::io::Printer printer(output.get(), '$'); + if (!generate_paddle_serving_stub_body( + &printer, descriptor, error, service_name, class_name)) { + return false; + } + } + } + } + } + return true; + } + + private: + bool generate_paddle_serving_head(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + std::string variable_name = class_name; + string_format(variable_name); + printer->Print( + "class $name$Impl : public $name$ {\n" + "public:\n" + " virtual ~$name$Impl() {}\n" + " static $name$Impl& instance() {\n" + " return _s_$variable_name$_impl;\n" + " }\n\n" + " $name$Impl(const std::string& service_name) {\n" + " REGIST_FORMAT_SERVICE(\n" + " service_name, &$name$Impl::instance());\n" + " }\n\n", + "name", + class_name, + "variable_name", + variable_name); + for (int i = 0; i < methods.size(); i++) { + const MethodDescriptor* m = methods[i]; + printer->Print( + " virtual void $name$(google::protobuf::RpcController* cntl_base,\n" + " const $input_name$* request,\n" + " $output_name$* response,\n" + " google::protobuf::Closure* done);\n\n", + "name", + m->name(), + "input_name", + google::protobuf::dots_to_colons(m->input_type()->full_name()), + "output_name", + google::protobuf::dots_to_colons(m->output_type()->full_name())); + } + printer->Print( + " static $name$Impl _s_$variable_name$_impl;\n" + "};", + "name", + class_name, + "variable_name", + variable_name); + return true; + } + bool generate_paddle_serving_body(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + std::string variable_name = class_name; + string_format(variable_name); + for (int i = 0; i < methods.size(); i++) { + const MethodDescriptor* m = methods[i]; + printer->Print("void $name$Impl::$method$(\n", + "name", + class_name, + "method", + m->name()); + printer->Print( + " google::protobuf::RpcController* cntl_base,\n" + " const $input_name$* request,\n" + " $output_name$* response,\n" + " google::protobuf::Closure* done) {\n" + " struct timeval tv;\n" + " gettimeofday(&tv, NULL);" + " long start = tv.tv_sec * 1000000 + tv.tv_usec;", + "input_name", + google::protobuf::dots_to_colons(m->input_type()->full_name()), + "output_name", + google::protobuf::dots_to_colons(m->output_type()->full_name())); + if (m->name() == "inference") { + printer->Print( + " brpc::ClosureGuard done_guard(done);\n" + " brpc::Controller* cntl = \n" + " static_cast(cntl_base);\n" + " ::baidu::paddle_serving::predictor::InferService* svr = \n" + " " + "::baidu::paddle_serving::predictor::InferServiceManager::instance(" + ").item(\"$service$\");\n" + " if (svr == NULL) {\n" + " LOG(ERROR) << \"Not found service: $service$\";\n" + " cntl->SetFailed(404, \"Not found service: $service$\");\n" + " return ;\n" + " }\n" + " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT + " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT + " int err_code = svr->inference(request, response);\n" + " if (err_code != 0) {\n" + " LOG(WARNING)\n" + " << \"Failed call inferservice[$name$], name[$service$]\"\n" + " << \", error_code: \" << err_code;\n" + " cntl->SetFailed(err_code, \"InferService inference " + "failed!\");\n" + " }\n" + " gettimeofday(&tv, NULL);\n" + " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" + " // flush notice log\n" + " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n", // NOLINT + "name", + class_name, + "service", + service_name); + } + if (m->name() == "debug") { + printer->Print( + " brpc::ClosureGuard done_guard(done);\n" + " brpc::Controller* cntl = \n" + " static_cast(cntl_base);\n" + " ::baidu::paddle_serving::predictor::InferService* svr = \n" + " " + "::baidu::paddle_serving::predictor::InferServiceManager::instance(" + ").item(\"$service$\");\n" + " if (svr == NULL) {\n" + " LOG(ERROR) << \"Not found service: $service$\";\n" + " cntl->SetFailed(404, \"Not found service: $service$\");\n" + " return ;\n" + " }\n" + " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT + "\"\]\";\n" + " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT + " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT + " butil::IOBufBuilder debug_os;\n" + " int err_code = svr->inference(request, response, &debug_os);\n" + " if (err_code != 0) {\n" + " LOG(WARNING)\n" + " << \"Failed call inferservice[$name$], name[$service$]\"\n" + " << \", error_code: \" << err_code;\n" + " cntl->SetFailed(err_code, \"InferService inference " + "failed!\");\n" + " }\n" + " debug_os.move_to(cntl->response_attachment());\n" + " gettimeofday(&tv, NULL);\n" + " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" + " // flush notice log\n" + " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n" // NOLINT + " LOG(INFO)\n" + " << \"TC=[\" << (end - start) << \"] Received debug " + "request[log_id=\" << cntl->log_id()\n" + " << \"] from \" << cntl->remote_side()\n" + " << \" to \" << cntl->local_side();\n", + "name", + class_name, + "service", + service_name); + } + printer->Print("}\n"); + } + printer->Print( + "$name$Impl $name$Impl::_s_$variable_name$_impl(\"$service$\");\n", + "name", + class_name, + "variable_name", + variable_name, + "service", + service_name); + return true; + } + bool generate_paddle_serving_stub_head(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "class $name$_StubCallMapper : public brpc::CallMapper {\n" + "private:\n" + " uint32_t _package_size;\n" + " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" + "public:\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "$name$_StubCallMapper(uint32_t package_size, " + "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" + " _package_size = package_size;\n" + " _stub_handler = stub;\n" + "}\n", + "name", + class_name); + + printer->Print( + "brpc::SubCall default_map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"default_map\", channel_index);", + "name", + class_name); + printer->Indent(); + + if (!generate_paddle_serving_stub_default_map( + printer, descriptor, error, service_name, class_name)) { + return false; + } + + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "brpc::SubCall sub_package_map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope scope(\"sub_map\", " + "channel_index);", + "name", + class_name); + printer->Indent(); + + std::vector in_shared_fields; + std::vector in_item_fields; + const MethodDescriptor* md = descriptor->FindMethodByName("inference"); + if (!md) { + *error = "not found inference method!"; + return false; + } + for (int i = 0; i < md->input_type()->field_count(); ++i) { + const FieldDescriptor* fd = md->input_type()->field(i); + if (!fd) { + *error = "invalid fd at: " + i; + return false; + } + bool pack_on = fd->options().GetExtension(pds::pack_on); + if (pack_on && !fd->is_repeated()) { + *error = "Pack fields must be repeated, field: " + fd->name(); + return false; + } + if (pack_on) { + in_item_fields.push_back(fd); + } else { + in_shared_fields.push_back(fd); + } + } + + if (!generate_paddle_serving_stub_package_map(printer, + descriptor, + error, + service_name, + class_name, + in_shared_fields, + in_item_fields)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "brpc::SubCall Map(\n" + " int channel_index,\n" + " const google::protobuf::MethodDescriptor* method,\n" + " const google::protobuf::Message* request,\n" + " google::protobuf::Message* response) {\n", + "name", + class_name); + printer->Indent(); + + if (in_item_fields.size() <= 0) { + printer->Print( + "// No packed items found in proto file, use default map method\n" + "return default_map(channel_index, method, request, response);\n"); + } else { + printer->Print( + "butil::Timer tt(butil::Timer::STARTED);\n" + "brpc::SubCall ret;\n" + "if (_package_size == 0) {\n" + " ret = default_map(channel_index, method, request, response);\n" + "} else {\n" + " ret = sub_package_map(channel_index, method, request, " + "response);\n" + "}\n" + "tt.stop();\n" + "if (ret.flags != brpc::SKIP_SUB_CHANNEL && ret.method != NULL) {\n" + " _stub_handler->update_latency(tt.u_elapsed(), \"pack_map\");\n" + "}\n" + "return ret;\n"); + } + + printer->Outdent(); + printer->Print("}\n"); + + printer->Outdent(); + printer->Print("};\n"); + + //////////////////////////////////////////////////////////////// + printer->Print( + "class $name$_StubResponseMerger : public brpc::ResponseMerger {\n" + "private:\n" + " uint32_t _package_size;\n" + " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" + "public:\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "$name$_StubResponseMerger(uint32_t package_size, " + "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" + " _package_size = package_size;\n" + " _stub_handler = stub;\n" + "}\n", + "name", + class_name); + + printer->Print( + "brpc::ResponseMerger::Result default_merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"default_merge\");", + "name", + class_name); + printer->Indent(); + if (!generate_paddle_serving_stub_default_merger( + printer, descriptor, error, service_name, class_name)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "brpc::ResponseMerger::Result sub_package_merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n" + " baidu::paddle_serving::sdk_cpp::TracePackScope " + "scope(\"sub_merge\");", + "name", + class_name); + printer->Indent(); + if (!generate_paddle_serving_stub_package_merger( + printer, descriptor, error, service_name, class_name)) { + return false; + } + printer->Outdent(); + printer->Print("}\n"); + + printer->Print( + "brpc::ResponseMerger::Result Merge(\n" + " google::protobuf::Message* response,\n" + " const google::protobuf::Message* sub_response) {\n", + "name", + class_name); + printer->Indent(); + printer->Print( + "butil::Timer tt(butil::Timer::STARTED);\n" + "brpc::ResponseMerger::Result ret;" + "if (_package_size <= 0) {\n" + " ret = default_merge(response, sub_response);\n" + "} else {\n" + " ret = sub_package_merge(response, sub_response);\n" + "}\n" + "tt.stop();\n" + "if (ret != brpc::ResponseMerger::FAIL) {\n" + " _stub_handler->update_latency(tt.u_elapsed(), \"pack_merge\");\n" + "}\n" + "return ret;\n"); + printer->Outdent(); + printer->Print("}\n"); + + printer->Outdent(); + printer->Print("};\n"); + return true; + } + bool generate_paddle_serving_stub_default_map( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "if (channel_index > 0) { \n" + " return brpc::SubCall::Skip();\n" + "}\n"); + printer->Print( + "google::protobuf::Message* cur_res = " + "_stub_handler->fetch_response();\n" + "if (cur_res == NULL) {\n" + " LOG(INFO) << \"Failed fetch response from stub handler, new it\";\n" + " cur_res = response->New();\n" + " if (cur_res == NULL) {\n" + " LOG(ERROR) << \"Failed new response item!\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::SubCall::Bad();\n" + " }\n" + " return brpc::SubCall(method, request, cur_res, " + "brpc::DELETE_RESPONSE);\n" + "}\n"); + "LOG(INFO) \n" + " << \"[default] Succ map, channel_index: \" << channel_index;\n"; + printer->Print("return brpc::SubCall(method, request, cur_res, 0);\n"); + return true; + } + bool generate_paddle_serving_stub_default_merger( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + printer->Print( + "try {\n" + " response->MergeFrom(*sub_response);\n" + " return brpc::ResponseMerger::MERGED;\n" + "} catch (const std::exception& e) {\n" + " LOG(ERROR) << \"Merge failed.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::ResponseMerger::FAIL;\n" + "}\n"); + return true; + } + bool generate_paddle_serving_stub_package_map( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name, + std::vector& in_shared_fields, // NOLINT + std::vector& in_item_fields) const { // NOLINT + const MethodDescriptor* md = descriptor->FindMethodByName("inference"); + if (!md) { + *error = "not found inference method!"; + return false; + } + + printer->Print( + "const $req_type$* req \n" + " = dynamic_cast(request);\n" + "$req_type$* sub_req = NULL;", + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + + // 1. pack fields 逐字段计算index范围,并从req copy值sub_req + printer->Print("\n// 1. 样本字段(必须为repeated类型)按指定下标复制\n"); + for (uint32_t ii = 0; ii < in_item_fields.size(); ii++) { + const FieldDescriptor* fd = in_item_fields[ii]; + std::string field_name = fd->name(); + printer->Print("\n/////$field_name$\n", "field_name", field_name); + if (ii == 0) { + printer->Print( + "uint32_t total_size = req->$field_name$_size();\n" + "if (channel_index == 0) {\n" + " _stub_handler->update_average(total_size, \"item_size\");\n" + "}\n", + "field_name", + field_name); + + printer->Print( + "int start = _package_size * channel_index;\n" + "if (start >= total_size) {\n" + " return brpc::SubCall::Skip();\n" + "}\n" + "int end = _package_size * (channel_index + 1);\n" + "if (end > total_size) {\n" + " end = total_size;\n" + "}\n"); + + printer->Print( + "sub_req = " + "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" + "if (sub_req == NULL) {\n" + " LOG(ERROR) << \"failed fetch sub_req from stub.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::SubCall::Bad();\n" + "}\n", + "name", + class_name, + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + + } else { + printer->Print( + "if (req->$field_name$_size() != total_size) {\n" + " LOG(ERROR) << \"pack field size not consistency: \"\n" + " << total_size << \"!=\" << " + "req->$field_name$_size()\n" + " << \", field: $field_name$.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::SubCall::Bad();\n" + "}\n", + "field_name", + field_name); + } + + printer->Print("for (uint32_t i = start; i < end; ++i) {\n"); + printer->Indent(); + if (fd->cpp_type() == + google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE) { + printer->Print( + "sub_req->add_$field_name$()->CopyFrom(req->$field_name$(i));\n", + "field_name", + field_name); + } else { + printer->Print("sub_req->add_$field_name$(req->$field_name$(i));\n", + "field_name", + field_name); + } + printer->Outdent(); + printer->Print("}\n"); + } + + // 2. shared fields逐字段从req copy至sub_req + printer->Print("\n// 2. 共享字段,从req逐个复制到sub_req\n"); + if (in_item_fields.size() == 0) { + printer->Print( + "if (sub_req == NULL) { // no packed items\n" + " sub_req = " + "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" + " if (!sub_req) {\n" + " LOG(ERROR) << \"failed fetch sub_req from stub handler.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::SubCall::Bad();\n" + " }\n" + "}\n", + "req_type", + google::protobuf::dots_to_colons(md->input_type()->full_name())); + } + for (uint32_t si = 0; si < in_shared_fields.size(); si++) { + const FieldDescriptor* fd = in_shared_fields[si]; + std::string field_name = fd->name(); + printer->Print("\n/////$field_name$\n", "field_name", field_name); + if (fd->is_optional()) { + printer->Print( + "if (req->has_$field_name$()) {\n", "field_name", field_name); + printer->Indent(); + } + if (fd->cpp_type() == + google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE || + fd->is_repeated()) { + printer->Print( + "sub_req->mutable_$field_name$()->CopyFrom(req->$field_name$());\n", + "field_name", + field_name); + } else { + printer->Print("sub_req->set_$field_name$(req->$field_name$());\n", + "field_name", + field_name); + } + if (fd->is_optional()) { + printer->Outdent(); + printer->Print("}\n"); + } + } + + printer->Print( + "LOG(INFO)\n" + " << \"[pack] Succ map req at: \"\n" + " << channel_index;\n"); + printer->Print( + "google::protobuf::Message* sub_res = " + "_stub_handler->fetch_response();\n" + "if (sub_res == NULL) {\n" + " LOG(ERROR) << \"failed create sub_res from res.\";\n" + " _stub_handler->update_average(1, \"pack_fail\");\n" + " return brpc::SubCall::Bad();\n" + "}\n" + "return brpc::SubCall(method, sub_req, sub_res, 0);\n"); + return true; + } + bool generate_paddle_serving_stub_package_merger( + google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + return generate_paddle_serving_stub_default_merger( + printer, descriptor, error, service_name, class_name); + } + bool generate_paddle_serving_stub_body(google::protobuf::io::Printer* printer, + const ServiceDescriptor* descriptor, + string* error, + const std::string& service_name, + const std::string& class_name) const { + std::vector methods; + for (int i = 0; i < descriptor->method_count(); ++i) { + methods.push_back(descriptor->method(i)); + } + if (!valid_service_method(methods)) { + *error = "Service can only contains two methods: inferend, debug"; + return false; + } + + const MethodDescriptor* md = methods[0]; + std::map variables; + variables["name"] = class_name; + variables["req_type"] = + google::protobuf::dots_to_colons(md->input_type()->full_name()); + variables["res_type"] = + google::protobuf::dots_to_colons(md->output_type()->full_name()); + variables["fullname"] = descriptor->full_name(); + printer->Print(variables, + "REGIST_STUB_OBJECT_WITH_TAG(\n" + " $name$_Stub,\n" + " $name$_StubCallMapper,\n" + " $name$_StubResponseMerger,\n" + " $req_type$,\n" + " $res_type$,\n" + " \"$fullname$\");\n"); + variables.clear(); + return true; + } +}; +#endif // #ifdef BCLOUD + +int main(int argc, char** argv) { + PdsCodeGenerator generator; + return google::protobuf::compiler::PluginMain(argc, argv, &generator); +} diff --git a/predictor/.gitignore b/core/predictor/.gitignore similarity index 100% rename from predictor/.gitignore rename to core/predictor/.gitignore diff --git a/core/predictor/CMakeLists.txt b/core/predictor/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..335a7f905f781a26719021fdcf4ea2f1e3c0f983 --- /dev/null +++ b/core/predictor/CMakeLists.txt @@ -0,0 +1,39 @@ +include(proto/CMakeLists.txt) +include(common/CMakeLists.txt) +include(op/CMakeLists.txt) +include(mempool/CMakeLists.txt) +include(framework/CMakeLists.txt) +#include(plugin/CMakeLists.txt) +include(src/CMakeLists.txt) + +include_directories(SYSTEM ${CMAKE_CURRENT_LIST_DIR}/../kvdb/include) + +add_library(pdserving ${pdserving_srcs}) +set_source_files_properties( + ${pdserving_srcs} + PROPERTIES + COMPILE_FLAGS "-Wno-strict-aliasing -Wno-unused-variable -Wno-non-virtual-dtor -Wno-error=non-virtual-dtor -Wno-error=delete-non-virtual-dtor") +add_dependencies(pdserving protobuf kvdb boost brpc leveldb pdcodegen configure) + +target_link_libraries(pdserving + brpc protobuf boost leveldb configure kvdb -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) + +# install +install(TARGETS pdserving + RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/bin + ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib + LIBRARY DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/so + ) + +FILE(GLOB inc_common ${CMAKE_CURRENT_LIST_DIR}/common/*.h) +install(FILES ${inc_common} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/predictor/common) + +FILE(GLOB inc_framework ${CMAKE_CURRENT_LIST_DIR}/framework/*.h) +install(FILES ${inc_framework} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/predictor/framework) + +install(FILES ${CMAKE_CURRENT_LIST_DIR}/mempool/mempool.h + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/predictor/mempool) +install(FILES ${CMAKE_CURRENT_LIST_DIR}/op/op.h + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/predictor/op) diff --git a/predictor/Dockerfile b/core/predictor/Dockerfile similarity index 100% rename from predictor/Dockerfile rename to core/predictor/Dockerfile diff --git a/predictor/Dockerfile.gpu b/core/predictor/Dockerfile.gpu similarity index 100% rename from predictor/Dockerfile.gpu rename to core/predictor/Dockerfile.gpu diff --git a/predictor/build.sh b/core/predictor/build.sh similarity index 100% rename from predictor/build.sh rename to core/predictor/build.sh diff --git a/predictor/common/CMakeLists.txt b/core/predictor/common/CMakeLists.txt similarity index 100% rename from predictor/common/CMakeLists.txt rename to core/predictor/common/CMakeLists.txt diff --git a/core/predictor/common/constant.cpp b/core/predictor/common/constant.cpp new file mode 100644 index 0000000000000000000000000000000000000000..331d339e94feae7109f450aa124a808b57720925 --- /dev/null +++ b/core/predictor/common/constant.cpp @@ -0,0 +1,61 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/common/constant.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +DEFINE_bool(use_parallel_infer_service, false, ""); +DEFINE_int32(el_log_level, 16, ""); +DEFINE_int32(idle_timeout_s, 16, ""); +DEFINE_int32(port, 8010, ""); +DEFINE_string(workflow_path, "./conf", ""); +DEFINE_string(workflow_file, "workflow.prototxt", ""); +DEFINE_string(inferservice_path, "./conf", ""); +DEFINE_string(inferservice_file, "service.prototxt", ""); +DEFINE_string(logger_path, "./conf", ""); +DEFINE_string(logger_file, "log.conf", ""); +DEFINE_string(resource_path, "./conf", ""); +DEFINE_string(resource_file, "resource.prototxt", ""); +DEFINE_int32(max_concurrency, + 0, + "Limit of request processing in parallel, 0: unlimited"); +DEFINE_int32( + num_threads, + 0, + "Number of pthreads that server runs on, not change if this value <= 0"); +DEFINE_int32(reload_interval_s, 10, ""); +DEFINE_bool(enable_model_toolkit, false, "enable model toolkit"); +DEFINE_string(enable_protocol_list, "baidu_std", "set protocol list"); +DEFINE_bool(enable_cube, false, "enable cube"); +DEFINE_string(general_model_path, "./conf", ""); +DEFINE_string(general_model_file, "general_model.prototxt", ""); +DEFINE_bool(enable_general_model, false, "enable general model"); + +const char* START_OP_NAME = "startup_op"; +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu + +// Baidurpc +BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_INTERNAL_FAILURE, + "Paddle Serving Framework Internal Error."); +BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_MEM_ALLOC_FAILURE, + "Paddle Serving Memory Alloc Error."); +BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_OVERFLOW_FAILURE, + "Paddle Serving Array Overflow Error."); +BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_OP_INFER_FAILURE, + "Paddle Serving Op Inference Error."); diff --git a/core/predictor/common/constant.h b/core/predictor/common/constant.h new file mode 100644 index 0000000000000000000000000000000000000000..ec0c5b4ee292f840b6fd8638b891f9d341463dd5 --- /dev/null +++ b/core/predictor/common/constant.h @@ -0,0 +1,72 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. +#pragma once +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +// GFLAGS Variables +DECLARE_bool(use_parallel_infer_service); +DECLARE_int32(el_log_level); +DECLARE_int32(idle_timeout_s); +DECLARE_int32(port); +DECLARE_string(workflow_path); +DECLARE_string(workflow_file); +DECLARE_string(inferservice_path); +DECLARE_string(inferservice_file); +DECLARE_string(logger_path); +DECLARE_string(logger_file); +DECLARE_string(resource_path); +DECLARE_string(resource_file); +DECLARE_string(general_model_path); +DECLARE_string(general_model_file); +DECLARE_bool(enable_mc_cache); +DECLARE_bool(enable_nshead_protocol); +DECLARE_string(nshead_protocol); +DECLARE_int32(max_concurrency); +DECLARE_int32(num_threads); +DECLARE_int32(reload_interval_s); +DECLARE_bool(enable_model_toolkit); +DECLARE_string(enable_protocol_list); +DECLARE_bool(enable_cube); +DECLARE_bool(enable_general_model); + +// STATIC Variables +extern const char* START_OP_NAME; + +// ERRORCODE +enum { + // internal error + ERR_INTERNAL_FAILURE = -5000, + ERR_MEM_ALLOC_FAILURE = -5001, + ERR_OVERFLOW_FAILURE = -5002, + // op error + ERR_OP_INFER_FAILURE = -5100, + // no error + ERR_OK = 0, + // internal ignore + ERR_IGNORE_FAILURE = 5000, + // op ignore + ERR_OP_IGNORE_FAILURE = 5100, +}; + +static const size_t MAX_WORKFLOW_NUM_IN_ONE_SERVICE = 20; +static const uint32_t DEFAULT_CACHE_CAPACITY = 10000; +static const uint32_t DEFAULT_CACHE_UNITSIZE = 8192; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/common/inner_common.h b/core/predictor/common/inner_common.h new file mode 100644 index 0000000000000000000000000000000000000000..4d9b2c19ba0c0dd2e6b6c9aa994cf3a66e90fce8 --- /dev/null +++ b/core/predictor/common/inner_common.h @@ -0,0 +1,66 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "boost/algorithm/string.hpp" // for boost::split&trim +#include "boost/function.hpp" +#include "boost/unordered_map.hpp" +#include "google/protobuf/text_format.h" + +#include "gflags/gflags.h" + +#ifdef BCLOUD +#include "baidu/rpc/channel.h" +#include "baidu/rpc/policy/giano_authenticator.h" +#include "baidu/rpc/server.h" +#include "base/comlog_sink.h" +#include "base/logging.h" +#include "base/object_pool.h" +#include "base/time.h" +#include "bthread.h" // NOLINT +#else +#include "brpc/channel.h" +#include "brpc/policy/giano_authenticator.h" +#include "brpc/server.h" +#include "bthread/bthread.h" +#include "butil/logging.h" +#include "butil/object_pool.h" +#include "butil/time.h" +#endif + +#include "glog/raw_logging.h" + +#include "core/configure/include/configure_parser.h" +#include "core/configure/server_configure.pb.h" +#include "core/configure/general_model_config.pb.h" + +#include "core/predictor/common/constant.h" +#include "core/predictor/common/types.h" +#include "core/predictor/common/utils.h" + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +namespace butil = base; +#endif diff --git a/core/predictor/common/macros.h b/core/predictor/common/macros.h new file mode 100644 index 0000000000000000000000000000000000000000..d25c530fd40b85d0893fbabf572197032cc55a24 --- /dev/null +++ b/core/predictor/common/macros.h @@ -0,0 +1,78 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#ifndef CATCH_ANY_AND_RET +#define CATCH_ANY_AND_RET(errno) \ + catch (...) { \ + LOG(ERROR) << "exception catched"; \ + return errno; \ + } +#endif + +#ifdef USE_PTHREAD + +#define THREAD_T pthread_t +#define THREAD_KEY_T pthread_key_t +#define THREAD_MUTEX_T pthread_mutex_t +#define THREAD_KEY_CREATE pthread_key_create +#define THREAD_SETSPECIFIC pthread_setspecific +#define THREAD_GETSPECIFIC pthread_getspecific +#define THREAD_CREATE pthread_create +#define THREAD_CANCEL pthread_cancel +#define THREAD_JOIN pthread_join +#define THREAD_KEY_DELETE pthread_key_delete +#define THREAD_MUTEX_INIT pthread_mutex_init +#define THREAD_MUTEX_LOCK pthread_mutex_lock +#define THREAD_MUTEX_UNLOCK pthread_mutex_unlock +#define THREAD_MUTEX_DESTROY pthread_mutex_destroy +#define THREAD_COND_T pthread_cond_t +#define THREAD_COND_INIT pthread_cond_init +#define THREAD_COND_SIGNAL pthread_cond_signal +#define THREAD_COND_WAIT pthread_cond_wait +#define THREAD_COND_DESTROY pthread_cond_destroy + +#else + +#define THREAD_T bthread_t +#define THREAD_KEY_T bthread_key_t +#define THREAD_MUTEX_T bthread_mutex_t +#define THREAD_KEY_CREATE bthread_key_create +#define THREAD_SETSPECIFIC bthread_setspecific +#define THREAD_GETSPECIFIC bthread_getspecific +#define THREAD_CREATE bthread_start_background +#define THREAD_CANCEL bthread_stop +#define THREAD_JOIN bthread_join +#define THREAD_KEY_DELETE bthread_key_delete +#define THREAD_MUTEX_INIT bthread_mutex_init +#define THREAD_MUTEX_LOCK bthread_mutex_lock +#define THREAD_MUTEX_UNLOCK bthread_mutex_unlock +#define THREAD_MUTEX_DESTROY bthread_mutex_destroy +#define THREAD_COND_T bthread_cond_t +#define THREAD_COND_INIT bthread_cond_init +#define THREAD_COND_SIGNAL bthread_cond_signal +#define THREAD_COND_WAIT bthread_cond_wait +#define THREAD_COND_DESTROY bthread_cond_destroy + +#endif + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/common/types.h b/core/predictor/common/types.h similarity index 100% rename from predictor/common/types.h rename to core/predictor/common/types.h diff --git a/core/predictor/common/utils.h b/core/predictor/common/utils.h new file mode 100644 index 0000000000000000000000000000000000000000..a1cdb0db08009b4685e9183244d8e59190e7607d --- /dev/null +++ b/core/predictor/common/utils.h @@ -0,0 +1,153 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/common/macros.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#ifdef BCLOUD +namespace butil = base; +#endif + +class TimerFlow { + public: + static const int MAX_SIZE = 1024; + + TimerFlow() { init(); } + + void init() { + _csize = 0; + _name = NULL; + _started = false; + _auto = false; + } + + explicit TimerFlow(const char* name) : _csize(0), _name(name) { + _last = _start = butil::cpuwide_time_us(); + _auto = true; + _started = true; + } + + void set_name(const char* name) { _name = name; } + + void start() { + _last = _start = butil::cpuwide_time_us(); + _started = true; + } + + bool check(const char* tag) { + if (!_started) { + LOG(WARNING) << "Timer not started yet!"; + return false; + } + uint64_t now = butil::cpuwide_time_us(); + if (!appendf("%s:%lu|", tag, now - _last)) { + LOG(WARNING) << "Failed check timer: " << _name << ", value = [" << tag + << ":" << (now - _last) << "]!"; + return false; + } + + _last = now; + return true; + } + + std::string info() { return std::string(_buf); } + + void end() { + uint64_t now = butil::cpuwide_time_us(); + if (!appendf("total:%lu", now - _start)) { + LOG(WARNING) << "Failed dump time_info[" << _name << "]"; + } + _started = false; + } + + ~TimerFlow() { + if (!_auto) { + return; + } + uint64_t now = butil::cpuwide_time_us(); + if (appendf("total:%lu,%s", now - _start, _name)) { + LOG(INFO) << " " << _name << "_tc=[" << _buf << "]"; + } else { + LOG(WARNING) << "Failed dump time_info[" << _name << "]"; + } + } + + private: + bool appendf(const char* fmt, ...) { + va_list ap; + va_start(ap, fmt); + try { + int bytes = vsnprintf(_buf + _csize, MAX_SIZE - _csize, fmt, ap); + if (bytes >= MAX_SIZE - _csize || bytes < 0) { + LOG(WARNING) << "Overflow when appendf!"; + return false; + } + _csize += bytes; + } + CATCH_ANY_AND_RET(false); + + va_end(ap); + return true; + } + + private: + char _buf[1024]; + int _csize; + uint64_t _start; + uint64_t _last; + const char* _name; + bool _started; + bool _auto; +}; + +template +struct derived_from_message {}; + +template +class TIsDerivedFromB { + private: + static uint8_t check(TBase*) { return 1; } + + static uint32_t check(void*) { return 0; } + + public: + enum { + // function call cannot apprear in a constant-expression + RESULT = (sizeof(uint8_t) == sizeof(check(reinterpret_cast(NULL)))), + }; +}; + +template +class IsDerivedFrom { + private: + static bool check(TBase*) { return true; } + + static bool check(void*) { return false; } + + public: + template + static bool yes(T* x) { + return check(x); + } +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/conf/dense_dag.conf b/core/predictor/conf/dense_dag.conf similarity index 100% rename from predictor/conf/dense_dag.conf rename to core/predictor/conf/dense_dag.conf diff --git a/predictor/conf/echo_dag.conf b/core/predictor/conf/echo_dag.conf similarity index 100% rename from predictor/conf/echo_dag.conf rename to core/predictor/conf/echo_dag.conf diff --git a/predictor/conf/echo_kvdb_dag.conf b/core/predictor/conf/echo_kvdb_dag.conf similarity index 100% rename from predictor/conf/echo_kvdb_dag.conf rename to core/predictor/conf/echo_kvdb_dag.conf diff --git a/predictor/conf/fluid_dag.conf b/core/predictor/conf/fluid_dag.conf similarity index 100% rename from predictor/conf/fluid_dag.conf rename to core/predictor/conf/fluid_dag.conf diff --git a/predictor/conf/gflags.conf b/core/predictor/conf/gflags.conf similarity index 100% rename from predictor/conf/gflags.conf rename to core/predictor/conf/gflags.conf diff --git a/predictor/conf/imagec_dag.conf b/core/predictor/conf/imagec_dag.conf similarity index 100% rename from predictor/conf/imagec_dag.conf rename to core/predictor/conf/imagec_dag.conf diff --git a/predictor/conf/log.conf b/core/predictor/conf/log.conf similarity index 100% rename from predictor/conf/log.conf rename to core/predictor/conf/log.conf diff --git a/predictor/conf/model_toolkit.conf b/core/predictor/conf/model_toolkit.conf similarity index 100% rename from predictor/conf/model_toolkit.conf rename to core/predictor/conf/model_toolkit.conf diff --git a/predictor/conf/rd_dict.conf b/core/predictor/conf/rd_dict.conf similarity index 100% rename from predictor/conf/rd_dict.conf rename to core/predictor/conf/rd_dict.conf diff --git a/predictor/conf/resource.conf b/core/predictor/conf/resource.conf similarity index 100% rename from predictor/conf/resource.conf rename to core/predictor/conf/resource.conf diff --git a/predictor/conf/service.conf b/core/predictor/conf/service.conf similarity index 100% rename from predictor/conf/service.conf rename to core/predictor/conf/service.conf diff --git a/predictor/conf/sparse_dag.conf b/core/predictor/conf/sparse_dag.conf similarity index 100% rename from predictor/conf/sparse_dag.conf rename to core/predictor/conf/sparse_dag.conf diff --git a/predictor/conf/wasq_model.conf b/core/predictor/conf/wasq_model.conf similarity index 100% rename from predictor/conf/wasq_model.conf rename to core/predictor/conf/wasq_model.conf diff --git a/predictor/conf/workflow.conf b/core/predictor/conf/workflow.conf similarity index 100% rename from predictor/conf/workflow.conf rename to core/predictor/conf/workflow.conf diff --git a/predictor/framework/CMakeLists.txt b/core/predictor/framework/CMakeLists.txt similarity index 100% rename from predictor/framework/CMakeLists.txt rename to core/predictor/framework/CMakeLists.txt diff --git a/core/predictor/framework/bsf-inl-tensor.h b/core/predictor/framework/bsf-inl-tensor.h new file mode 100644 index 0000000000000000000000000000000000000000..b7c725b443281f355addffb8f2fcb36651b6d9b6 --- /dev/null +++ b/core/predictor/framework/bsf-inl-tensor.h @@ -0,0 +1,373 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#ifdef BCLOUD +#include +#else +#include +#endif + +#include +#include +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/infer_data.h" +#include "core/predictor/framework/memory.h" + +#include + +namespace im { +namespace bsf { + +template <> +struct Task { + typedef Task + TaskT; + typedef baidu::paddle_serving::predictor::Tensor Tensor; + typedef baidu::paddle_serving::predictor::Tensor InType; + typedef baidu::paddle_serving::predictor::Tensor OutType; + typedef baidu::paddle_serving::predictor::BatchTensor BatchTensor; + typedef baidu::paddle_serving::predictor::BatchTensor InArrayT; + typedef baidu::paddle_serving::predictor::BatchTensor OutArrayT; + + struct Segment { + Segment(void* p, size_t b, size_t s) : ptr(p), begin(b), size(s) {} + void* ptr; + size_t begin; + size_t size; + }; + + int read_fd; + int write_fd; + + pid_t owner_tid; + + const InArrayT* in; + OutArrayT* out; + + size_t rem; + size_t size; + + butil::atomic index; + + const BatchTensor* get(bool is_in) const { + if (is_in) { + return in; + } else { + return out; + } + } + + BatchTensor* get(bool is_in) { + if (is_in) { + return const_cast(in); + } else { + return out; + } + } + + Task() { + read_fd = -1; + write_fd = -1; + owner_tid = -1; + in = NULL; + out = NULL; + rem = -1; + size = -1; + index.store(0, butil::memory_order_relaxed); + } +}; + +template <> +class BatchTasks> { + public: + typedef baidu::paddle_serving::predictor::Tensor Tensor; + typedef baidu::paddle_serving::predictor::Tensor InType; + typedef baidu::paddle_serving::predictor::Tensor OutType; + typedef baidu::paddle_serving::predictor::DataBuf DataBuf; + typedef baidu::paddle_serving::predictor::MempoolWrapper MempoolWrapper; + + typedef Task + TaskT; + typedef TaskMeta TaskMetaT; + typedef TaskT::InArrayT InArrayT; + typedef TaskT::OutArrayT OutArrayT; + + explicit BatchTasks(size_t batch_size, bool batch_align = false) + : _batch_size(batch_size), + _rem_size(batch_size), + _batch_align(batch_align) { + _batch_in.clear(); + _batch_out.clear(); + _tasks.clear(); + } + + ~BatchTasks() { + _batch_in.clear(); + _batch_out.clear(); + _tasks.clear(); + } + + static bool check_valid(const InArrayT& in, + OutArrayT& out, // NOLINT + bool align) { // NOLINT + if (align) { + if (out.count() <= 0 || out.size() <= 0) { + LOG(ERROR) << "Out tensor is empty, when aligned"; + return false; + } + + if (out.size() != in.size()) { + LOG(ERROR) << "In/Out tensor size not eq: " << out.size() + << "!=" << in.size(); + return false; + } + + for (size_t fi = 0, shape0 = 0; fi < out.count(); ++fi) { + if (!out[fi].valid()) { + LOG(ERROR) << "Out[" << fi << "] tensor not valid"; + return false; + } + + if (out.size() != out[fi].shape0()) { + LOG(ERROR) << "Shape0 not consistency, " << out.size() + << "!=" << out[fi].shape0() << ", " << fi; + return false; + } + } + } + + return true; + } + + size_t append_task(TaskT* task) { + size_t add = std::min(task->rem, _rem_size); + if (!_batch_align) { + add = task->rem; + } + TaskMetaT tm(task, task->in->size() - task->rem, add); + _tasks.push_back(tm); + + task->rem -= add; + _rem_size -= add; + return _rem_size; + } + + void merge_tasks() { + merge_input(); + merge_output(); + } + + void merge_input() { + if (_tasks.size() <= 0 || _tasks[0].task->in->count() <= 0) { + return; + } + + if (_tasks.size() == 1 && !_batch_align) { + TaskMetaT& tm = _tasks[0]; + _batch_in = *(tm.task->in); + return; + } + + merge_tensor(true); + } + + void merge_output() { + if (_batch_align) { + if (_tasks.size() <= 0 || _tasks[0].task->out->count() <= 0) { + return; + } + } + + if (_tasks.size() <= 0 || _tasks[0].task->out->count() <= 0) { + return; + } + + TaskMetaT& tm = _tasks[0]; + if (_tasks.size() == 1 && !_batch_align) { + _batch_out = *(tm.task->out); + return; + } + + if (tm.task->out->size() <= 0) { + // shape is empty + _batch_out = *(tm.task->out); + return; + } + + if ((*tm.task->out)[0].data.data() == 0 || + (*tm.task->out)[0].data.size() == 0) { + _batch_out = *(tm.task->out); + return; + } + + merge_tensor(false); + } + + void merge_tensor(bool is_in) { + // accumulate batch size from fetched tasks + size_t batch_size = 0; + for (size_t ti = 0; ti < _tasks.size(); ++ti) { + TaskMetaT& tm = _tasks[ti]; + size_t add = tm.end - tm.begin; + batch_size += add; + } + + // merge all instanses in each tensor data + size_t tensor_count = _tasks[0].task->get(is_in)->count(); + for (size_t fi = 0; fi < tensor_count; ++fi) { + const Tensor& head = (*(_tasks[0].task->get(is_in)))[fi]; + Tensor batch_tensor; + batch_tensor.name = head.name; + batch_tensor.type = head.type; + batch_tensor.shape.push_back(batch_size); + + size_t ins_ele_count = 1; + for (size_t si = 1; si < head.shape.size(); ++si) { + batch_tensor.shape.push_back(head.shape[si]); + ins_ele_count *= head.shape[si]; + } + + size_t tensor_ele_count = ins_ele_count * batch_size; + size_t ins_byte = ins_ele_count * head.ele_byte(); + + size_t tensor_byte = tensor_ele_count * head.ele_byte(); + void* data_buf = MempoolWrapper::instance().malloc(tensor_byte); + if (!data_buf) { + LOG(ERROR) << "Malloc failed, size: " << tensor_byte; + return; + } + + size_t data_byte = 0; + for (size_t ti = 0; ti < _tasks.size(); ++ti) { + TaskMetaT& tm = _tasks[ti]; + size_t acc_byte = ins_byte * (tm.end - tm.begin); + if (data_byte + acc_byte > tensor_byte) { + LOG(ERROR) << "Invalid bytes: " << data_byte << " + " << acc_byte + << " >= " << tensor_byte; + return; + } + + const Tensor& tensor = (*(tm.task->get(is_in)))[fi]; + memcpy( + reinterpret_cast(data_buf) + data_byte, + reinterpret_cast(tensor.data.data()) + tm.begin * ins_byte, + acc_byte); + data_byte += acc_byte; + } + + if (data_byte != tensor_byte) { + LOG(ERROR) << "Invalid tensor byte: " << data_byte + << " != " << tensor_byte; + return; + } + + batch_tensor.data = + DataBuf(reinterpret_cast(data_buf), tensor_byte); + if (is_in) { + _batch_in.push_back(batch_tensor); + } else { + _batch_out.push_back(batch_tensor); + } + } + + LOG(INFO) << "merge input(" << is_in << ") samples: " << batch_size + << " from " << _tasks.size() << " pvs"; + } + + void notify_tasks() { + if (_batch_out.size() != _batch_in.size()) { + LOG(ERROR) << "batch size not consistency: " << _batch_out.size() + << " != " << _batch_in.size(); + return; + } + + size_t tensor_count = _batch_out.count(); + size_t batch_size = _batch_out.size(); + for (size_t fi = 0; fi < tensor_count; ++fi) { + const Tensor& tensor = _batch_out[fi]; + size_t ins_byte = tensor.ele_byte(); + for (size_t si = 1; si < tensor.shape.size(); ++si) { + ins_byte *= tensor.shape[si]; + } + + for (size_t ti = 0, bi = 0, add = 0; ti < _tasks.size(); + ++ti, bi += add) { + OutArrayT* dst = _tasks[ti].task->out; + add = _tasks[ti].end - _tasks[ti].begin; + size_t offset_src = ins_byte * bi; + size_t add_byte = add * ins_byte; + + if (_batch_align) { // merge all batchs + size_t offset_dst = ins_byte * _tasks[ti].begin; + void* ptr = const_cast((*dst)[fi].data.data()); + memcpy( + reinterpret_cast(ptr) + offset_dst, + reinterpret_cast(_batch_out[fi].data.data()) + offset_src, + add_byte); + } else { // overwrite + if (dst->count() <= 0) { + dst->push_back(_batch_out[fi]); + } else { + (*dst)[fi] = _batch_out[fi]; + } + + (*dst)[fi].shape[0] = add; + (*dst)[fi].data = DataBuf( + reinterpret_cast(_batch_out[fi].data.data()) + offset_src, + add_byte); + } + } + } + + for (size_t ti = 0; ti < _tasks.size(); ++ti) { + TaskT* task = _tasks[ti].task; + size_t begin = _tasks[ti].begin; + size_t end = _tasks[ti].end; + size_t add = end - begin; + + size_t index = task->index.fetch_add(add); + if ((index + add) >= task->in->size()) { + char c = 0; + while (write(task->write_fd, &c, 1) != 1 && errno == EINTR) { + } + butil::return_object(task); + } + } + } + + const typename TaskT::InArrayT& in() const { return _batch_in; } + + typename TaskT::OutArrayT& out() { return _batch_out; } + + size_t task_size() { return _tasks.size(); } + + private: + std::vector _tasks; + InArrayT _batch_in; + OutArrayT _batch_out; + size_t _batch_size; + size_t _rem_size; + bool _batch_align; +}; + +} // namespace bsf +} // namespace im diff --git a/core/predictor/framework/bsf-inl.h b/core/predictor/framework/bsf-inl.h new file mode 100644 index 0000000000000000000000000000000000000000..1193ce4860e595598b738adab738c7af9664cc26 --- /dev/null +++ b/core/predictor/framework/bsf-inl.h @@ -0,0 +1,250 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#ifdef BCLOUD +#include +#else +#include +#endif + +#include +#include + +#include "core/predictor/common/inner_common.h" + +namespace im { +namespace bsf { + +template +void* TaskExecutor::thread_entry(void* args) { + ThreadContext* context = static_cast*>(args); + TaskExecutor* executor = + static_cast*>(context->executor); + executor->work(context); + + return NULL; +} + +template +int TaskExecutor::start(uint32_t thread_num, uint32_t init_timeout_sec) { + _stop = false; + if (!_thread_contexts.empty()) { + LOG(WARNING) << "BSF has started"; + return 0; + } + + if (thread_num == 0) { + LOG(ERROR) << "cannot init BSF with zero thread"; + return -1; + } + + ThreadContext* contexts = new ThreadContext[thread_num]; + for (uint32_t i = 0; i < thread_num; ++i) { + contexts[i].executor = this; + if (_user_thread_contexts != NULL) { + contexts[i].user_thread_context = _user_thread_contexts[i]; + } + + int rc = THREAD_CREATE( + &contexts[i].tid, NULL, &TaskExecutor::thread_entry, &contexts[i]); + if (rc != 0) { + LOG(ERROR) << "failed to create BSF worker thread: index=" << i + << ", rc=" << rc << ", errno=" << errno << ":" + << strerror(errno); + return -1; + } + + _thread_contexts.push_back(&contexts[i]); + } + + int init_timeout = init_timeout_sec * 1000 * 1000; + bool has_error = false; + + bool has_timeout = true; + if (init_timeout == 0) { + has_timeout = false; + } + + while (!has_timeout || init_timeout > 0) { + bool done = true; + for (size_t i = 0; i < _thread_contexts.size(); ++i) { + if (_thread_contexts[i]->init_status < 0) { + has_error = true; + break; + } + + if (_thread_contexts[i]->init_status == 0) { + done = false; + } + } + + if (has_error) { + LOG(ERROR) << "BSF thread init error"; + return -1; + } + + if (done) { + LOG(INFO) << "BSF thread init done"; + return 0; + } + + // 100ms + const int sleep_interval = 100 * 1000; + usleep(sleep_interval); + init_timeout -= sleep_interval; + } + + LOG(ERROR) << "BSF thread init timed out"; + return -1; +} + +template +void TaskExecutor::stop() { + _stop = true; + for (size_t i = 0; i < _thread_contexts.size(); ++i) { + THREAD_CANCEL(_thread_contexts[i]->tid); + } + + for (size_t i = 0; i < _thread_contexts.size(); ++i) { + THREAD_JOIN(_thread_contexts[i]->tid, NULL); + } + _thread_contexts.clear(); +} + +template +TaskHandler TaskExecutor::schedule(const InArrayT& in, + OutArrayT& out) { // NOLINT + TaskT* task = butil::get_object(); + if (!task) { + LOG(ERROR) << "Failed get TaskT from object pool"; + return TaskHandler::valid_handle(); + } + + if (!BatchTasks::check_valid(in, out, _batch_align)) { + LOG(ERROR) << "Invalid input & output"; + return TaskHandler::valid_handle(); + } + + int fds[2]; + int rc = pipe(fds); + if (rc != 0) { + LOG(ERROR) << "call pipe() failed, errno=" << errno << ":" + << strerror(errno); + return TaskHandler::valid_handle(); + } + + task->read_fd = fds[0]; + task->write_fd = fds[1]; + task->owner_tid = ::syscall(SYS_gettid); + + task->in = ∈ + task->out = &out; + task->rem = in.size(); + task->size = in.size(); + task->index.store(0, butil::memory_order_relaxed); + + AutoMutex lock(_mut); + _task_queue.push_back(task); + THREAD_COND_SIGNAL(&_cond); + + return TaskHandler(*task); +} + +template +bool TaskExecutor::fetch_batch(BatchTasks& batch) { // NOLINT + AutoMutex lock(_mut); + while (_task_queue.empty()) { + THREAD_COND_WAIT(&_cond, &_mut); + } + + if (_task_queue.empty()) { + LOG(ERROR) << "invalid task queue!"; + return false; + } + + while (!_task_queue.empty()) { + TaskT* task = _task_queue.front(); + size_t rem = batch.append_task(task); + if (task->rem <= 0) { + _task_queue.pop_front(); + } + if (rem <= 0) break; + } + + return true; +} + +template +int TaskExecutor::work(ThreadContext* context) { + if (_thread_init_fn != NULL) { + if (_thread_init_fn(context->user_thread_context) != 0) { + LOG(ERROR) << "execute thread init thunk failed, BSF thread will exit"; + context->init_status = -1; + return -1; + } else { + LOG(INFO) << "execute thread init thunk succeed"; + } + } + + context->init_status = 1; + while (!_stop) { + if (_thread_reset_fn != NULL) { + if (_thread_reset_fn(context->user_thread_context) != 0) { + LOG(ERROR) << "execute user thread reset failed"; + } + } + + BatchTasks batch(_batch_size, _batch_align); + if (fetch_batch(batch)) { + batch.merge_tasks(); + _fn(batch.in(), batch.out()); + batch.notify_tasks(); + } + } + + return 0; +} + +template +bool TaskManager::schedule(const InArrayT& in, + OutArrayT& out) { // NOLINT + TaskHandler handler = _executor.schedule(in, out); + + if (handler.valid()) { + _task_owned = handler; + return true; + } else { + LOG(ERROR) << "failed to schedule task"; + return false; + } +} + +template +void TaskManager::wait() { + char buffer[128]; + while (read(_task_owned.read_fd, buffer, sizeof(buffer)) < 0 && + errno == EINTR) { + } + + close(_task_owned.read_fd); + close(_task_owned.write_fd); + + _task_owned.read_fd = -1; + _task_owned.write_fd = -1; + return; +} +} // namespace bsf +} // namespace im diff --git a/core/predictor/framework/bsf.h b/core/predictor/framework/bsf.h new file mode 100644 index 0000000000000000000000000000000000000000..36a00c381130c191de713e5024c7247d64cb96e7 --- /dev/null +++ b/core/predictor/framework/bsf.h @@ -0,0 +1,361 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include +#include + +#ifdef BCLOUD +#include "base/atomicops.h" +#else +#include "butil/atomicops.h" +#endif + +#include "core/predictor/common/inner_common.h" + +#include "boost/function.hpp" + +namespace im { +namespace bsf { + +static const size_t DEFAULT_BATCH_SIZE = 100; + +template +struct Task { + typedef std::vector InArrayT; + typedef std::vector OutArrayT; + typedef InItemT InType; + typedef OutItemT OutType; + typedef Task TaskT; + + int read_fd; + int write_fd; + + pid_t owner_tid; + + const InArrayT* in; + OutArrayT* out; + + size_t rem; + size_t size; + + size_t batch_size() { return in->size(); } + + butil::atomic index; + + Task() { + read_fd = -1; + write_fd = -1; + owner_tid = -1; + in = NULL; + out = NULL; + rem = -1; + size = -1; + index.store(0, butil::memory_order_relaxed); + } +}; + +template +struct TaskMeta { + TaskMeta(TaskT* ptr, size_t start, size_t add) + : task(ptr), begin(start), end(start + add) {} + + TaskT* task; + size_t begin; + size_t end; +}; + +template +class BatchTasks { + public: + typedef typename TaskT::InType InType; + typedef typename TaskT::OutType OutType; + typedef TaskMeta TaskMetaT; + + explicit BatchTasks(size_t batch_size, bool batch_align = true) + : _batch_size(batch_size), + _rem_size(batch_size), + _batch_align(batch_align) { + _batch_in.clear(); + _batch_out.clear(); + _tasks.clear(); + } + + ~BatchTasks() { + _batch_in.clear(); + _batch_out.clear(); + _tasks.clear(); + } + + // synchronized operation + size_t append_task(TaskT* task) { + size_t add = std::min(task->rem, _rem_size); + if (!_batch_align) { + add = task->rem; + } + + TaskMetaT tm(task, task->in->size() - task->rem, add); + _tasks.push_back(tm); + + task->rem -= add; + _rem_size -= add; + return _rem_size; + } + + static bool check_valid(const typename TaskT::InArrayT& in, + const typename TaskT::OutArrayT& out, + bool align) { + (void)in; + (void)out; + (void)align; + return true; + } + + void merge_tasks() { + for (size_t ti = 0; ti < _tasks.size(); ++ti) { + TaskMetaT& tm = _tasks[ti]; + for (size_t vi = tm.begin; vi < tm.end; ++vi) { + _batch_in.push_back((*tm.task->in)[vi]); + _batch_out.push_back((*tm.task->out)[vi]); + } + } + } + + void notify_tasks() { + if (_batch_out.size() != _batch_in.size()) { + LOG(ERROR) << "batch size not consistency: " << _batch_out.size() + << " != " << _batch_in.size(); + return; + } + + for (size_t ti = 0, bi = 0; ti < _tasks.size(); ++ti) { + TaskT* task = _tasks[ti].task; + size_t begin = _tasks[ti].begin; + size_t end = _tasks[ti].end; + size_t add = end - begin; + + for (size_t oi = begin; oi < end; ++oi, ++bi) { + if (bi >= _batch_in.size()) { + LOG(ERROR) << "batch index overflow: " << bi << " > " + << _batch_in.size(); + return; + } + (*task->out)[oi] = _batch_out[bi]; + } + + size_t index = task->index.fetch_add(add); + if ((index + add) >= task->in->size()) { + char c = 0; + while (write(task->write_fd, &c, 1) != 1 && errno == EINTR) { + } + butil::return_object(task); + } + } + } + + const typename TaskT::InArrayT& in() const { return _batch_in; } + + typename TaskT::OutArrayT& out() { return _batch_out; } + + size_t task_size() { return _tasks.size(); } + + private: + std::vector _tasks; + typename TaskT::InArrayT _batch_in; + typename TaskT::OutArrayT _batch_out; + size_t _rem_size; + size_t _batch_size; + bool _batch_align; +}; + +// BSF task handle +template +struct TaskHandler { + int read_fd; + int write_fd; + + TaskHandler() : read_fd(-1), write_fd(-1) { + // do nothing + } + + explicit TaskHandler(TaskT const& task) + : read_fd(task.read_fd), write_fd(task.write_fd) { + // do nothing + } + + inline bool valid() const { return read_fd >= 0 && write_fd >= 0; } + + static TaskHandler& valid_handle() { + static TaskHandler vhandle; + return vhandle; + } +}; + +template +class TaskExecutor; + +template +class TaskManager; + +template +struct ThreadContext { + TaskExecutor* executor; + void* user_thread_context; + THREAD_T tid; + int init_status; + + ThreadContext() + : executor(NULL), user_thread_context(NULL), tid(-1), init_status(0) { + // do nothing + } + + ~ThreadContext() { + tid = -1; + executor = NULL; + user_thread_context = NULL; + init_status = 0; + } +}; + +template +class TaskExecutor { + public: + typedef typename TaskT::InType InType; + typedef typename TaskT::OutType OutType; + typedef typename TaskT::InArrayT InArrayT; + typedef typename TaskT::OutArrayT OutArrayT; + typedef std::vector TaskArrayT; + + TaskExecutor() + : _stop(false), + _thread_init_fn(NULL), + _thread_reset_fn(NULL), + _user_thread_contexts(NULL), + _batch_size(DEFAULT_BATCH_SIZE), + _batch_align(false), + _fn(NULL) { + THREAD_MUTEX_INIT(&_mut, NULL); + THREAD_COND_INIT(&_cond, NULL); + _task_queue.clear(); + } + + ~TaskExecutor() { + THREAD_MUTEX_DESTROY(&_mut); + THREAD_COND_DESTROY(&_cond); + } + + static TaskExecutor* instance() { + static TaskExecutor singleton; + return &singleton; + } + + void set_batch_size(size_t batch_size) { _batch_size = batch_size; } + + void set_batch_align(size_t batch_align) { _batch_align = batch_align; } + + void set_thread_init_fn(boost::function init_fn, + void** contexts = NULL) { + _thread_init_fn = init_fn; + _user_thread_contexts = contexts; + } + + void set_thread_reset_fn(boost::function reset_fn) { + _thread_reset_fn = reset_fn; + } + + void set_thread_callback_fn( + boost::function cb) { + _fn = cb; + } + + int start(uint32_t thread_num, uint32_t init_timeout_sec = 0); + void stop(); + + static void* thread_entry(void* args); + + private: + TaskExecutor(TaskExecutor const& other); + TaskExecutor* operator=(TaskExecutor const& other); + + int work(ThreadContext* context); + + TaskHandler schedule(const InArrayT&, OutArrayT&); + + bool fetch_batch(BatchTasks& batch); // NOLINT + + bool _stop; + + // can't use boost::mutex, because some stupid macro + THREAD_MUTEX_T _mut; + THREAD_COND_T _cond; + + std::deque _task_queue; + + boost::function _thread_init_fn; + boost::function _thread_reset_fn; + void** _user_thread_contexts; + + std::vector*> _thread_contexts; + friend class TaskManager; + + size_t _batch_size; + bool _batch_align; + + boost::function _fn; +}; + +template +class TaskManager { + public: + typedef Task TaskT; + typedef typename TaskT::InArrayT InArrayT; + typedef typename TaskT::OutArrayT OutArrayT; + + explicit TaskManager(TaskExecutor& exe, size_t batch_size) // NOLINT + : _executor(exe) {} + + TaskManager() : _executor(*TaskExecutor::instance()) {} + + ~TaskManager() { wait(); } + + bool schedule(const InArrayT& in, OutArrayT& out); // NOLINT + void wait(); + + inline void clear() { wait(); } + + private: + TaskExecutor& _executor; + TaskHandler _task_owned; +}; // class TaskManager + +class AutoMutex { + public: + explicit AutoMutex(THREAD_MUTEX_T& mut) : _mut(mut) { + THREAD_MUTEX_LOCK(&_mut); + } + + ~AutoMutex() { THREAD_MUTEX_UNLOCK(&_mut); } + + private: + THREAD_MUTEX_T& _mut; +}; + +} // namespace bsf +} // namespace im + +#include "core/predictor/framework/bsf-inl-tensor.h" +#include "core/predictor/framework/bsf-inl.h" diff --git a/core/predictor/framework/channel.h b/core/predictor/framework/channel.h new file mode 100644 index 0000000000000000000000000000000000000000..a48368329469f36ab7881972e6a7059ab8066b5d --- /dev/null +++ b/core/predictor/framework/channel.h @@ -0,0 +1,225 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class Channel; + +class Bus { + public: + Bus() { clear(); } + + int regist(const std::string& op, Channel* channel) { + std::pair::iterator, bool> r = + _op_channels.insert(std::make_pair(op, channel)); + if (!r.second) { + LOG(ERROR) << "Failed insert op&channel into bus:" << op; + return -1; + } + return 0; + } + + Channel* channel_by_name(const std::string& op_name) { + typename boost::unordered_map::iterator it = + _op_channels.find(op_name); + if (it == _op_channels.end()) { + LOG(WARNING) << "Not found channel in bus, op_name:" << op_name << "."; + return NULL; + } + + return it->second; + } + + void clear() { _op_channels.clear(); } + + size_t size() const { return _op_channels.size(); } + + private: + boost::unordered_map _op_channels; +}; + +class Channel { + public: + Channel() {} + + void init(uint32_t id, const char* op) { + _id = id; + _op = std::string(op); + clear_data(); + } + + void deinit() { clear_data(); } + + uint32_t id() const { return _id; } + + const std::string& op() { return _op; } + + int share_to_bus(Bus* bus) { + if (bus->regist(_op, this) != 0) { + LOG(ERROR) << "Failed regist channel[" << _op << "] to bus!"; + return -1; + } + + return 0; + } + + virtual void clear_data() = 0; + + virtual void* param() = 0; + virtual const void* param() const = 0; + + virtual google::protobuf::Message* message() = 0; + virtual const google::protobuf::Message* message() const = 0; + + virtual Channel& operator=(const Channel& channel) = 0; + + virtual std::string debug_string() const = 0; + + private: + uint32_t _id; + std::string _op; +}; + +template +class OpChannel : public Channel { + public: + OpChannel() {} + + void clear_data() { _data.Clear(); } + + void* param() { return &_data; } + + const void* param() const { return &_data; } + + google::protobuf::Message* message() { + return message_impl( + derived_from_message< + TIsDerivedFromB::RESULT>()); + } + + google::protobuf::Message* message_impl(derived_from_message) { + return dynamic_cast(&_data); + } + + google::protobuf::Message* message_impl(derived_from_message) { + LOG(ERROR) << "Current type: " << typeid(T).name() + << " is not derived from protobuf."; + return NULL; + } + + const google::protobuf::Message* message() const { + return message_impl( + derived_from_message< + TIsDerivedFromB::RESULT>()); + } + + const google::protobuf::Message* message_impl( + derived_from_message) const { + return dynamic_cast(&_data); + } + + const google::protobuf::Message* message_impl( + derived_from_message) const { + LOG(ERROR) << "Current type: " << typeid(T).name() + << " is not derived from protobuf."; + return NULL; + } + + Channel& operator=(const Channel& channel) { + _data = *(dynamic_cast&>(channel)).data(); + return *this; + } + + std::string debug_string() const { return _data.ShortDebugString(); } + + // functions of derived class + + T* data() { return &_data; } + + const T* data() const { return &_data; } + + Channel& operator=(const T& obj) { + _data = obj; + return *this; + } + + private: + T _data; +}; + +template <> +class OpChannel : public Channel { + public: + OpChannel() : _data(NULL) {} + + virtual ~OpChannel() { _data = NULL; } + + void clear_data() { _data = NULL; } + + void* param() { return const_cast((const void*)_data); } + + const void* param() const { return _data; } + + google::protobuf::Message* message() { + return const_cast(_data); + } + + const google::protobuf::Message* message() const { return _data; } + + Channel& operator=(const Channel& channel) { + _data = channel.message(); + return *this; + } + + std::string debug_string() const { + if (_data) { + return _data->ShortDebugString(); + } else { + return "{\"Error\": \"Null Message Ptr\"}"; + } + } + + // derived function imiplements + google::protobuf::Message* data() { + return const_cast(_data); + } + + const google::protobuf::Message* data() const { return _data; } + + OpChannel& operator=( + google::protobuf::Message* message) { + _data = message; + return *this; + } + + OpChannel& operator=( + const google::protobuf::Message* message) { + _data = message; + return *this; + } + + private: + const google::protobuf::Message* _data; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/dag.cpp b/core/predictor/framework/dag.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9aea595e1281ccac9367f89acde3f8b19b98cc5e --- /dev/null +++ b/core/predictor/framework/dag.cpp @@ -0,0 +1,248 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/dag.h" +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/predictor_metric.h" // PredictorMetric +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +Dag::Dag() { + _index_nodes.clear(); + _name_nodes.clear(); + _stages.clear(); +} + +Dag::~Dag() { deinit(); } + +int Dag::deinit() { + for (std::vector::iterator iter = _stages.begin(); + iter != _stages.end(); + ++iter) { + if (*iter != NULL) { + delete *iter; + } + } + _stages.clear(); + + for (std::vector::iterator iter = _index_nodes.begin(); + iter != _index_nodes.end(); + ++iter) { + DagNode* node = *iter; + if (node != NULL) { + void* conf = node->conf; + if (conf != NULL) { + Op* op = OpRepository::instance().get_op(node->type); + if (op == NULL) { + LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; + return -1; + } + op->delete_config(conf); + OpRepository::instance().return_op(node->type, op); + } + delete node; + } + } + _index_nodes.clear(); + _name_nodes.clear(); + return 0; +} + +EdgeMode Dag::parse_mode(std::string& mode) { + if (mode == "RO") { + return RO; + } else if (mode == "RW") { + return RW; + } else { + return UNKNOWN; + } +} + +// [@Node] +// name: preprocess +// type: ProcessorOp +// [.@Depend] +// name: StartupOp +// mode: RO +// [@Node] +// name: discret_extractor +// type: DiscretExtractOp +// [.@Depend] +// name: StartupOp +// mode: RO +// [.@Depend] +// name: preprocess +// mode: RW +// [@Node] +// name: dnn_inference +// type: PaddleV2InferenceOp +// [.@Depend] +// name: discret_extractor +// mode: RO +// [@Node] +// name: postprocess +// type: PostProcessOp +// [.@Depend] +// name: dnn_inference +// mode: RO +#if 0 +int Dag::init(const char* path, const char* file, const std::string& name) { + comcfg::Configure conf; + if (conf.load(path, file) != 0) { + LOG(ERROR) << "Failed load conf from" + << path << "/" << file << " in dag: " + << name; + return ERR_INTERNAL_FAILURE; + } + + return init(conf, name); +} +#endif + +int Dag::init(const configure::Workflow& conf, const std::string& name) { + _dag_name = name; + _index_nodes.clear(); + _name_nodes.clear(); + for (uint32_t i = 0; i < conf.nodes_size(); i++) { + DagNode* node = new (std::nothrow) DagNode(); + if (node == NULL) { + LOG(ERROR) << "Failed create new dag node"; + return ERR_MEM_ALLOC_FAILURE; + } + node->id = i + 1; // 0 is reserved for begginer-op + node->name = conf.nodes(i).name(); + node->type = conf.nodes(i).type(); + uint32_t depend_size = conf.nodes(i).dependencies_size(); + for (uint32_t j = 0; j < depend_size; j++) { + const configure::DAGNodeDependency& depend = + conf.nodes(i).dependencies(j); + std::string name = depend.name(); + std::string mode = depend.mode(); + node->depends.insert(std::make_pair(name, parse_mode(mode))); + } + Op* op = OpRepository::instance().get_op(node->type); + if (op == NULL) { + LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; + return ERR_INTERNAL_FAILURE; + } + // node->conf could be NULL + node->conf = op->create_config(conf.nodes(i)); + OpRepository::instance().return_op(node->type, op); + _name_nodes.insert(std::make_pair(node->name, node)); + _index_nodes.push_back(node); + } + + if (topo_sort() != 0) { + LOG(ERROR) << "Topo sort dag[" << _dag_name << "] failed!"; + return ERR_INTERNAL_FAILURE; + } + + if (FLAGS_el_log_level == 16) { + LOG(INFO) << "DAG: " << _dag_name; + LOG(INFO) << ", Op Num: " << _index_nodes.size(); + for (uint32_t nid = 0; nid < _index_nodes.size(); nid++) { + DagNode* node = _index_nodes[nid]; + LOG(INFO) << ", OP-" << node->id << "-" << node->name << "-" + << node->type; + LOG(INFO) << " depends: " << node->depends.size(); + + boost::unordered_map::iterator it; + for (it = node->depends.begin(); it != node->depends.end(); it++) { + LOG(INFO) << " " << it->first << " " << it->second; + } + } + LOG(INFO) << ""; + } + + return ERR_OK; +} + +uint32_t Dag::nodes_size() { return _index_nodes.size(); } + +const DagNode* Dag::node_by_id(uint32_t id) { return _index_nodes[id]; } + +const DagNode* Dag::node_by_id(uint32_t id) const { return _index_nodes[id]; } + +const DagNode* Dag::node_by_name(std::string& name) { + return _name_nodes[name]; +} + +const DagNode* Dag::node_by_name(const std::string& name) const { + boost::unordered_map::const_iterator it; + it = _name_nodes.find(name); + if (it == _name_nodes.end()) { + LOG(WARNING) << "Not found op by name:" << name; + return NULL; + } + return it->second; +} + +uint32_t Dag::stage_size() { return _stages.size(); } + +const DagStage* Dag::stage_by_index(uint32_t index) { return _stages[index]; } + +int Dag::topo_sort() { + std::stringstream ss; + for (uint32_t nid = 0; nid < _index_nodes.size(); nid++) { + DagStage* stage = new (std::nothrow) DagStage(); + if (stage == NULL) { + LOG(ERROR) << "Invalid stage!"; + return ERR_MEM_ALLOC_FAILURE; + } + stage->nodes.push_back(_index_nodes[nid]); + ss.str(""); + ss << _stages.size(); + stage->name = ss.str(); + stage->full_name = full_name() + NAME_DELIMITER + stage->name; + _stages.push_back(stage); + + // assign stage number after stage created + _index_nodes[nid]->stage = nid; + // assign dag node full name after stage created + _index_nodes[nid]->full_name = + stage->full_name + NAME_DELIMITER + _index_nodes[nid]->name; + } + return ERR_OK; +} + +void Dag::regist_metric(const std::string& service_name) { + for (int stage_idx = 0; stage_idx < _stages.size(); ++stage_idx) { + DagStage* stage = _stages[stage_idx]; + PredictorMetric::GetInstance()->regist_latency_metric( + STAGE_METRIC_PREFIX + service_name + NAME_DELIMITER + stage->full_name); + for (int node_idx = 0; node_idx < stage->nodes.size(); ++node_idx) { + DagNode* node = stage->nodes[node_idx]; + PredictorMetric::GetInstance()->regist_latency_metric( + OP_METRIC_PREFIX + service_name + NAME_DELIMITER + node->full_name); + Op* op = OpRepository::instance().get_op(node->type); + if (op == NULL) { + LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; + return; + } + op->set_full_name(service_name + NAME_DELIMITER + node->full_name); + op->set_config(node->conf); + op->regist_metric(); + OpRepository::instance().return_op(node->type, op); + } + } +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/dag.h b/core/predictor/framework/dag.h new file mode 100644 index 0000000000000000000000000000000000000000..1145c9a9a564c432a00e8be69dbed23b32f0bb7f --- /dev/null +++ b/core/predictor/framework/dag.h @@ -0,0 +1,88 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +enum EdgeMode { RO = 0, RW = 1, UNKNOWN }; + +struct DagNode { + uint32_t id; + uint32_t stage; + std::string name; // opname + std::string full_name; // workflow_stageindex_opname + std::string type; + void* conf; + boost::unordered_map depends; +}; + +struct DagStage { + std::vector nodes; + std::string name; // stageindex + std::string full_name; // workflow_stageindex +}; + +class Dag { + public: + Dag(); + + virtual ~Dag(); + + EdgeMode parse_mode(std::string& mode); // NOLINT + + int init(const char* path, const char* file, const std::string& name); + + int init(const configure::Workflow& conf, const std::string& name); + + int deinit(); + + uint32_t nodes_size(); + + const DagNode* node_by_id(uint32_t id); + + const DagNode* node_by_id(uint32_t id) const; + + const DagNode* node_by_name(std::string& name); // NOLINT + + const DagNode* node_by_name(const std::string& name) const; + + uint32_t stage_size(); + + const DagStage* stage_by_index(uint32_t index); + + const std::string& name() const { return _dag_name; } + + const std::string& full_name() const { return _dag_name; } + + void regist_metric(const std::string& service_name); + + private: + int topo_sort(); + + private: + std::string _dag_name; + boost::unordered_map _name_nodes; + std::vector _index_nodes; + std::vector _stages; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/dag_view.cpp b/core/predictor/framework/dag_view.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fe68ddf98df97ede819b41c0ed6d974c1b4e31f6 --- /dev/null +++ b/core/predictor/framework/dag_view.cpp @@ -0,0 +1,192 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/dag_view.h" +#ifdef BCLOUD +#include // TRACEPRINTF +#else +#include // TRACEPRINTF +#endif +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/op_repository.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +int DagView::init(Dag* dag, const std::string& service_name) { + _name = dag->name(); + _full_name = service_name + NAME_DELIMITER + dag->name(); + _bus = butil::get_object(); + _bus->clear(); + uint32_t stage_size = dag->stage_size(); + // create tls stage view + for (uint32_t si = 0; si < stage_size; si++) { + const DagStage* stage = dag->stage_by_index(si); + if (stage == NULL) { + LOG(ERROR) << "Failed get stage by index:" << si; + return ERR_INTERNAL_FAILURE; + } + ViewStage* vstage = butil::get_object(); + if (vstage == NULL) { + LOG(ERROR) << "Failed get vstage from object pool" + << "at:" << si; + return ERR_MEM_ALLOC_FAILURE; + } + vstage->full_name = service_name + NAME_DELIMITER + stage->full_name; + uint32_t node_size = stage->nodes.size(); + // create tls view node + for (uint32_t ni = 0; ni < node_size; ni++) { + DagNode* node = stage->nodes[ni]; + ViewNode* vnode = butil::get_object(); + if (vnode == NULL) { + LOG(ERROR) << "Failed get vnode at:" << ni; + return ERR_MEM_ALLOC_FAILURE; + } + // factory type + Op* op = OpRepository::instance().get_op(node->type); + if (op == NULL) { + LOG(ERROR) << "Failed get op with type:" << node->type; + return ERR_INTERNAL_FAILURE; + } + + // initialize a TLS op object + if (op->init(_bus, dag, node->id, node->name, node->type, node->conf) != + 0) { + LOG(WARNING) << "Failed init op, type:" << node->type; + return ERR_INTERNAL_FAILURE; + } + op->set_full_name(service_name + NAME_DELIMITER + node->full_name); + vnode->conf = node; + vnode->op = op; + vstage->nodes.push_back(vnode); + } + _view.push_back(vstage); + } + + return ERR_OK; +} + +int DagView::deinit() { + uint32_t stage_size = _view.size(); + for (uint32_t si = 0; si < stage_size; si++) { + ViewStage* vstage = _view[si]; + uint32_t node_size = vstage->nodes.size(); + for (uint32_t ni = 0; ni < node_size; ni++) { + ViewNode* vnode = vstage->nodes[ni]; + vnode->op->deinit(); + OpRepository::instance().return_op(vnode->op); + vnode->reset(); + // clear item + butil::return_object(vnode); + } + // clear vector + vstage->nodes.clear(); + butil::return_object(vstage); + } + _view.clear(); + _bus->clear(); + butil::return_object(_bus); + return ERR_OK; +} + +int DagView::execute(butil::IOBufBuilder* debug_os) { + uint32_t stage_size = _view.size(); + for (uint32_t si = 0; si < stage_size; si++) { + TRACEPRINTF("start to execute stage[%u]", si); + int errcode = execute_one_stage(_view[si], debug_os); + TRACEPRINTF("finish to execute stage[%u]", si); + if (errcode < 0) { + LOG(ERROR) << "failed execute stage[" << _view[si]->debug(); + return errcode; + } + } + return ERR_OK; +} + +// The default execution strategy is in sequencing +// You can derive a subclass to implement this func. +// ParallelDagView maybe the one you want. +int DagView::execute_one_stage(ViewStage* vstage, + butil::IOBufBuilder* debug_os) { + butil::Timer stage_time(butil::Timer::STARTED); + uint32_t node_size = vstage->nodes.size(); + for (uint32_t ni = 0; ni < node_size; ni++) { + ViewNode* vnode = vstage->nodes[ni]; + DagNode* conf = vnode->conf; + Op* op = vnode->op; + TRACEPRINTF("start to execute op[%s]", op->name()); + int errcode = op->process(debug_os != NULL); + TRACEPRINTF("finish to execute op[%s]", op->name()); + if (errcode < 0) { + LOG(ERROR) << "Execute failed, Op:" << op->debug_string(); + return errcode; + } + + if (errcode > 0) { + LOG(INFO) << "Execute ignore, Op:" << op->debug_string(); + continue; + } + + if (debug_os) { + (*debug_os) << "{\"op_name\": \"" << op->name() + << "\", \"debug_str:\": \"" << op->debug_string() + << "\", \"time_info\": \"" << op->time_info() << "\"}"; + } + + // LOG(DEBUG) << "Execute succ, Op:" << op->debug_string(); + } + stage_time.stop(); + PredictorMetric::GetInstance()->update_latency_metric( + STAGE_METRIC_PREFIX + vstage->full_name, stage_time.u_elapsed()); + return ERR_OK; +} + +int DagView::set_request_channel(Channel& request) { + // Each workflow should get the very beginning + // request (channel), and commit it to bus, for + // the first stage ops consuming. + + request.share_to_bus(_bus); + + return ERR_OK; +} + +const Channel* DagView::get_response_channel() const { + // Caller obtains response channel from bus, and + // writes it to rpc response(protbuf/json) + if (_view.size() < 1) { + LOG(ERROR) << "invalid empty view stage!"; + return NULL; + } + + ViewStage* last_stage = _view[_view.size() - 1]; + if (last_stage->nodes.size() != 1 || last_stage->nodes[0] == NULL) { + LOG(ERROR) << "Invalid last stage, size[" << last_stage->nodes.size() + << "] != 1"; + return NULL; + } + + Op* last_op = last_stage->nodes[0]->op; + if (last_op == NULL) { + LOG(ERROR) << "Last op is NULL"; + return NULL; + } + return last_op->mutable_channel(); +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/dag_view.h b/core/predictor/framework/dag_view.h new file mode 100644 index 0000000000000000000000000000000000000000..4999f64b47eb667e90437d387a5ac5ba5337fc64 --- /dev/null +++ b/core/predictor/framework/dag_view.h @@ -0,0 +1,86 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/dag.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class Op; + +struct ViewNode { + Op* op; // op->full_name == service_workflow_stageindex_opname + DagNode* conf; + void reset() { + op = NULL; + conf = NULL; + } +}; + +struct ViewStage { + std::vector nodes; + std::string full_name; // service_workflow_stageindex + std::string debug() { return "TOBE IMPLEMENTED!"; } +}; + +class DagView { + public: + DagView() : _bus(NULL) { _view.clear(); } + + ~DagView() {} + + int init(Dag* dag, const std::string& service_name); + + int deinit(); + + int execute(butil::IOBufBuilder* debug_os); + + // The default execution strategy is in sequencing + // You can derive a subclass to implement this func. + // ParallelDagView maybe the one you want. + virtual int execute_one_stage(ViewStage* vstage, + butil::IOBufBuilder* debug_os); + + int set_request_channel(Channel& request); // NOLINT + + const Channel* get_response_channel() const; + + const std::string& name() const { return _name; } + + const std::string& full_name() const { return _full_name; } + + private: + std::string _name; + std::string _full_name; + std::vector _view; + Bus* _bus; +}; + +// The derived DagView supports parallel execution +// strategy, by implments the execute_one_stage(). +class ParallelDagView : public DagView { + public: + int execute_one_stage(ViewStage* vstage, butil::IOBufBuilder*) { return 0; } +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/factory.h b/core/predictor/framework/factory.h new file mode 100644 index 0000000000000000000000000000000000000000..033bfb71d92a7c60fab25e589c2aac5fef58d8fd --- /dev/null +++ b/core/predictor/framework/factory.h @@ -0,0 +1,153 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "glog/raw_logging.h" +#include "core/predictor/common/inner_common.h" +namespace baidu { +namespace paddle_serving { +namespace predictor { + +//////////////// DECLARE INTERFACE //////////////// +#define DECLARE_FACTORY_OBJECT(D, B) \ + static int regist(const std::string& tag) { \ + FactoryDerive* factory = new (std::nothrow) FactoryDerive(); \ + if (factory == NULL || \ + FactoryPool::instance().register_factory(tag, factory) != 0) { \ + RAW_LOG_FATAL("Failed regist factory: %s in macro!", #D); \ + return -1; \ + } \ + return 0; \ + } + +#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) +#define PDS_STR_CAT_I(a, b) a##b + +#define DEFINE_FACTORY_OBJECT(D) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + D::regist(#D); \ + } + +//////////////// REGISTER INTERFACE //////////////// + +#define REGIST_FACTORY_OBJECT_IMPL(D, B) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + ::baidu::paddle_serving::predictor::FactoryDerive* factory = new ( \ + ::std::nothrow)::baidu::paddle_serving::predictor::FactoryDerive(); \ + if (factory == NULL || \ + ::baidu::paddle_serving::predictor::FactoryPool::instance() \ + .register_factory(#D, factory) != 0) { \ + RAW_LOG_FATAL("Failed regist factory: %s->%s in macro!", #D, #B); \ + return; \ + } \ + return; \ + } + +#define REGIST_FACTORY_OBJECT_IMPL_WITH_NAME(D, B, N) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + ::baidu::paddle_serving::predictor::FactoryDerive* factory = new ( \ + ::std::nothrow)::baidu::paddle_serving::predictor::FactoryDerive(); \ + if (factory == NULL || \ + ::baidu::paddle_serving::predictor::FactoryPool::instance() \ + .register_factory(N, factory) != 0) { \ + RAW_LOG_FATAL( \ + "Failed regist factory: %s->%s, tag: %s in macro!", #D, #B, N); \ + return; \ + } \ + RAW_LOG_WARNING( \ + "Succ regist factory: %s->%s, tag: %s in macro!", #D, #B, N); \ + return; \ + } + +template +class FactoryBase { + public: + virtual B* gen() = 0; + virtual void del(B* obj) = 0; +}; + +template +class FactoryDerive : public FactoryBase { + public: + B* gen() { return new (std::nothrow) D(); } + + void del(B* obj) { delete dynamic_cast(obj); } +}; + +template +class FactoryPool { + public: + static FactoryPool& instance() { + static FactoryPool singleton; + return singleton; + } + + int register_factory(const std::string& tag, FactoryBase* factory) { + typename std::map*>::iterator it = + _pool.find(tag); + if (it != _pool.end()) { + RAW_LOG_FATAL("Insert duplicate with tag: %s", tag.c_str()); + return -1; + } + + std::pair*>::iterator, bool> + r = _pool.insert(std::make_pair(tag, factory)); + if (!r.second) { + RAW_LOG_FATAL("Failed insert new factory with: %s", tag.c_str()); + return -1; + } + + RAW_LOG_INFO("Succ insert one factory, tag: %s, base type %s", + tag.c_str(), + typeid(B).name()); + + return 0; + } + + B* generate_object(const std::string& tag) { + typename std::map*>::iterator it = + _pool.find(tag); + if (it == _pool.end() || it->second == NULL) { + RAW_LOG_FATAL("Not found factory pool, tag: %s, pool size %u", + tag.c_str(), + _pool.size()); + return NULL; + } + + return it->second->gen(); + } + + template + void return_object(B* object) { + FactoryDerive factory; + factory.del(object); + } + + private: + std::map*> _pool; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu + +/* vim: set expandtab ts=2 sw=2 sts=2 tw=100: */ diff --git a/core/predictor/framework/infer.h b/core/predictor/framework/infer.h new file mode 100644 index 0000000000000000000000000000000000000000..177b6274e3bde03ef082c77d168266e919d42735 --- /dev/null +++ b/core/predictor/framework/infer.h @@ -0,0 +1,918 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/bsf.h" +#include "core/predictor/framework/factory.h" +#include "core/predictor/framework/infer_data.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using configure::ModelToolkitConf; + +class InferEngineCreationParams { + public: + InferEngineCreationParams() { + _path = ""; + _enable_memory_optimization = false; + _static_optimization = false; + _force_update_static_cache = false; + } + + void set_path(const std::string& path) { _path = path; } + + void set_enable_memory_optimization(bool enable_memory_optimization) { + _enable_memory_optimization = enable_memory_optimization; + } + + bool enable_memory_optimization() const { + return _enable_memory_optimization; + } + + void set_static_optimization(bool static_optimization = false) { + _static_optimization = static_optimization; + } + + void set_force_update_static_cache(bool force_update_static_cache = false) { + _force_update_static_cache = force_update_static_cache; + } + + bool static_optimization() const { return _static_optimization; } + + bool force_update_static_cache() const { return _force_update_static_cache; } + + std::string get_path() const { return _path; } + + void dump() const { + LOG(INFO) << "InferEngineCreationParams: " + << "model_path = " << _path << ", " + << "enable_memory_optimization = " << _enable_memory_optimization + << ", " + << "static_optimization = " << _static_optimization << ", " + << "force_update_static_cache = " << _force_update_static_cache; + } + + private: + std::string _path; + bool _enable_memory_optimization; + bool _static_optimization; + bool _force_update_static_cache; +}; + +class InferEngine { + public: + virtual ~InferEngine() {} + + virtual int proc_initialize(const configure::EngineDesc& conf, bool version) { + return proc_initialize_impl(conf, version); + } + virtual int proc_finalize() { return proc_finalize_impl(); } + virtual int thrd_initialize() { return thrd_initialize_impl(); } + virtual int thrd_clear() { return thrd_clear_impl(); } + virtual int thrd_finalize() { return thrd_finalize_impl(); } + virtual int infer(const void* in, void* out, uint32_t batch_size = -1) { + return infer_impl1(in, out, batch_size); + } + + virtual int reload() = 0; + + virtual uint64_t version() const = 0; + + // begin: framework inner call + virtual int proc_initialize_impl(const configure::EngineDesc& conf, + bool version) = 0; + virtual int thrd_initialize_impl() = 0; + virtual int thrd_finalize_impl() = 0; + virtual int thrd_clear_impl() = 0; + virtual int proc_finalize_impl() = 0; + virtual int infer_impl1(const void* in, + void* out, + uint32_t batch_size = -1) = 0; + virtual int infer_impl2(const BatchTensor& in, + BatchTensor& out) = 0; // NOLINT + // end: framework inner call +}; + +class ReloadableInferEngine : public InferEngine { + public: + virtual ~ReloadableInferEngine() {} + + union last_check_status { + time_t last_timestamp; + uint64_t last_md5sum; + uint64_t last_revision; + }; + + typedef im::bsf::Task TaskT; + + virtual int load(const InferEngineCreationParams& params) = 0; + + int proc_initialize_impl(const configure::EngineDesc& conf, bool version) { + _reload_tag_file = conf.reloadable_meta(); + _reload_mode_tag = conf.reloadable_type(); + _model_data_path = conf.model_data_path(); + _infer_thread_num = conf.runtime_thread_num(); + _infer_batch_size = conf.batch_infer_size(); + _infer_batch_align = conf.enable_batch_align(); + + bool enable_memory_optimization = false; + if (conf.has_enable_memory_optimization()) { + enable_memory_optimization = conf.enable_memory_optimization(); + } + + bool static_optimization = false; + if (conf.has_static_optimization()) { + static_optimization = conf.static_optimization(); + } + + bool force_update_static_cache = false; + if (conf.has_force_update_static_cache()) { + force_update_static_cache = conf.force_update_static_cache(); + } + + _infer_engine_params.set_path(_model_data_path); + if (enable_memory_optimization) { + _infer_engine_params.set_enable_memory_optimization(true); + _infer_engine_params.set_static_optimization(static_optimization); + _infer_engine_params.set_force_update_static_cache( + force_update_static_cache); + } + + if (!check_need_reload() || load(_infer_engine_params) != 0) { + LOG(ERROR) << "Failed load model_data_path" << _model_data_path; + return -1; + } + + if (parse_version_info(conf, version) != 0) { + LOG(ERROR) << "Failed parse version info"; + return -1; + } + + LOG(WARNING) << "Succ load model_data_path" << _model_data_path; + return 0; + } + + int proc_initialize(const configure::EngineDesc& conf, bool version) { + if (proc_initialize_impl(conf, version) != 0) { + LOG(ERROR) << "Failed proc initialize impl"; + return -1; + } + + // init bsf framework + if (_infer_thread_num <= 0) { + return 0; + } + + im::bsf::TaskExecutor::instance()->set_thread_init_fn( + boost::bind(&InferEngine::thrd_initialize_impl, this)); + im::bsf::TaskExecutor::instance()->set_thread_reset_fn( + boost::bind(&InferEngine::thrd_clear_impl, this)); + im::bsf::TaskExecutor::instance()->set_thread_callback_fn( + boost::bind(&InferEngine::infer_impl2, this, _1, _2)); + im::bsf::TaskExecutor::instance()->set_batch_size(_infer_batch_size); + im::bsf::TaskExecutor::instance()->set_batch_align( + _infer_batch_align); + if (im::bsf::TaskExecutor::instance()->start(_infer_thread_num) != + 0) { + LOG(ERROR) << "Failed start bsf executor, threads:" << _infer_thread_num; + return -1; + } + + LOG(WARNING) << "Enable batch schedule framework, thread_num:" + << _infer_thread_num << ", batch_size:" << _infer_batch_size + << ", enable_batch_align:" << _infer_batch_align; + + return 0; + } + + int infer(const void* in, void* out, uint32_t batch_size = -1) { + if (_infer_thread_num <= 0) { + return infer_impl1(in, out, batch_size); + } + + im::bsf::TaskManager task_manager; + task_manager.schedule(*(reinterpret_cast(in)), + *(reinterpret_cast(out))); + task_manager.wait(); + return 0; + } + + int thrd_initialize() { + if (_infer_thread_num > 0) { + return 0; + } + + return thrd_initialize_impl(); + } + + int thrd_clear() { + if (_infer_thread_num > 0) { + return 0; + } + + return thrd_clear_impl(); + } + + int proc_finalize() { + if (proc_finalize_impl() != 0) { + LOG(ERROR) << "Failed proc finalize impl"; + return -1; + } + + if (_infer_thread_num > 0) { + im::bsf::TaskExecutor::instance()->stop(); + } + + return 0; + } + + int reload() { + if (check_need_reload()) { + LOG(WARNING) << "begin reload model[" << _model_data_path << "]."; + return load(_infer_engine_params); + } + return 0; + } + + uint64_t version() const { return _version; } + + uint32_t thread_num() const { return _infer_thread_num; } + + private: + int parse_version_info(const configure::EngineDesc& config, bool version) { + _version = uint64_t(-1); + return 0; + } + + bool check_need_reload() { + if (_reload_mode_tag == "timestamp_ne") { + return check_timestamp_ne(); + } else if (_reload_mode_tag == "timestamp_gt") { + return check_timestamp_gt(); + } else if (_reload_mode_tag == "md5sum") { + return check_md5sum(); + } else if (_reload_mode_tag == "revision") { + return check_revision(); + } else if (_reload_mode_tag == "none") { + return false; + } else { + LOG(ERROR) << "Not support check type: " << _reload_mode_tag; + return false; + } + } + + bool check_timestamp_ne() { + struct stat st; + if (stat(_reload_tag_file.c_str(), &st) != 0) { + LOG(ERROR) << "Failed stat config file:" << _reload_tag_file; + return false; + } + + if ((st.st_mode & S_IFREG) && st.st_mtime != _last_status.last_timestamp) { + _last_status.last_timestamp = st.st_mtime; + return true; + } + + return false; + } + + bool check_timestamp_gt() { + struct stat st; + if (stat(_reload_tag_file.c_str(), &st) != 0) { + LOG(ERROR) << "Failed stat config file:" << _reload_tag_file; + return false; + } + + if ((st.st_mode & S_IFREG) && st.st_mtime > _last_status.last_timestamp) { + _last_status.last_timestamp = st.st_mtime; + return true; + } + + return false; + } + + bool check_md5sum() { return false; } + + bool check_revision() { return false; } + + protected: + std::string _model_data_path; + InferEngineCreationParams _infer_engine_params; + + private: + std::string _reload_tag_file; + std::string _reload_mode_tag; + last_check_status _last_status; + uint32_t _infer_thread_num; + uint32_t _infer_batch_size; + bool _infer_batch_align; + uint64_t _version; +}; + +template +struct ModelData { + ModelData() : current_idx(1) { + cores[0] = NULL; + cores[1] = NULL; + } + + ~ModelData() { + delete cores[0]; + delete cores[1]; + } + + EngineCore* cores[2]; + uint32_t current_idx; +}; + +template +class DBReloadableInferEngine : public ReloadableInferEngine { + public: + virtual ~DBReloadableInferEngine() {} + + int proc_initialize(const configure::EngineDesc& conf, bool version) { + THREAD_KEY_CREATE(&_skey, NULL); + THREAD_MUTEX_INIT(&_mutex, NULL); + return ReloadableInferEngine::proc_initialize(conf, version); + } + + virtual int load(const InferEngineCreationParams& params) { + if (_reload_vec.empty()) { + return 0; + } + + for (uint32_t ti = 0; ti < _reload_vec.size(); ++ti) { + if (load_data(_reload_vec[ti], params) != 0) { + LOG(ERROR) << "Failed reload engine model: " << ti; + return -1; + } + } + + LOG(WARNING) << "Succ load engine, path: " << params.get_path(); + + return 0; + } + + int load_data(ModelData* md, + const InferEngineCreationParams& params) { + uint32_t next_idx = (md->current_idx + 1) % 2; + if (md->cores[next_idx]) { + delete md->cores[next_idx]; + } + + md->cores[next_idx] = new (std::nothrow) EngineCore; + + params.dump(); + if (!md->cores[next_idx] || md->cores[next_idx]->create(params) != 0) { + LOG(ERROR) << "Failed create model, path: " << params.get_path(); + return -1; + } + md->current_idx = next_idx; + return 0; + } + + virtual int thrd_initialize_impl() { + // memory pool to be inited in non-serving-threads + if (MempoolWrapper::instance().thread_initialize() != 0) { + LOG(ERROR) << "Failed thread initialize mempool"; + return -1; + } + + ModelData* md = new (std::nothrow) ModelData; + if (!md || load_data(md, _infer_engine_params) != 0) { + LOG(ERROR) << "Failed create thread data from " + << _infer_engine_params.get_path(); + return -1; + } + + THREAD_SETSPECIFIC(_skey, md); + im::bsf::AutoMutex lock(_mutex); + _reload_vec.push_back(md); + return 0; + } + + int thrd_clear_impl() { + // for non-serving-threads + if (MempoolWrapper::instance().thread_clear() != 0) { + LOG(ERROR) << "Failed thread clear mempool"; + return -1; + } + return 0; + } + + int thrd_finalize_impl() { return 0; } + + int proc_finalize_impl() { + THREAD_KEY_DELETE(_skey); + THREAD_MUTEX_DESTROY(&_mutex); + return 0; + } + + EngineCore* get_core() { + ModelData* md = + (ModelData*)THREAD_GETSPECIFIC(_skey); + if (!md) { + LOG(ERROR) << "Failed get thread specific data"; + return NULL; + } + return md->cores[md->current_idx]; + } + + protected: + THREAD_KEY_T _skey; + THREAD_MUTEX_T _mutex; + std::vector*> _reload_vec; + + private: +}; + +// 多个EngineCore共用同一份模型数据 +template +class CloneDBReloadableInferEngine + : public DBReloadableInferEngine { + public: + virtual ~CloneDBReloadableInferEngine() {} + + virtual int proc_initialize(const configure::EngineDesc& conf, bool version) { + _pd = new (std::nothrow) ModelData; + if (!_pd) { + LOG(ERROR) << "Failed to allocate for ProcData"; + return -1; + } + return DBReloadableInferEngine::proc_initialize(conf, version); + } + + virtual int load(const InferEngineCreationParams& params) { + // 加载进程级模型数据 + if (!_pd || + DBReloadableInferEngine::load_data(_pd, params) != 0) { + LOG(ERROR) << "Failed to create common model from [" << params.get_path() + << "]."; + return -1; + } + LOG(WARNING) << "Succ load common model[" << _pd->cores[_pd->current_idx] + << "], path[" << params.get_path() << "]."; + + if (DBReloadableInferEngine::_reload_vec.empty()) { + return 0; + } + + for (uint32_t ti = 0; + ti < DBReloadableInferEngine::_reload_vec.size(); + ++ti) { + if (load_data(DBReloadableInferEngine::_reload_vec[ti], + _pd->cores[_pd->current_idx]) != 0) { + LOG(ERROR) << "Failed reload engine model: " << ti; + return -1; + } + } + + LOG(WARNING) << "Succ load clone model, path[" << params.get_path() << "]"; + + return 0; + } + + // 加载线程级对象,多个线程级对象共用pd_core的模型数据 + int load_data(ModelData* td, EngineCore* pd_core) { + uint32_t next_idx = (td->current_idx + 1) % 2; + if (td->cores[next_idx]) { + delete td->cores[next_idx]; + } + + td->cores[next_idx] = new (std::nothrow) EngineCore; + if (!td->cores[next_idx] || + td->cores[next_idx]->clone(pd_core->get()) != 0) { + LOG(ERROR) << "Failed clone model from pd_core[ " << pd_core << "], idx[" + << next_idx << "]"; + return -1; + } + td->current_idx = next_idx; + LOG(WARNING) << "td_core[" << td->cores[td->current_idx] + << "] clone model from pd_core[" << pd_core + << "] succ, cur_idx[" << td->current_idx << "]."; + return 0; + } + + virtual int thrd_initialize_impl() { + // memory pool to be inited in non-serving-threads + if (MempoolWrapper::instance().thread_initialize() != 0) { + LOG(ERROR) << "Failed thread initialize mempool"; + return -1; + } + + ModelData* md = new (std::nothrow) ModelData; + if (!md || load_data(md, _pd->cores[_pd->current_idx]) != 0) { + LOG(ERROR) << "Failed clone thread data, origin_core[" + << _pd->cores[_pd->current_idx] << "]."; + return -1; + } + + THREAD_SETSPECIFIC(DBReloadableInferEngine::_skey, md); + im::bsf::AutoMutex lock(DBReloadableInferEngine::_mutex); + DBReloadableInferEngine::_reload_vec.push_back(md); + return 0; + } + + protected: + ModelData* + _pd; // 进程级EngineCore,多个线程级EngineCore共用该对象的模型数据 +}; + +template +class FluidInferEngine : public CloneDBReloadableInferEngine { + public: + FluidInferEngine() {} + ~FluidInferEngine() {} + + int infer_impl1(const void* in, void* out, uint32_t batch_size = -1) { + FluidFamilyCore* core = + DBReloadableInferEngine::get_core(); + if (!core || !core->get()) { + LOG(ERROR) << "Failed get fluid core in infer_impl()"; + return -1; + } + + if (!core->Run(in, out)) { + LOG(ERROR) << "Failed run fluid family core"; + return -1; + } + return 0; + } + + int infer_impl2(const BatchTensor& in, BatchTensor& out) { // NOLINT + return infer_impl1(&in, &out); + } +}; + +typedef FactoryPool StaticInferFactory; + +class VersionedInferEngine : public InferEngine { + public: + VersionedInferEngine() { _versions.clear(); } + ~VersionedInferEngine() {} + + int proc_initialize(const configure::EngineDesc& conf) { + if (proc_initialize(conf, false) != 0) { + LOG(ERROR) << "Failed proc intialize engine: " << conf.name().c_str(); + return -1; + } + + LOG(WARNING) << "Succ proc initialize engine: " << conf.name().c_str(); + return 0; + } + + int proc_initialize(const configure::EngineDesc& conf, bool version) { + std::string engine_type = conf.type(); + InferEngine* engine = + StaticInferFactory::instance().generate_object(engine_type); + if (!engine) { + LOG(ERROR) << "Failed generate engine with type:" << engine_type; + return -1; + } + + if (engine->proc_initialize(conf, version) != 0) { + LOG(ERROR) << "Failed initialize engine, type:" << engine_type; + return -1; + } + + auto r = _versions.insert(std::make_pair(engine->version(), engine)); + if (!r.second) { + LOG(ERROR) << "Failed insert item: " << engine->version() + << ", type: " << engine_type; + return -1; + } + LOG(WARNING) << "Succ proc initialize version engine: " + << engine->version(); + return 0; + } + + int proc_finalize() { + for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { + if (iter->second->proc_finalize() != 0) { + LOG(ERROR) << "Failed proc finalize version engine: " << iter->first; + } + LOG(WARNING) << "Succ proc finalize version engine: " << iter->first; + } + return 0; + } + + int thrd_initialize() { + for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { + if (iter->second->thrd_initialize() != 0) { + LOG(ERROR) << "Failed thrd initialize version engine: " << iter->first; + return -1; + } + LOG(WARNING) << "Succ thrd initialize version engine: " << iter->first; + } + return 0; + } + + int thrd_clear() { + for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { + if (iter->second->thrd_clear() != 0) { + LOG(ERROR) << "Failed thrd clear version engine: " << iter->first; + return -1; + } + } + return 0; + } + + int thrd_finalize() { + for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { + if (iter->second->thrd_finalize() != 0) { + LOG(ERROR) << "Failed thrd finalize version engine: " << iter->first; + return -1; + } + LOG(WARNING) << "Succ thrd finalize version engine: " << iter->first; + } + return 0; + } + + int reload() { + for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { + if (iter->second->reload() != 0) { + LOG(ERROR) << "Failed reload version engine: " << iter->first; + return -1; + } + LOG(WARNING) << "Succ reload version engine: " << iter->first; + } + return 0; + } + + uint64_t version() const { + InferEngine* engine = default_engine(); + if (engine) { + return engine->version(); + } else { + return uint64_t(-1); + } + } + + // inference interface + InferEngine* default_engine() const { + if (_versions.size() != 1) { + LOG(ERROR) << "Ambiguous default engine version:" << _versions.size(); + return NULL; + } + + return _versions.begin()->second; + } + + int infer(const void* in, void* out, uint32_t batch_size) { + InferEngine* engine = default_engine(); + if (!engine) { + LOG(WARNING) << "fail to get default engine"; + return -1; + } + return engine->infer(in, out, batch_size); + } + + template + T* get_core() { + InferEngine* engine = default_engine(); + if (!engine) { + LOG(WARNING) << "fail to get core"; + return NULL; + } + auto db_engine = dynamic_cast*>(engine); + if (db_engine) { + return db_engine->get_core(); + } + LOG(WARNING) << "fail to get core"; + return NULL; + } + + // versioned inference interface + int infer(const void* in, void* out, uint32_t batch_size, uint64_t version) { + auto iter = _versions.find(version); + if (iter == _versions.end()) { + LOG(ERROR) << "Not found version engine: " << version; + return -1; + } + + return iter->second->infer(in, out, batch_size); + } + + template + T* get_core(uint64_t version) { + auto iter = _versions.find(version); + if (iter == _versions.end()) { + LOG(ERROR) << "Not found version engine: " << version; + return NULL; + } + + auto db_engine = dynamic_cast*>(iter->second); + if (db_engine) { + return db_engine->get_core(); + } + LOG(WARNING) << "fail to get core for " << version; + return NULL; + } + + // -- + int proc_initialize_impl(const configure::EngineDesc& conf, bool) { + return -1; + } + int thrd_initialize_impl() { return -1; } + int thrd_finalize_impl() { return -1; } + int thrd_clear_impl() { return -1; } + int proc_finalize_impl() { return -1; } + int infer_impl1(const void* in, void* out, uint32_t batch_size = -1) { + return -1; + } + int infer_impl2(const BatchTensor& in, BatchTensor& out) { // NOLINT + return -1; + } // NOLINT + + private: + boost::unordered_map _versions; +}; + +class InferManager { + public: + static InferManager& instance() { + static InferManager ins; + return ins; + } + + int proc_initialize(const char* path, const char* file) { + ModelToolkitConf model_toolkit_conf; + if (configure::read_proto_conf(path, file, &model_toolkit_conf) != 0) { + LOG(ERROR) << "failed load infer config, path: " << path << "/" << file; + return -1; + } + + size_t engine_num = model_toolkit_conf.engines_size(); + for (size_t ei = 0; ei < engine_num; ++ei) { + std::string engine_name = model_toolkit_conf.engines(ei).name(); + VersionedInferEngine* engine = new (std::nothrow) VersionedInferEngine(); + if (!engine) { + LOG(ERROR) << "Failed generate versioned engine: " << engine_name; + return -1; + } + + if (engine->proc_initialize(model_toolkit_conf.engines(ei)) != 0) { + LOG(ERROR) << "Failed initialize version engine, name:" << engine_name; + return -1; + } + + auto r = _map.insert(std::make_pair(engine_name, engine)); + if (!r.second) { + LOG(ERROR) << "Failed insert item: " << engine_name; + return -1; + } + LOG(WARNING) << "Succ proc initialize engine: " << engine_name; + } + + return 0; + } + + int thrd_initialize() { + for (auto it = _map.begin(); it != _map.end(); ++it) { + if (it->second->thrd_initialize() != 0) { + LOG(ERROR) << "Failed thrd initialize engine, name: " << it->first; + return -1; + } + LOG(WARNING) << "Succ thrd initialize engine, name: " << it->first; + } + return 0; + } + + int thrd_clear() { + for (auto it = _map.begin(); it != _map.end(); ++it) { + if (it->second->thrd_clear() != 0) { + LOG(ERROR) << "Failed thrd clear engine, name: " << it->first; + return -1; + } + } + return 0; + } + + int reload() { + for (auto it = _map.begin(); it != _map.end(); ++it) { + if (it->second->reload() != 0) { + LOG(ERROR) << "Failed reload engine, name: " << it->first; + return -1; + } + } + return 0; + } + + int thrd_finalize() { + for (auto it = _map.begin(); it != _map.end(); ++it) { + if (it->second->thrd_finalize() != 0) { + LOG(ERROR) << "Failed thrd finalize engine, name: " << it->first; + return -1; + } + LOG(WARNING) << "Succ thrd finalize engine, name: " << it->first; + } + return 0; + } + + int proc_finalize() { + for (auto it = _map.begin(); it != _map.end(); ++it) { + if (it->second->proc_finalize() != 0) { + LOG(ERROR) << "Failed proc finalize engine, name: " << it->first; + return -1; + } + LOG(WARNING) << "Succ proc finalize engine, name: " << it->first; + } + _map.clear(); + return 0; + } + + // Inference interface + int infer(const char* model_name, + const void* in, + void* out, + uint32_t batch_size = -1) { + auto it = _map.find(model_name); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; + return -1; + } + return it->second->infer(in, out, batch_size); + } + + template + T* get_core(const char* model_name) { + auto it = _map.find(model_name); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; + return NULL; + } + auto infer_engine = + dynamic_cast*>(it->second->default_engine()); + if (infer_engine) { + return infer_engine->get_core(); + } + LOG(WARNING) << "fail to get core for " << model_name; + return NULL; + } + + // Versioned inference interface + int infer(const char* model_name, + const void* in, + void* out, + uint32_t batch_size, + uint64_t version) { + auto it = _map.find(model_name); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; + return -1; + } + return it->second->infer(in, out, batch_size, version); + } + + template + T* get_core(const char* model_name, uint64_t version) { + auto it = _map.find(model_name); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; + return NULL; + } + return it->second->get_core(version); + } + + int query_version(const std::string& model, uint64_t& version) { // NOLINT + auto it = _map.find(model); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find engine in map, model name:" << model; + return -1; + } + auto infer_engine = it->second->default_engine(); + if (!infer_engine) { + LOG(WARNING) << "Cannot get default engine for model:" << model; + return -1; + } + version = infer_engine->version(); + LOG(INFO) << "Succ get version: " << version << " for model: " << model; + return 0; + } + + private: + boost::unordered_map _map; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/infer_data.h b/core/predictor/framework/infer_data.h new file mode 100644 index 0000000000000000000000000000000000000000..1ad62ce61fbe480ef6a4b3385147c02c9c1c5304 --- /dev/null +++ b/core/predictor/framework/infer_data.h @@ -0,0 +1,165 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +enum DataType { FLOAT32, INT64 }; + +class DataBuf { + public: + DataBuf() : _data(NULL), _size(0), _owned(true) {} + + explicit DataBuf(size_t size) + : _data(new char[size]), _size(size), _owned(true) {} + + DataBuf(void* data, size_t size) : _data(data), _size(size), _owned(false) {} + + DataBuf(void* data, size_t size, bool owned) + : _data(data), _size(size), _owned(owned) {} + + void* data() const { return _data; } + + size_t size() const { return _size; } + + void free() { + _size = 0; + if (_owned) { + delete[](reinterpret_cast(_data)); + } + } + + ~DataBuf() { free(); } + + private: + void* _data; + size_t _size; + bool _owned; +}; + +struct Tensor { + Tensor() { + shape.clear(); + for (int li = 0; li < lod.size(); ++li) { + lod[li].clear(); + } + lod.clear(); + } + + Tensor(const Tensor& tensor) { + name = tensor.name; + data = tensor.data; + type = tensor.type; + shape.assign(tensor.shape.begin(), tensor.shape.end()); + for (int li = 0; li < tensor.lod.size(); ++li) { + std::vector l; + l.assign(tensor.lod[li].begin(), tensor.lod[li].end()); + lod.push_back(l); + } + } + + ~Tensor() { shape.clear(); } + + size_t ele_byte() const { + if (type == INT64) { + return sizeof(int64_t); + } else { + return sizeof(float); + } + } + + bool valid() const { + if (shape.empty()) { + if (data.data() || data.size()) { + LOG(ERROR) << "data should be empty"; + return false; + } + return true; + } + + if (!data.data() || !data.size()) { + LOG(ERROR) << "data cannot empty"; + return false; + } + + size_t byte_size = 1; + for (size_t si = 0; si < shape.size(); ++si) { + byte_size *= shape[si]; + } + + if (byte_size * ele_byte() != data.size()) { + LOG(ERROR) << "wrong data size: " << byte_size * ele_byte() << " vs. " + << data.size(); + return false; + } + + return true; + } + + size_t shape0() { + if (shape.empty()) { + return 0; + } + return shape[0]; + } + + std::string name; + std::vector shape; + DataBuf data; + DataType type; + std::vector> lod; +}; + +class BatchTensor { + public: + BatchTensor() {} + ~BatchTensor() { _features.clear(); } + + BatchTensor(const BatchTensor& tv) { + _features.assign(tv.features().begin(), tv.features().end()); + } + + Tensor& operator[](int index) { return _features[index]; } + + const Tensor& operator[](int index) const { return _features[index]; } + + void push_back(const Tensor& tensor) { _features.push_back(tensor); } + + size_t count() const { return _features.size(); } + + size_t size() const { + // shape0 indicates batch_size + if (count() <= 0 || _features[0].shape.size() <= 0) { + return 0; + } + return _features[0].shape[0]; + } + + const std::vector& features() const { return _features; } + + void clear() { _features.clear(); } + + private: + std::vector _features; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/kv_manager.h b/core/predictor/framework/kv_manager.h new file mode 100644 index 0000000000000000000000000000000000000000..11bcb3005222a19864a8ffb2286d5683341a5489 --- /dev/null +++ b/core/predictor/framework/kv_manager.h @@ -0,0 +1,94 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using configure::ModelToolkitConf; + +struct KVInfo { + std::string model_name; + uint32_t sparse_param_service_type; + std::string sparse_param_service_table_name; +}; + +class KVManager { + public: + static KVManager &instance() { + static KVManager ins; + return ins; + } + + int proc_initialize(const char *path, const char *file) { + ModelToolkitConf model_toolkit_conf; + if (configure::read_proto_conf(path, file, &model_toolkit_conf) != 0) { + LOG(ERROR) << "failed load infer config, path: " << path << "/" << file; + return -1; + } + + size_t engine_num = model_toolkit_conf.engines_size(); + for (size_t ei = 0; ei < engine_num; ++ei) { + const configure::EngineDesc &conf = model_toolkit_conf.engines(ei); + std::string engine_name = conf.name(); + KVInfo *kvinfo = new (std::nothrow) KVInfo(); + kvinfo->model_name = engine_name; + if (conf.has_sparse_param_service_type()) { + kvinfo->sparse_param_service_type = conf.sparse_param_service_type(); + } else { + kvinfo->sparse_param_service_type = configure::EngineDesc::NONE; + } + + if (conf.has_sparse_param_service_table_name()) { + kvinfo->sparse_param_service_table_name = + conf.sparse_param_service_table_name(); + } else { + kvinfo->sparse_param_service_table_name = ""; + } + + auto r = _map.insert(std::make_pair(engine_name, kvinfo)); + if (!r.second) { + LOG(ERROR) << "Failed insert item: " << engine_name; + return -1; + } + + LOG(WARNING) << engine_name << ": " + << kvinfo->sparse_param_service_table_name; + LOG(WARNING) << "Succ proc initialize kvmanager for engine: " + << engine_name; + } + + return 0; + } + + const KVInfo *get_kv_info(std::string model_name) { + auto it = _map.find(model_name); + if (it == _map.end()) { + LOG(WARNING) << "Cannot find kvinfo for model " << model_name; + return NULL; + } + + return it->second; + } + + private: + std::map _map; +}; +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/manager.h b/core/predictor/framework/manager.h new file mode 100644 index 0000000000000000000000000000000000000000..69cc5c5b40b3b16dfe12dc596eaa39ec6030fa30 --- /dev/null +++ b/core/predictor/framework/manager.h @@ -0,0 +1,245 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/constant.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/service.h" +#include "core/predictor/framework/workflow.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using configure::WorkflowConf; +using configure::InferServiceConf; + +class Workflow; +// class InferService; +// class ParallelInferService; + +template +I* create_item_impl() { + return new (std::nothrow) I(); +} + +template <> +inline InferService* create_item_impl() { + if (FLAGS_use_parallel_infer_service) { + return new (std::nothrow) ParallelInferService(); + } else { + return new (std::nothrow) InferService(); + } +} + +class WorkflowManager { + public: + static WorkflowManager& instance() { + static WorkflowManager mgr; + return mgr; + } + + int initialize(const std::string path, const std::string file) { + WorkflowConf workflow_conf; + if (configure::read_proto_conf(path, file, &workflow_conf) != 0) { + LOG(ERROR) << "Failed load manager<" << Workflow::tag() + << "> configure from " << path << "/" << file; + return -1; + } + + try { + uint32_t item_size = workflow_conf.workflows_size(); + for (uint32_t ii = 0; ii < item_size; ii++) { + std::string name = workflow_conf.workflows(ii).name(); + Workflow* item = new (std::nothrow) Workflow(); + if (item == NULL) { + LOG(ERROR) << "Failed create " << Workflow::tag() << " for: " << name; + return -1; + } + if (item->init(workflow_conf.workflows(ii)) != 0) { + LOG(ERROR) << "Failed init item: " << name << " at:" << ii << "!"; + return -1; + } + + std::pair< + typename boost::unordered_map::iterator, + bool> + r = _item_map.insert(std::make_pair(name, item)); + if (!r.second) { + LOG(ERROR) << "Failed insert item:" << name << " at:" << ii << "!"; + return -1; + } + + LOG(INFO) << "Succ init item:" << name << " from conf:" << path << "/" + << file << ", at:" << ii << "!"; + } + } catch (...) { + LOG(ERROR) << "Config[" << path << "/" << file << "] format " + << "invalid, load failed"; + return -1; + } + return 0; + } + + Workflow* create_item() { return create_item_impl(); } + + Workflow* item(const std::string& name) { + typename boost::unordered_map::iterator it; + it = _item_map.find(name); + if (it == _item_map.end()) { + LOG(WARNING) << "Not found item: " << name << "!"; + return NULL; + } + + return it->second; + } + + Workflow& operator[](const std::string& name) { + Workflow* i = item(name); + if (i == NULL) { + std::string err = "Not found item in manager for:"; + err += name; + throw std::overflow_error(err); + } + return *i; + } + + int reload() { + int ret = 0; + typename boost::unordered_map::iterator it = + _item_map.begin(); + for (; it != _item_map.end(); ++it) { + if (it->second->reload() != 0) { + LOG(WARNING) << "failed reload item: " << it->first << "!"; + ret = -1; + } + } + + LOG(INFO) << "Finish reload " << _item_map.size() << " " << Workflow::tag() + << "(s)"; + return ret; + } + + int finalize() { return 0; } + + private: + WorkflowManager() {} + + private: + boost::unordered_map _item_map; +}; + +class InferServiceManager { + public: + static InferServiceManager& instance() { + static InferServiceManager mgr; + return mgr; + } + + int initialize(const std::string path, const std::string file) { + InferServiceConf infer_service_conf; + if (configure::read_proto_conf(path, file, &infer_service_conf) != 0) { + LOG(ERROR) << "Failed load manager<" << InferService::tag() + << "> configure!"; + return -1; + } + + try { + uint32_t item_size = infer_service_conf.services_size(); + for (uint32_t ii = 0; ii < item_size; ii++) { + std::string name = infer_service_conf.services(ii).name(); + InferService* item = new (std::nothrow) InferService(); + if (item == NULL) { + LOG(ERROR) << "Failed create " << InferService::tag() + << " for: " << name; + return -1; + } + if (item->init(infer_service_conf.services(ii)) != 0) { + LOG(ERROR) << "Failed init item: " << name << " at:" << ii << "!"; + return -1; + } + + std::pair< + typename boost::unordered_map::iterator, + bool> + r = _item_map.insert(std::make_pair(name, item)); + if (!r.second) { + LOG(ERROR) << "Failed insert item:" << name << " at:" << ii << "!"; + return -1; + } + + LOG(INFO) << "Succ init item:" << name << " from conf:" << path << "/" + << file << ", at:" << ii << "!"; + } + } catch (...) { + LOG(ERROR) << "Config[" << path << "/" << file << "] format " + << "invalid, load failed"; + return -1; + } + return 0; + } + + InferService* create_item() { return create_item_impl(); } + + InferService* item(const std::string& name) { + typename boost::unordered_map::iterator it; + it = _item_map.find(name); + if (it == _item_map.end()) { + LOG(WARNING) << "Not found item: " << name << "!"; + return NULL; + } + + return it->second; + } + + InferService& operator[](const std::string& name) { + InferService* i = item(name); + if (i == NULL) { + std::string err = "Not found item in manager for:"; + err += name; + throw std::overflow_error(err); + } + return *i; + } + + int reload() { + int ret = 0; + typename boost::unordered_map::iterator it = + _item_map.begin(); + for (; it != _item_map.end(); ++it) { + if (it->second->reload() != 0) { + LOG(WARNING) << "failed reload item: " << it->first << "!"; + ret = -1; + } + } + + LOG(INFO) << "Finish reload " << _item_map.size() << " " + << InferService::tag() << "(s)"; + return ret; + } + + int finalize() { return 0; } + + private: + InferServiceManager() {} + + private: + boost::unordered_map _item_map; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/memory.cpp b/core/predictor/framework/memory.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ec5967c85630c549fdc19eb6ce1773bfd541a05c --- /dev/null +++ b/core/predictor/framework/memory.cpp @@ -0,0 +1,112 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/memory.h" +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +struct MempoolRegion { + MempoolRegion(im::fugue::memory::Region* region, im::Mempool* mempool) + : _region(region), _mempool(mempool) {} + im::fugue::memory::Region* region() { return _region; } + im::Mempool* mempool() { return _mempool; } + + im::fugue::memory::Region* _region; + im::Mempool* _mempool; + ~MempoolRegion() { + if (_region) { + delete _region; + _region = NULL; + } + if (_mempool) { + delete _mempool; + _mempool = NULL; + } + } +}; + +int MempoolWrapper::initialize() { + if (THREAD_KEY_CREATE(&_bspec_key, NULL) != 0) { + LOG(ERROR) << "unable to create thread_key of thrd_data"; + return -1; + } + if (THREAD_SETSPECIFIC(_bspec_key, NULL) != 0) { + LOG(ERROR) << "failed initialize bsepecific key to null"; + return -1; + } + + return 0; +} + +int MempoolWrapper::thread_initialize() { + im::fugue::memory::Region* region = new im::fugue::memory::Region(); + region->init(); + im::Mempool* mempool = new (std::nothrow) im::Mempool(region); + MempoolRegion* mempool_region = new MempoolRegion(region, mempool); + if (mempool == NULL) { + LOG(ERROR) << "Failed create thread mempool"; + return -1; + } + + if (THREAD_SETSPECIFIC(_bspec_key, mempool_region) != 0) { + LOG(ERROR) << "unable to set the thrd_data"; + delete region; + delete mempool; + delete mempool_region; + return -1; + } + + LOG(WARNING) << "Succ thread initialize mempool wrapper"; + return 0; +} + +int MempoolWrapper::thread_clear() { + MempoolRegion* mempool_region = + (MempoolRegion*)THREAD_GETSPECIFIC(_bspec_key); + if (mempool_region == NULL) { + LOG(WARNING) << "THREAD_GETSPECIFIC() returned NULL"; + return -1; + } + im::Mempool* mempool = mempool_region->mempool(); + im::fugue::memory::Region* region = mempool_region->region(); + if (mempool) { + mempool->release_block(); + region->reset(); + } + return 0; +} + +void* MempoolWrapper::malloc(size_t size) { + MempoolRegion* mempool_region = + (MempoolRegion*)THREAD_GETSPECIFIC(_bspec_key); + if (mempool_region == NULL) { + LOG(WARNING) << "THREAD_GETSPECIFIC() returned NULL"; + return NULL; + } + + im::Mempool* mempool = mempool_region->mempool(); + if (!mempool) { + LOG(WARNING) << "Cannot malloc memory:" << size + << ", since mempool is not thread initialized"; + return NULL; + } + return mempool->malloc(size); +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/memory.h b/core/predictor/framework/memory.h new file mode 100644 index 0000000000000000000000000000000000000000..af3591ee575c078a3dcf12c39af3f8d189b30caa --- /dev/null +++ b/core/predictor/framework/memory.h @@ -0,0 +1,48 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include "core/predictor/common/inner_common.h" +#include "core/predictor/mempool/mempool.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class MempoolWrapper { + public: + MempoolWrapper() {} + + static MempoolWrapper& instance() { + static MempoolWrapper mempool; + return mempool; + } + + int initialize(); + + int thread_initialize(); + + int thread_clear(); + + void* malloc(size_t size); + + private: + // im::fugue::memory::Region _region; + THREAD_KEY_T _bspec_key; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/merger.h b/core/predictor/framework/merger.h new file mode 100644 index 0000000000000000000000000000000000000000..168649da5b5d31da1af37ae62e1134d62ca1e02e --- /dev/null +++ b/core/predictor/framework/merger.h @@ -0,0 +1,107 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class IMerger { + public: + virtual bool merge(const google::protobuf::Message*, + google::protobuf::Message*) = 0; +}; + +class DefaultMerger : public IMerger { + public: + bool merge(const google::protobuf::Message* s, google::protobuf::Message* d) { + if (!s || !d) { + return false; + } + + d->MergeFrom(*s); + return true; + } +}; + +template +class Singleton { + public: + static T* instance() { + static T ins; + return &ins; + } +}; + +class MergerManager { + public: + typedef IMerger MergerT; + + static MergerManager& instance() { + static MergerManager ins; + return ins; + } + + bool set(std::string name, MergerT* merger) { + if (_mergers.find(name) != _mergers.end()) { + LOG(ERROR) << "Duplicated merger: " << name; + return false; + } + _mergers[name] = merger; + return true; + } + + bool get(const std::string& name, MergerT*& merger) { // NOLINT + std::map::iterator iter = _mergers.find(name); + if (iter == _mergers.end()) { + return false; + } + merger = iter->second; + return true; + } + + private: + MergerManager() { set("default", Singleton::instance()); } + + private: + std::map _mergers; +}; + +#define DECLARE_MERGER(M) \ + static bool regist_self() { \ + if (!baidu::paddle_serving::predictor::MergerManager::instance().set( \ + #M, baidu::paddle_serving::predictor::Singleton::instance())) { \ + LOG(ERROR) << "Failed regist merger: " << #M; \ + return false; \ + } \ + LOG(INFO) << "Succ regist merger: " << #M; \ + return true; \ + } + +#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) +#define PDS_STR_CAT_I(a, b) a##b + +#define DEFINE_MERGER(M) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + M::regist_self(); \ + } + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/op_repository.cpp b/core/predictor/framework/op_repository.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f60ebdfe0ec45572fc0d63af38bf9969981bd11e --- /dev/null +++ b/core/predictor/framework/op_repository.cpp @@ -0,0 +1,64 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/op_repository.h" +#include +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +Op* OpRepository::get_op(std::string op_type) { + ManagerMap::iterator iter = _repository.find(op_type); + Op* op = NULL; + if (iter != _repository.end()) { + op = (iter->second)->get_op(); + } else { + LOG(ERROR) << "Try to create unknown op[" << op_type << "]"; + } + return op; +} + +void OpRepository::return_op(Op* op) { + if (op == NULL) { + LOG(ERROR) << "Try to return NULL op"; + return; + } + ManagerMap::iterator iter = _repository.find(op->type()); + if (iter != _repository.end()) { + iter->second->return_op(op); + } else { + LOG(ERROR) << "Try to return unknown op[" << op << "], op_type[" + << op->type() << "]."; + } +} + +void OpRepository::return_op(const std::string& op_type, Op* op) { + if (op == NULL) { + LOG(ERROR) << "Try to return NULL op"; + return; + } + ManagerMap::iterator iter = _repository.find(op_type); + if (iter != _repository.end()) { + iter->second->return_op(op); + } else { + LOG(ERROR) << "Try to return unknown op[" << op << "], op_type[" << op_type + << "]."; + } +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/op_repository.h b/core/predictor/framework/op_repository.h new file mode 100644 index 0000000000000000000000000000000000000000..d27e68c1dbcd98e7393aac6e8b0f001e7300a2bc --- /dev/null +++ b/core/predictor/framework/op_repository.h @@ -0,0 +1,80 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#define REGISTER_OP(op) \ + ::baidu::paddle_serving::predictor::OpRepository::instance().regist_op( \ + #op) + +class Op; + +class Factory { + public: + virtual Op* get_op() = 0; + virtual void return_op(Op* op) = 0; +}; + +template +class OpFactory : public Factory { + public: + Op* get_op() { return butil::get_object(); } + + void return_op(Op* op) { + butil::return_object(dynamic_cast(op)); + } + + static OpFactory& instance() { + static OpFactory ins; + return ins; + } +}; + +class OpRepository { + public: + typedef boost::unordered_map ManagerMap; + + OpRepository() {} + ~OpRepository() {} + + static OpRepository& instance() { + static OpRepository repo; + return repo; + } + + template + void regist_op(std::string op_type) { + _repository[op_type] = &OpFactory::instance(); + RAW_LOG_INFO("Succ regist op: %s", op_type.c_str()); + } + + Op* get_op(std::string op_type); + + void return_op(Op* op); + + void return_op(const std::string& op_type, Op* op); + + private: + ManagerMap _repository; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/predictor_metric.cpp b/core/predictor/framework/predictor_metric.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c06968b3f0a730f66b541363d9aedf1ea78bf35e --- /dev/null +++ b/core/predictor/framework/predictor_metric.cpp @@ -0,0 +1,32 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/predictor_metric.h" +#ifdef BCLOUD +#include "base/memory/singleton.h" +#else +#include "butil/memory/singleton.h" +#endif + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +PredictorMetric* PredictorMetric::GetInstance() { + return Singleton::get(); +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/framework/predictor_metric.h b/core/predictor/framework/predictor_metric.h similarity index 100% rename from predictor/framework/predictor_metric.h rename to core/predictor/framework/predictor_metric.h diff --git a/core/predictor/framework/resource.cpp b/core/predictor/framework/resource.cpp new file mode 100644 index 0000000000000000000000000000000000000000..833164e45dadb9225a0eb34e14ff9f0b15b96f37 --- /dev/null +++ b/core/predictor/framework/resource.cpp @@ -0,0 +1,327 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/resource.h" +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/kv_manager.h" +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using configure::ResourceConf; +using configure::GeneralModelConfig; +using configure::Shape; +using rec::mcube::CubeAPI; +// __thread bool p_thread_initialized = false; + +static void dynamic_resource_deleter(void* d) { +#if 1 + LOG(INFO) << "dynamic_resource_delete on " << bthread_self(); +#endif + delete static_cast(d); +} + +DynamicResource::DynamicResource() {} + +DynamicResource::~DynamicResource() {} + +int DynamicResource::initialize() { return 0; } + +std::shared_ptr Resource::getDB() { return db; } + +std::shared_ptr Resource::get_general_model_config() { + return _config; +} + +void Resource::print_general_model_config( + const std::shared_ptr & config) { + if (config == nullptr) { + LOG(INFO) << "paddle general model config is not set"; + return; + } + LOG(INFO) << "Number of Feed Tensor: " << config->_feed_type.size(); + std::ostringstream oss; + LOG(INFO) << "Feed Type Info"; + for (auto & feed_type : config->_feed_type) { + oss << feed_type << " "; + } + LOG(INFO) << oss.str(); + oss.clear(); + oss.str(""); + LOG(INFO) << "Lod Type Info"; + + for (auto is_lod : config->_is_lod_feed) { + oss << is_lod << " "; + } + + LOG(INFO) << oss.str(); + oss.clear(); + oss.str(""); + LOG(INFO) << "Capacity Info"; + for (auto & cap : config->_capacity) { + oss << cap << " "; + } + LOG(INFO) << oss.str(); + oss.clear(); + oss.str(""); + LOG(INFO) << "Feed Shape Info"; + int tensor_idx = 0; + for (auto & shape : config->_feed_shape) { + for (auto & dim : shape) { + oss << dim << " "; + } + LOG(INFO) << "Tensor[" << tensor_idx++ << "].shape: " << oss.str(); + oss.clear(); + oss.str(""); + } +} + +int DynamicResource::clear() { return 0; } + +int Resource::initialize(const std::string& path, const std::string& file) { + ResourceConf resource_conf; + if (configure::read_proto_conf(path, file, &resource_conf) != 0) { + LOG(ERROR) << "Failed initialize resource from: " << path << "/" << file; + return -1; + } + + // mempool + if (MempoolWrapper::instance().initialize() != 0) { + LOG(ERROR) << "Failed proc initialized mempool wrapper"; + return -1; + } + LOG(WARNING) << "Successfully proc initialized mempool wrapper"; + + if (FLAGS_enable_model_toolkit) { + int err = 0; + std::string model_toolkit_path = resource_conf.model_toolkit_path(); + if (err != 0) { + LOG(ERROR) << "read model_toolkit_path failed, path[" << path + << "], file[" << file << "]"; + return -1; + } + std::string model_toolkit_file = resource_conf.model_toolkit_file(); + if (err != 0) { + LOG(ERROR) << "read model_toolkit_file failed, path[" << path + << "], file[" << file << "]"; + return -1; + } + if (InferManager::instance().proc_initialize( + model_toolkit_path.c_str(), model_toolkit_file.c_str()) != 0) { + LOG(ERROR) << "failed proc initialize modeltoolkit, config: " + << model_toolkit_path << "/" << model_toolkit_file; + return -1; + } + + if (KVManager::instance().proc_initialize( + model_toolkit_path.c_str(), model_toolkit_file.c_str()) != 0) { + LOG(ERROR) << "Failed proc initialize kvmanager, config: " + << model_toolkit_path << "/" << model_toolkit_file; + } + } + + if (THREAD_KEY_CREATE(&_tls_bspec_key, dynamic_resource_deleter) != 0) { + LOG(ERROR) << "unable to create tls_bthread_key of thrd_data"; + return -1; + } + // init rocksDB instance + if (db.get() == nullptr) { + db = RocksDBWrapper::RocksDBWrapperFactory("kvdb"); + } + + THREAD_SETSPECIFIC(_tls_bspec_key, NULL); + return 0; +} + +int Resource::general_model_initialize( + const std::string& path, const std::string & file) { + if (!FLAGS_enable_general_model) { + return 0; + } + + GeneralModelConfig model_config; + if (configure::read_proto_conf(path, file, &model_config) != 0) { + LOG(ERROR) << "Failed initialize resource from: " << path << "/" << file; + return -1; + } + + _config.reset(new PaddleGeneralModelConfig()); + _config->_feed_type.resize(model_config.feed_type_size()); + _config->_is_lod_feed.resize(model_config.is_lod_feed_size()); + _config->_capacity.resize(model_config.feed_shape_size()); + _config->_feed_shape.resize(model_config.feed_shape_size()); + for (int i = 0; i < model_config.is_lod_feed_size(); ++i) { + _config->_feed_type[i] = model_config.feed_type(i); + if (model_config.is_lod_feed(i)) { + _config->_feed_shape[i] = {-1}; + _config->_is_lod_feed[i] = true; + } else { + _config->_capacity[i] = 1; + _config->_is_lod_feed[i] = false; + for (int j = 0; j < model_config.feed_shape(i).shape_size(); ++j) { + int dim = model_config.feed_shape(i).shape(j); + _config->_feed_shape[i].push_back(dim); + _config->_capacity[i] *= dim; + } + } + } + return 0; +} + +int Resource::cube_initialize(const std::string& path, + const std::string& file) { + // cube + if (!FLAGS_enable_cube) { + return 0; + } + + ResourceConf resource_conf; + if (configure::read_proto_conf(path, file, &resource_conf) != 0) { + LOG(ERROR) << "Failed initialize resource from: " << path << "/" << file; + return -1; + } + + int err = 0; + std::string cube_config_file = resource_conf.cube_config_file(); + if (err != 0) { + LOG(ERROR) << "reade cube_config_file failed, path[" << path << "], file[" + << cube_config_file << "]"; + return -1; + } + err = CubeAPI::instance()->init(cube_config_file.c_str()); + if (err != 0) { + LOG(ERROR) << "failed initialize cube, config: " << cube_config_file + << " error code : " << err; + return -1; + } + + LOG(INFO) << "Successfully initialize cube"; + + return 0; +} + +int Resource::thread_initialize() { + // mempool + if (MempoolWrapper::instance().thread_initialize() != 0) { + LOG(ERROR) << "Failed thread initialized mempool wrapper"; + return -1; + } + LOG(WARNING) << "Successfully thread initialized mempool wrapper"; + + // infer manager + if (FLAGS_enable_model_toolkit && + InferManager::instance().thrd_initialize() != 0) { + LOG(ERROR) << "Failed thrd initialized infer manager"; + return -1; + } + + DynamicResource* p_dynamic_resource = + reinterpret_cast(THREAD_GETSPECIFIC(_tls_bspec_key)); + if (p_dynamic_resource == NULL) { + p_dynamic_resource = new (std::nothrow) DynamicResource; + if (p_dynamic_resource == NULL) { + LOG(ERROR) << "failed to create tls DynamicResource"; + return -1; + } + if (p_dynamic_resource->initialize() != 0) { + LOG(ERROR) << "DynamicResource initialize failed."; + delete p_dynamic_resource; + p_dynamic_resource = NULL; + return -1; + } + + if (THREAD_SETSPECIFIC(_tls_bspec_key, p_dynamic_resource) != 0) { + LOG(ERROR) << "unable to set tls DynamicResource"; + delete p_dynamic_resource; + p_dynamic_resource = NULL; + return -1; + } + } +#if 0 + LOG(INFO) << "Successfully thread initialized dynamic resource"; +#else + LOG(INFO) << bthread_self() + << ": Successfully thread initialized dynamic resource " + << p_dynamic_resource; + +#endif + return 0; +} + +int Resource::thread_clear() { + // mempool + if (MempoolWrapper::instance().thread_clear() != 0) { + LOG(ERROR) << "Failed thread clear mempool wrapper"; + return -1; + } + + // infer manager + if (FLAGS_enable_model_toolkit && + InferManager::instance().thrd_clear() != 0) { + LOG(ERROR) << "Failed thrd clear infer manager"; + return -1; + } + + DynamicResource* p_dynamic_resource = + reinterpret_cast(THREAD_GETSPECIFIC(_tls_bspec_key)); + if (p_dynamic_resource == NULL) { +#if 0 + LOG(ERROR) << "tls dynamic resource shouldn't be null after " + << "thread_initialize"; +#else + LOG(ERROR) + << bthread_self() + << ": tls dynamic resource shouldn't be null after thread_initialize"; +#endif + return -1; + } + if (p_dynamic_resource->clear() != 0) { + LOG(ERROR) << "Failed to invoke dynamic resource clear"; + return -1; + } + + // ... + return 0; +} + +int Resource::reload() { + if (FLAGS_enable_model_toolkit && InferManager::instance().reload() != 0) { + LOG(ERROR) << "Failed reload infer manager"; + return -1; + } + + // other resource reload here... + return 0; +} + +int Resource::finalize() { + if (FLAGS_enable_model_toolkit && + InferManager::instance().proc_finalize() != 0) { + LOG(ERROR) << "Failed proc finalize infer manager"; + return -1; + } + if (CubeAPI::instance()->destroy() != 0) { + LOG(ERROR) << "Destory cube api failed "; + return -1; + } + THREAD_KEY_DELETE(_tls_bspec_key); + + return 0; +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/resource.h b/core/predictor/framework/resource.h new file mode 100644 index 0000000000000000000000000000000000000000..b3509c99eceb85e7da976fedf4d06ba9718885fa --- /dev/null +++ b/core/predictor/framework/resource.h @@ -0,0 +1,112 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "core/cube/cube-api/include/cube_api.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/memory.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class PaddleGeneralModelConfig { + public: + PaddleGeneralModelConfig() {} + + ~PaddleGeneralModelConfig() {} + + public: + + std::vector _feed_type; // 0 int64, 1 float + std::vector _is_lod_feed; // true lod tensor + std::vector _capacity; // capacity for each tensor + /* + feed_shape_ for feeded variable + feed_shape_[i][j] represents the jth dim for ith input Tensor + if is_lod_feed_[i] == False, feed_shape_[i][0] = -1 + */ + std::vector> _feed_shape; +}; + +class BaseRdDict; +struct DynamicResource { + DynamicResource(); + + ~DynamicResource(); + + int initialize(); + + int clear(); +}; + +class Resource { + public: + Resource() { + // Reference InferManager::instance() explicitly, to make sure static + // instance of InferManager is constructed before that of Resource, and + // destruct after that of Resource + // See https://stackoverflow.com/a/335746/1513460 + InferManager::instance(); + } + + ~Resource() { finalize(); } + + static Resource& instance() { + static Resource ins; + return ins; + } + + int initialize(const std::string& path, const std::string& file); + int cube_initialize(const std::string& path, const std::string& file); + + int general_model_initialize( + const std::string& path, const std::string & file); + + int thread_initialize(); + + int thread_clear(); + + int reload(); + + int finalize(); + + std::shared_ptr get_general_model_config(); + + void print_general_model_config( + const std::shared_ptr & config); + + std::shared_ptr getDB(); + + DynamicResource* get_dynamic_resource() { + return reinterpret_cast( + THREAD_GETSPECIFIC(_tls_bspec_key)); + } + + private: + int thread_finalize() { return 0; } + std::shared_ptr db; + std::shared_ptr _config; + + THREAD_KEY_T _tls_bspec_key; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/server.cpp b/core/predictor/framework/server.cpp new file mode 100644 index 0000000000000000000000000000000000000000..25b4079509b5346277609648a44f8d361187708d --- /dev/null +++ b/core/predictor/framework/server.cpp @@ -0,0 +1,168 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/server.h" +#ifdef BCLOUD +#include // NovaServiceAdaptor +#include // NsheadMcpackAdaptor +#include // PublicPbrpcServiceAdaptor +#else +#include // NovaServiceAdaptor +#include // NsheadMcpackAdaptor +#include // PublicPbrpcServiceAdaptor +#endif +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/resource.h" +#include "core/predictor/framework/service_manager.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +#endif + +volatile bool ServerManager::_s_reload_starting = true; + +bool ServerManager::_compare_string_piece_without_case( + const butil::StringPiece& s1, const char* s2) { + if (strlen(s2) != s1.size()) { + return false; + } + return strncasecmp(s1.data(), s2, s1.size()) == 0; +} + +ServerManager::ServerManager() { + _format_services.clear(); + _options.idle_timeout_sec = FLAGS_idle_timeout_s; + _options.max_concurrency = FLAGS_max_concurrency; + _options.num_threads = FLAGS_num_threads; +} + +int ServerManager::add_service_by_format(const std::string& format) { + Service* service = FormatServiceManager::instance().get_service(format); + if (service == NULL) { + LOG(ERROR) << "Not found service by format:" << format << "!"; + return -1; + } + + if (_format_services.find(format) != _format_services.end()) { + LOG(ERROR) << "Cannot insert duplicated service by format:" << format + << "!"; + return -1; + } + + std::pair::iterator, bool> it = + _format_services.insert(std::make_pair(format, service)); + if (!it.second) { + LOG(ERROR) << "Failed insert service by format:" << format << "!"; + return -1; + } + + return 0; +} + +int ServerManager::start_and_wait() { + if (_start_reloader() != 0) { + LOG(ERROR) << "Failed start reloader"; + return -1; + } + + boost::unordered_map::iterator it; + for (it = _format_services.begin(); it != _format_services.end(); it++) { + if (_server.AddService(it->second, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { + LOG(ERROR) << "Failed to add service of format:" << it->first << "!"; + return -1; + } + } + + if (_server.Start(FLAGS_port, &_options) != 0) { + LOG(ERROR) << "Failed to start Paddle Inference Server"; + return -1; + } + _server.RunUntilAskedToQuit(); + + ServerManager::stop_reloader(); + if (_wait_reloader() != 0) { + LOG(ERROR) << "Failed start reloader"; + return -1; + } + return 0; +} + +void ServerManager::_set_server_option_by_protocol( + const ::butil::StringPiece& protocol_type) { + std::string enabled_protocols = FLAGS_enable_protocol_list; + if (_compare_string_piece_without_case(protocol_type, "nova_pbrpc")) { + _options.nshead_service = new ::brpc::policy::NovaServiceAdaptor; + } else if (_compare_string_piece_without_case(protocol_type, + "public_pbrpc")) { + _options.nshead_service = new ::brpc::policy::PublicPbrpcServiceAdaptor; + } else if (_compare_string_piece_without_case(protocol_type, + "nshead_mcpack")) { + _options.nshead_service = new ::brpc::policy::NsheadMcpackAdaptor; + } else { + LOG(ERROR) << "fail to set nshead protocol, protocol_type[" << protocol_type + << "]."; + return; + } + _options.enabled_protocols = enabled_protocols; + LOG(INFO) << "success to set nshead protocol, protocol_type[" << protocol_type + << "]."; +} + +int ServerManager::_start_reloader() { + int ret = + THREAD_CREATE(&_reload_thread, NULL, ServerManager::_reload_worker, NULL); + + if (ret != 0) { + LOG(ERROR) << "Failed start reload thread, ret:" << ret; + return -1; + } + + return 0; +} + +int ServerManager::_wait_reloader() { + THREAD_JOIN(_reload_thread, NULL); + return 0; +} + +void* ServerManager::_reload_worker(void* args) { + LOG(INFO) << "Entrence reload worker, " + << "interval_s: " << FLAGS_reload_interval_s; + while (ServerManager::reload_starting()) { + LOG(INFO) << "Begin reload framework..."; + if (Resource::instance().reload() != 0) { + LOG(ERROR) << "Failed reload resource!"; + } + + if (WorkflowManager::instance().reload() != 0) { + LOG(ERROR) << "Failed reload workflows"; + } + + usleep(FLAGS_reload_interval_s * 1000000); + } + + LOG(INFO) << "Exit reload worker!"; + return NULL; +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/server.h b/core/predictor/framework/server.h new file mode 100644 index 0000000000000000000000000000000000000000..1c1434bfbf27befbc981e0fa2d3f53cff1a99ba5 --- /dev/null +++ b/core/predictor/framework/server.h @@ -0,0 +1,67 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +#endif + +class ServerManager { + public: + typedef google::protobuf::Service Service; + ServerManager(); + + static ServerManager& instance() { + static ServerManager server; + return server; + } + + static bool reload_starting() { return _s_reload_starting; } + + static void stop_reloader() { _s_reload_starting = false; } + + int add_service_by_format(const std::string& format); + + int start_and_wait(); + + private: + int _start_reloader(); + + int _wait_reloader(); + + static void* _reload_worker(void* args); + + bool _compare_string_piece_without_case(const butil::StringPiece& s1, + const char* s2); + + void _set_server_option_by_protocol( + const ::butil::StringPiece& protocol_type); + + brpc::ServerOptions _options; + brpc::Server _server; + boost::unordered_map _format_services; + THREAD_T _reload_thread; + static volatile bool _s_reload_starting; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/service.cpp b/core/predictor/framework/service.cpp new file mode 100644 index 0000000000000000000000000000000000000000..0a2af4e42413d3ebfa4d84faf3bac668efe12676 --- /dev/null +++ b/core/predictor/framework/service.cpp @@ -0,0 +1,279 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/service.h" +#ifdef BCLOUD +#include // butil::Timer +#else +#include // butil::Timer +#endif + +#include +#include +#include +#include "core/predictor/common/constant.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/dag_view.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/predictor_metric.h" // PredictorMetric +#include "core/predictor/framework/resource.h" +#include "core/predictor/framework/server.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +int InferService::init(const configure::InferService& conf) { + _infer_service_format = conf.name(); + + std::string merger = conf.merger(); + if (merger == "") { + merger = "default"; + } + if (!MergerManager::instance().get(merger, _merger)) { + LOG(ERROR) << "Failed get merger: " << merger; + return ERR_INTERNAL_FAILURE; + } else { + LOG(WARNING) << "Succ get merger: " << merger + << " for service: " << _infer_service_format; + } + + ServerManager& svr_mgr = ServerManager::instance(); + if (svr_mgr.add_service_by_format(_infer_service_format) != 0) { + LOG(ERROR) << "Not found service by format name:" << _infer_service_format + << "!"; + return ERR_INTERNAL_FAILURE; + } + + _enable_map_request_to_workflow = conf.enable_map_request_to_workflow(); + LOG(INFO) << "service[" << _infer_service_format + << "], enable_map_request_to_workflow[" + << _enable_map_request_to_workflow << "]."; + + if (_enable_map_request_to_workflow) { + if (_request_to_workflow_map.init( + MAX_WORKFLOW_NUM_IN_ONE_SERVICE /*load_factor=80*/) != 0) { + LOG(ERROR) << "init request to workflow map failed, bucket_count[" + << MAX_WORKFLOW_NUM_IN_ONE_SERVICE << "]."; + return ERR_INTERNAL_FAILURE; + } + int err = 0; + _request_field_key = conf.request_field_key().c_str(); + if (_request_field_key == "") { + LOG(ERROR) << "read request_field_key failed, request_field_key[" + << _request_field_key << "]."; + return ERR_INTERNAL_FAILURE; + } + + LOG(INFO) << "service[" << _infer_service_format << "], request_field_key[" + << _request_field_key << "]."; + uint32_t value_mapped_workflows_size = conf.value_mapped_workflows_size(); + for (uint32_t fi = 0; fi < value_mapped_workflows_size; fi++) { + std::vector tokens; + std::vector workflows; + std::string list = conf.value_mapped_workflows(fi).workflow(); + boost::split(tokens, list, boost::is_any_of(",")); + uint32_t tsize = tokens.size(); + for (uint32_t ti = 0; ti < tsize; ++ti) { + boost::trim_if(tokens[ti], boost::is_any_of(" ")); + Workflow* workflow = WorkflowManager::instance().item(tokens[ti]); + if (workflow == NULL) { + LOG(ERROR) << "Failed get workflow by name:" << tokens[ti] + << ", ti: " << ti; + return ERR_INTERNAL_FAILURE; + } + workflow->regist_metric(full_name()); + workflows.push_back(workflow); + } + + const std::string& request_field_value = + conf.value_mapped_workflows(fi).request_field_value(); + if (_request_to_workflow_map.insert(request_field_value, workflows) == + NULL) { + LOG(ERROR) << "insert [" << request_field_value << "," << list + << "] to _request_to_workflow_map failed."; + return ERR_INTERNAL_FAILURE; + } + LOG(INFO) << "workflow[" << list << "], request_field_value[" + << request_field_value << "]."; + } + } else { + uint32_t flow_size = conf.workflows_size(); + for (uint32_t fi = 0; fi < flow_size; fi++) { + const std::string& workflow_name = conf.workflows(fi); + Workflow* workflow = WorkflowManager::instance().item(workflow_name); + if (workflow == NULL) { + LOG(ERROR) << "Failed get workflow by name:" << workflow_name; + return ERR_INTERNAL_FAILURE; + } + workflow->regist_metric(full_name()); + _flows.push_back(workflow); + } + } + + LOG(INFO) << "Succ load infer_service: " << _infer_service_format << "!"; + + return ERR_OK; +} + +int InferService::reload() { return ERR_OK; } + +const std::string& InferService::name() const { return _infer_service_format; } + +// ´®ÐÐÖ´ÐÐÿ¸öworkflow +int InferService::inference(const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os) { + TRACEPRINTF("start to inference"); + // when funtion call begins, framework will reset + // thread local variables&resources automatically. + if (Resource::instance().thread_clear() != 0) { + LOG(ERROR) << "Failed thread clear whole resource"; + return ERR_INTERNAL_FAILURE; + } + + TRACEPRINTF("finish to thread clear"); + + if (_enable_map_request_to_workflow) { + std::vector* workflows = _map_request_to_workflow(request); + if (!workflows || workflows->size() == 0) { + LOG(ERROR) << "Failed to map request to workflow"; + return ERR_INTERNAL_FAILURE; + } + size_t fsize = workflows->size(); + for (size_t fi = 0; fi < fsize; ++fi) { + Workflow* workflow = (*workflows)[fi]; + if (workflow == NULL) { + LOG(ERROR) << "Failed to get valid workflow at: " << fi; + return ERR_INTERNAL_FAILURE; + } + TRACEPRINTF("start to execute workflow[%s]", workflow->name().c_str()); + int errcode = _execute_workflow(workflow, request, response, debug_os); + TRACEPRINTF("finish to execute workflow[%s]", workflow->name().c_str()); + if (errcode < 0) { + LOG(ERROR) << "Failed execute workflow[" << workflow->name() + << "] in:" << name(); + return errcode; + } + } + } else { + TRACEPRINTF("start to execute one workflow"); + size_t fsize = _flows.size(); + for (size_t fi = 0; fi < fsize; ++fi) { + TRACEPRINTF("start to execute one workflow-%lu", fi); + int errcode = execute_one_workflow(fi, request, response, debug_os); + TRACEPRINTF("finish to execute one workflow-%lu", fi); + if (errcode < 0) { + LOG(ERROR) << "Failed execute 0-th workflow in:" << name(); + return errcode; + } + } + } + return ERR_OK; +} + +int InferService::debug(const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os) { + return inference(request, response, debug_os); +} + +int InferService::execute_one_workflow(uint32_t index, + const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os) { + if (index >= _flows.size()) { + LOG(ERROR) << "Faield execute workflow, index: " << index + << " >= max:" << _flows.size(); + return ERR_OVERFLOW_FAILURE; + } + Workflow* workflow = _flows[index]; + return _execute_workflow(workflow, request, response, debug_os); +} + +int InferService::_execute_workflow(Workflow* workflow, + const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os) { + butil::Timer workflow_time(butil::Timer::STARTED); + // create and submit beginer channel + BuiltinChannel req_channel; + req_channel.init(0, START_OP_NAME); + req_channel = request; + + DagView* dv = workflow->fetch_dag_view(full_name()); + dv->set_request_channel(req_channel); + + // call actual inference interface + int errcode = dv->execute(debug_os); + if (errcode < 0) { + LOG(ERROR) << "Failed execute dag for workflow:" << workflow->name(); + return errcode; + } + + TRACEPRINTF("finish to dv execute"); + // create ender channel and copy + const Channel* res_channel = dv->get_response_channel(); + if (!_merger || !_merger->merge(res_channel->message(), response)) { + LOG(ERROR) << "Failed merge channel res to response"; + return ERR_INTERNAL_FAILURE; + } + TRACEPRINTF("finish to copy from"); + + workflow_time.stop(); + PredictorMetric::GetInstance()->update_latency_metric( + WORKFLOW_METRIC_PREFIX + dv->full_name(), workflow_time.u_elapsed()); + + // return tls data to object pool + workflow->return_dag_view(dv); + TRACEPRINTF("finish to return dag view"); + return ERR_OK; +} + +std::vector* InferService::_map_request_to_workflow( + const google::protobuf::Message* request) { + const google::protobuf::Descriptor* desc = request->GetDescriptor(); + const google::protobuf::FieldDescriptor* field = + desc->FindFieldByName(_request_field_key); + if (field == NULL) { + LOG(ERROR) << "No field[" << _request_field_key << "] in [" + << desc->full_name() << "]."; + return NULL; + } + if (field->is_repeated()) { + LOG(ERROR) << "field[" << desc->full_name() << "." << _request_field_key + << "] is repeated."; + return NULL; + } + if (field->cpp_type() != google::protobuf::FieldDescriptor::CPPTYPE_STRING) { + LOG(ERROR) << "field[" << desc->full_name() << "." << _request_field_key + << "] should be string"; + return NULL; + } + const std::string& field_value = + request->GetReflection()->GetString(*request, field); + std::vector* p_workflow = + _request_to_workflow_map.seek(field_value); + if (p_workflow == NULL) { + LOG(ERROR) << "cannot find key[" << field_value + << "] in _request_to_workflow_map"; + return NULL; + } + return p_workflow; +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/service.h b/core/predictor/framework/service.h new file mode 100644 index 0000000000000000000000000000000000000000..ef6d3a3a468d1fc47c3012ad5d664bb64595a52c --- /dev/null +++ b/core/predictor/framework/service.h @@ -0,0 +1,98 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/merger.h" +#include "core/predictor/framework/workflow.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class InferService { + public: + typedef OpChannel BuiltinChannel; + + static const char* tag() { return "service"; } + + InferService() + : _last_change_timestamp(0), + _enable_map_request_to_workflow(false), + _request_field_key(""), + _merger(NULL) { + _flows.clear(); + _request_to_workflow_map.clear(); + } + + int init(const configure::InferService& conf); + + int deinit() { return 0; } + + int reload(); + + const std::string& name() const; + + const std::string& full_name() const { return _infer_service_format; } + + // Execute each workflow serially + virtual int inference(const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os = NULL); + + int debug(const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os); + + int execute_one_workflow(uint32_t index, + const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os); + + private: + int _execute_workflow(Workflow* workflow, + const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os); + + std::vector* _map_request_to_workflow( + const google::protobuf::Message* request); + + private: + std::vector _flows; + std::string _infer_service_format; + uint64_t _last_change_timestamp; + bool _enable_map_request_to_workflow; + std::string _request_field_key; + ::butil::FlatMap> + _request_to_workflow_map; + IMerger* _merger; +}; + +class ParallelInferService : public InferService { + public: + // Execute workflows in parallel + int inference(const google::protobuf::Message* request, + google::protobuf::Message* response, + butil::IOBufBuilder* debug_os) { + return 0; + } +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/service_manager.h b/core/predictor/framework/service_manager.h new file mode 100644 index 0000000000000000000000000000000000000000..fa5e872625739ce233d7dd5efe11e1a0fa61d49d --- /dev/null +++ b/core/predictor/framework/service_manager.h @@ -0,0 +1,86 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/common/inner_common.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +#define REGIST_FORMAT_SERVICE(svr_name, svr) \ + do { \ + int ret = \ + ::baidu::paddle_serving::predictor::FormatServiceManager::instance() \ + .regist_service(svr_name, svr); \ + if (ret != 0) { \ + RAW_LOG_ERROR("Failed regist service[%s][%s]", \ + svr_name.c_str(), \ + typeid(svr).name()); \ + } else { \ + RAW_LOG_INFO("Success regist service[%s][%s]", \ + svr_name.c_str(), \ + typeid(svr).name()); \ + } \ + } while (0) + +class FormatServiceManager { + public: + typedef google::protobuf::Service Service; + + int regist_service(const std::string& svr_name, Service* svr) { + if (_service_map.find(svr_name) != _service_map.end()) { + RAW_LOG_ERROR("Service[%s][%s] already exist!", + svr_name.c_str(), + typeid(svr).name()); + return -1; + } + + std::pair::iterator, bool> ret; + ret = _service_map.insert(std::make_pair(svr_name, svr)); + if (ret.second == false) { + RAW_LOG_ERROR("Service[%s][%s] insert failed!", + svr_name.c_str(), + typeid(svr).name()); + return -1; + } + + RAW_LOG_INFO("Service[%s] insert successfully!", svr_name.c_str()); + return 0; + } + + Service* get_service(const std::string& svr_name) { + boost::unordered_map::iterator res; + if ((res = _service_map.find(svr_name)) == _service_map.end()) { + RAW_LOG_WARNING("Service[%s] not found in service manager!", + svr_name.c_str()); + return NULL; + } + return (*res).second; + } + + static FormatServiceManager& instance() { + static FormatServiceManager service_; + return service_; + } + + private: + boost::unordered_map _service_map; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/workflow.cpp b/core/predictor/framework/workflow.cpp new file mode 100644 index 0000000000000000000000000000000000000000..16c4a6e9f475bf575f84bd24764d6348ac65120c --- /dev/null +++ b/core/predictor/framework/workflow.cpp @@ -0,0 +1,79 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/framework/workflow.h" +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/predictor_metric.h" // PredictorMetric + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +int Workflow::init(const configure::Workflow& conf) { + const std::string& name = conf.name(); + _type = conf.workflow_type(); + _name = name; + if (_dag.init(conf, name) != 0) { + LOG(ERROR) << "Failed initialize dag: " << _name; + return -1; + } + return 0; +} + +DagView* Workflow::fetch_dag_view(const std::string& service_name) { + DagView* view = NULL; + if (_type == "Sequence") { + view = butil::get_object(); + } else if (_type == "Parallel") { + view = butil::get_object(); + } else { + LOG(ERROR) << "Unknown dag type:" << _type << "!"; + return NULL; + } + if (view == NULL) { + LOG(ERROR) << "create dag view from pool failed!"; + return NULL; + } + view->init(&_dag, service_name); + return view; +} + +void Workflow::return_dag_view(DagView* view) { + view->deinit(); + if (_type == "Sequence") { + butil::return_object(view); + } else if (_type == "Parallel") { + butil::return_object(dynamic_cast(view)); + } else { + LOG(ERROR) << "Unknown dag type:" << _type << "!"; + return; + } +} + +int Workflow::reload() { + // reload op's config here... + + return 0; +} + +void Workflow::regist_metric(const std::string& service_name) { + PredictorMetric::GetInstance()->regist_latency_metric( + WORKFLOW_METRIC_PREFIX + service_name + NAME_DELIMITER + full_name()); + _dag.regist_metric(service_name); +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/framework/workflow.h b/core/predictor/framework/workflow.h new file mode 100644 index 0000000000000000000000000000000000000000..a4b3ed1dadccaa24cbeb6813ec7bcc18bac2aad8 --- /dev/null +++ b/core/predictor/framework/workflow.h @@ -0,0 +1,61 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/dag.h" +#include "core/predictor/framework/dag_view.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +template +class Manager; + +class Workflow { + public: + Workflow() {} + + static const char* tag() { return "workflow"; } + + // Each workflow object corresponds to an independent + // configure file, so you can share the object between + // different apps. + int init(const configure::Workflow& conf); + + DagView* fetch_dag_view(const std::string& service_name); + + int deinit() { return 0; } + + void return_dag_view(DagView* view); + + int reload(); + + const std::string& name() { return _name; } + + const std::string& full_name() { return _name; } + + void regist_metric(const std::string& service_name); + + private: + Dag _dag; + std::string _type; + std::string _name; +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/mempool/CMakeLists.txt b/core/predictor/mempool/CMakeLists.txt similarity index 100% rename from predictor/mempool/CMakeLists.txt rename to core/predictor/mempool/CMakeLists.txt diff --git a/core/predictor/mempool/mempool.cpp b/core/predictor/mempool/mempool.cpp new file mode 100644 index 0000000000000000000000000000000000000000..618c121c088f6924a1e3e0c8e514e9fbb01a7bf1 --- /dev/null +++ b/core/predictor/mempool/mempool.cpp @@ -0,0 +1,90 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/mempool/mempool.h" + +namespace im { + +__thread Mempool* g_mempool = NULL; + +namespace fugue { + +namespace memory { + +void Region::init() { + _big_mem_capacity = 32 * 1024 * 1024; + _big_mem_start = new char[_big_mem_capacity]; +} + +void Region::reset() { + // release memory allocate from GlobalMempool + _free_blocks.unsafe_foreach(); + _free_blocks.reset(); + + // release memory from malloc + BigNode* head = _big_nodes.release(); + while (head) { + BigNode* next = head->next; + ::free(head); + head = next; + } + _mlc_mem_size.store(0, butil::memory_order_relaxed); + _mlc_mem_count.store(0, butil::memory_order_relaxed); + + // clear the large buffer + _big_mem_size.store(0, butil::memory_order_relaxed); + _big_mem_count.store(0, butil::memory_order_relaxed); +} + +BlockReference* Region::get() { + BlockReference* ref = _free_blocks.get(); + if (ref->block == NULL) { + ref->offset = 0; + ref->block = GlobalBlockFreeList::instance()->get(); + } + return ref; +} + +void Region::put(BlockReference* block) { _free_blocks.put(block); } + +void* Region::malloc(size_t size) { + if (size < MLC_MEM_THRESHOLD) { + uint32_t offset = + _big_mem_size.fetch_add(size, butil::memory_order_relaxed); + if (offset + size < _big_mem_capacity) { + _big_mem_count.fetch_add(1, butil::memory_order_relaxed); + return _big_mem_start + offset; + } + } + + _mlc_mem_size.fetch_add(size, butil::memory_order_relaxed); + _mlc_mem_count.fetch_add(1, butil::memory_order_relaxed); + BigNode* node = reinterpret_cast(::malloc(sizeof(BigNode) + size)); + _big_nodes.push(node); + return node->data; +} + +Region::Region() { + _big_mem_size.store(0, butil::memory_order_relaxed); + _big_mem_count.store(0, butil::memory_order_relaxed); + + _big_mem_start = NULL; + _big_mem_capacity = 0; + + _mlc_mem_size.store(0, butil::memory_order_relaxed); + _mlc_mem_count.store(0, butil::memory_order_relaxed); +} +} // namespace memory +} // namespace fugue +} // namespace im diff --git a/predictor/mempool/mempool.h b/core/predictor/mempool/mempool.h similarity index 100% rename from predictor/mempool/mempool.h rename to core/predictor/mempool/mempool.h diff --git a/predictor/op/CMakeLists.txt b/core/predictor/op/CMakeLists.txt similarity index 100% rename from predictor/op/CMakeLists.txt rename to core/predictor/op/CMakeLists.txt diff --git a/core/predictor/op/op.cpp b/core/predictor/op/op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ed3e80fb4439ccdb844aaa72cb8c0f7839d0cff0 --- /dev/null +++ b/core/predictor/op/op.cpp @@ -0,0 +1,307 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/op/op.h" + +#ifdef BCLOUD +#include // base::Timer +#else +#include +#endif + +#include +#include "core/predictor/common/constant.h" +#include "core/predictor/common/utils.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/dag.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +int Op::init(Bus* bus, + Dag* dag, + uint32_t id, + const std::string& name, + const std::string& type, + void* conf) { + _bus = bus; + _dag = dag; + _id = id; + _name = name; + _type = type; + set_config(conf); + + _timer = butil::get_object(); + if (!_timer) { + LOG(ERROR) << "Invalid timerflow in op:" << this->name(); + return -1; + } + + _timer->init(); + _has_calc = false; + _has_init = true; + + Channel* channel = mutable_channel(); + if (channel == NULL) { + LOG(ERROR) << "Failed mutable channel in op: " << this->id() << ", " + << this->name() << "!"; + return -1; + } + + return custom_init(); +} + +int Op::deinit() { + if (_timer) { + butil::return_object(_timer); + } + + _bus = NULL; + _dag = NULL; + _timer = NULL; + + if (release_channel() != 0) { + LOG(ERROR) << "Failed release channel in op:" << this->id() << ", " + << this->name() << "!"; + return -1; + } + + return custom_deinit(); +} + +int Op::check_time(const char* tag) { + if (!_timer) { + LOG(ERROR) << "Invalid timer in op"; + return -1; + } + + if (!_timer->check(tag)) { + LOG(ERROR) << "Failed check timer:" << tag; + return -1; + } + + return 0; +} + +int Op::process(bool debug) { + butil::Timer op_time(butil::Timer::STARTED); + if (debug && _timer) { + _timer->start(); + } + if (!_has_init) { + LOG(ERROR) << "Make sure op has been init before inference"; + return ERR_INTERNAL_FAILURE; + } + + if (_has_calc) { + LOG(INFO) << "Op: " << _name << " already processed before"; + return ERR_OK; + } + + // 1. dependency inference + /* + DagNode* node = _dag->node_by_name(this->name()); + if (node == NULL) { + LOG(ERROR) << "Failed get node of op:" << this->name(); + return -1; + } + boost::unordered_map& depends = + node->depends; + boost::unordered_map::iterator it; + for (it = depends.begin(); it != depends.end(); it++) { + Op* depend_op = view->find(it->first); + if (depend_op->process() != 0) { + LOG(WARNING) << "Op: " << _name << " processed failed!"; + return -1; + } + }*/ + if (debug && _timer) { + _timer->check("depend"); + } + + // 2. current inference + if (inference() != 0) { + return ERR_OP_INFER_FAILURE; + } + if (debug && _timer) { + _timer->check("infer"); + } + + // 3. share output to bus + Channel* channel = mutable_channel(); + channel->share_to_bus(_bus); + + // 4. mark has calculated + _has_calc = true; + + if (debug && _timer) { + _timer->check("share"); + _timer->end(); + } + + op_time.stop(); + PredictorMetric::GetInstance()->update_latency_metric( + OP_METRIC_PREFIX + full_name(), op_time.u_elapsed()); + LOG(INFO) << " " << name() << "_time=[" << op_time.u_elapsed() << "]"; + return ERR_OK; +} + +std::string Op::time_info() { + if (_timer) { + return _timer->info(); + } else { + return "Invalid Timer!"; + } +} + +bool Op::is_mutable(const std::string& op) { + if (op == START_OP_NAME) { + return false; + } + DagNode* node = const_cast(_dag->node_by_name(_name)); + if (node->depends.find(op) == node->depends.end()) { + LOG(WARNING) << "op: " << _name << " doesnot depend on" + << "op: " << op << "!"; + return false; + } + + if (node->depends[op] != RW) { + LOG(WARNING) << "op: " << _name << " has no RW access" + << "ot op: " << op << ", mode: " << node->depends[op] + << ", please use get_argment() instead."; + return false; + } + + return true; +} + +bool Op::is_mutable(const std::string& op) const { + if (op == START_OP_NAME) { + return false; + } + DagNode* node = const_cast(_dag->node_by_name(_name)); + if (node->depends.find(op) == node->depends.end()) { + LOG(WARNING) << "op: " << _name << " doesnot depend on" + << "op: " << op << "!"; + return false; + } + + if (node->depends[op] != RW) { + LOG(WARNING) << "op: " << _name << " has no RW access" + << "ot op: " << op << ", mode: " << node->depends[op] + << ", please use get_argment() instead."; + return false; + } + + return true; +} + +bool Op::is_readable(const std::string& op) { + if (op == START_OP_NAME) { + return true; + } + DagNode* node = const_cast(_dag->node_by_name(_name)); + if (node->depends.find(op) == node->depends.end()) { + LOG(WARNING) << "op: " << _name << " doesnot depend on" + << "op: " << op << "!"; + return false; + } + + if (node->depends[op] != RW && node->depends[op] != RO) { + LOG(WARNING) << "op: " << _name << " has no RO access" + << "ot op: " << op << ", mode: " << node->depends[op] + << ", please check your configuration."; + return false; + } + + return true; +} + +bool Op::is_readable(const std::string& op) const { + if (op == START_OP_NAME) { + return true; + } + DagNode* node = const_cast(_dag->node_by_name(_name)); + if (node->depends.find(op) == node->depends.end()) { + LOG(WARNING) << "op: " << _name << " doesnot depend on " + << "op: " << op << "!"; + return false; + } + + if (node->depends[op] != RW && node->depends[op] != RO) { + LOG(WARNING) << "op: " << _name << " has no RO access" + << "ot op: " << op << ", mode: " << node->depends[op] + << ", please check your configuration."; + return false; + } + + return true; +} + +// Get the Channel object of dependent OP +Channel* Op::mutable_depend_channel(const std::string& op) { + if (!is_mutable(op)) { + LOG(WARNING) << "Op: " << _name << " cannot mutable op: " << op << "!"; + return NULL; + } + + // Get the Channel object of dependent OP from bus + return _bus->channel_by_name(op); +} + +// Get the Channel object of dependent OP +const Channel* Op::get_depend_channel(const std::string& op) const { + // Get the `mode` attribute of dependent OP from dag + if (!is_readable(op)) { + LOG(WARNING) << "op: " << _name << " doesnot depend on op: " << op << "!"; + return NULL; + } + + // Get the Channel object of dependent OP from bus + return _bus->channel_by_name(op); +} + +google::protobuf::Message* Op::mutable_message() { + return mutable_channel()->message(); +} + +const google::protobuf::Message* Op::get_message() const { + return get_channel()->message(); +} + +bool Op::has_calc() { return _has_calc; } + +const char* Op::name() const { return _name.c_str(); } + +const std::string& Op::type() const { return _type; } + +uint32_t Op::id() const { return _id; } + +const std::string Op::debug_string() { + const Channel* channel = get_channel(); + if (!channel) { + LOG(ERROR) << "Invalid channel!"; + return "Invalid channel in OP"; + } + return channel->debug_string(); +} + +const google::protobuf::Message* Op::get_request_message() { + return _bus->channel_by_name(START_OP_NAME)->message(); +} + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/op/op.h b/core/predictor/op/op.h new file mode 100644 index 0000000000000000000000000000000000000000..279744aebd509635aa76e0e26b4f0695c370d22d --- /dev/null +++ b/core/predictor/op/op.h @@ -0,0 +1,260 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include // bvar::LatencyRecorder +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/framework/predictor_metric.h" // PredictorMetric + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class Dag; + +class Op { + public: + Op() + : _bus(NULL), + _dag(NULL), + _has_calc(false), + _has_init(false), + _timer(NULL) {} + + virtual ~Op() {} + + // ------Getters for Channel/Data/Message of dependent OP----- + + // Get the Channel object of dependent OP + Channel* mutable_depend_channel(const std::string& op); + + // Get the Channel object of dependent OP + const Channel* get_depend_channel(const std::string& op) const; + + template + T* mutable_depend_argument(const std::string& op) { + Channel* channel = mutable_depend_channel(op); + if (channel == NULL) { + LOG(WARNING) << "cannot mutable channel of " << op << " in " << _name; + return NULL; + } + + OpChannel* op_channel = dynamic_cast*>(channel); + if (!op_channel) { + LOG(ERROR) << "Cannot dynamic cast channel of op:" << this->name() + << " to type: " << typeid(T).name(); + return NULL; + } + + return op_channel->data(); + } + + template + const T* get_depend_argument(const std::string& op) const { + const Channel* channel = get_depend_channel(op); + if (channel == NULL) { + LOG(WARNING) << "cannot get read-only channel of " << op << " in " + << _name; + return NULL; + } + + const OpChannel* op_channel = dynamic_cast*>(channel); + if (!op_channel) { + LOG(ERROR) << "Cannot dynamic cast channel of op:" << this->name() + << " to type: " << typeid(T).name(); + return NULL; + } + + return op_channel->data(); + } + + // -----Getters for Channel/Data/Message of current OP---- + + // Get pointer to the progobuf message of current OP + google::protobuf::Message* mutable_message(); + + // Get pointer to the protobuf message of current OP + const google::protobuf::Message* get_message() const; + + // Get the template class data object of current OP + template + T* mutable_data() { + Channel* channel = mutable_channel(); + return (dynamic_cast*>(channel))->data(); + } + + // Get the template class data object of current OP + template + const T* get_data() const { + const Channel* channel = get_channel(); + return (dynamic_cast*>(channel))->data(); + } + + // ---------------- Other base class members ---------------- + + int init(Bus* bus, + Dag* dag, + uint32_t id, + const std::string& name, + const std::string& type, + void* conf); + + int deinit(); + + int check_time(const char* tag); + + int process(bool debug); + + std::string time_info(); + + // Get the input object + const google::protobuf::Message* get_request_message(); + + bool has_calc(); + + const char* name() const; + + const std::string& full_name() const { return _full_name; } + + void set_full_name(const std::string full_name) { _full_name = full_name; } + + const std::string& type() const; + + uint32_t id() const; + + // --------------- Default implements ---------------- + + virtual int custom_init() { return 0; } + + virtual int custom_deinit() { return 0; } + + virtual const std::string debug_string(); + + // ------------------ OP Interface ------------------- + + // Get the derived Channel object of current OP + virtual Channel* mutable_channel() = 0; + + // Get the derived Channel object of current OP + virtual const Channel* get_channel() const = 0; + + // Release the derived Channel object of current OP + virtual int release_channel() = 0; + + // Inference interface + virtual int inference() = 0; + + // ------------------ Conf Interface ------------------- + virtual void* create_config(const configure::DAGNode& conf) { return NULL; } + + virtual void delete_config(void* conf) {} + + virtual void set_config(void* conf) { return; } + + // ------------------ Metric Interface ------------------- + virtual void regist_metric() { return; } + + private: + bool is_mutable(const std::string& op); + + bool is_mutable(const std::string& op) const; + + bool is_readable(const std::string& op); + + bool is_readable(const std::string& op) const; + + private: + Bus* _bus; + Dag* _dag; + uint32_t _id; + std::string _name; + std::string _full_name; // service_workflow_stageindex_opname + std::string _type; + bool _has_calc; + bool _has_init; + TimerFlow* _timer; +}; + +template +class OpWithChannel : public Op { + public: + typedef T DataType; + typedef OpChannel ChannelType; + + OpWithChannel() : _channel(NULL) {} + + virtual ~OpWithChannel() {} + + // ---------- Implements ---------- + + Channel* mutable_channel() { + if (_channel != NULL) { + return _channel; + } + + _channel = butil::get_object(); + if (!_channel) { + LOG(ERROR) << "Failed mutable channel of type:" << typeid(T).name(); + return NULL; + } + _channel->init(this->id(), this->name()); + return _channel; + } + + const Channel* get_channel() const { return _channel; } + + int release_channel() { + if (_channel) { + _channel->deinit(); + butil::return_object(_channel); + } + + _channel = NULL; + return 0; + } + + // ------------- Interface ------------- + + // Inference interface + virtual int inference() = 0; + + private: + ChannelType* _channel; +}; + +template +class OpWithChannelAndConf : public OpWithChannel { + public: + void set_config(void* conf) { _conf = static_cast(conf); } + + C* get_self_config() { return _conf; } + + virtual void delete_config(void* conf) { delete static_cast(conf); } + + private: + C* _conf; +}; + +#define DECLARE_OP(OP_TYPE) \ + OP_TYPE() { REGISTER_OP(OP_TYPE); } \ + static OP_TYPE _s_##OP_TYPE + +#define DEFINE_OP(OP_TYPE) OP_TYPE OP_TYPE::_s_##OP_TYPE + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/op/op_struct_demo.h b/core/predictor/op/op_struct_demo.h new file mode 100644 index 0000000000000000000000000000000000000000..1ae2f979de4c95fad8fc4ae5aaa4f12e139d16c6 --- /dev/null +++ b/core/predictor/op/op_struct_demo.h @@ -0,0 +1,46 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +struct DemoData { + boost::unordered_map name_id; + int data; +}; + +class StructOp : public OpWithChannel { + public: + DECLARE_OP(StructOp); + + int inference() { + DemoData* data = mutable_data(); + data.data = 1; + + return 0; + } +}; + +DEFINE_OP(StructOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/proto/CMakeLists.txt b/core/predictor/proto/CMakeLists.txt similarity index 100% rename from predictor/proto/CMakeLists.txt rename to core/predictor/proto/CMakeLists.txt diff --git a/predictor/proto/builtin_format.proto b/core/predictor/proto/builtin_format.proto similarity index 100% rename from predictor/proto/builtin_format.proto rename to core/predictor/proto/builtin_format.proto diff --git a/predictor/proto/msg_data.proto b/core/predictor/proto/msg_data.proto similarity index 100% rename from predictor/proto/msg_data.proto rename to core/predictor/proto/msg_data.proto diff --git a/predictor/proto/pds_option.proto b/core/predictor/proto/pds_option.proto similarity index 100% rename from predictor/proto/pds_option.proto rename to core/predictor/proto/pds_option.proto diff --git a/predictor/proto/xrecord_format.proto b/core/predictor/proto/xrecord_format.proto similarity index 100% rename from predictor/proto/xrecord_format.proto rename to core/predictor/proto/xrecord_format.proto diff --git a/predictor/src/CMakeLists.txt b/core/predictor/src/CMakeLists.txt similarity index 100% rename from predictor/src/CMakeLists.txt rename to core/predictor/src/CMakeLists.txt diff --git a/core/predictor/src/pdserving.cpp b/core/predictor/src/pdserving.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4d1f8a3a28b54f683708c432e4672c5d63c1c79f --- /dev/null +++ b/core/predictor/src/pdserving.cpp @@ -0,0 +1,260 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#ifdef BCLOUD +#include // bthread_set_worker_startfn +#else +#include // bthread_set_worker_startfn +#endif + +#include +#include + +#include "core/predictor/common/constant.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/resource.h" +#include "core/predictor/framework/server.h" +#include "core/predictor/framework/service.h" +#include "core/predictor/framework/workflow.h" + +using baidu::paddle_serving::predictor::ServerManager; +using baidu::paddle_serving::predictor::WorkflowManager; +using baidu::paddle_serving::predictor::InferServiceManager; +using baidu::paddle_serving::predictor::Resource; +using baidu::paddle_serving::predictor::FLAGS_workflow_path; +using baidu::paddle_serving::predictor::FLAGS_workflow_file; +using baidu::paddle_serving::predictor::FLAGS_inferservice_path; +using baidu::paddle_serving::predictor::FLAGS_inferservice_file; +using baidu::paddle_serving::predictor::FLAGS_logger_path; +using baidu::paddle_serving::predictor::FLAGS_logger_file; +using baidu::paddle_serving::predictor::FLAGS_resource_path; +using baidu::paddle_serving::predictor::FLAGS_resource_file; +using baidu::paddle_serving::predictor::FLAGS_general_model_path; +using baidu::paddle_serving::predictor::FLAGS_general_model_file; +using baidu::paddle_serving::predictor::FLAGS_reload_interval_s; +using baidu::paddle_serving::predictor::FLAGS_port; + +using baidu::paddle_serving::configure::InferServiceConf; +using baidu::paddle_serving::configure::read_proto_conf; + +void print_revision(std::ostream& os, void*) { +#if defined(PDSERVING_VERSION) + os << PDSERVING_VERSION; +#else + os << "undefined"; +#endif +#if defined(PDSERVING_BUILDTIME) + os << ", BuildAt: " << PDSERVING_BUILDTIME; +#endif +} + +static bvar::PassiveStatus s_predictor_revision( + "predictor_revision", print_revision, NULL); + +DEFINE_bool(V, false, "print version, bool"); +DEFINE_bool(g, false, "user defined gflag path"); +DECLARE_string(flagfile); + +namespace bthread { +extern pthread_mutex_t g_task_control_mutex; +} +pthread_mutex_t g_worker_start_fn_mutex = PTHREAD_MUTEX_INITIALIZER; + +void pthread_worker_start_fn() { + while (pthread_mutex_lock(&g_worker_start_fn_mutex) != 0) { + } + + // Try to avoid deadlock in bthread + int lock_status = pthread_mutex_trylock(&bthread::g_task_control_mutex); + if (lock_status == EBUSY || lock_status == EAGAIN) { + pthread_mutex_unlock(&bthread::g_task_control_mutex); + } + Resource::instance().thread_initialize(); + + // Try to avoid deadlock in bthread + if (lock_status == EBUSY || lock_status == EAGAIN) { + while (pthread_mutex_lock(&bthread::g_task_control_mutex) != 0) { + } + } + + pthread_mutex_unlock(&g_worker_start_fn_mutex); +} + +static void g_change_server_port() { + InferServiceConf conf; + if (read_proto_conf(FLAGS_inferservice_path.c_str(), + FLAGS_inferservice_file.c_str(), + &conf) != 0) { + LOG(WARNING) << "failed to load configure[" << FLAGS_inferservice_path + << "," << FLAGS_inferservice_file << "]."; + return; + } + uint32_t port = conf.port(); + if (port != 0) { + FLAGS_port = port; + LOG(INFO) << "use configure[" << FLAGS_inferservice_path << "/" + << FLAGS_inferservice_file << "] port[" << port + << "] instead of flags"; + } + return; +} + +#ifdef UNIT_TEST +int ut_main(int argc, char** argv) { +#else +int main(int argc, char** argv) { +#endif + google::ParseCommandLineFlags(&argc, &argv, true); + + if (FLAGS_V) { + print_revision(std::cout, NULL); + std::cout << std::flush; + return 0; + } + + if (!FLAGS_g) { + google::SetCommandLineOption("flagfile", "conf/gflags.conf"); + } + + google::ParseCommandLineFlags(&argc, &argv, true); + + g_change_server_port(); + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = + strdup((std::string("./log/") + filename + ".log").c_str()); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + if (FLAGS_log_dir == "") { + FLAGS_log_dir = "./log"; + } + + struct stat st_buf; + int ret = 0; + if ((ret = stat(FLAGS_log_dir.c_str(), &st_buf)) != 0) { + mkdir(FLAGS_log_dir.c_str(), 0777); + ret = stat(FLAGS_log_dir.c_str(), &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path " << FLAGS_log_dir + << " not exist, and create fail"; + return -1; + } + } + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + LOG(INFO) << "Succ initialize logger"; + + // initialize resource manager + if (Resource::instance().initialize(FLAGS_resource_path, + FLAGS_resource_file) != 0) { + LOG(ERROR) << "Failed initialize resource, conf:" << FLAGS_resource_path + << "/" << FLAGS_resource_file; + return -1; + } + LOG(INFO) << "Succ initialize resource"; + + // initialize workflow manager + if (WorkflowManager::instance().initialize(FLAGS_workflow_path, + FLAGS_workflow_file) != 0) { + LOG(ERROR) << "Failed initialize workflow manager, conf:" + << FLAGS_workflow_path << "/" << FLAGS_workflow_file; + return -1; + } + LOG(INFO) << "Succ initialize workflow"; + + // initialize service manager + if (InferServiceManager::instance().initialize( + FLAGS_inferservice_path, FLAGS_inferservice_file) != 0) { + LOG(ERROR) << "Failed initialize infer service manager, conf:" + << FLAGS_inferservice_path << "/" << FLAGS_inferservice_file; + return -1; + } + LOG(INFO) << "Succ initialize inferservice"; + + int errcode = bthread_set_worker_startfn(pthread_worker_start_fn); + if (errcode != 0) { + LOG(ERROR) << "Failed call pthread worker start function, error_code[" + << errcode << "]"; + return -1; + } + LOG(INFO) << "Succ call pthread worker start function"; + + if (Resource::instance().cube_initialize(FLAGS_resource_path, + FLAGS_resource_file) != 0) { + LOG(ERROR) << "Failed initialize cube, conf: " << FLAGS_resource_path << "/" + << FLAGS_resource_file; + return -1; + } + LOG(INFO) << "Succ initialize cube"; + +#ifndef BCLOUD + + if (Resource::instance().general_model_initialize( + FLAGS_general_model_path, FLAGS_general_model_file) != 0) { + LOG(ERROR) << "Failed to initialize general model conf: " + << FLAGS_general_model_path << "/" + << FLAGS_general_model_file; + return -1; + } + + LOG(INFO) << "Succ initialize general model"; + + // FATAL messages are output to stderr + FLAGS_stderrthreshold = 3; +#endif + + if (ServerManager::instance().start_and_wait() != 0) { + LOG(ERROR) << "Failed start server and wait!"; + return -1; + } + LOG(INFO) << "Succ start service manager"; + + if (InferServiceManager::instance().finalize() != 0) { + LOG(ERROR) << "Failed finalize infer service manager."; + } + + if (WorkflowManager::instance().finalize() != 0) { + LOG(ERROR) << "Failed finalize workflow manager"; + } + + if (Resource::instance().finalize() != 0) { + LOG(ERROR) << "Failed finalize resource manager"; + } + +#ifdef BCLOUD +#else + google::ShutdownGoogleLogging(); +#endif + LOG(INFO) << "Paddle Inference Server exit successfully!"; + return 0; +} diff --git a/core/predictor/unittest/test_bsf.cpp b/core/predictor/unittest/test_bsf.cpp new file mode 100644 index 0000000000000000000000000000000000000000..2667d5d33088befb7433760ff16b09e68a4e61f5 --- /dev/null +++ b/core/predictor/unittest/test_bsf.cpp @@ -0,0 +1,102 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/unittest/test_bsf.h" +#include + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +butil::atomic global_id; + +void TestItem::auto_gen() { + id = global_id.fetch_add(1); + char buf[128]; + snprintf(buf, sizeof(buf), "test-%d", id); + text = buf; + printf("id:%d,text:%s\n", id, text.c_str()); +} + +void work(const std::vector& in, + std::vector& out) { // NOLINT + for (size_t i = 0; i < in.size(); ++i) { + out[i] = in[i]; + usleep(50); + } +} + +TEST_F(TestBsf, test_single_thread) { + // initialize TaskExecutor + global_id.store(0, butil::memory_order_relaxed); + im::bsf::TaskExecutor>::instance() + ->set_thread_callback_fn(boost::bind(&work, _1, _2)); + EXPECT_EQ( + (im::bsf::TaskExecutor>::instance() + ->start(1)), + 0); + + std::vector in; + std::vector out; + + TestItem::create(in, out, 5); + + im::bsf::TaskManager task_manager; + task_manager.schedule(in, out); + printf("wait for bsf finish...\n"); + task_manager.wait(); + printf("bsf executed finished\n"); + ASSERT_EQ(out.size(), 5); + for (size_t i = 0; i < out.size(); i++) { + char temp[128]; + snprintf(temp, sizeof(temp), "test-%d", i); + EXPECT_EQ(i, in[i].id); + EXPECT_EQ(i, out[i].id); + EXPECT_STREQ(temp, in[i].text.c_str()); + EXPECT_STREQ(temp, out[i].text.c_str()); + } + + im::bsf::TaskExecutor>::instance()->stop(); +} + +TEST_F(TestBsf, test_multi_thread) { + // initialize TaskExecutor + global_id.store(0, butil::memory_order_relaxed); + im::bsf::TaskExecutor>::instance() + ->set_thread_callback_fn(boost::bind(&work, _1, _2)); + im::bsf::TaskExecutor>::instance() + ->set_batch_size(100); + EXPECT_EQ( + (im::bsf::TaskExecutor>::instance() + ->start(3)), + 0); + + const size_t psize = 5; + std::unique_ptr pid; + pid.reset(new pthread_t[psize]); + for (size_t i = 0; i < psize; ++i) { + pthread_create(&pid[i], NULL, &TestBsf::task_trigger, NULL); + } + + for (size_t i = 0; i < psize; ++i) { + pthread_join(pid[i], NULL); + } + + im::bsf::TaskExecutor>::instance()->stop(); +} +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/core/predictor/unittest/test_bsf.h b/core/predictor/unittest/test_bsf.h new file mode 100644 index 0000000000000000000000000000000000000000..6128f889c6a15b527078c1afd0b2471ba4af3dcc --- /dev/null +++ b/core/predictor/unittest/test_bsf.h @@ -0,0 +1,92 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/bsf.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +#ifndef DEFINE_UP_DOWN +#define DEFINE_UP_DOWN \ + void SetUp() {} \ + void TearDown() {} + +struct TestItem { + void auto_gen(); + + bool operator==(const TestItem& other) { + return text == other.text && id == other.id; + } + + static void create(std::vector& in, // NOLINT + std::vector& out, // NOLINT + size_t size) { + in.clear(); + out.clear(); + for (size_t i = 0; i < size; i++) { + TestItem item; + item.auto_gen(); + in.push_back(item); + item.id += 1000000; + out.push_back(item); + } + } + + std::string text; + size_t id; +}; + +class TestBsf : public ::testing::Test { + public: + TestBsf() {} + virtual ~TestBsf() {} + + static void* task_trigger(void* arg) { + for (size_t i = 0; i < 100; i++) { + std::vector in; + std::vector out; + + size_t count = rand_r() % 10 + 1; + TestItem::create(in, out, count); + + im::bsf::TaskManager task_manager; + task_manager.schedule(in, out); + printf("wait for bsf finish..., count:%d, first:%d\n", count, in[0].id); + task_manager.wait(); + printf("bsf executed finished, count:%d, first:%d\n", count, in[0].id); + EXPECT_EQ(out.size(), count); + for (size_t i = 0; i < out.size(); i++) { + EXPECT_EQ(in[i].id, out[i].id); + char temp[128]; + snprintf(temp, sizeof(temp), "test-%d", in[i].id); + EXPECT_STREQ(temp, in[i].text.c_str()); + EXPECT_STREQ(temp, out[i].text.c_str()); + } + } + } + + DEFINE_UP_DOWN +}; + +#undef DEFINE_UP_DOWN +#endif +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/unittest/test_main.cpp b/core/predictor/unittest/test_main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ebedb025a49faf15a2d2bab8be902c6fe0c6f29a --- /dev/null +++ b/core/predictor/unittest/test_main.cpp @@ -0,0 +1,22 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "core/predictor/common/inner_common.h" + +int main(int argc, char** argv) { + LOG(INFO) << "Start running all ut cases..."; + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +} diff --git a/core/predictor/unittest/test_manager.cpp b/core/predictor/unittest/test_manager.cpp new file mode 100644 index 0000000000000000000000000000000000000000..753f0a900e529fc74dadde9ac78e267ccb82d3cb --- /dev/null +++ b/core/predictor/unittest/test_manager.cpp @@ -0,0 +1,113 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/unittest/test_manager.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/service.h" +#include "core/predictor/unittest/test_tool.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +using baidu::paddle_serving::predictor::Manager; +using baidu::paddle_serving::predictor::InferService; +using baidu::paddle_serving::predictor::ParallelInferService; +using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; +using baidu::paddle_serving::predictor::InferServiceManager; + +struct ManagerItem { + int a; + float b; + + int init(const comcfg::ConfigUnit& c) { return 0; } + + static const char* tag() { return "Item"; } +}; + +TEST_F(TestManager, test_manager_instance) { + ManagerItem* item = Manager::instance().create_item(); + EXPECT_FALSE(item == NULL); + item->a = 1; + item->b = 2.0; +} + +TEST_F(TestManager, test_infer_service_create) { + InferService seq; + ParallelInferService par; + + FLAGS_use_parallel_infer_service = false; + EXPECT_EQ(typeid(seq), + typeid(*InferServiceManager::instance().create_item())); + + FLAGS_use_parallel_infer_service = true; + EXPECT_EQ(typeid(par), + typeid(*InferServiceManager::instance().create_item())); +} + +TEST_F(TestManager, test_conf_success) { + const char* conf_content = + "[@Item]\n" + "name: item1\n" + "a:b\n" + "[@Item]\n" + "name: item2\n" + "c:d"; + + AutoTempFile file(conf_content); + + typedef Manager mgr; + EXPECT_EQ(mgr::instance().initialize("./", file.name()), 0); + + ManagerItem* item11 = mgr::instance().item("item1"); + ManagerItem* item12 = &mgr::instance()["item1"]; + EXPECT_EQ(item11, item12); + + ManagerItem* item21 = mgr::instance().item("item2"); + ManagerItem* item22 = &mgr::instance()["item2"]; + EXPECT_EQ(item21, item22); +} + +TEST_F(TestManager, test_conf_success_item_not_found) { + const char* conf_content = + "[@Item1]\n" + "name: item1\n" + "a:b\n" + "[@Item2]\n" + "name: item2\n" + "c:d"; + + AutoTempFile file(conf_content); + + typedef Manager mgr; + EXPECT_EQ(mgr::instance().initialize("./", file.name()), 0); +} + +TEST_F(TestManager, test_conf_failed_name_not_found) { + const char* conf_content = + "[@Item]\n" + "name2: item1\n" + "a:b\n" + "[@Item]\n" + "name: item2\n" + "c:d"; + + AutoTempFile file(conf_content); + + typedef Manager mgr; + EXPECT_EQ(mgr::instance().initialize("./", file.name()), -1); +} +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/unittest/test_manager.h b/core/predictor/unittest/test_manager.h similarity index 100% rename from predictor/unittest/test_manager.h rename to core/predictor/unittest/test_manager.h diff --git a/core/predictor/unittest/test_message_op.cpp b/core/predictor/unittest/test_message_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..397aed81da195f038cd9ef42629dd019b36d4854 --- /dev/null +++ b/core/predictor/unittest/test_message_op.cpp @@ -0,0 +1,71 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/unittest/test_message_op.h" +#include +#include "core/predictor/framework/dag.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/service.h" +#include "core/predictor/unittest/test_tool.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +using baidu::paddle_serving::predictor::Manager; +using baidu::paddle_serving::predictor::InferService; +using baidu::paddle_serving::predictor::ParallelInferService; +using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; +using baidu::paddle_serving::predictor::InferServiceManager; +using baidu::paddle_serving::predictor::Bus; +using baidu::paddle_serving::predictor::Dag; +using baidu::paddle_serving::predictor::Channel; +using pds::ut::OpMessageData; + +TEST_F(TestMSGOP, test_init) { + Bus* bus = new Bus(); + ASSERT_NE(bus, NULL); + Dag* dag = NULL; + + MsgOP op; + std::string op_name = "TestMSGOp"; + std::string op_type = "TestMSGOp"; + EXPECT_EQ(0, op.init(bus, dag, (uint32_t)9999, op_name, op_type, NULL)); + EXPECT_FALSE(op.has_calc()); + EXPECT_EQ(9999, op.id()); + EXPECT_STREQ("TestMSGOp", op.name()); + EXPECT_STREQ("", op.debug_string().c_str()); + EXPECT_NE(op._timer, NULL); + EXPECT_EQ(bus, op._bus); + + OpMessageData* ab = op.mutable_data(); + EXPECT_EQ(33, ab->a()); + EXPECT_FLOAT_EQ(4.4, ab->b()); + + Channel* chn = op.mutable_channel(); + EXPECT_EQ(chn->id(), 9999); + EXPECT_STREQ(chn->op().c_str(), "TestMSGOp"); + + EXPECT_EQ(ab, chn->param()); + + EXPECT_EQ(0, bus->size()); + Channel* chn2 = bus->channel_by_name("TestOp"); + EXPECT_EQ(NULL, chn2); + + // Message OP can obtain data via message() + EXPECT_EQ(ab, chn->message()); +} +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/unittest/test_message_op.h b/core/predictor/unittest/test_message_op.h new file mode 100644 index 0000000000000000000000000000000000000000..5b4a2e5fb4732cad43545ee96750d1385da9b621 --- /dev/null +++ b/core/predictor/unittest/test_message_op.h @@ -0,0 +1,53 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/predictor/framework/channel.h" +#include "core/predictor/op/op.h" +#include "core/predictor/msg_data.pb.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +class MsgOP : public baidu::paddle_serving::predictor::OpWithChannel< + pds::ut::OpMessageData> { + public: + int inference() { + pds::ut::OpMessageData* msg = mutable_data(); + msg->set_a(11); + msg->set_b(22.2); + return 0; + } +}; + +#ifndef DEFINE_UP_DOWN +#define DEFINE_UP_DOWN \ + void SetUp() {} \ + void TearDown() {} + +class TestMSGOP : public ::testing::Test { + public: + TestMSGOP() {} + virtual ~TestMSGOP() {} + + DEFINE_UP_DOWN +}; + +#undef DEFINE_UP_DOWN +#endif +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/unittest/test_op.cpp b/core/predictor/unittest/test_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..54937187ef1f48222c3a8ed5ccf50af4b7d8b497 --- /dev/null +++ b/core/predictor/unittest/test_op.cpp @@ -0,0 +1,297 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include "core/predictor/framework/dag.h" +#include "core/predictor/framework/dag_view.h" +#include "core/predictor/framework/manager.h" +#include "core/predictor/framework/service.h" + +#include "core/predictor/unittest/test_message_op.h" +#include "core/predictor/unittest/test_op.h" +#include "core/predictor/unittest/test_tool.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +using baidu::paddle_serving::predictor::Manager; +using baidu::paddle_serving::predictor::InferService; +using baidu::paddle_serving::predictor::ParallelInferService; +using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; +using baidu::paddle_serving::predictor::InferServiceManager; +using baidu::paddle_serving::predictor::Bus; +using baidu::paddle_serving::predictor::Dag; +using baidu::paddle_serving::predictor::Channel; +using baidu::paddle_serving::predictor::Dag; +using baidu::paddle_serving::predictor::DagView; +using baidu::paddle_serving::predictor::ViewStage; +using baidu::paddle_serving::predictor::ViewNode; +using pds::ut::OpMessageData; + +TEST_F(TestOP, test_init) { + Bus* bus = new Bus(); + ASSERT_NE(bus, NULL); + Dag* dag = NULL; + + ABOP op; + std::string op_name = "TestOp"; + std::string op_type = "TestOp"; + EXPECT_EQ(0, op.init(bus, dag, (uint32_t)999, op_name, op_type, NULL)); + EXPECT_FALSE(op.has_calc()); + EXPECT_EQ(999, op.id()); + EXPECT_STREQ("TestOp", op.name()); + EXPECT_STREQ("{\"a\": 3, \"b\": 4}", op.debug_string().c_str()); + EXPECT_NE(op._timer, NULL); + EXPECT_EQ(bus, op._bus); + + AB* ab = op.mutable_data(); + EXPECT_EQ(3, ab->a); + EXPECT_FLOAT_EQ(4.0, ab->b); + + Channel* chn = op.mutable_channel(); + EXPECT_EQ(chn->id(), 999); + EXPECT_STREQ(chn->op().c_str(), "TestOp"); + + EXPECT_EQ(ab, chn->param()); + EXPECT_EQ(NULL, chn->message()); + + EXPECT_EQ(0, bus->size()); + Channel* chn2 = bus->channel_by_name("TestOp"); + EXPECT_EQ(NULL, chn2); +} + +TEST_F(TestOP, test_depend_argment) { + Bus bus; + Dag dag; + + AutoTempFile file( + "[@Node]\n" + "name: node1\n" + "type: ABOP\n" + "[@Node]\n" + "name: node2\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node1\n" + "mode: RO\n" + "[@Node]\n" + "name: node3\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node1\n" + "mode: RO\n" + "[@Node]\n" + "name: node4\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node2\n" + "mode: RW\n" + "[.@Depend]\n" + "name: node3\n" + "mode: RO"); + + std::string dag_name = "DagTest"; + EXPECT_EQ(0, dag.init("./", file.name(), dag_name)); + + ABOP op; + std::string op_name = "node4"; + std::string op_type = "ABOP"; + EXPECT_EQ(0, op.init(&bus, &dag, (uint32_t)888, op_name, op_type, NULL)); + + EXPECT_FALSE(op.is_readable("node1")); + EXPECT_FALSE(op.is_mutable("node1")); + EXPECT_TRUE(op.is_readable("node2")); + EXPECT_TRUE(op.is_mutable("node2")); + EXPECT_TRUE(op.is_readable("node3")); + EXPECT_FALSE(op.is_mutable("node3")); + + // process() is not called, channel has not been + // committed to bus yet! + EXPECT_TRUE(NULL == op.get_depend_channel("node1")); + EXPECT_TRUE(NULL == op.get_depend_channel("node2")); + EXPECT_TRUE(NULL == op.get_depend_channel("node3")); + EXPECT_TRUE(NULL == op.mutable_depend_channel("node1")); + EXPECT_TRUE(NULL == op.mutable_depend_channel("node2")); + EXPECT_TRUE(NULL == op.mutable_depend_channel("node3")); +} + +TEST_F(TestOP, test_inference) { + Bus bus; + Dag dag; + + AutoTempFile file( + "[@Node]\n" + "name: node1\n" + "type: ABOP\n" + "[@Node]\n" + "name: node2\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node1\n" + "mode: RO\n" + "[@Node]\n" + "name: node3\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node1\n" + "mode: RO\n" + "[@Node]\n" + "name: node4\n" + "type: ABOP\n" + "[.@Depend]\n" + "name: node2\n" + "mode: RW\n" + "[.@Depend]\n" + "name: node3\n" + "mode: RO"); + + std::string dag_name = "DagTest"; + EXPECT_EQ(0, dag.init("./", file.name(), dag_name)); + + ABOP op1; + std::string op1_name = "node1"; + std::string op_type = "ABOP"; + EXPECT_EQ(0, op1.init(&bus, &dag, (uint32_t)888, op1_name, op_type, NULL)); + + ABOP op2; + std::string op2_name = "node2"; + EXPECT_EQ(0, op2.init(&bus, &dag, (uint32_t)888, op2_name, op_type, NULL)); + + MsgOP op3; + std::string op3_name = "node3"; + EXPECT_EQ(0, op3.init(&bus, &dag, (uint32_t)888, op3_name, op_type, NULL)); + + ABOP op4; + std::string op4_name = "node4"; + EXPECT_EQ(0, op4.init(&bus, &dag, (uint32_t)888, op4_name, op_type, NULL)); + + EXPECT_TRUE(op2.is_readable("node1")); + EXPECT_FALSE(op2.is_mutable("node1")); + + EXPECT_FALSE(op2.is_readable("node3")); + EXPECT_FALSE(op2.is_mutable("node3")); + + EXPECT_FALSE(op2.is_readable("node4")); + EXPECT_FALSE(op2.is_mutable("node4")); + + EXPECT_TRUE(op3.is_readable("node1")); + EXPECT_FALSE(op3.is_mutable("node1")); + + EXPECT_FALSE(op3.is_readable("node2")); + EXPECT_FALSE(op3.is_mutable("node2")); + + EXPECT_FALSE(op3.is_readable("node4")); + EXPECT_FALSE(op3.is_mutable("node4")); + + EXPECT_FALSE(op4.is_readable("node1")); + EXPECT_FALSE(op4.is_mutable("node1")); + + EXPECT_TRUE(op4.is_readable("node2")); + EXPECT_TRUE(op4.is_mutable("node2")); + + EXPECT_TRUE(op4.is_readable("node3")); + EXPECT_FALSE(op4.is_mutable("node3")); + + EXPECT_EQ(0, op1.process(false)); + EXPECT_EQ(0, op2.process(false)); + EXPECT_EQ(0, op3.process(false)); + EXPECT_EQ(0, op4.process(true)); + + EXPECT_TRUE(NULL == op4.get_depend_channel("node1")); + EXPECT_FALSE(NULL == op4.get_depend_channel("node2")); + EXPECT_FALSE(NULL == op4.get_depend_channel("node3")); + EXPECT_TRUE(NULL == op4.mutable_depend_channel("node1")); + EXPECT_FALSE(NULL == op4.mutable_depend_channel("node2")); + EXPECT_TRUE(NULL == op4.mutable_depend_channel("node3")); + + const AB* dop1 = op4.get_depend_argument("node1"); + + const AB* dop21 = op4.get_depend_argument("node2"); + const google::protobuf::Message* dop22 = + op4.get_depend_channel("node2")->message(); + const google::protobuf::Message* dop23 = + op4.get_depend_argument("node2"); + + const OpMessageData* dop31 = op4.get_depend_argument("node3"); + const google::protobuf::Message* dop32 = + op4.get_depend_channel("node3")->message(); + const google::protobuf::Message* dop33 = + op4.get_depend_argument("node3"); + + EXPECT_EQ(NULL, dop1); + + EXPECT_NE(NULL, dop21); + EXPECT_EQ(NULL, dop22); + EXPECT_EQ(NULL, dop23); + + EXPECT_NE(NULL, dop31); + EXPECT_NE(NULL, dop32); + EXPECT_EQ(NULL, dop33); + EXPECT_EQ(dop31, dop32); + + const OpMessageData* dop322 = dynamic_cast(dop32); + + EXPECT_EQ(1, dop21->a); + EXPECT_FLOAT_EQ(2.2, dop21->b); + + EXPECT_EQ(11, dop31->a()); + EXPECT_FLOAT_EQ(22.2, dop31->b()); + + EXPECT_EQ(11, dop322->a()); + EXPECT_FLOAT_EQ(22.2, dop322->b()); +} + +TEST_F(TestOP, test_op_with_channel_and_conf) { + Dag dag; + std::string op_name = "test_op"; + std::string name_in_conf = "test_name_in_conf"; + butil::TempFile dag_conf; + dag_conf.save_format( + "[@Node]\n" + "name: %s\n" + "type: OpWithConf\n" + "name_in_conf: %s\n", + op_name.c_str(), + name_in_conf.c_str()); + + std::string dag_name = "DagTest"; + ASSERT_EQ(0, dag.init("./", dag_conf.fname(), dag_name)); + + DagView view; + view.init(&dag, "service_name"); + ASSERT_EQ(0, view.execute(NULL)); + + const std::vector& view_stage_vec = view._view; + uint32_t stage_size = view_stage_vec.size(); + for (uint32_t si = 0; si < stage_size; si++) { + ViewStage* vstage = view_stage_vec[si]; + uint32_t node_size = vstage->nodes.size(); + for (uint32_t ni = 0; ni < node_size; ni++) { + ViewNode* vnode = vstage->nodes[ni]; + OpWithConf* op = dynamic_cast(vnode->op); + ASSERT_NE(NULL, op); + EXPECT_STREQ(op->name(), op_name.c_str()); + EXPECT_STREQ(op->get_self_config()->name_in_conf.c_str(), + name_in_conf.c_str()); + EXPECT_STREQ(op->mutable_data()->name_for_output.c_str(), + name_in_conf.c_str()); + } + } +} +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/unittest/test_op.h b/core/predictor/unittest/test_op.h new file mode 100644 index 0000000000000000000000000000000000000000..73bf0d7cc28ea16e1b47b7277b4cf0f9344035c2 --- /dev/null +++ b/core/predictor/unittest/test_op.h @@ -0,0 +1,113 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/predictor/framework/channel.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +struct AB { + int a; + float b; + + int Clear() { + a = 3; + b = 4.0; + return 0; + } + + std::string ShortDebugString() const { + std::ostringstream oss; + oss << "{\"a\": "; + oss << a; + oss << ", \"b\": "; + oss << b; + oss << "}"; + return oss.str(); + } +}; + +class ABOP : public baidu::paddle_serving::predictor::OpWithChannel { + public: + int inference() { + AB* ab = mutable_data(); + ab->a = 1; + ab->b = 2.2; + return 0; + } + DECLARE_OP(ABOP); +}; + +DEFINE_OP(ABOP); + +struct OpConf { + std::string name_in_conf; +}; + +struct OpOutput { + std::string name_for_output; + void Clear() { name_for_output.clear(); } + std::string ShortDebugString() const { return name_for_output; } +}; + +class OpWithConf + : public baidu::paddle_serving::predictor::OpWithChannelAndConf { + public: + DECLARE_OP(OpWithConf); + void* create_config(const comcfg::ConfigUnit& conf) { + OpConf* op_conf = new (std::nothrow) OpConf(); + int err = 0; + op_conf->name_in_conf = conf["name_in_conf"].to_cstr(&err); + if (err != 0) { + return NULL; + } + return op_conf; + } + + void delete_config(void* conf) { delete static_cast(conf); } + + int inference() { + OpConf* op_conf = get_self_config(); + OpOutput* op_output = mutable_data(); + op_output->name_for_output = op_conf->name_in_conf; + return 0; + } +}; + +DEFINE_OP(OpWithConf); + +#ifndef DEFINE_UP_DOWN +#define DEFINE_UP_DOWN \ + void SetUp() {} \ + void TearDown() {} + +class TestOP : public ::testing::Test { + public: + TestOP() {} + virtual ~TestOP() {} + + DEFINE_UP_DOWN +}; + +#undef DEFINE_UP_DOWN +#endif +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/core/predictor/unittest/test_server_manager.cpp b/core/predictor/unittest/test_server_manager.cpp new file mode 100644 index 0000000000000000000000000000000000000000..df28e2ee3e39465aae44801d3968763817f9ddaa --- /dev/null +++ b/core/predictor/unittest/test_server_manager.cpp @@ -0,0 +1,74 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/predictor/unittest/test_server_manager.h" // TestServerManager +#include // FLAGS +#include +#include "core/predictor/framework/server.h" // ServerManager + +namespace baidu { +namespace paddle_serving { +namespace unittest { + +using baidu::paddle_serving::predictor::ServerManager; +using baidu::paddle_serving::predictor::FLAGS_enable_nshead_protocol; +using baidu::paddle_serving::predictor::FLAGS_nshead_protocol; + +TEST_F(TestServerManager, test_nshead_protocol) { + ASSERT_EQ(FLAGS_enable_nshead_protocol, false); + ServerManager server_manager1; + EXPECT_EQ(server_manager1._options.nshead_service, NULL); + + google::SetCommandLineOption("enable_nshead_protocol", "true"); + ASSERT_EQ(FLAGS_enable_nshead_protocol, true); + ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), "itp"); + ServerManager server_manager2; + EXPECT_NE(server_manager2._options.nshead_service, NULL); + + std::string protocol = "nova_pbrpc"; + google::SetCommandLineOption("enable_nshead_protocol", "true"); + google::SetCommandLineOption("nshead_protocol", protocol.c_str()); + ASSERT_EQ(FLAGS_enable_nshead_protocol, true); + ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); + ServerManager server_manager3; + EXPECT_NE(server_manager3._options.nshead_service, NULL); + + protocol = "public_pbrpc"; + google::SetCommandLineOption("enable_nshead_protocol", "true"); + google::SetCommandLineOption("nshead_protocol", protocol.c_str()); + ASSERT_EQ(FLAGS_enable_nshead_protocol, true); + ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); + ServerManager server_manager4; + EXPECT_NE(server_manager4._options.nshead_service, NULL); + + protocol = "nshead_mcpack"; + google::SetCommandLineOption("enable_nshead_protocol", "true"); + google::SetCommandLineOption("nshead_protocol", protocol.c_str()); + ASSERT_EQ(FLAGS_enable_nshead_protocol, true); + ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); + ServerManager server_manager5; + EXPECT_NE(server_manager5._options.nshead_service, NULL); + + protocol = "nshead_wrong_protocol"; + google::SetCommandLineOption("enable_nshead_protocol", "true"); + google::SetCommandLineOption("nshead_protocol", protocol.c_str()); + ASSERT_EQ(FLAGS_enable_nshead_protocol, true); + ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); + ServerManager server_manager6; + EXPECT_EQ(server_manager6._options.nshead_service, NULL); +} + +} // namespace unittest +} // namespace paddle_serving +} // namespace baidu diff --git a/predictor/unittest/test_server_manager.h b/core/predictor/unittest/test_server_manager.h similarity index 100% rename from predictor/unittest/test_server_manager.h rename to core/predictor/unittest/test_server_manager.h diff --git a/predictor/unittest/test_tool.h b/core/predictor/unittest/test_tool.h similarity index 100% rename from predictor/unittest/test_tool.h rename to core/predictor/unittest/test_tool.h diff --git a/core/sdk-cpp/CMakeLists.txt b/core/sdk-cpp/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..35312b572bace8138b50b4f7349e20cb141980d0 --- /dev/null +++ b/core/sdk-cpp/CMakeLists.txt @@ -0,0 +1,17 @@ + +include(src/CMakeLists.txt) +include(proto/CMakeLists.txt) +add_library(sdk-cpp ${sdk_cpp_srcs}) +add_dependencies(sdk-cpp pdcodegen configure) +target_link_libraries(sdk-cpp brpc configure protobuf leveldb) + +# install +install(TARGETS sdk-cpp + ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib + ) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/sdk-cpp/) + +FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) +install(FILES ${inc} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/core/sdk-cpp) diff --git a/core/sdk-cpp/include/abtest.h b/core/sdk-cpp/include/abtest.h new file mode 100644 index 0000000000000000000000000000000000000000..9964164c269cdda2c0e9b18dc4143edfe6db94d3 --- /dev/null +++ b/core/sdk-cpp/include/abtest.h @@ -0,0 +1,69 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/factory.h" +#include "core/sdk-cpp/include/stub.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class Stub; +class Variant; + +static const char* WEIGHT_SEPERATOR = "|"; + +class EndpointRouterBase { + public: + typedef std::vector VariantList; + + virtual ~EndpointRouterBase() {} + + virtual int initialize(const google::protobuf::Message& conf) = 0; + + virtual Variant* route(const VariantList&) = 0; + + virtual Variant* route(const VariantList&, const void*) = 0; +}; + +class WeightedRandomRender : public EndpointRouterBase { + public: + static int register_self() { + INLINE_REGIST_OBJECT(WeightedRandomRender, EndpointRouterBase, -1); + return 0; + } + + WeightedRandomRender() : _normalized_sum(0) {} + + ~WeightedRandomRender() {} + + int initialize(const google::protobuf::Message& conf); + + Variant* route(const VariantList&); + + Variant* route(const VariantList&, const void*); + + private: + std::vector _variant_weight_list; + uint32_t _normalized_sum; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/common.h b/core/sdk-cpp/include/common.h new file mode 100644 index 0000000000000000000000000000000000000000..81088660df275039aebdd8b6f0877dd5de443681 --- /dev/null +++ b/core/sdk-cpp/include/common.h @@ -0,0 +1,64 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "gflags/gflags.h" +#include "google/protobuf/message.h" + +#ifdef BCLOUD +#include "baidu/rpc/channel.h" +#include "baidu/rpc/parallel_channel.h" +#include "baidu/rpc/traceprintf.h" +#include "base/comlog_sink.h" +#include "base/logging.h" +#include "base/object_pool.h" +#include "base/time.h" +#include "bthread.h" // NOLINT +#else +#include "brpc/channel.h" +#include "brpc/parallel_channel.h" +#include "brpc/traceprintf.h" +#include "bthread/bthread.h" +#include "butil/logging.h" +#include "butil/object_pool.h" +#include "butil/time.h" +#endif + +#include "bvar/bvar.h" + +#ifdef BCLOUD +#include "json_to_pb.h" // NOLINT +#else +#include "json2pb/json_to_pb.h" +#endif + +#include "core/configure/include/configure_parser.h" +#include "core/configure/sdk_configure.pb.h" + +#include "core/sdk-cpp/include/utils.h" + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +namespace butil = base; +#endif diff --git a/core/sdk-cpp/include/config_manager.h b/core/sdk-cpp/include/config_manager.h new file mode 100644 index 0000000000000000000000000000000000000000..7eb409a508b5975bfab4312bf2f9060099b30c2b --- /dev/null +++ b/core/sdk-cpp/include/config_manager.h @@ -0,0 +1,78 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/endpoint_config.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class EndpointConfigManager { + public: + static EndpointConfigManager& instance() { + static EndpointConfigManager singleton; + return singleton; + } + + EndpointConfigManager() + : _last_update_timestamp(0), _current_endpointmap_id(1) {} + + int create(const char* path, const char* file); + + int load(); + + bool need_reload() { return false; } + + int reload() { + if (!need_reload()) { + LOG(INFO) << "Noneed reload endpoin config"; + return 0; + } + + return load(); + } + + const std::map& config() { return _ep_map; } + + const std::map& config() const { return _ep_map; } + + private: + int init_one_variant(const configure::VariantConf& conf, + VariantInfo& var); // NOLINT + + int init_one_endpoint(const configure::Predictor& conf, + EndpointInfo& ep, // NOLINT + const VariantInfo& default_var); + + int merge_variant(const VariantInfo& default_var, + const configure::VariantConf& conf, + VariantInfo& merged_var); // NOLINT + + int parse_tag_values(SplitParameters& split); // NOLINT + + private: + std::map _ep_map; + std::string _endpoint_config_path; + std::string _endpoint_config_file; + uint32_t _last_update_timestamp; + uint32_t _current_endpointmap_id; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/endpoint.h b/core/sdk-cpp/include/endpoint.h new file mode 100644 index 0000000000000000000000000000000000000000..52926ecf5830542d7e4371f721ac20d6031e86dc --- /dev/null +++ b/core/sdk-cpp/include/endpoint.h @@ -0,0 +1,68 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include "core/sdk-cpp/include/abtest.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/endpoint_config.h" +#include "core/sdk-cpp/include/predictor.h" +#include "core/sdk-cpp/include/stub.h" +#include "core/sdk-cpp/include/variant.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class Endpoint { + friend class EndpointRouterBase; + + public: + virtual ~Endpoint() {} + + Endpoint() { _variant_list.clear(); } + + int initialize(const EndpointInfo& ep_info); + + int thrd_initialize(); + + int thrd_clear(); + + int thrd_finalize(); + + Predictor* get_predictor(const void* params); + + Predictor* get_predictor(); + + int ret_predictor(Predictor* predictor); + + const std::string& endpoint_name() const { return _endpoint_name; } + + private: + int initialize_variant(const VariantInfo& var_info, + const std::string& service, + const std::string& ep_name, + std::vector& stubs); // NOLINT + + private: + std::string _endpoint_name; + std::vector _variant_list; + EndpointRouterBase* _abtest_router; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/endpoint_config.h b/core/sdk-cpp/include/endpoint_config.h new file mode 100644 index 0000000000000000000000000000000000000000..6edb6ed8ab3b7c62be12c35c1658a2adf3140341 --- /dev/null +++ b/core/sdk-cpp/include/endpoint_config.h @@ -0,0 +1,111 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "core/sdk-cpp/include/common.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +#define PARSE_CONF_ITEM(conf, item, name, fail) \ + do { \ + if (conf.has_##name()) { \ + item.set(conf.name()); \ + } else { \ + LOG(ERROR) << "Not found key in configue: " << #name; \ + } \ + } while (0) + +#define ASSIGN_CONF_ITEM(dest, src, fail) \ + do { \ + if (!src.init) { \ + LOG(ERROR) << "Cannot assign an unintialized item: " << #src \ + << " to dest: " << #dest; \ + return fail; \ + } \ + dest = src.value; \ + } while (0) + +template +struct type_traits { + static type_traits tag; +}; + +template +type_traits type_traits::tag; + +template +struct ConfigItem { + T value; + bool init; + ConfigItem() : init(false) {} + void set(const T& unit) { + value = unit; + init = true; + } +}; + +struct Connection { + ConfigItem tmo_conn; + ConfigItem tmo_rpc; + ConfigItem tmo_hedge; + ConfigItem cnt_retry_conn; + ConfigItem cnt_retry_hedge; + ConfigItem cnt_maxconn_per_host; + ConfigItem type_conn; +}; + +struct NamingInfo { + ConfigItem cluster_naming; + ConfigItem load_balancer; + ConfigItem cluster_filter; +}; + +struct RpcParameters { + ConfigItem protocol; + ConfigItem compress_type; + ConfigItem package_size; + ConfigItem route_tag; + ConfigItem max_channel; +}; + +struct SplitParameters { + ConfigItem split_tag; + ConfigItem tag_cands_str; + std::vector tag_values; +}; + +struct VariantInfo { + VariantInfo() {} + Connection connection; + NamingInfo naminginfo; + RpcParameters parameters; + SplitParameters splitinfo; +}; + +struct EndpointInfo { + EndpointInfo() : ab_test(NULL) {} + std::string endpoint_name; + std::string stub_service; + std::vector vars; + void* ab_test; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/factory.h b/core/sdk-cpp/include/factory.h new file mode 100644 index 0000000000000000000000000000000000000000..7e9e22278c48e5fd40138443ab6cdb06f21a5d00 --- /dev/null +++ b/core/sdk-cpp/include/factory.h @@ -0,0 +1,194 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include "glog/raw_logging.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/stub_impl.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +#ifdef BCLOUD +namespace brpc = baidu::rpc; +#endif + +#define INLINE_REGIST_OBJECT(D, B, E) \ + do { \ + Factory* factory = new (std::nothrow) Factory(); \ + if (factory == NULL || \ + FactoryPool::instance().register_factory(#D, factory) != 0) { \ + RAW_LOG_ERROR("Failed regist factory: %s->%s in macro!", #D, #B); \ + return E; \ + } \ + } while (0) + +#define DECLARE_FACTORY_OBJECT(D, B) \ + static int regist(const std::string& tag) { \ + Factory* factory = new (std::nothrow) Factory(); \ + if (factory == NULL || \ + FactoryPool::instance().register_factory(tag, factory) != 0) { \ + RAW_LOG_ERROR("Failed regist factory: %s in macro!", #D); \ + return -1; \ + } \ + return 0; \ + } + +#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) +#define PDS_STR_CAT_I(a, b) a##b + +#define DEFINE_FACTORY_OBJECT(D) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + D::regist(#D); \ + } + +#define REGIST_FACTORY_OBJECT_IMPL(D, B) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + ::baidu::paddle_serving::sdk_cpp::Factory* factory = \ + new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory(); \ + if (factory == NULL || \ + ::baidu::paddle_serving::sdk_cpp::FactoryPool::instance() \ + .register_factory(#D, factory) != 0) { \ + RAW_LOG_ERROR("Failed regist factory: %s->%s in macro!", #D, #B); \ + return; \ + } \ + return; \ + } + +#define REGIST_FACTORY_OBJECT_IMPL_WITH_TAG(D, B, T) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + ::baidu::paddle_serving::sdk_cpp::Factory* factory = \ + new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory(); \ + if (factory == NULL || \ + ::baidu::paddle_serving::sdk_cpp::FactoryPool::instance() \ + .register_factory(T, factory) != 0) { \ + RAW_LOG_ERROR( \ + "Failed regist factory: %s->%s, tag %s in macro!", #D, #B, T); \ + return; \ + } \ + return; \ + } + +#define REGIST_ABTEST_OBJECT(D) \ + REGIST_FACTORY_OBJECT_IMPL( \ + D, ::baidu::paddle_serving::sdk_cpp::ABTestRouterBase) + +#define REGIST_ABTEST_OBJECT_WITH_TAG(D, T) \ + REGIST_FACTORY_OBJECT_IMPL_WITH_TAG( \ + D, ::baidu::paddle_serving::sdk_cpp::ABTestRouterBase, T) + +#define REGIST_STUB_OBJECT_WITH_TAG(D, C, R, I, O, T) \ + __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ + __LINE__)(void) { \ + ::baidu::paddle_serving::sdk_cpp::Factory< \ + ::baidu::paddle_serving::sdk_cpp::StubImpl, \ + ::baidu::paddle_serving::sdk_cpp::Stub>* factory = \ + new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory< \ + ::baidu::paddle_serving::sdk_cpp::StubImpl, \ + ::baidu::paddle_serving::sdk_cpp::Stub>(); \ + if (factory == NULL || \ + ::baidu::paddle_serving::sdk_cpp::FactoryPool< \ + ::baidu::paddle_serving::sdk_cpp::Stub>::instance() \ + .register_factory(T, factory) != 0) { \ + RAW_LOG_ERROR( \ + "Failed regist factory: %s->Stub, tag: %s in macro!", #D, T); \ + return; \ + } \ + return; \ + } + +class Stub; +class EndpointRouterBase; +class VariantRouterBase; + +template +class FactoryBase { + public: + virtual B* gen() = 0; + virtual void del(B* obj) = 0; +}; + +template +class Factory : public FactoryBase { + public: + B* gen() { return new (std::nothrow) D(); } + + void del(B* obj) { delete dynamic_cast(obj); } +}; + +template +class FactoryPool { + public: + static FactoryPool& instance() { + static FactoryPool singleton; + return singleton; + } + + int register_factory(const std::string& tag, FactoryBase* factory) { + typename std::map*>::iterator it = + _pool.find(tag); + if (it != _pool.end()) { + RAW_LOG_ERROR("Insert duplicate with tag: %s", tag.c_str()); + return -1; + } + + std::pair*>::iterator, bool> + r = _pool.insert(std::make_pair(tag, factory)); + if (!r.second) { + RAW_LOG_ERROR("Failed insert new factory with: %s", tag.c_str()); + return -1; + } + + return 0; + } + + B* generate_object(const std::string& tag) { + typename std::map*>::iterator it = + _pool.find(tag); + if (it == _pool.end() || it->second == NULL) { + RAW_LOG_ERROR("Not found factory pool, tag: %s, pool size: %u", + tag.c_str(), + _pool.size()); + return NULL; + } + + return it->second->gen(); + } + + template + void return_object(B* object) { + Factory factory; + factory->del(object); + } + + private: + std::map*> _pool; +}; + +typedef FactoryPool StubFactory; +typedef FactoryPool CallMapperFactory; +typedef FactoryPool ResponseMergerFactory; +typedef FactoryPool EndpointRouterFactory; +typedef FactoryPool VariantRouterFactory; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/predictor.h b/core/sdk-cpp/include/predictor.h new file mode 100644 index 0000000000000000000000000000000000000000..f0c5ccad2c6a7bb76c02bec6a9db373a12cfeb98 --- /dev/null +++ b/core/sdk-cpp/include/predictor.h @@ -0,0 +1,217 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/endpoint_config.h" +#include "core/sdk-cpp/include/stub.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +#define GET_OBJECT_FROM_POOL(param, T, err) \ + do { \ + param = butil::get_object(); \ + if (!param) { \ + LOG(ERROR) << "Failed get object from pool" \ + << ", arg:" << #param << "type: " << #T; \ + return err; \ + } \ + } while (0) + +static const brpc::CompressType compress_types[] = {brpc::COMPRESS_TYPE_NONE, + brpc::COMPRESS_TYPE_SNAPPY, + brpc::COMPRESS_TYPE_GZIP, + brpc::COMPRESS_TYPE_ZLIB, + brpc::COMPRESS_TYPE_LZ4}; + +typedef void (*DoneType)(google::protobuf::Message* res, + brpc::Controller* controller); + +template +class FunctionClosure : public ::google::protobuf::Closure { + public: + typedef void (*FunctionType)(Arg1* arg1, Arg2* arg2); + + FunctionClosure() {} + + ~FunctionClosure() {} + + int init(FunctionType function, + bool self_deleting, + bool arg1_deleting, + bool arg2_deleting, + Arg1* arg1 = NULL, + Arg2* arg2 = NULL); + + void Run(); + + private: + FunctionType _function; + Arg1* _arg1; + Arg2* _arg2; + bool _self_deleting; + bool _arg1_deleting; + bool _arg2_deleting; +}; + +class InterfaceAdaptor { + public: + typedef google::protobuf::Message RequestMessage; + typedef google::protobuf::Message ResponseMessage; + + virtual int partition(RequestMessage& request, // NOLINT + std::vector& out) = 0; // NOLINT + virtual int merge(std::vector& response, // NOLINT + ResponseMessage& out) = 0; // NOLINT +}; + +class EchoAdaptor : public InterfaceAdaptor { + public: + typedef google::protobuf::Message RequestMessage; + typedef google::protobuf::Message ResponseMessage; + + int partition(RequestMessage& request, // NOLINT + std::vector& out) { // NOLINT + return 0; + } + + int merge(std::vector& response, // NOLINT + ResponseMessage*& out) { // NOLINT + return 0; + } +}; + +class Predictor { + public: + // synchronize interface + virtual int inference(google::protobuf::Message* req, + google::protobuf::Message* res) = 0; + + // asynchronize interface + virtual int inference(google::protobuf::Message* req, + google::protobuf::Message* res, + DoneType done, + brpc::CallId* cid = NULL) = 0; + + // synchronize interface + virtual int debug(google::protobuf::Message* req, + google::protobuf::Message* res, + butil::IOBufBuilder* debug_os) = 0; + + // un-blocked interface + virtual int send_inference(google::protobuf::Message* req, + google::protobuf::Message* res) = 0; + virtual int recv_inference() = 0; + virtual void cancel_inference() = 0; + + virtual const char* tag() = 0; + + virtual const google::protobuf::Service* service() = 0; + + virtual const brpc::Controller* controller() = 0; + + virtual const google::protobuf::RpcChannel* channel() = 0; + + virtual const Stub* stub() = 0; + + virtual bool is_inited() = 0; +}; + +template +class PredictorImpl : public Predictor { + public: + typedef google::protobuf::MethodDescriptor MethodDescriptor; + + PredictorImpl() + : _service(NULL), + _stub(NULL), + _infer(NULL), + _debug(NULL), + _channel(NULL), + _inited(false) { + // _inferid = 0; + } + + ~PredictorImpl() {} + + int init(google::protobuf::RpcChannel* chnl, + T* service, + const MethodDescriptor* infer, + const MethodDescriptor* debug, + const RpcParameters& options, + Stub* stub, + const std::string& tag); + + int reset(const RpcParameters& options, brpc::Controller& cntl); // NOLINT + + int deinit(); + + bool is_inited() { return _inited; } + + // 同步接口 + int inference(google::protobuf::Message* req, google::protobuf::Message* res); + + // 异步接口 + int inference(google::protobuf::Message* req, + google::protobuf::Message* res, + DoneType done, + brpc::CallId* cid = NULL); + + // Debug同步接口 + int debug(google::protobuf::Message* req, + google::protobuf::Message* res, + butil::IOBufBuilder* debug_os); + + // 半同步(非阻塞)接口 + int send_inference(google::protobuf::Message* req, + google::protobuf::Message* res); + + // 半同步(非阻塞)接口 + int recv_inference(); + + // 半同步(非阻塞)接口 + void cancel_inference(); + + const char* tag(); + + const google::protobuf::Service* service() { return _service; } + + const brpc::Controller* controller() { return &_cntl; } + + const google::protobuf::RpcChannel* channel() { return _channel; } + + const Stub* stub() { return _stub; } + + private: + T* _service; + Stub* _stub; + const MethodDescriptor* _infer; + const MethodDescriptor* _debug; + google::protobuf::RpcChannel* _channel; + brpc::Controller _cntl; + brpc::CallId _inferid; + RpcParameters _options; + std::string _tag; + bool _inited; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu + +#include "predictor.hpp" diff --git a/sdk-cpp/include/predictor.hpp b/core/sdk-cpp/include/predictor.hpp similarity index 100% rename from sdk-cpp/include/predictor.hpp rename to core/sdk-cpp/include/predictor.hpp diff --git a/core/sdk-cpp/include/predictor_sdk.h b/core/sdk-cpp/include/predictor_sdk.h new file mode 100644 index 0000000000000000000000000000000000000000..34bf8db72d45fd51eb644ae2b80e79e784e2fce5 --- /dev/null +++ b/core/sdk-cpp/include/predictor_sdk.h @@ -0,0 +1,86 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/sdk-cpp/include/config_manager.h" +#include "core/sdk-cpp/include/endpoint.h" +#include "core/sdk-cpp/include/endpoint_config.h" +#include "core/sdk-cpp/include/predictor.h" +#include "core/sdk-cpp/include/stub.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class PredictorApi { + public: + PredictorApi() {} + + int register_all(); + + int create(const char* path, const char* file); + + int thrd_initialize(); + + int thrd_clear(); + + int thrd_finalize(); + + void destroy(); + + static PredictorApi& instance() { + static PredictorApi api; + return api; + } + + Predictor* fetch_predictor(std::string ep_name) { + std::map::iterator it = _endpoints.find(ep_name); + if (it == _endpoints.end() || !it->second) { + LOG(ERROR) << "Failed fetch predictor:" + << ", ep_name: " << ep_name; + return NULL; + } + return it->second->get_predictor(); + } + + Predictor* fetch_predictor(std::string ep_name, const void* params) { + std::map::iterator it = _endpoints.find(ep_name); + if (it == _endpoints.end() || !it->second) { + LOG(ERROR) << "Failed fetch predictor:" + << ", ep_name: " << ep_name; + return NULL; + } + return it->second->get_predictor(params); + } + + int free_predictor(Predictor* predictor) { + const Stub* stub = predictor->stub(); + if (!stub || stub->return_predictor(predictor) != 0) { + LOG(ERROR) << "Failed return predictor via stub"; + return -1; + } + + return 0; + } + + private: + EndpointConfigManager _config_manager; + std::map _endpoints; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/stub.h b/core/sdk-cpp/include/stub.h new file mode 100644 index 0000000000000000000000000000000000000000..aa74c142342e294369ff5f5c910ecfe8518ca470 --- /dev/null +++ b/core/sdk-cpp/include/stub.h @@ -0,0 +1,67 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "core/sdk-cpp/include/common.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class Predictor; +struct VariantInfo; + +class Stub { + public: + typedef google::protobuf::Message Message; + + virtual ~Stub() {} + + virtual int initialize(const VariantInfo& var, + const std::string& ep, + const std::string* tag, + const std::string* tag_value) = 0; + + // predictor + virtual Predictor* fetch_predictor() = 0; + virtual int return_predictor(Predictor* predictor) = 0; + virtual int return_predictor(Predictor* predictor) const = 0; + + // request + virtual Message* fetch_request() = 0; + virtual int return_request(Message* request) = 0; + virtual int return_request(Message* request) const = 0; + + // response + virtual Message* fetch_response() = 0; + virtual int return_response(Message* response) = 0; + virtual int return_response(Message* response) const = 0; + + virtual const std::string& which_endpoint() const = 0; + + // control logic for tls + virtual int thrd_initialize() = 0; + + virtual int thrd_clear() = 0; + + virtual int thrd_finalize() = 0; + + virtual void update_average(int64_t acc, const char* name) = 0; + virtual void update_latency(int64_t acc, const char* name) = 0; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/stub_impl.h b/core/sdk-cpp/include/stub_impl.h new file mode 100644 index 0000000000000000000000000000000000000000..dc3c16ca6414b915ba3fd5d4feaac501bbe07cba --- /dev/null +++ b/core/sdk-cpp/include/stub_impl.h @@ -0,0 +1,328 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include +#include +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/endpoint_config.h" +#include "core/sdk-cpp/include/predictor.h" +#include "core/sdk-cpp/include/stub.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +static const char* AVG_PREFIX = "avg_"; +static const char* LTC_PREFIX = "ltc_"; + +class Predictor; +template +class PredictorImpl; + +static const char* INFERENCE_METHOD_NAME = "inference"; +static const char* DEBUG_METHOD_NAME = "debug"; + +class MetricScope { + public: + MetricScope(Stub* stub, const char* routine) + : _stub(stub), _tt(butil::Timer::STARTED), _routine(routine) { + TRACEPRINTF("enter %s", routine); + } + + ~MetricScope() { + TRACEPRINTF("exit %s", _routine.c_str()); + _tt.stop(); + _stub->update_latency(_tt.u_elapsed(), _routine.c_str()); + } + + private: + Stub* _stub; + butil::Timer _tt; + std::string _routine; +}; + +class TracePackScope { + public: + explicit TracePackScope(const char* routine) : _routine(routine), _index(-1) { + TRACEPRINTF("start pack: %s", routine); + } + + TracePackScope(const char* routine, int index) + : _routine(routine), _index(index) { + TRACEPRINTF("start pack: %s, index: %d", routine, index); + } + + ~TracePackScope() { + if (_index >= 0) { + TRACEPRINTF("finish pack: %s, index: %d", _routine.c_str(), _index); + } else { + TRACEPRINTF("finish pack: %s", _routine.c_str()); + } + } + + private: + std::string _routine; + int _index; +}; + +class TagFilter : public brpc::NamingServiceFilter { + public: + class TagHelper { + public: + explicit TagHelper(const std::string& kv_str) { + if (kv_str.compare("") == 0) { + return; + } + + static const char TAG_DELIM = ','; + static const char KV_DELIM = ':'; + + std::string::size_type start_pos = 0; + std::string::size_type end_pos; + + do { + end_pos = kv_str.find(TAG_DELIM, start_pos); + std::string kv_pair_str; + if (end_pos == std::string::npos) { + kv_pair_str = kv_str.substr(start_pos); + } else { + kv_pair_str = kv_str.substr(start_pos, end_pos - start_pos); + start_pos = end_pos + 1; + } + + std::string::size_type kv_delim_pos = kv_pair_str.find(KV_DELIM, 0); + if (kv_delim_pos == std::string::npos) { + LOG(ERROR) << "invalid kv pair: " << kv_pair_str.c_str(); + continue; + } + + std::string key = kv_pair_str.substr(0, kv_delim_pos); + std::string value = kv_pair_str.substr(kv_delim_pos + 1); + _kv_map.insert(std::pair(key, value)); + } while (end_pos != std::string::npos); + } + + bool container(const std::string& k, const std::string& v) const { + std::map::const_iterator found = + _kv_map.find(k); + if (found == _kv_map.end()) { + // key not found + return false; + } + + if (v.compare(found->second) != 0) { + // value not equals + return false; + } + return true; + } + + private: + std::map _kv_map; + }; + + TagFilter(const std::string& key, const std::string& val) { + _key = key; + _value = val; + } + + bool Accept(const brpc::ServerNode& server) const { + TagHelper helper(server.tag); + return helper.container(_key, _value); + } + + private: + std::string _key; + std::string _value; +}; + +class BvarWrapper { + public: + virtual void update_latency(int64_t acc) = 0; + virtual void update_average(int64_t acc) = 0; +}; + +class LatencyWrapper : public BvarWrapper { + public: + explicit LatencyWrapper(const std::string& name) : _ltc(name + "_ltc") {} + + void update_latency(int64_t acc) { _ltc << acc; } + + void update_average(int64_t acc) { + LOG(ERROR) << "Cannot update average to a LatencyRecorder"; + } + + private: + bvar::LatencyRecorder _ltc; +}; + +class AverageWrapper : public BvarWrapper { + public: + explicit AverageWrapper(const std::string& name) + : _win(name + "_avg", &_avg, ::bvar::FLAGS_bvar_dump_interval) {} + + void update_latency(int64_t acc) { + LOG(ERROR) << "Cannot update latency to a AverageWrapper"; + } + + void update_average(int64_t acc) { _avg << acc; } + + private: + bvar::IntRecorder _avg; + bvar::Window _win; +}; + +struct StubTLS { + StubTLS() { + predictor_pools.clear(); + request_pools.clear(); + response_pools.clear(); + } + + std::vector predictor_pools; + std::vector request_pools; + std::vector response_pools; +}; + +template +class StubImpl : public Stub { + public: + typedef google::protobuf::Message Message; + + StubImpl() + : _channel(NULL), + _pchannel(NULL), + _gchannel(NULL), + _service_stub(NULL), + _infer(NULL), + _debug(NULL) {} + ~StubImpl() {} + + int initialize(const VariantInfo& var, + const std::string& ep, + const std::string* tag, + const std::string* tag_value); + + Predictor* fetch_predictor(); + int return_predictor(Predictor* predictor); + int return_predictor(Predictor* predictor) const; + + Message* fetch_request(); + int return_request(Message* request); + int return_request(Message* request) const; + + Message* fetch_response(); + int return_response(Message* response); + int return_response(Message* response) const; + + int thrd_initialize(); + int thrd_clear(); + int thrd_finalize(); + + const std::string& which_endpoint() const { return _endpoint; } + + private: + google::protobuf::RpcChannel* init_channel( + const VariantInfo& var, brpc::NamingServiceFilter* filter = NULL); + + brpc::ParallelChannel* init_pchannel(brpc::Channel* sub_channel, + uint32_t channel_count, + uint32_t package_size, + const brpc::ChannelOptions& options); + + StubTLS* get_tls() { + return static_cast(bthread_getspecific(_bthread_key)); + } + + private: + brpc::Channel* _channel; + brpc::ParallelChannel* _pchannel; + google::protobuf::RpcChannel* _gchannel; + T* _service_stub; + const google::protobuf::MethodDescriptor* _infer; + const google::protobuf::MethodDescriptor* _debug; + std::string _endpoint; + RpcParameters _options; + std::string _tag; + uint32_t _max_channel; + uint32_t _package_size; + + // tls handlers + bthread_key_t _bthread_key; + + // bvar variables + std::map _ltc_bvars; + std::map _avg_bvars; + mutable butil::Mutex _bvar_mutex; + +#ifndef DECLARE_LATENCY +#define DECLARE_LATENCY(item) LatencyWrapper* _ltc_##item; +#endif + + DECLARE_LATENCY(infer_sync); // 同步请求 + DECLARE_LATENCY(infer_async); // 异步请求 + DECLARE_LATENCY(infer_send); // 半同步send + DECLARE_LATENCY(infer_recv); // 半同步recv + DECLARE_LATENCY(infer_cancel); // 半同步cancel + DECLARE_LATENCY(debug); // 调试请求 + DECLARE_LATENCY(rpc_init); // rpc reset + DECLARE_LATENCY(thrd_clear); // thrd clear + DECLARE_LATENCY(pack_map); // thrd clear + DECLARE_LATENCY(pack_merge); // thrd clear + +#undef DECLARE_LATENCY + +#ifndef DECLARE_AVERAGE +#define DECLARE_AVERAGE(item) AverageWrapper* _avg_##item; +#endif + + DECLARE_AVERAGE(failure); // 失败请求数 + DECLARE_AVERAGE(item_size); // 单次请求item数 + DECLARE_AVERAGE(pack); // 单次请求分包数 + DECLARE_AVERAGE(pack_fail); // 单次请求分包失败数 + +#undef DECLARE_AVERAGE + + public: + void update_average(int64_t acc, const char* name) { + std::map::iterator iter = + _avg_bvars.find(std::string(AVG_PREFIX) + name); + if (iter == _avg_bvars.end()) { + LOG(ERROR) << "Not found average record:avg_" << name; + return; + } + + iter->second->update_average(acc); + } + + void update_latency(int64_t acc, const char* name) { + std::map::iterator iter = + _ltc_bvars.find(std::string(LTC_PREFIX) + name); + if (iter == _ltc_bvars.end()) { + LOG(ERROR) << "Not found latency record:ltc_" << name; + return; + } + + iter->second->update_latency(acc); + } +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu + +#include "stub_impl.hpp" diff --git a/sdk-cpp/include/stub_impl.hpp b/core/sdk-cpp/include/stub_impl.hpp similarity index 100% rename from sdk-cpp/include/stub_impl.hpp rename to core/sdk-cpp/include/stub_impl.hpp diff --git a/core/sdk-cpp/include/utils.h b/core/sdk-cpp/include/utils.h new file mode 100644 index 0000000000000000000000000000000000000000..49ba64723536ffd29d6ebac7c1a4583d1e353c39 --- /dev/null +++ b/core/sdk-cpp/include/utils.h @@ -0,0 +1,60 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/sdk-cpp/include/common.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +inline int str_split(const std::string& source, + const std::string& delim, + std::vector* vector_spliter) { + int delim_length = delim.length(); + int total_length = source.length(); + int last = 0; + + if (delim_length == 0) { + vector_spliter->push_back(source); + return 0; + } + + if (delim_length == 1) { + size_t index = source.find_first_of(delim, last); + while (index != std::string::npos) { + vector_spliter->push_back(source.substr(last, index - last)); + last = index + delim_length; + index = source.find_first_of(delim, last); + } + } else { + size_t index = source.find(delim, last); + while (index != std::string::npos) { + vector_spliter->push_back(source.substr(last, index - last)); + last = index + delim_length; + index = source.find(delim, last); + } + } + + if (last < total_length) { + vector_spliter->push_back(source.substr(last, total_length - last)); + } + return 0; +} + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/include/variant.h b/core/sdk-cpp/include/variant.h new file mode 100644 index 0000000000000000000000000000000000000000..b34ac1ce8a33dde8286f456240ffa5bede2fd26f --- /dev/null +++ b/core/sdk-cpp/include/variant.h @@ -0,0 +1,62 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/endpoint_config.h" +#include "core/sdk-cpp/include/predictor.h" +#include "core/sdk-cpp/include/stub.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +class Variant { + friend class VariantRouterBase; + + public: + virtual ~Variant() {} + + Variant() : _default_stub(NULL) { _stub_map.clear(); } + + int initialize(const EndpointInfo& ep_info, const VariantInfo& var_info); + + int thrd_initialize(); + + int thrd_clear(); + + int thrd_finalize(); + + Predictor* get_predictor(const void* params); + + Predictor* get_predictor(); + + int ret_predictor(Predictor* predictor); + + const std::string& variant_tag() const { return _variant_tag; } + + private: + std::string _endpoint_name; + std::string _stub_service; + + std::string _variant_tag; + std::map _stub_map; + Stub* _default_stub; +}; + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/proto/CMakeLists.txt b/core/sdk-cpp/proto/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5bc378398f341025d48b1d39d22785305aba2dea --- /dev/null +++ b/core/sdk-cpp/proto/CMakeLists.txt @@ -0,0 +1,77 @@ +function(PROTOBUF_GENERATE_SERVING_CPP FOR_SERVING_SIDE SRCS HDRS ) + if(NOT ARGN) + message(SEND_ERROR "Error: PROTOBUF_GENERATE_SERVING_CPP() called without any proto files") + return() + endif() + + if(PROTOBUF_GENERATE_CPP_APPEND_PATH) + # Create an include path for each file specified + foreach(FIL ${ARGN}) + get_filename_component(ABS_FIL ${FIL} ABSOLUTE) + get_filename_component(ABS_PATH ${ABS_FIL} PATH) + list(FIND _protobuf_include_path ${ABS_PATH} _contains_already) + if(${_contains_already} EQUAL -1) + list(APPEND _protobuf_include_path -I ${ABS_PATH}) + endif() + endforeach() + else() + set(_protobuf_include_path -I ${CMAKE_CURRENT_SOURCE_DIR}) + endif() + + if(DEFINED PROTOBUF_IMPORT_DIRS) + foreach(DIR ${Protobuf_IMPORT_DIRS}) + get_filename_component(ABS_PATH ${DIR} ABSOLUTE) + list(FIND _protobuf_include_path ${ABS_PATH} _contains_already) + if(${_contains_already} EQUAL -1) + list(APPEND _protobuf_include_path -I ${ABS_PATH}) + endif() + endforeach() + endif() + + set(${SRCS}) + set(${HDRS}) + foreach(FIL ${ARGN}) + get_filename_component(ABS_FIL ${FIL} ABSOLUTE) + get_filename_component(FIL_WE ${FIL} NAME_WE) + + list(APPEND ${SRCS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.cc") + list(APPEND ${HDRS} "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h") + + if (${FOR_SERVING_SIDE}) + add_custom_command( + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.cc" + "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h" + COMMAND ${Protobuf_PROTOC_EXECUTABLE} + ARGS --cpp_out=${CMAKE_CURRENT_BINARY_DIR} + --pdcodegen_out=${CMAKE_CURRENT_BINARY_DIR} + --plugin=protoc-gen-pdcodegen=${CMAKE_BINARY_DIR}/core/pdcodegen/pdcodegen + --proto_path=${CMAKE_SOURCE_DIR}/core/predictor/proto + ${_protobuf_include_path} ${ABS_FIL} + DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE} + COMMENT "Running Paddle-serving C++ protocol buffer compiler on ${FIL}" + VERBATIM) + else() + add_custom_command( + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.cc" + "${CMAKE_CURRENT_BINARY_DIR}/${FIL_WE}.pb.h" + COMMAND ${Protobuf_PROTOC_EXECUTABLE} + ARGS --cpp_out=${CMAKE_CURRENT_BINARY_DIR} + --pdcodegen_out=${CMAKE_CURRENT_BINARY_DIR} + --plugin=protoc-gen-pdcodegen=${CMAKE_BINARY_DIR}/core/pdcodegen/pdcodegen + ${_protobuf_include_path} ${ABS_FIL} + DEPENDS ${ABS_FIL} ${Protobuf_PROTOC_EXECUTABLE} + COMMENT "Running Paddle-serving C++ protocol buffer compiler on ${FIL}" + VERBATIM) + endif() + endforeach() + + set_source_files_properties(${${SRCS}} ${${HDRS}} PROPERTIES GENERATED TRUE) + set(${SRCS} ${${SRCS}} PARENT_SCOPE) + set(${HDRS} ${${HDRS}} PARENT_SCOPE) +endfunction() + +FILE(GLOB protos ${CMAKE_CURRENT_LIST_DIR}/*.proto) +list(APPEND protos ${CMAKE_SOURCE_DIR}/core//predictor/proto/pds_option.proto + ${CMAKE_SOURCE_DIR}/core//predictor/proto/builtin_format.proto) +PROTOBUF_GENERATE_SERVING_CPP(FALSE PROTO_SRCS PROTO_HDRS ${protos}) +LIST(APPEND sdk_cpp_srcs ${PROTO_SRCS}) diff --git a/sdk-cpp/proto/bert_service.proto b/core/sdk-cpp/proto/bert_service.proto similarity index 100% rename from sdk-cpp/proto/bert_service.proto rename to core/sdk-cpp/proto/bert_service.proto diff --git a/sdk-cpp/proto/ctr_prediction.proto b/core/sdk-cpp/proto/ctr_prediction.proto similarity index 100% rename from sdk-cpp/proto/ctr_prediction.proto rename to core/sdk-cpp/proto/ctr_prediction.proto diff --git a/sdk-cpp/proto/default_schema.proto b/core/sdk-cpp/proto/default_schema.proto similarity index 100% rename from sdk-cpp/proto/default_schema.proto rename to core/sdk-cpp/proto/default_schema.proto diff --git a/sdk-cpp/proto/dense_service.proto b/core/sdk-cpp/proto/dense_service.proto similarity index 100% rename from sdk-cpp/proto/dense_service.proto rename to core/sdk-cpp/proto/dense_service.proto diff --git a/sdk-cpp/proto/echo_kvdb_service.proto b/core/sdk-cpp/proto/echo_kvdb_service.proto similarity index 100% rename from sdk-cpp/proto/echo_kvdb_service.proto rename to core/sdk-cpp/proto/echo_kvdb_service.proto diff --git a/sdk-cpp/proto/echo_service.proto b/core/sdk-cpp/proto/echo_service.proto similarity index 100% rename from sdk-cpp/proto/echo_service.proto rename to core/sdk-cpp/proto/echo_service.proto diff --git a/core/sdk-cpp/proto/general_model_service.proto b/core/sdk-cpp/proto/general_model_service.proto new file mode 100644 index 0000000000000000000000000000000000000000..d68e8d64aadae03dc397afcd7380f37cfeb46379 --- /dev/null +++ b/core/sdk-cpp/proto/general_model_service.proto @@ -0,0 +1,48 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +import "pds_option.proto"; +import "builtin_format.proto"; +package baidu.paddle_serving.predictor.general_model; + +option cc_generic_services = true; + +message Tensor { + repeated bytes data = 1; + optional int32 elem_type = 2; + repeated int32 shape = 3; +}; + +message FeedInst { + repeated Tensor tensor_array = 1; +}; + +message FetchInst { + repeated Tensor tensor_array = 1; +}; + +message Request { + repeated FeedInst insts = 1; +}; + +message Response { + repeated FetchInst insts = 1; +}; + +service GeneralModelService { + rpc inference(Request) returns (Response); + rpc debug(Request) returns (Response); + option (pds.options).generate_stub = true; +}; diff --git a/sdk-cpp/proto/image_class.proto b/core/sdk-cpp/proto/image_class.proto similarity index 100% rename from sdk-cpp/proto/image_class.proto rename to core/sdk-cpp/proto/image_class.proto diff --git a/sdk-cpp/proto/int64tensor_service.proto b/core/sdk-cpp/proto/int64tensor_service.proto similarity index 100% rename from sdk-cpp/proto/int64tensor_service.proto rename to core/sdk-cpp/proto/int64tensor_service.proto diff --git a/core/sdk-cpp/proto/load_general_model_service.proto b/core/sdk-cpp/proto/load_general_model_service.proto new file mode 100644 index 0000000000000000000000000000000000000000..c58f79ecd6b00e82bd959d24b20ffaa653360d45 --- /dev/null +++ b/core/sdk-cpp/proto/load_general_model_service.proto @@ -0,0 +1,30 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +import "pds_option.proto"; +package baidu.paddle_serving.predictor.load_general_model_service; + +option cc_generic_services = true; + +message RequestAndResponse { + required int32 a = 1; + required float b = 2; +}; + +service LoadGeneralModelService { + rpc inference(RequestAndResponse) returns (RequestAndResponse); + rpc debug(RequestAndResponse) returns (RequestAndResponse); + option (pds.options).generate_stub = true; +}; diff --git a/sdk-cpp/proto/sparse_service.proto b/core/sdk-cpp/proto/sparse_service.proto similarity index 100% rename from sdk-cpp/proto/sparse_service.proto rename to core/sdk-cpp/proto/sparse_service.proto diff --git a/sdk-cpp/proto/text_classification.proto b/core/sdk-cpp/proto/text_classification.proto similarity index 100% rename from sdk-cpp/proto/text_classification.proto rename to core/sdk-cpp/proto/text_classification.proto diff --git a/sdk-cpp/src/CMakeLists.txt b/core/sdk-cpp/src/CMakeLists.txt similarity index 100% rename from sdk-cpp/src/CMakeLists.txt rename to core/sdk-cpp/src/CMakeLists.txt diff --git a/core/sdk-cpp/src/abtest.cpp b/core/sdk-cpp/src/abtest.cpp new file mode 100644 index 0000000000000000000000000000000000000000..de594048c65de4724b158405e827d4bd72645cb5 --- /dev/null +++ b/core/sdk-cpp/src/abtest.cpp @@ -0,0 +1,105 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/sdk-cpp/include/abtest.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +int WeightedRandomRender::initialize(const google::protobuf::Message& conf) { + srand((unsigned)time(NULL)); + try { + const configure::WeightedRandomRenderConf& weighted_random_render_conf = + dynamic_cast(conf); + + std::string weights = weighted_random_render_conf.variant_weight_list(); + + std::vector splits; + if (str_split(weights, WEIGHT_SEPERATOR, &splits) != 0) { + LOG(ERROR) << "Failed split string:" << weights; + return -1; + } + + uint32_t weight_size = splits.size(); + _normalized_sum = 0; + for (uint32_t wi = 0; wi < weight_size; ++wi) { + char* end_pos = NULL; + uint32_t ratio = strtoul(splits[wi].c_str(), &end_pos, 10); + if (end_pos == splits[wi].c_str()) { + LOG(ERROR) << "Error ratio(uint32) format:" << splits[wi] << " at " + << wi; + return -1; + } + + _variant_weight_list.push_back(ratio); + _normalized_sum += ratio; + } + + if (_normalized_sum <= 0) { + LOG(ERROR) << "Zero normalized weight sum"; + return -1; + } + + LOG(INFO) << "Succ read weights list: " << weights + << ", count: " << _variant_weight_list.size() + << ", normalized: " << _normalized_sum; + } catch (std::bad_cast& e) { + LOG(ERROR) << "Failed init WeightedRandomRender" + << "from configure, err:" << e.what(); + return -1; + } catch (...) { + LOG(ERROR) << "Failed init WeightedRandomRender" + << "from configure, err message is unkown."; + return -1; + } + + return 0; +} + +Variant* WeightedRandomRender::route(const VariantList& variants, + const void* params) { + return route(variants); +} + +Variant* WeightedRandomRender::route(const VariantList& variants) { + if (variants.size() != _variant_weight_list.size()) { + LOG(ERROR) << "#(Weights) is not equal #(Stubs)" + << ", size: " << _variant_weight_list.size() << " vs. " + << variants.size(); + return NULL; + } + + uint32_t sample = rand() % _normalized_sum; // NOLINT + uint32_t cand_size = _variant_weight_list.size(); + uint32_t cur_total = 0; + for (uint32_t ci = 0; ci < cand_size; ++ci) { + cur_total += _variant_weight_list[ci]; + if (sample < cur_total) { + LOG(INFO) << "Sample " << sample << " on " << ci + << ", _normalized: " << _normalized_sum + << ", weight: " << _variant_weight_list[ci]; + return variants[ci]; + } + } + + LOG(ERROR) << "Errors accurs in sampling, sample:" << sample + << ", total: " << _normalized_sum; + + return NULL; +} + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/src/config_manager.cpp b/core/sdk-cpp/src/config_manager.cpp new file mode 100644 index 0000000000000000000000000000000000000000..aee1a2d468efa1fd0134883a36267ce15d739700 --- /dev/null +++ b/core/sdk-cpp/src/config_manager.cpp @@ -0,0 +1,243 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/sdk-cpp/include/config_manager.h" +#ifdef BCLOUD +#include "baidu/rpc/server.h" +#else +#include "brpc/server.h" +#endif +#include "core/sdk-cpp/include/abtest.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +using configure::SDKConf; + +int EndpointConfigManager::create(const char* path, const char* file) { + _endpoint_config_path = path; + _endpoint_config_file = file; + + if (load() != 0) { + LOG(ERROR) << "Failed reload endpoint config"; + return -1; + } + + return 0; +} + +int EndpointConfigManager::load() { + try { + SDKConf sdk_conf; + if (configure::read_proto_conf(_endpoint_config_path.c_str(), + _endpoint_config_file.c_str(), + &sdk_conf) != 0) { + LOG(ERROR) << "Failed initialize endpoint list" + << ", config: " << _endpoint_config_path << "/" + << _endpoint_config_file; + return -1; + } + + VariantInfo default_var; + if (init_one_variant(sdk_conf.default_variant_conf(), default_var) != 0) { + LOG(ERROR) << "Failed read default var conf"; + return -1; + } + + uint32_t ep_size = sdk_conf.predictors_size(); + for (uint32_t ei = 0; ei < ep_size; ++ei) { + EndpointInfo ep; + if (init_one_endpoint(sdk_conf.predictors(ei), ep, default_var) != 0) { + LOG(ERROR) << "Failed read endpoint info at: " << ei; + return -1; + } + + std::map::iterator it; + if (_ep_map.find(ep.endpoint_name) != _ep_map.end()) { + LOG(ERROR) << "Cannot insert duplicated endpoint" + << ", ep name: " << ep.endpoint_name; + } + + std::pair::iterator, bool> r = + _ep_map.insert(std::make_pair(ep.endpoint_name, ep)); + if (!r.second) { + LOG(ERROR) << "Failed insert endpoint, name" << ep.endpoint_name; + return -1; + } + } + } catch (std::exception& e) { + LOG(ERROR) << "Failed load configure" << e.what(); + return -1; + } + LOG(INFO) << "Success reload endpoint config file, id: " + << _current_endpointmap_id; + return 0; +} + +int EndpointConfigManager::init_one_endpoint(const configure::Predictor& conf, + EndpointInfo& ep, + const VariantInfo& dft_var) { + try { + // name + ep.endpoint_name = conf.name(); + // stub + ep.stub_service = conf.service_name(); + // abtest + ConfigItem ep_router; + PARSE_CONF_ITEM(conf, ep_router, endpoint_router, -1); + if (ep_router.init) { + if (ep_router.value != "WeightedRandomRender") { + LOG(ERROR) << "endpointer_router unrecognized " << ep_router.value; + return -1; + } + + EndpointRouterBase* router = + EndpointRouterFactory::instance().generate_object(ep_router.value); + + const configure::WeightedRandomRenderConf& router_conf = + conf.weighted_random_render_conf(); + if (!router || router->initialize(router_conf) != 0) { + LOG(ERROR) << "Failed fetch valid ab test strategy" + << ", name:" << ep_router.value; + return -1; + } + ep.ab_test = router; + } + + // varlist + uint32_t var_size = conf.variants_size(); + for (uint32_t vi = 0; vi < var_size; ++vi) { + VariantInfo var; + if (merge_variant(dft_var, conf.variants(vi), var) != 0) { + LOG(ERROR) << "Failed merge variant info at: " << vi; + return -1; + } + + ep.vars.push_back(var); + } + + if (ep.vars.size() > 1 && ep.ab_test == NULL) { + LOG(ERROR) << "EndpointRouter must be configured, when" + << " #Variants > 1."; + return -1; + } + + LOG(INFO) << "Succ load one endpoint, name: " << ep.endpoint_name + << ", count of variants: " << ep.vars.size() << "."; + } catch (std::exception& e) { + LOG(ERROR) << "Exception acccurs when load endpoint conf" + << ", message: " << e.what(); + return -1; + } + return 0; +} + +int EndpointConfigManager::init_one_variant(const configure::VariantConf& conf, + VariantInfo& var) { + try { + // Connect + const configure::ConnectionConf& conn = conf.connection_conf(); + + PARSE_CONF_ITEM(conn, var.connection.tmo_conn, connect_timeout_ms, -1); + PARSE_CONF_ITEM(conn, var.connection.tmo_rpc, rpc_timeout_ms, -1); + PARSE_CONF_ITEM( + conn, var.connection.tmo_hedge, hedge_request_timeout_ms, -1); + PARSE_CONF_ITEM( + conn, var.connection.cnt_retry_conn, connect_retry_count, -1); + PARSE_CONF_ITEM( + conn, var.connection.cnt_retry_hedge, hedge_fetch_retry_count, -1); + PARSE_CONF_ITEM( + conn, var.connection.cnt_maxconn_per_host, max_connection_per_host, -1); + PARSE_CONF_ITEM(conn, var.connection.type_conn, connection_type, -1); + + // Naming + const configure::NamingConf& name = conf.naming_conf(); + + PARSE_CONF_ITEM(name, var.naminginfo.cluster_naming, cluster, -1); + PARSE_CONF_ITEM( + name, var.naminginfo.load_balancer, load_balance_strategy, -1); + PARSE_CONF_ITEM( + name, var.naminginfo.cluster_filter, cluster_filter_strategy, -1); + + // Rpc + const configure::RpcParameter& params = conf.rpc_parameter(); + + PARSE_CONF_ITEM(params, var.parameters.protocol, protocol, -1); + PARSE_CONF_ITEM(params, var.parameters.compress_type, compress_type, -1); + PARSE_CONF_ITEM(params, var.parameters.package_size, package_size, -1); + PARSE_CONF_ITEM( + params, var.parameters.max_channel, max_channel_per_request, -1); + // Split + const configure::SplitConf& splits = conf.split_conf(); + + PARSE_CONF_ITEM(splits, var.splitinfo.split_tag, split_tag_name, -1); + PARSE_CONF_ITEM(splits, var.splitinfo.tag_cands_str, tag_candidates, -1); + if (parse_tag_values(var.splitinfo) != 0) { + LOG(ERROR) << "Failed parse tag_values:" + << var.splitinfo.tag_cands_str.value; + return -1; + } + + // tag + PARSE_CONF_ITEM(conf, var.parameters.route_tag, tag, -1); + } catch (...) { + LOG(ERROR) << "Failed load variant from configure unit"; + return -1; + } + + return 0; +} + +int EndpointConfigManager::merge_variant(const VariantInfo& default_var, + const configure::VariantConf& conf, + VariantInfo& merged_var) { + merged_var = default_var; + + return init_one_variant(conf, merged_var); +} + +int EndpointConfigManager::parse_tag_values(SplitParameters& split) { + split.tag_values.clear(); + if (!split.split_tag.init || !split.tag_cands_str.init) { + LOG(WARNING) << "split info not set, skip..."; + return 0; + } + + static const char SPLIT_DELIM = ','; + const std::string& tag_str = split.tag_cands_str.value; + std::string::size_type start_pos = 0; + std::string::size_type end_pos; + + do { + end_pos = tag_str.find(SPLIT_DELIM, start_pos); + std::string tag_value_str; + if (end_pos == std::string::npos) { + tag_value_str = tag_str.substr(start_pos); + } else { + tag_value_str = tag_str.substr(start_pos, end_pos - start_pos); + start_pos = end_pos + 1; + } + + split.tag_values.push_back(tag_value_str); + } while (end_pos != std::string::npos); + + return 0; +} + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/core/sdk-cpp/src/endpoint.cpp b/core/sdk-cpp/src/endpoint.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fb1e32d193cf618194bf2849a004cbc88c46cceb --- /dev/null +++ b/core/sdk-cpp/src/endpoint.cpp @@ -0,0 +1,118 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/sdk-cpp/include/endpoint.h" +#include "core/sdk-cpp/include/factory.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +int Endpoint::initialize(const EndpointInfo& ep_info) { + _variant_list.clear(); + _endpoint_name = ep_info.endpoint_name; + _abtest_router = static_cast(ep_info.ab_test); + uint32_t var_size = ep_info.vars.size(); + for (uint32_t vi = 0; vi < var_size; ++vi) { + const VariantInfo& var_info = ep_info.vars[vi]; + Variant* var = new (std::nothrow) Variant; + if (!var || var->initialize(ep_info, var_info) != 0) { + LOG(ERROR) << "Failed initialize variant, tag:" + << var_info.parameters.route_tag.value + << ", endpoint: " << ep_info.endpoint_name + << ", var index: " << vi; + return -1; + } + _variant_list.push_back(var); + LOG(INFO) << "Succ create variant: " << vi + << ", endpoint:" << _endpoint_name; + } + + return 0; +} + +int Endpoint::thrd_initialize() { + uint32_t var_size = _variant_list.size(); + for (uint32_t vi = 0; vi < var_size; ++vi) { + Variant* var = _variant_list[vi]; + if (!var || var->thrd_initialize()) { + LOG(ERROR) << "Failed thrd initialize var: " << vi; + return -1; + } + } + LOG(WARNING) << "Succ thrd initialize all vars: " << var_size; + return 0; +} + +int Endpoint::thrd_clear() { + uint32_t var_size = _variant_list.size(); + for (uint32_t vi = 0; vi < var_size; ++vi) { + Variant* var = _variant_list[vi]; + if (!var || var->thrd_clear()) { + LOG(ERROR) << "Failed thrd clear var: " << vi; + return -1; + } + } + return 0; +} + +int Endpoint::thrd_finalize() { + uint32_t var_size = _variant_list.size(); + for (uint32_t vi = 0; vi < var_size; ++vi) { + Variant* var = _variant_list[vi]; + if (!var || var->thrd_finalize()) { + LOG(ERROR) << "Failed thrd finalize var: " << vi; + return -1; + } + } + LOG(INFO) << "Succ thrd finalize all vars: " << var_size; + return 0; +} + +Predictor* Endpoint::get_predictor() { + if (_variant_list.size() == 1) { + if (_variant_list[0] == NULL) { + LOG(ERROR) << "Not valid variant info"; + return NULL; + } + return _variant_list[0]->get_predictor(); + } + + if (_abtest_router == NULL) { + LOG(FATAL) << "Not valid abtest_router!"; + return NULL; + } + + Variant* var = _abtest_router->route(_variant_list); + if (!var) { + LOG(FATAL) << "get null var from endpoint"; + return NULL; + } + + return var->get_predictor(); +} + +int Endpoint::ret_predictor(Predictor* predictor) { + const Stub* stub = predictor->stub(); + if (!stub || stub->return_predictor(predictor) != 0) { + LOG(ERROR) << "Failed return predictor to pool"; + return -1; + } + + return 0; +} + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/src/predictor_sdk.cpp b/core/sdk-cpp/src/predictor_sdk.cpp new file mode 100644 index 0000000000000000000000000000000000000000..8a8575a9a0e148127924048a1e5668b2d9b462f0 --- /dev/null +++ b/core/sdk-cpp/src/predictor_sdk.cpp @@ -0,0 +1,121 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/sdk-cpp/include/predictor_sdk.h" +#include "core/sdk-cpp/include/abtest.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +int PredictorApi::register_all() { + if (WeightedRandomRender::register_self() != 0) { + LOG(ERROR) << "Failed register WeightedRandomRender"; + return -1; + } + + LOG(WARNING) << "Succ register all components!"; + + return 0; +} + +int PredictorApi::create(const char* path, const char* file) { + if (register_all() != 0) { + LOG(ERROR) << "Failed do register all!"; + return -1; + } + + if (_config_manager.create(path, file) != 0) { + LOG(ERROR) << "Failed create config manager from conf:" << path << "/" + << file; + return -1; + } + + const std::map& map = _config_manager.config(); + std::map::const_iterator it; + for (it = map.begin(); it != map.end(); ++it) { + const EndpointInfo& ep_info = it->second; + Endpoint* ep = new (std::nothrow) Endpoint(); + if (ep->initialize(ep_info) != 0) { + LOG(ERROR) << "Failed intialize endpoint:" << ep_info.endpoint_name; + return -1; + } + + if (_endpoints.find(ep_info.endpoint_name) != _endpoints.end()) { + LOG(ERROR) << "Cannot insert duplicated endpoint:" + << ep_info.endpoint_name; + return -1; + } + + LOG(INFO) << "endpoint name: " << ep_info.endpoint_name; + + std::pair::iterator, bool> r = + _endpoints.insert(std::make_pair(ep_info.endpoint_name, ep)); + if (!r.second) { + LOG(ERROR) << "Failed insert endpoint:" << ep_info.endpoint_name; + return -1; + } + + LOG(INFO) << "Succ create endpoint instance with name: " + << ep_info.endpoint_name; + } + + return 0; +} + +int PredictorApi::thrd_initialize() { + std::map::const_iterator it; + for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { + Endpoint* ep = it->second; + if (ep->thrd_initialize() != 0) { + LOG(ERROR) << "Failed thrd initialize endpoint:" << it->first; + return -1; + } + + LOG(WARNING) << "Succ thrd initialize endpoint:" << it->first; + } + return 0; +} + +int PredictorApi::thrd_clear() { + std::map::const_iterator it; + for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { + Endpoint* ep = it->second; + if (ep->thrd_clear() != 0) { + LOG(ERROR) << "Failed thrd clear endpoint:" << it->first; + return -1; + } + } + return 0; +} + +int PredictorApi::thrd_finalize() { + std::map::const_iterator it; + for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { + Endpoint* ep = it->second; + if (ep->thrd_finalize() != 0) { + LOG(ERROR) << "Failed thrd finalize endpoint:" << it->first; + return -1; + } + + LOG(INFO) << "Succ thrd finalize endpoint:" << it->first; + } + return 0; +} + +void PredictorApi::destroy() { return; } + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/core/sdk-cpp/src/variant.cpp b/core/sdk-cpp/src/variant.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c11d18285b5bec6bb8982bbfb3feb7b6879a073d --- /dev/null +++ b/core/sdk-cpp/src/variant.cpp @@ -0,0 +1,142 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "core/sdk-cpp/include/variant.h" +#include "core/sdk-cpp/include/factory.h" + +namespace baidu { +namespace paddle_serving { +namespace sdk_cpp { + +int Variant::initialize(const EndpointInfo& ep_info, + const VariantInfo& var_info) { + _endpoint_name = ep_info.endpoint_name; + _stub_service = ep_info.stub_service; + + _variant_tag = var_info.parameters.route_tag.value; + _stub_map.clear(); + + const SplitParameters& split_info = var_info.splitinfo; + uint32_t tag_size = split_info.tag_values.size(); + for (uint32_t ti = 0; ti < tag_size; ++ti) { // split + Stub* stub = StubFactory::instance().generate_object(_stub_service); + const std::string& tag_value = split_info.tag_values[ti]; + if (!stub || + stub->initialize(var_info, + ep_info.endpoint_name, + &split_info.split_tag.value, + &tag_value) != 0) { + LOG(ERROR) << "Failed init stub from factory" + << ", stub name: " << ep_info.stub_service + << ", filter tag: " << tag_value; + return -1; + } + + // 判重 + std::map::iterator iter = _stub_map.find(tag_value); + if (iter != _stub_map.end()) { + LOG(ERROR) << "duplicated tag value: " << tag_value; + return -1; + } + _stub_map[tag_value] = stub; + } + + if (_stub_map.size() > 0) { + LOG(INFO) << "Initialize variants from VariantInfo" + << ", stubs count: " << _stub_map.size(); + return 0; + } + + Stub* stub = StubFactory::instance().generate_object(ep_info.stub_service); + if (!stub || stub->initialize(var_info, _endpoint_name, NULL, NULL) != 0) { + LOG(ERROR) << "Failed init stub from factory" + << ", stub name: " << ep_info.stub_service; + return -1; + } + + _default_stub = stub; + LOG(INFO) << "Succ create default debug"; + return 0; +} + +int Variant::thrd_initialize() { + if (_stub_map.size() <= 0) { + return _default_stub->thrd_initialize(); + } + + std::map::iterator iter; + for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { + Stub* stub = iter->second; + if (!stub || stub->thrd_initialize() != 0) { + LOG(ERROR) << "Failed thrd initialize stub: " << iter->first; + return -1; + } + LOG(INFO) << "Succ thrd initialize stub:" << iter->first; + } + + LOG(WARNING) << "Succ thrd initialize all stubs"; + return 0; +} + +int Variant::thrd_clear() { + if (_stub_map.size() <= 0) { + return _default_stub->thrd_clear(); + } + + std::map::iterator iter; + for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { + Stub* stub = iter->second; + if (!stub || stub->thrd_clear() != 0) { + LOG(ERROR) << "Failed thrd clear stub: " << iter->first; + return -1; + } + } + return 0; +} + +int Variant::thrd_finalize() { + if (_stub_map.size() <= 0) { + return _default_stub->thrd_finalize(); + } + + std::map::iterator iter; + for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { + Stub* stub = iter->second; + if (!stub || stub->thrd_finalize() != 0) { + LOG(ERROR) << "Failed thrd finalize stub: " << iter->first; + return -1; + } + } + return 0; +} + +Predictor* Variant::get_predictor() { + if (_default_stub) { + return _default_stub->fetch_predictor(); + } + + return NULL; +} + +Predictor* Variant::get_predictor(const void* params) { + if (_default_stub) { + return _default_stub->fetch_predictor(); + } + + return NULL; +} + +} // namespace sdk_cpp +} // namespace paddle_serving +} // namespace baidu diff --git a/cube/cube-api/CMakeLists.txt b/cube/cube-api/CMakeLists.txt deleted file mode 100644 index 00053a569c57ab0c0ab710e36050300b80ca1993..0000000000000000000000000000000000000000 --- a/cube/cube-api/CMakeLists.txt +++ /dev/null @@ -1,80 +0,0 @@ -# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved. -# -# Licensed 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 - -protobuf_generate_cpp(PROTO_SRC PROTO_HEADER idl/cube.proto idl/control.proto) -# include PROTO_HEADER -include_directories(${CMAKE_CURRENT_BINARY_DIR}) - -if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") - include(CheckFunctionExists) - CHECK_FUNCTION_EXISTS(clock_gettime HAVE_CLOCK_GETTIME) - if(NOT HAVE_CLOCK_GETTIME) - set(DEFINE_CLOCK_GETTIME "-DNO_CLOCK_GETTIME_IN_MAC") - endif() -endif() - -set(CMAKE_CXX_FLAGS "${CMAKE_CPP_FLAGS} -DNDEBUG -O2 -D__const__= -pipe -W -Wall -Wno-unused-parameter -fPIC -fno-omit-frame-pointer") - -if(CMAKE_VERSION VERSION_LESS "3.1.3") - if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - endif() - if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - endif() -else() - set(CMAKE_CXX_STANDARD 11) - set(CMAKE_CXX_STANDARD_REQUIRED ON) -endif() - -add_executable(cube-cli src/cube_cli.cpp src/cube_api.cpp src/meta.cpp - ${PROTO_SRC} ${PROTO_HEADER}) - -add_library(cube-api STATIC src/cube_api.cpp src/meta.cpp - ${PROTO_SRC} ${PROTO_HEADER}) - -set(DYNAMIC_LIB - gflags - protobuf - leveldb - -lssl - -lcrypto - ) - -if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") - set(DYNAMIC_LIB ${DYNAMIC_LIB} - "-framework CoreFoundation" - "-framework CoreGraphics" - "-framework CoreData" - "-framework CoreText" - "-framework Security" - "-framework Foundation" - "-Wl,-U,_MallocExtension_ReleaseFreeMemory" - "-Wl,-U,_ProfilerStart" - "-Wl,-U,_ProfilerStop") -endif() - -target_link_libraries(cube-cli brpc ${DYNAMIC_LIB} -lpthread -ldl -lz) -target_link_libraries(cube-api ${DYNAMIC_LIB} brpc -lpthread -ldl -lz) - -# install -install(TARGETS cube-api - ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib - ) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/cube-api) - -FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) -install(FILES ${inc} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/cube-api) diff --git a/cube/cube-api/include/cube_api.h b/cube/cube-api/include/cube_api.h deleted file mode 100644 index c5059b9fea3a1d03cf4e50f8cb8dc994307d31ad..0000000000000000000000000000000000000000 --- a/cube/cube-api/include/cube_api.h +++ /dev/null @@ -1,115 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include - -#ifdef BCLOUD -#include "baidu/rpc/server.h" -#else -#include "brpc/server.h" -#endif - -#include "cube/cube-api/cube.pb.h" -#include "cube/cube-api/include/meta.h" - -namespace rec { -namespace mcube { - -struct CubeValue { - int error; - std::string buff; -}; - -class CubeAPI { - public: - static CubeAPI* instance(); - - static void cleanup(); - - public: - CubeAPI(); - ~CubeAPI(); - - /** - * @brief: init api, not thread safe, should be called before seek. - * @param [in] conf_file: filepath of config file. - * @return: error code. 0 for succ. - */ - int init(const char* conf_file); - - /** - * @brief: destroy api, should be called before program exit. - * @return: error code. 0 for succ. - */ - int destroy(); - - /** brief: get data from cube server, thread safe. - * @param [in] dict_name: dict name. - * @param [in] key: key to seek. - * @param [out] val: value of key. - * @return: error code. 0 for succ. - */ - int seek(const std::string& dict_name, const uint64_t& key, CubeValue* val); - - /** - * @brief: get data from cube server, thread safe. - * @param [in] dict_name: dict name. - * @param [in] keys: keys to seek. - * @param [out] vals: value of keys. - * @return: TODO - */ - int seek(const std::string& dict_name, - const std::vector& keys, - std::vector* vals); - - int opt_seek(const std::string& dict_name, - const std::vector& keys, - std::function parse); - - /** - * @brief: get data from cube server, thread safe. - * @param [in] dict_name: dict name. - * @param [in] keys: keys to seek. - * @param [out] vals: value of keys. - * @param [out] version: data version. - * @return: TODO - */ - int seek(const std::string& dict_name, - const std::vector& keys, - std::vector* vals, - std::string* version); - - int opt_seek(const std::string& dict_name, - const std::vector& keys, - std::function parse, - std::string* version); - - public: - static const char* error_msg(int error_code); - - private: - CubeAPI(const CubeAPI&) {} - - private: - Meta* _meta; - bthread_key_t _tls_key; - // void split(const std::vector& keys); -}; - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-api/src/cube_api.cpp b/cube/cube-api/src/cube_api.cpp deleted file mode 100644 index c481effae450889bbcf25c4e315edca3e8d88e6b..0000000000000000000000000000000000000000 --- a/cube/cube-api/src/cube_api.cpp +++ /dev/null @@ -1,686 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube/cube-api/include/cube_api.h" -#ifdef BCLOUD -#include -#include -#else -#include -#include -#endif - -#include -#include "cube/cube-api/include/cube_api_bvar.h" - -#include "cube/cube-api/include/error.h" -#include "cube/cube-api/include/meta.h" - -namespace { -static ::rec::mcube::CubeAPI* g_ins = NULL; -} - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -#endif - -namespace rec { -namespace mcube { - -struct DictRpcData { - std::vector sub_reqs; - std::vector sub_res; -}; - -static void dict_rpc_deleter(void* d) { delete static_cast(d); } - -static void sub_seek_done(DictResponse* response, - brpc::Controller* cntl, - std::vector* offset, - std::function parse) { - // std::unique_ptr response_guard(response); - // std::unique_ptr cntl_guard(cntl); - if (cntl->Failed()) { - for (int i = 0; i < response->values().size(); ++i) { - DictValue* val = response->mutable_values(i); - val->set_status(CubeError::E_SEEK_FAILED); - *val->mutable_value() = ""; - parse(val, (*offset)[i]); - } - } else { - for (int i = 0; i < response->values().size(); ++i) { - DictValue* val = response->mutable_values(i); - parse(val, (*offset)[i]); - } - } -} - -struct DoNothing : public google::protobuf::Closure { - void Run() {} -}; - -CubeAPI* CubeAPI::instance() { - if (g_ins == NULL) { - g_ins = new CubeAPI(); - } - - return g_ins; -} - -void CubeAPI::cleanup() { - if (g_ins != NULL) { - g_ins->destroy(); - delete g_ins; - g_ins = NULL; - } -} - -CubeAPI::CubeAPI() : _meta(NULL) {} -CubeAPI::~CubeAPI() { CHECK_EQ(0, bthread_key_delete(_tls_key)); } - -int CubeAPI::init(const char* conf_file) { - // init meta - - _meta = Meta::instance(); - int ret = _meta->init(conf_file); - - if (ret != 0) { - LOG(ERROR) << "Init cube meta failed"; - return ret; - } - - CHECK_EQ(0, bthread_key_create(&_tls_key, dict_rpc_deleter)); - - return 0; -} - -int CubeAPI::destroy() { - // Meta* meta = Meta::instance(); - if (_meta == NULL) { - LOG(WARNING) << "Destroy, cube meta is null"; - return 0; - } - - int ret = _meta->destroy(); - - if (ret != 0) { - LOG(WARNING) << "Destroy cube meta failed"; - } - - return 0; -} - -int CubeAPI::seek(const std::string& dict_name, - const uint64_t& key, - CubeValue* val) { - if (_meta == NULL) { - LOG(ERROR) << "seek, meta is null"; - return -1; - } - - MetaInfo* info = _meta->get_meta(dict_name); - - if (info == NULL) { - LOG(ERROR) << "get meta [" << dict_name << "] failed"; - return -1; - } - - int shard_id = key % info->shard_num; - DictRequest req; - DictResponse res; - - req.add_keys(key); - - ::brpc::Channel* chan = info->cube_conn[shard_id]; - - DictService_Stub* stub = new DictService_Stub(chan); - brpc::Controller* cntl = new ::brpc::Controller(); - - stub->seek(cntl, &req, &res, NULL); - - int ret = CubeError::E_OK; - if (cntl->Failed()) { - info->cube_rpcfail_num << 1; - - val->error = CubeError::E_SEEK_FAILED; - val->buff.assign(""); - - ret = CubeError::E_ALL_SEEK_FAILED; - LOG(WARNING) << "cube seek from shard [" << shard_id << "] failed [" - << cntl->ErrorText() << "]"; - } else if (res.values().size() > 0) { - DictValue* res_val = res.mutable_values(0); - if (static_cast(res_val->status()) == CubeError::E_NO_SUCH_KEY) { - g_cube_keys_miss_num << 1; - } - val->error = res_val->status(); - val->buff.swap(*res_val->mutable_value()); - } else { - val->error = CubeError::E_SEEK_FAILED; - val->buff.assign(""); - ret = CubeError::E_ALL_SEEK_FAILED; - } - info->cube_request_num << 1; - g_cube_keys_num << 1; - - // cleanup - delete stub; - stub = NULL; - delete cntl; - cntl = NULL; - - return ret; -} - -int CubeAPI::seek(const std::string& dict_name, - const std::vector& keys, - std::vector* vals) { - // Meta* meta = Meta::instance(); - if (_meta == NULL) { - LOG(ERROR) << "seek, meta is null"; - return -1; - } - - MetaInfo* info = _meta->get_meta(dict_name); - - if (info == NULL) { - LOG(ERROR) << "get meta [" << dict_name << "] failed"; - return -1; - } - - int shard_num = info->shard_num; - - DictRpcData* rpc_data = - static_cast(bthread_getspecific(_tls_key)); - - if (rpc_data == NULL) { - rpc_data = new DictRpcData; - CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); - } - - rpc_data->sub_reqs.resize(shard_num); - rpc_data->sub_res.resize(shard_num); - - std::vector> offset; - offset.resize(shard_num); - int init_cnt = keys.size() * 2 / shard_num; - - for (int i = 0; i < shard_num; ++i) { - offset[i].reserve(init_cnt); - } - - for (size_t i = 0; i < keys.size(); ++i) { - uint64_t shard_id = keys[i] % shard_num; - rpc_data->sub_reqs[shard_id].add_keys(keys[i]); - offset[shard_id].push_back(i); - } - - std::vector stubs(shard_num); - std::vector cntls(shard_num); - - for (int i = 0; i < shard_num; ++i) { - ::brpc::Channel* chan = info->cube_conn[i]; - stubs[i] = new DictService_Stub(chan); - cntls[i] = new ::brpc::Controller(); - } - - DoNothing do_nothing; - - for (int i = 0; i < shard_num; ++i) { - stubs[i]->seek( - cntls[i], &rpc_data->sub_reqs[i], &rpc_data->sub_res[i], &do_nothing); - } - - int cntls_failed_cnt = 0; - - for (int i = 0; i < shard_num; ++i) { - brpc::Join(cntls[i]->call_id()); - - if (cntls[i]->Failed()) { - ++cntls_failed_cnt; - LOG(WARNING) << "cube seek from shard [" << i << "] failed [" - << cntls[i]->ErrorText() << "]"; - } - } - - int ret = CubeError::E_OK; - - info->cube_request_num << 1; - - if (cntls_failed_cnt > 0) { - info->cube_rpcfail_num << 1; - if (cntls_failed_cnt == shard_num) { - ret = CubeError::E_ALL_SEEK_FAILED; - } else { - ret = CubeError::E_SEEK_FAILED; - } - } - - vals->resize(keys.size()); - - // merge - size_t miss_cnt = 0; - for (int i = 0; i < shard_num; ++i) { - if (cntls[i]->Failed()) { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - (*vals)[offset[i][j]].error = CubeError::E_SEEK_FAILED; - (*vals)[offset[i][j]].buff.assign(""); - } - } else { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - DictValue* val = rpc_data->sub_res[i].mutable_values(j); - if (static_cast(val->status()) == CubeError::E_NO_SUCH_KEY) { - miss_cnt += 1; - } - (*vals)[offset[i][j]].error = val->status(); - (*vals)[offset[i][j]].buff.swap(*val->mutable_value()); - } - } - } - - // bvar stats - g_cube_keys_num << keys.size(); - if (keys.size() > 0) { - g_cube_keys_miss_num << miss_cnt; - g_cube_value_size << (*vals)[0].buff.size(); - } - - // cleanup - for (int i = 0; i < shard_num; ++i) { - delete stubs[i]; - stubs[i] = NULL; - delete cntls[i]; - cntls[i] = NULL; - rpc_data->sub_reqs[i].Clear(); - rpc_data->sub_res[i].Clear(); - } - - return ret; -} - -int CubeAPI::opt_seek(const std::string& dict_name, - const std::vector& keys, - std::function parse) { - if (_meta == NULL) { - LOG(ERROR) << "seek, meta is null"; - return -1; - } - - MetaInfo* info = _meta->get_meta(dict_name); - - if (info == NULL) { - LOG(ERROR) << "get meta [" << dict_name << "] failed"; - return -1; - } - - int shard_num = info->shard_num; - - DictRpcData* rpc_data = - static_cast(bthread_getspecific(_tls_key)); - - if (rpc_data == NULL) { - rpc_data = new DictRpcData; - CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); - } - - rpc_data->sub_reqs.resize(shard_num); - rpc_data->sub_res.resize(shard_num); - - std::vector> offset; - offset.resize(shard_num); - int init_cnt = keys.size() * 2 / shard_num; - - for (int i = 0; i < shard_num; ++i) { - offset[i].reserve(init_cnt); - } - - for (size_t i = 0; i < keys.size(); ++i) { - uint64_t shard_id = keys[i] % shard_num; - rpc_data->sub_reqs[shard_id].add_keys(keys[i]); - offset[shard_id].push_back(i); - } - - std::vector stubs(shard_num); - std::vector cntls(shard_num); - - for (int i = 0; i < shard_num; ++i) { - ::brpc::Channel* chan = info->cube_conn[i]; - stubs[i] = new DictService_Stub(chan); - cntls[i] = new ::brpc::Controller(); - } - - for (int i = 0; i < shard_num; ++i) { - stubs[i]->seek(cntls[i], - &rpc_data->sub_reqs[i], - &rpc_data->sub_res[i], - brpc::NewCallback(sub_seek_done, - &rpc_data->sub_res[i], - cntls[i], - &(offset[i]), - parse)); - } - - int cntls_failed_cnt = 0; - - for (int i = 0; i < shard_num; ++i) { - brpc::Join(cntls[i]->call_id()); - - if (cntls[i]->Failed()) { - ++cntls_failed_cnt; - LOG(WARNING) << "cube seek from shard [" << i << "] failed [" - << cntls[i]->ErrorText() << "]"; - } - } - - int ret = CubeError::E_OK; - - info->cube_request_num << 1; - - if (cntls_failed_cnt > 0) { - info->cube_rpcfail_num << 1; - if (cntls_failed_cnt == shard_num) { - ret = CubeError::E_ALL_SEEK_FAILED; - } else { - ret = CubeError::E_SEEK_FAILED; - } - } - - // merge - size_t miss_cnt = 0; - for (int i = 0; i < shard_num; ++i) { - if (!cntls[i]->Failed()) { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - if (static_cast(rpc_data->sub_res[i].values(j).status()) == - CubeError::E_NO_SUCH_KEY) { - ++miss_cnt; - } - } - } - } - - // bvar stats - g_cube_keys_num << keys.size(); - if (keys.size() > 0) { - g_cube_keys_miss_num << miss_cnt; - } - - // cleanup - for (int i = 0; i < shard_num; ++i) { - delete stubs[i]; - stubs[i] = NULL; - delete cntls[i]; - cntls[i] = NULL; - rpc_data->sub_reqs[i].Clear(); - rpc_data->sub_res[i].Clear(); - } - - return ret; -} - -int CubeAPI::seek(const std::string& dict_name, - const std::vector& keys, - std::vector* vals, - std::string* version) { - // Meta* meta = Meta::instance(); - if (_meta == NULL) { - LOG(ERROR) << "seek, meta is null"; - return -1; - } - - MetaInfo* info = _meta->get_meta(dict_name); - - if (info == NULL) { - LOG(ERROR) << "get meta [" << dict_name << "] failed"; - return -1; - } - - int shard_num = info->shard_num; - - DictRpcData* rpc_data = - static_cast(bthread_getspecific(_tls_key)); - - if (rpc_data == NULL) { - rpc_data = new DictRpcData; - CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); - } - - rpc_data->sub_reqs.resize(shard_num); - rpc_data->sub_res.resize(shard_num); - - std::vector> offset; - offset.resize(shard_num); - int init_cnt = keys.size() * 2 / shard_num; - - for (int i = 0; i < shard_num; ++i) { - offset[i].reserve(init_cnt); - rpc_data->sub_reqs[i].set_version_required(true); - } - - for (size_t i = 0; i < keys.size(); ++i) { - uint64_t shard_id = keys[i] % shard_num; - rpc_data->sub_reqs[shard_id].add_keys(keys[i]); - offset[shard_id].push_back(i); - } - - std::vector stubs(shard_num); - std::vector cntls(shard_num); - - for (int i = 0; i < shard_num; ++i) { - ::brpc::Channel* chan = info->cube_conn[i]; - stubs[i] = new DictService_Stub(chan); - cntls[i] = new ::brpc::Controller(); - } - - DoNothing do_nothing; - - for (int i = 0; i < shard_num; ++i) { - stubs[i]->seek( - cntls[i], &rpc_data->sub_reqs[i], &rpc_data->sub_res[i], &do_nothing); - } - - int cntls_failed_cnt = 0; - - for (int i = 0; i < shard_num; ++i) { - brpc::Join(cntls[i]->call_id()); - - if (cntls[i]->Failed()) { - ++cntls_failed_cnt; - LOG(WARNING) << "cube seek from shard [" << i << "] failed [" - << cntls[i]->ErrorText() << "]"; - } - } - - int ret = CubeError::E_OK; - info->cube_request_num << 1; - - if (cntls_failed_cnt > 0) { - info->cube_rpcfail_num << 1; - if (cntls_failed_cnt == shard_num) { - ret = CubeError::E_ALL_SEEK_FAILED; - } else { - ret = CubeError::E_SEEK_FAILED; - } - } - - vals->resize(keys.size()); - - // merge - size_t miss_cnt = 0; - for (int i = 0; i < shard_num; ++i) { - if (cntls[i]->Failed()) { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - (*vals)[offset[i][j]].error = CubeError::E_SEEK_FAILED; - (*vals)[offset[i][j]].buff.assign(""); - } - } else { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - DictValue* val = rpc_data->sub_res[i].mutable_values(j); - if (static_cast(val->status()) == CubeError::E_NO_SUCH_KEY) { - miss_cnt += 1; - } - (*vals)[offset[i][j]].error = val->status(); - (*vals)[offset[i][j]].buff.swap(*val->mutable_value()); - } - if (version->compare(rpc_data->sub_res[i].version()) < 0) { - *version = rpc_data->sub_res[i].version(); - } - } - } - - // bvar stats - g_cube_keys_num << keys.size(); - if (keys.size() > 0) { - g_cube_keys_miss_num << miss_cnt; - g_cube_value_size << (*vals)[0].buff.size(); - } - - // cleanup - for (int i = 0; i < shard_num; ++i) { - delete stubs[i]; - stubs[i] = NULL; - delete cntls[i]; - cntls[i] = NULL; - rpc_data->sub_reqs[i].Clear(); - rpc_data->sub_res[i].Clear(); - } - - return ret; -} - -int CubeAPI::opt_seek(const std::string& dict_name, - const std::vector& keys, - std::function parse, - std::string* version) { - if (_meta == NULL) { - LOG(ERROR) << "seek, meta is null"; - return -1; - } - - MetaInfo* info = _meta->get_meta(dict_name); - - if (info == NULL) { - LOG(ERROR) << "get meta [" << dict_name << "] failed"; - return -1; - } - - int shard_num = info->shard_num; - - DictRpcData* rpc_data = - static_cast(bthread_getspecific(_tls_key)); - - if (rpc_data == NULL) { - rpc_data = new DictRpcData; - CHECK_EQ(0, bthread_setspecific(_tls_key, rpc_data)); - } - - rpc_data->sub_reqs.resize(shard_num); - rpc_data->sub_res.resize(shard_num); - - std::vector> offset; - offset.resize(shard_num); - int init_cnt = keys.size() * 2 / shard_num; - - for (int i = 0; i < shard_num; ++i) { - offset[i].reserve(init_cnt); - rpc_data->sub_reqs[i].set_version_required(true); - } - - for (size_t i = 0; i < keys.size(); ++i) { - uint64_t shard_id = keys[i] % shard_num; - rpc_data->sub_reqs[shard_id].add_keys(keys[i]); - offset[shard_id].push_back(i); - } - - std::vector stubs(shard_num); - std::vector cntls(shard_num); - - for (int i = 0; i < shard_num; ++i) { - ::brpc::Channel* chan = info->cube_conn[i]; - stubs[i] = new DictService_Stub(chan); - cntls[i] = new ::brpc::Controller(); - } - - for (int i = 0; i < shard_num; ++i) { - stubs[i]->seek(cntls[i], - &rpc_data->sub_reqs[i], - &rpc_data->sub_res[i], - brpc::NewCallback(sub_seek_done, - &rpc_data->sub_res[i], - cntls[i], - &(offset[i]), - parse)); - } - - int cntls_failed_cnt = 0; - - for (int i = 0; i < shard_num; ++i) { - brpc::Join(cntls[i]->call_id()); - - if (cntls[i]->Failed()) { - ++cntls_failed_cnt; - LOG(WARNING) << "cube seek from shard [" << i << "] failed [" - << cntls[i]->ErrorText() << "]"; - } - } - - int ret = CubeError::E_OK; - - info->cube_request_num << 1; - - if (cntls_failed_cnt > 0) { - info->cube_rpcfail_num << 1; - if (cntls_failed_cnt == shard_num) { - ret = CubeError::E_ALL_SEEK_FAILED; - } else { - ret = CubeError::E_SEEK_FAILED; - } - } - - // merge - size_t miss_cnt = 0; - for (int i = 0; i < shard_num; ++i) { - if (!cntls[i]->Failed()) { - for (int j = 0; j < rpc_data->sub_res[i].values().size(); ++j) { - if (static_cast(rpc_data->sub_res[i].values(j).status()) == - CubeError::E_NO_SUCH_KEY) { - ++miss_cnt; - } - } - if (version->compare(rpc_data->sub_res[i].version()) < 0) { - *version = rpc_data->sub_res[i].version(); - } - } - } - - // bvar stats - g_cube_keys_num << keys.size(); - if (keys.size() > 0) { - g_cube_keys_miss_num << miss_cnt; - } - - // cleanup - for (int i = 0; i < shard_num; ++i) { - delete stubs[i]; - stubs[i] = NULL; - delete cntls[i]; - cntls[i] = NULL; - rpc_data->sub_reqs[i].Clear(); - rpc_data->sub_res[i].Clear(); - } - - return ret; -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-api/src/cube_cli.cpp b/cube/cube-api/src/cube_cli.cpp deleted file mode 100644 index fb2b67fa8c65dc8b193c6a507edf43474a80e0b7..0000000000000000000000000000000000000000 --- a/cube/cube-api/src/cube_cli.cpp +++ /dev/null @@ -1,225 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include //NOLINT -#include "cube/cube-api/include/cube_api.h" -#define TIME_FLAG(flag) \ - struct timeval flag; \ - gettimeofday(&(flag), NULL); - -DEFINE_string(config_file, "./cube.conf", "m-cube config file"); -DEFINE_string(keys, "keys", "keys to seek"); -DEFINE_string(dict, "dict", "dict to seek"); -DEFINE_uint64(batch, 500, "batch size"); -DEFINE_int32(timeout, 200, "timeout in ms"); -DEFINE_int32(retry, 3, "retry times"); -DEFINE_bool(print_output, false, "print output flag"); -DEFINE_int32(thread_num, 1, "thread num"); -std::atomic g_concurrency(0); - -std::vector time_list; -std::vector request_list; - -namespace { -inline uint64_t time_diff(const struct timeval& start_time, - const struct timeval& end_time) { - return (end_time.tv_sec - start_time.tv_sec) * 1000000 + - (end_time.tv_usec - start_time.tv_usec); -} -} - -namespace rec { -namespace mcube { -std::string string_to_hex(const std::string& input) { - static const char* const lut = "0123456789ABCDEF"; - size_t len = input.length(); - - std::string output; - output.reserve(2 * len); - for (size_t i = 0; i < len; ++i) { - const unsigned char c = input[i]; - output.push_back(lut[c >> 4]); - output.push_back(lut[c & 15]); - } - return output; -} - -int run(int argc, char** argv, int thread_id) { - google::ParseCommandLineFlags(&argc, &argv, true); - - CubeAPI* cube = CubeAPI::instance(); - int ret = cube->init(FLAGS_config_file.c_str()); - if (ret != 0) { - LOG(ERROR) << "init cube api failed err=" << ret; - return ret; - } - /* - FILE* key_file = fopen(FLAGS_keys.c_str(), "r"); - if (key_file == NULL) { - LOG(ERROR) << "open key file [" << FLAGS_keys << "] failed"; - return -1; - } - */ - std::atomic seek_counter(0); - std::atomic seek_cost_total(0); - uint64_t seek_cost_max = 0; - uint64_t seek_cost_min = 500000; - - char buffer[1024]; - std::vector keys; - std::vector values; - - std::string line; - std::vector key_list; - std::ifstream key_file(FLAGS_keys.c_str()); - while (getline(key_file, line)) { - key_list.push_back(std::stoll(line)); - } - - uint64_t file_size = key_list.size(); - uint64_t index = 0; - uint64_t request = 0; - - while (g_concurrency.load() >= FLAGS_thread_num) { - } - g_concurrency++; - - while (index < file_size) { - // uint64_t key = strtoul(buffer, NULL, 10); - - keys.push_back(key_list[index]); - index += 1; - int ret = 0; - if (keys.size() > FLAGS_batch) { - TIME_FLAG(seek_start); - ret = cube->seek(FLAGS_dict, keys, &values); - TIME_FLAG(seek_end); - request += 1; - if (ret != 0) { - LOG(WARNING) << "cube seek failed"; - } else if (FLAGS_print_output) { - for (size_t i = 0; i < keys.size(); ++i) { - fprintf(stdout, - "key:%lu value:%s\n", - keys[i], - string_to_hex(values[i].buff).c_str()); - } - } - ++seek_counter; - uint64_t seek_cost = time_diff(seek_start, seek_end); - seek_cost_total += seek_cost; - if (seek_cost > seek_cost_max) { - seek_cost_max = seek_cost; - } - if (seek_cost < seek_cost_min) { - seek_cost_min = seek_cost; - } - - keys.clear(); - values.clear(); - } - } - /* - if (keys.size() > 0) { - int ret = 0; - values.resize(keys.size()); - TIME_FLAG(seek_start); - ret = cube->seek(FLAGS_dict, keys, &values); - TIME_FLAG(seek_end); - if (ret != 0) { - LOG(WARNING) << "cube seek failed"; - } else if (FLAGS_print_output) { - for (size_t i = 0; i < keys.size(); ++i) { - fprintf(stdout, - "key:%lu value:%s\n", - keys[i], - string_to_hex(values[i].buff).c_str()); - } - } - - ++seek_counter; - uint64_t seek_cost = time_diff(seek_start, seek_end); - seek_cost_total += seek_cost; - if (seek_cost > seek_cost_max) { - seek_cost_max = seek_cost; - } - if (seek_cost < seek_cost_min) { - seek_cost_min = seek_cost; - } - } - */ - g_concurrency--; - - // fclose(key_file); - - // ret = cube->destroy(); - if (ret != 0) { - LOG(WARNING) << "destroy cube api failed err=" << ret; - } - - uint64_t seek_cost_avg = seek_cost_total / seek_counter; - LOG(INFO) << "seek cost avg = " << seek_cost_avg; - LOG(INFO) << "seek cost max = " << seek_cost_max; - LOG(INFO) << "seek cost min = " << seek_cost_min; - - time_list[thread_id] = seek_cost_avg; - request_list[thread_id] = request; - - return 0; -} - -int run_m(int argc, char** argv) { - google::ParseCommandLineFlags(&argc, &argv, true); - int thread_num = FLAGS_thread_num; - request_list.resize(thread_num); - time_list.resize(thread_num); - std::vector thread_pool; - for (int i = 0; i < thread_num; i++) { - thread_pool.push_back(new std::thread(run, argc, argv, i)); - } - for (int i = 0; i < thread_num; i++) { - thread_pool[i]->join(); - delete thread_pool[i]; - } - uint64_t sum_time = 0; - uint64_t max_time = 0; - uint64_t min_time = 1000000; - uint64_t request_num = 0; - for (int i = 0; i < thread_num; i++) { - sum_time += time_list[i]; - if (time_list[i] > max_time) { - max_time = time_list[i]; - } - if (time_list[i] < min_time) { - min_time = time_list[i]; - } - request_num += request_list[i]; - } - uint64_t mean_time = sum_time / thread_num; - LOG(INFO) << thread_num << " thread seek cost" - << " avg = " << std::to_string(mean_time) - << " max = " << std::to_string(max_time) - << " min = " << std::to_string(min_time); - LOG(INFO) << " total_request = " << std::to_string(request_num) - << " speed = " << std::to_string(1000000 * thread_num / mean_time) - << " query per second"; -} - -} // namespace mcube -} // namespace rec - -int main(int argc, char** argv) { return ::rec::mcube::run_m(argc, argv); } diff --git a/cube/cube-api/src/meta.cpp b/cube/cube-api/src/meta.cpp deleted file mode 100644 index 06911e8828685abbe3b0912f22f8dd7a0f807e50..0000000000000000000000000000000000000000 --- a/cube/cube-api/src/meta.cpp +++ /dev/null @@ -1,297 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube/cube-api/include/meta.h" - -#include -#include -#include -#include -#include - -#include "cube/cube-api/cube.pb.h" - -namespace { -static ::rec::mcube::Meta* g_ins = NULL; -} - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -#endif - -namespace rec { -namespace mcube { - -Meta* Meta::instance() { - if (g_ins == NULL) { - g_ins = new Meta(); - } - - return g_ins; -} - -Meta::~Meta() {} - -int Meta::init(const char* conf_file) { - std::ifstream ifs(conf_file); - if (!ifs.is_open()) { - LOG(ERROR) << "open conf file [" << conf_file << "]"; - return -1; - } - - std::string content((std::istreambuf_iterator(ifs)), - std::istreambuf_iterator()); - - BUTIL_RAPIDJSON_NAMESPACE::Document document; - document.Parse(content.c_str()); - - int ret = 0; - if (document.IsArray()) { - for (auto it = document.Begin(); it != document.End(); ++it) { - MetaInfo* info = create_meta(*it); - - if (info == NULL) { - LOG(ERROR) << "create dict meta failed"; - ret = -1; - break; - } - - LOG(INFO) << "init cube dict [" << info->dict_name << "] succ"; - _metas[info->dict_name] = info; - } - } else { - LOG(ERROR) - << "conf file [" << conf_file - << "] json schema error, please ensure that the json is an array"; - } - - if (_metas.size() == 0) { - LOG(ERROR) << "no valid cube"; - ret = -1; - } - - return ret; -} - -int Meta::destroy() { - for (auto it = _metas.begin(); it != _metas.end(); ++it) { - if (it->second != NULL) { - delete it->second; - it->second = NULL; - } - } - _metas.clear(); - return 0; -} - -MetaInfo* Meta::get_meta(const std::string& dict_name) { - auto iter = _metas.find(dict_name); - - if (iter != _metas.end()) { - return iter->second; - } - - return NULL; -} - -void Meta::reset_bvar(const std::string& dict_name) { - auto iter = _metas.find(dict_name); - - if (iter != _metas.end()) { - iter->second->cube_request_num.reset(); - iter->second->cube_rpcfail_num.reset(); - } else { - LOG(WARNING) << "reset_bvar to invalid dict [" << dict_name << "]"; - } -} - -MetaInfo* Meta::create_meta(const BUTIL_RAPIDJSON_NAMESPACE::Value& config) { - if (!config.HasMember("dict_name") || !config.HasMember("shard") || - !config.HasMember("dup") || !config.HasMember("timeout") || - !config.HasMember("retry") || !config.HasMember("backup_request") || - !config.HasMember("type")) { - LOG(ERROR) << "create meta failed, required fields miss"; - return NULL; - } - - if (!config["dict_name"].IsString() || !config["shard"].IsInt() || - !config["dup"].IsInt() || !config["timeout"].IsInt() || - !config["retry"].IsInt() || !config["backup_request"].IsInt() || - !config["type"].IsString()) { - LOG(ERROR) << "create meta failed, required fields type error"; - return NULL; - } - - MetaInfo* info = new MetaInfo(); - info->dict_name = config["dict_name"].GetString(); - info->shard_num = config["shard"].GetInt(); - info->dup_num = config["dup"].GetInt(); - - int timeout = config["timeout"].GetInt(); - int retry = config["retry"].GetInt(); - int backup_request = config["backup_request"].GetInt(); - std::string type = config["type"].GetString(); - std::string load_balancer = "rr"; - - if (config.HasMember("load_balancer") && config["load_balancer"].IsString()) { - load_balancer = config["load_balancer"].GetString(); - } - - int ret = 0; - - if (type.compare("ipport") == 0) { - ret = create_meta_from_ipport( - info, config["nodes"], timeout, retry, backup_request); - } else if (type.compare("ipport_list") == 0) { - ret = create_meta_from_ipport_list( - info, config["nodes"], timeout, retry, backup_request, load_balancer); - } else if (type.compare("ipport_parallel") == 0) { - ret = create_meta_from_ipport_parallel( - info, config["nodes"], timeout, retry, backup_request); - } else { - ret = -1; - } - - if (ret != 0) { - LOG(ERROR) << "create meta failed error=" << ret; - delete info; - return NULL; - } - - return info; -} - -int Meta::create_meta_from_ipport(MetaInfo* meta, - const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, - int timeout, - int retry, - int backup_request) { - brpc::ChannelOptions options; - options.timeout_ms = timeout; - options.max_retry = retry; - - if (backup_request > 0) { - options.backup_request_ms = backup_request; - } - - meta->cube_conn.resize(meta->shard_num, NULL); - - for (int i = 0; i < static_cast(nodes.Size()); ++i) { - const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[i]; - const std::string& node_ip = node["ip"].GetString(); - int node_port = node["port"].GetInt(); - - ::brpc::Channel* chan = new ::brpc::Channel(); - - if (chan->Init(node_ip.c_str(), node_port, &options) != 0) { - LOG(ERROR) << "Init connection to [" << node_ip << ":" << node_port - << "] failed"; - delete chan; - return -1; - } - - meta->cube_conn[i] = chan; - } - - return 0; -} - -int Meta::create_meta_from_ipport_list( - MetaInfo* meta, - const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, - int timeout, - int retry, - int backup_request, - const std::string& load_balancer) { - brpc::ChannelOptions options; - options.timeout_ms = timeout; - options.max_retry = retry; - - if (backup_request > 0) { - options.backup_request_ms = backup_request; - } - - meta->cube_conn.resize(meta->shard_num, NULL); - - for (int i = 0; i < static_cast(nodes.Size()); ++i) { - const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[i]; - const std::string& ipport_list = node["ipport_list"].GetString(); - - ::brpc::Channel* chan = new ::brpc::Channel(); - - if (chan->Init(ipport_list.c_str(), load_balancer.c_str(), &options) != 0) { - LOG(ERROR) << "Init connection to [" << ipport_list << "] failed"; - delete chan; - return -1; - } - - meta->cube_conn[i] = chan; - } - - return 0; -} - -int Meta::create_meta_from_ipport_parallel( - MetaInfo* meta, - const BUTIL_RAPIDJSON_NAMESPACE::Value& nodes, - int timeout, - int retry, - int backup_request) { - if (nodes.Size() < 1) { - LOG(ERROR) << "Config nodes size less than 0"; - return -1; - } - - brpc::ChannelOptions options; - options.timeout_ms = timeout; - options.max_retry = retry; - - if (backup_request > 0) { - options.backup_request_ms = backup_request; - } - - meta->cube_conn.resize(meta->shard_num, NULL); - - for (int i = 0; i < meta->shard_num; ++i) { - const BUTIL_RAPIDJSON_NAMESPACE::Value& node = nodes[0]; - const std::string& node_ip = node["ip"].GetString(); - int node_port = node["port"].GetInt(); - - ::brpc::Channel* chan = new ::brpc::Channel(); - - if (chan->Init(node_ip.c_str(), node_port, &options) != 0) { - LOG(ERROR) << "Init connection to [" << node_ip << ":" << node_port - << "] failed"; - delete chan; - return -1; - } - - meta->cube_conn[i] = chan; - } - - return 0; -} - -const std::vector Meta::metas() { - std::vector metas; - - for (auto i : _metas) { - metas.push_back(i.second); - } - - return metas; -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-builder/include/cube-builder/builder_job.h b/cube/cube-builder/include/cube-builder/builder_job.h deleted file mode 100644 index 55c6df42ca16499b180ddb0eed7267592acbb1b8..0000000000000000000000000000000000000000 --- a/cube/cube-builder/include/cube-builder/builder_job.h +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include -#include "cube-builder/crovl_builder_increment.h" -#include "cube-builder/define.h" -using std::string; -using std::vector; - -class Job { - public: - void set_shard_num(int num); - - int get_shard_num(); - - void set_input_path(string path); - - string get_input_path(); - - void set_output_path(string path); - - string get_output_path(); - - void set_job_mode(mode mmode); - - mode get_job_mode(); - - void set_dict_name(string name); - - string get_dict_name(); - - private: - int shard_num; - string input_path; - string output_path; - mode job_mode; - string dict_name; -}; - -void mapFileLocal(Job job, - string file, - vector reduces); diff --git a/cube/cube-builder/include/cube-builder/seqfile_reader.h b/cube/cube-builder/include/cube-builder/seqfile_reader.h deleted file mode 100644 index abe36a66f9288496a11d587b1e56578b7681f157..0000000000000000000000000000000000000000 --- a/cube/cube-builder/include/cube-builder/seqfile_reader.h +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include "cube-builder/define.h" -#include "cube-builder/raw_reader.h" -class SequenceFileRecordReader : public RecordReader { - public: - SequenceFileRecordReader() {} - explicit SequenceFileRecordReader(const std::string& path) { - _path = path; - _raw_reader = new FileRawReader(_path); - } - virtual ~SequenceFileRecordReader() { - if (_raw_reader != nullptr) { - delete _raw_reader; - } - } - virtual int open(); - virtual int close(); - virtual int next(Record* record); - const Header& get_header() { return _header; } - int read_header(); - - private: - std::string _path{""}; - RawReader* _raw_reader{nullptr}; - Header _header; -}; - -typedef std::shared_ptr SequenceFileRecordReaderPtr; diff --git a/cube/cube-builder/include/cube-builder/vtext.h b/cube/cube-builder/include/cube-builder/vtext.h deleted file mode 100644 index 51c3fa3ce2479e15b55afd3b5195dec58ff876d7..0000000000000000000000000000000000000000 --- a/cube/cube-builder/include/cube-builder/vtext.h +++ /dev/null @@ -1,87 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include "cube-builder/define.h" -#include "cube-builder/raw_reader.h" - -class VInt { - public: - static int32_t decode_vint_size(const char &value) { - if (value >= -112) { - return 1; - } else if (value < -120) { - return -119 - value; - } - return -111 - value; - } - static bool is_negative_vint(const char &value) { - return value < -120 || (value >= -112 && value < 0); - } - static bool read_vint(RawReader *reader, int32_t *vint) { - char first_byte; - if (reader->read(&first_byte) <= 0) { - return false; - } - int32_t len = decode_vint_size(first_byte); - if (len == 1) { - *vint = first_byte; - return true; - } - char ch; - int32_t bitlen = 0; - int32_t i = 0, lch; - for (int idx = len - 2; idx >= 0; idx--) { - if (reader->read(&ch) <= 0) { - return false; - } - bitlen = 8 * idx; - lch = ch; - i = i | ((lch << bitlen) & (0xFFL << bitlen)); - } - *vint = (is_negative_vint(first_byte) ? (i ^ (int32_t)(-1)) : i); - return true; - } -}; - -class VString { - public: - static const char *encode(std::string str) { return encode(str, true); } - - static const char *encode(std::string str, bool /*replace*/) { - // todo - return str.c_str(); - } - - static std::string decode(char *bytes) { return decode(bytes, true); } - - static std::string decode(char *bytes, bool /*replace*/) { - // todo - return std::string(bytes); - } - - // todo - static bool read_string(RawReader *reader, std::string *str) { - int length; - if (!VInt::read_vint(reader, &length)) { - return false; - } - if (reader->read_buf(str, length) != length) { - return false; - } - return true; - } -}; diff --git a/cube/cube-builder/src/builder_job.cpp b/cube/cube-builder/src/builder_job.cpp deleted file mode 100644 index 97edaf4f9c8f5417888f72bccab462bfed2588c9..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/builder_job.cpp +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube-builder/builder_job.h" -#include -#include -#include "butil/logging.h" -#include "cube-builder/seqfile_reader.h" -#include "cube-builder/util.h" -using std::string; -void Job::set_shard_num(int num) { shard_num = num; } - -int Job::get_shard_num() { return shard_num; } - -void Job::set_input_path(string path) { input_path = path; } - -string Job::get_input_path() { return input_path; } - -void Job::set_output_path(string path) { output_path = path; } - -string Job::get_output_path() { return output_path; } - -void Job::set_job_mode(mode mmode) { job_mode = mmode; } - -mode Job::get_job_mode() { return job_mode; } - -void Job::set_dict_name(string name) { dict_name = name; } - -string Job::get_dict_name() { return dict_name; } - -void mapFileLocal(Job job, - string file, - vector reduces) { - SequenceFileRecordReader reader(file.c_str()); - - if (reader.open() != 0) { - LOG(ERROR) << "open file failed! " << file; - return; - } - if (reader.read_header() != 0) { - LOG(ERROR) << "read header error! " << file; - reader.close(); - return; - } - - Record record(reader.get_header()); - int total_count = 0; - - while (reader.next(&record) == 0) { - uint64_t key = - *reinterpret_cast(const_cast(record.key.data())); - - total_count++; - int part = key % job.get_shard_num(); - int64_t value_length = record.record_len - record.key_len; - - reduces[part]->add(key, value_length, record.value.c_str()); - } - - if (reader.close() != 0) { - LOG(ERROR) << "close file failed! " << file; - return; - } -} diff --git a/cube/cube-builder/src/crovl_builder_increment.cpp b/cube/cube-builder/src/crovl_builder_increment.cpp deleted file mode 100644 index 44ec01f90f87b3c87d01ed7d3b7ccedf19d50a9c..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/crovl_builder_increment.cpp +++ /dev/null @@ -1,847 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube-builder/crovl_builder_increment.h" -#include -#include -#include -#include -#include -#include -#include "boost/lexical_cast.hpp" -#include "cube-builder/curl_simple.h" -#include "cube-builder/define.h" -#include "cube-builder/util.h" -#include "json/json.h" - -static const uint64_t MB = 1048576; -// CSpinLock g_sLock; - -CROVLBuilderIncremental::CROVLBuilderIncremental() { - _index = NULL; - _data = NULL; - // _index_file = NULL; - _inner_sort_size = 32 * MB; - _memory_quota = 4 * 1024 * MB; -} - -bool CROVLBuilderIncremental::Clear() { - if (_index != NULL) { - delete[] _index; - _index = NULL; - } - - if (_data != NULL) { - delete[] _data; - _data = NULL; - } - - _data_file_list.clear(); - - return true; -} - -CROVLBuilderIncremental::~CROVLBuilderIncremental() { Clear(); } - -bool CROVLBuilderIncremental::Init(int index_type, - uint32_t data_file_len, - const char *mode, - const char *data_dir, - const char *data_real_dir, - const char *dict_name, - const std::string &shard_id, - const std::string &split_id, - const std::string &last_version, - const std::string &cur_version, - const std::string &depend_version, - const std::string &master_address, - const std::string &id, - const std::string &key, - const std::string &extra, - bool bFix, - uint32_t nFixLen) { - if (index_type != IT_HASH) { - LOG(ERROR) << "Error: incremental_build not support IT_SORT"; - return false; - } - - if (index_type != IT_HASH && index_type != IT_SORT) { - LOG(ERROR) << "Error: invalid index type"; - return false; - } - - if (index_type == IT_HASH && bFix) { - LOG(ERROR) << "Error: can not set fix when index type is IT_HASH"; - return false; - } - - if (nFixLen > MAX_FIXDATA_LEN) { - LOG(ERROR) << "Error: fix length too large"; - return false; - } - - if (data_file_len < MAX_DATA_LEN + 4 || data_file_len > MAX_DATA_FILE_LEN) { - LOG(ERROR) << "Error: invalid data file length" << data_file_len; - return false; - } - - if (strlen(data_dir) > MAX_DATA_DIR_LEN) { - LOG(ERROR) << "Error: data directory too long :" << data_dir; - return false; - } - - Clear(); - - strncpy(_data_dir, data_dir, sizeof(_data_dir)); - strncpy(_data_real_dir, data_real_dir, sizeof(_data_real_dir)); - - _index_type = index_type; - _data_file_len = data_file_len; - _data_file = 0; - _data_buf_len = 0; - _index_buf_len = 0; - _index_file_num = 0; // incremental_build for index - _count = 0; - _cur_count = 0; - _fix = bFix; - _fix_len = nFixLen; - _index_file_len = 0; - - _dict_name = dict_name; - _shard_id = shard_id; - _split_id = split_id; - _last_version = last_version; - _cur_version = cur_version; - _depend_version = depend_version; - _master_address = master_address; - _id = id; - _key = key; - _extra = extra; - - if (_fix) { - _rec_size = nFixLen + sizeof(uint64_t); - } else { - _rec_size = 2 * sizeof(uint64_t); - } - - _index = new uint64_t[INDEX_BUFFER]; - - if (!_fix) { - _data = new char[_data_file_len]; - } else if (_fix_len != 8) { - _data = new char[_rec_size * INDEX_BUFFER]; - } - - if (!checkDirectory(_data_dir)) { - LOG(ERROR) << "create _data_dir path failed: " << _data_dir; - return false; - } - - // read old info from data.n and index.n - _mode = mode; - LOG(INFO) << "mode: " << mode; - - if (strcmp(mode, "base") != 0) { - if (_master_address == "") { - if (!read_last_meta_from_local()) { - LOG(ERROR) << "read last meta from db error! "; - return false; - } - } else { - if (!read_last_meta_from_transfer()) { - LOG(ERROR) << "read last meta from transfer error! "; - return false; - } - } - } - LOG(INFO) << "incremental_build data file:" << _data_file - << ", count:" << _count << ", index file:" << _index_file_num; - return true; -} - -bool CROVLBuilderIncremental::flush_data() { - LOG(INFO) << "flush data" << _data_file; - if (_data_buf_len == 0) { - LOG(ERROR) << "_data_buf_len == 0"; - return true; - } - - char file[MAX_DATA_DIR_LEN * 2]; - snprintf(file, sizeof(file), "%s/data.%lu", _data_dir, _data_file); - FILE *fp; - if ((fp = fopen(file, "ab")) == NULL) { - LOG(ERROR) << "open file failed! " << file; - return false; - } - - if (fwrite(_data, 1, _data_buf_len, fp) != _data_buf_len) { - fclose(fp); - LOG(ERROR) << "write file:" << file << " error!"; - return false; - } - fclose(fp); - - _data_file_list.push_back(_data_buf_len); - _data_buf_len = 0; - ++_data_file; - return true; -} - -bool CROVLBuilderIncremental::FlushIndex() { - LOG(INFO) << "flush index:" << _index_file_num; - - if (_index_buf_len == 0) { - LOG(ERROR) << "_index_buf_len == 0"; - return true; - } - - char file[MAX_DATA_DIR_LEN * 2]; - snprintf(file, sizeof(file), "%s/index.%d", _data_dir, _index_file_num); - FILE *fp; - if ((fp = fopen(file, "ab")) == NULL) { - LOG(ERROR) << "open file failed! " << file; - return false; - } - - if (_fix && _fix_len != 8) { - if (fwrite(_data, _rec_size, _index_buf_len, fp) != _index_buf_len) { - LOG(ERROR) << "_index_buf_len error:" << _index_buf_len; - return false; - } - _index_buf_len = 0; - return true; - } - - if (fwrite(_index, sizeof(uint64_t), _index_buf_len, fp) != _index_buf_len) { - LOG(ERROR) << "write file:" << file << " error!"; - return false; - } - fclose(fp); - - _index_file_len += _index_buf_len * sizeof(uint64_t); - _index_buf_len = 0; - return true; -} - -int CROVLBuilderIncremental::add(uint64_t nKey, - uint32_t nLen, - const char *pData) { - uint64_t naddr; - uint32_t nTotalLen; - - if (nLen > MAX_DATA_LEN || _fix) { - return 0; - } - - nTotalLen = nLen + 4; - - do { - if (_data_buf_len + nTotalLen > _data_file_len) { - if (!flush_data()) { - break; - } - } - - *reinterpret_cast(_data + _data_buf_len) = nTotalLen; - memcpy(_data + _data_buf_len + 4, pData, nLen); - naddr = (_data_file << 32) + _data_buf_len; - _data_buf_len += nTotalLen; - - if (_index_buf_len + 2 > INDEX_BUFFER) { - if (!FlushIndex()) { - break; - } - } - - _index[_index_buf_len] = nKey; - _index[_index_buf_len + 1] = naddr; - _index_buf_len += 2; - ++_count; - ++_cur_count; - return 1; - } while (false); - - return -1; -} - -int CROVLBuilderIncremental::add(uint64_t nKey, uint64_t nValue) { - if (!_fix || _fix_len != 8) { - return 0; - } - - if (_index_buf_len + 2 > INDEX_BUFFER) { - if (!FlushIndex()) { - return -1; - } - } - - _index[_index_buf_len] = nKey; - _index[_index_buf_len + 1] = nValue; - _index_buf_len += 2; - ++_count; - ++_cur_count; - return 1; -} - -int CROVLBuilderIncremental::add(uint64_t nKey, const char *pData) { - if (!_fix) { - return 0; - } - - if (_fix && _fix_len == 8) { - return add(nKey, *reinterpret_cast(const_cast(pData))); - } - - if (_index_buf_len + 1 > INDEX_BUFFER) { - if (!FlushIndex()) { - return -1; - } - } - - *reinterpret_cast(_data + _index_buf_len * _rec_size) = nKey; - memcpy( - _data + (_index_buf_len * _rec_size + sizeof(uint64_t)), pData, _fix_len); - _index_buf_len++; - ++_count; - ++_cur_count; - return 1; -} - -bool CROVLBuilderIncremental::done() { - LOG(INFO) << "done"; - if (!_fix) { - if (!flush_data()) { - return false; - } - } - - if (!FlushIndex()) { - return false; - } - - if (!_fix) { - if (_data_file == 0) { - return false; - } - } - - char buffer[64]; - char file[MAX_DATA_DIR_LEN * 2]; - - // write data.n - snprintf(file, sizeof(file), "%s/data.n", _data_dir); - FILE *fp; - if ((fp = fopen(file, "wb")) == NULL) { - LOG(ERROR) << "open file failed! " << file; - return false; - } - - *reinterpret_cast(buffer) = _data_file; - if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { - fclose(fp); - return false; - } - - for (uint32_t i = 0; i < _data_file_list.size(); ++i) { - *reinterpret_cast(buffer) = _data_file_list[i]; - - if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { - fclose(fp); - return false; - } - } - fclose(fp); - - // write index.n - if (_index_type == IT_HASH) { - if (_count > (uint64_t)((uint32_t)-1)) { - return false; - } - - snprintf(file, sizeof(file), "%s/index.n", _data_dir); - - if ((fp = fopen(file, "wb")) == nullptr) { - LOG(ERROR) << "open file failed! " << file; - return false; - } - - *reinterpret_cast(buffer) = IT_HASH; - *reinterpret_cast(buffer + sizeof(uint32_t)) = (uint32_t)_count; - - if (fwrite(buffer, sizeof(uint32_t), 2, fp) != 2) { - fclose(fp); - return false; - } - - // fix empty data bug - // if the version no data, filter this version, index_file_num no add - // only can patch is null, not base - if (_cur_count > 0) { - *reinterpret_cast(buffer) = ++_index_file_num; - } else { - *reinterpret_cast(buffer) = _index_file_num; - } - - if (fwrite(buffer, sizeof(uint32_t), 1, fp) != 1) { - fclose(fp); - return false; - } - - if (_cur_count > 0) { - _index_file_list.push_back(_index_file_len); - } - for (uint32_t i = 0; i < _index_file_list.size(); ++i) { - *reinterpret_cast(buffer) = _index_file_list[i]; - - if (fwrite(buffer, sizeof(uint64_t), 1, fp) != 1) { - fclose(fp); - return false; - } - } - fclose(fp); - - if (_master_address == "") { - if (!write_cur_meta_to_local()) { - LOG(ERROR) << "write cur meta to local error"; - return false; - } - } else { - if (!write_cur_meta_to_transfer()) { - LOG(ERROR) << "write cur meta to db error master addr:" - << _master_address.c_str(); - return false; - } - } - - } else { - snprintf(file, sizeof(file), "%s/index.d", _data_dir); - LOG(ERROR) << "HASH is error!"; - } - - if (!Clear()) { - LOG(ERROR) << "clear error!"; - return false; - } - - return true; -} - -void CROVLBuilderIncremental::archive() { CmdTarfiles(_data_dir); } - -void CROVLBuilderIncremental::md5sum() { CmdMd5sum(_data_dir); } - -bool CROVLBuilderIncremental::read_last_meta_from_transfer() { - std::string url = "http://" + _master_address + "/dict/meta_info?name=" + - _dict_name + "&shard=" + _shard_id + "&split=" + _split_id + - "&version=" + _last_version + "&depend=" + _depend_version; - - LOG(INFO) << "name:" << _dict_name.c_str() << " shard:" << _shard_id.c_str() - << " split:" << _split_id.c_str() - << " last version:" << _last_version.c_str() - << " depend version:" << _depend_version.c_str(); - - CurlSimple cs; - std::string result = cs.curl_get(url.c_str()); - - if (result == "") { - LOG(ERROR) << "curl get error!"; - return false; - } - - LOG(INFO) << "curl result:" << result.c_str(); - Json::Reader reader(Json::Features::strictMode()); - Json::Value val; - - if (!reader.parse(result, val)) { - LOG(ERROR) << "parse result json error!"; - return false; - } - - if (!val.isObject()) { - LOG(ERROR) << "no valild json error!"; - return false; - } - - if (val["success"].isNull() || !val["success"].isString()) { - LOG(ERROR) << "parse field success error!"; - return false; - } - - std::string success = val["success"].asString(); - - if (success != "0") { - LOG(ERROR) << "parse field success error!" << success.c_str(); - return false; - } - - if (val["data"].isNull() || !val["data"].isObject()) { - LOG(ERROR) << "parse field data error!"; - return false; - } - - Json::Value data = val["data"]; - - if (data["meta"].isNull() || !data["meta"].isString()) { - LOG(ERROR) << "parse field meta error!"; - return false; - } - - Json::Reader meta_reader(Json::Features::strictMode()); - Json::Value meta; - - if (!meta_reader.parse(data["meta"].asString(), meta)) { - LOG(ERROR) << "parse meta json error!"; - return false; - } - - if (!meta.isObject()) { - LOG(ERROR) << "parse meta json error!"; - return false; - } - - if (meta["data_len_list"].isNull() || !meta["data_len_list"].isArray()) { - LOG(ERROR) << "parse data_len_list json error!"; - return false; - } - - Json::Value data_len_list = meta["data_len_list"]; - _data_file = data_len_list.size(); - - if (_data_file == 0) { - LOG(ERROR) << "data len list size is 0!"; - return false; - } - - for (int i = 0; i < static_cast(_data_file); ++i) { - LOG(INFO) << "data_len:" << data_len_list[i].asString().c_str(); - - try { - _data_file_list.push_back( - boost::lexical_cast(data_len_list[i].asString())); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - if (meta["index_len_list"].isNull() || !meta["index_len_list"].isArray()) { - LOG(ERROR) << "parse index_len_list json error!"; - return false; - } - - Json::Value index_len_list = meta["index_len_list"]; - _index_file_num = index_len_list.size(); - - if (_index_file_num == 0) { - LOG(ERROR) << "index len list size is 0!"; - return false; - } - - for (uint32_t i = 0; i < _index_file_num; ++i) { - LOG(INFO) << "index_len:" << index_len_list[i].asString().c_str(); - - try { - _index_file_list.push_back( - boost::lexical_cast(index_len_list[i].asString())); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - if (meta["index_total_count"].isNull() || - !meta["index_total_count"].isString()) { - LOG(ERROR) << "parse index_total_count json error!"; - return false; - } - - LOG(INFO) << "index_total_count:" - << meta["index_total_count"].asString().c_str(); - try { - _count = - boost::lexical_cast(meta["index_total_count"].asString()); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - - return true; -} - -bool CROVLBuilderIncremental::write_cur_meta_to_transfer() { - CurlSimple cs; - std::string url = "http://" + _master_address + "/dict/meta_info/register"; - - std::map args; - args["name"] = _dict_name; - args["shard"] = _shard_id; - args["split"] = _split_id; - args["version"] = _cur_version; - args["depend"] = _depend_version; - - LOG(INFO) << "name:" << _dict_name.c_str() << " shard:" << _shard_id.c_str() - << " split:" << _split_id.c_str() - << " cur version:" << _cur_version.c_str() - << " depend version:" << _depend_version.c_str(); - - Json::Value root; - - try { - root["index_total_count"] = boost::lexical_cast(_count); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - - Json::Value data; - - for (size_t i = 0; i < _data_file_list.size(); ++i) { - try { - data.append(boost::lexical_cast(_data_file_list[i])); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - root["data_len_list"] = data; - - Json::Value index; - - for (size_t i = 0; i < _index_file_list.size(); ++i) { - try { - index.append(boost::lexical_cast(_index_file_list[i])); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - root["index_len_list"] = index; - - Json::FastWriter writer; - // Json::StreamWriterBuilder writer; - std::string meta = writer.write(root); - - // std::string meta = Json::writeString(writer, root); - if (meta[meta.size() - 1] == '\n') { - meta.erase(meta.size() - 1, 1); - } - - LOG(INFO) << "meta:" << meta.c_str() << " size:" << meta.size(); - args["meta"] = meta; - std::string result = cs.curl_post(url.c_str(), args); - - if (result == "") { - LOG(ERROR) << "curl get error!"; - return false; - } - - LOG(INFO) << "curl result:" << result.c_str(); - - Json::Reader reader(Json::Features::strictMode()); - Json::Value val; - - if (!reader.parse(result, val)) { - LOG(ERROR) << "parse result json error!"; - return false; - } - - if (!val.isObject()) { - LOG(ERROR) << "no valild json error!"; - return false; - } - - if (val["success"].isNull() || !val["success"].isString()) { - LOG(ERROR) << "parse field success error!"; - return false; - } - - std::string success = val["success"].asString(); - - if (success != "0") { - LOG(ERROR) << "parse field success error!" << success.c_str(); - return false; - } - - LOG(INFO) << "curl post ok"; - return true; -} - -bool CROVLBuilderIncremental::read_last_meta_from_local() { - char file[MAX_DATA_DIR_LEN * 2]; - - snprintf(file, - sizeof(file), - "%s/../../meta_info/%s_%s_%s_%s.json", - _data_dir, - _last_version.c_str(), - _depend_version.c_str(), - _shard_id.c_str(), - _split_id.c_str()); - - // read from local meta file - std::string input_meta; - Json::Reader meta_reader(Json::Features::strictMode()); - Json::Value meta; - - std::ifstream ifs; - ifs.open(file); - if (!ifs) { - LOG(ERROR) << "open file failed! " << file; - return false; - } - - if (!meta_reader.parse(ifs, meta)) { - LOG(ERROR) << "parse meta json error!"; - return false; - } - ifs.close(); - - if (!meta.isObject()) { - LOG(ERROR) << "parse meta json error!"; - return false; - } - - if (meta["data_len_list"].isNull() || !meta["data_len_list"].isArray()) { - LOG(ERROR) << "parse data_len_list json error !"; - return false; - } - - Json::Value data_len_list = meta["data_len_list"]; - _data_file = data_len_list.size(); - - if (_data_file == 0) { - LOG(ERROR) << "data len list size is 0 !"; - return false; - } - - for (int i = 0; i < static_cast(_data_file); ++i) { - LOG(INFO) << "data_len:" << data_len_list[i].asString().c_str(); - - try { - _data_file_list.push_back( - boost::lexical_cast(data_len_list[i].asString())); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - if (meta["index_len_list"].isNull() || !meta["index_len_list"].isArray()) { - LOG(ERROR) << "parse index_len_list json error!"; - return false; - } - - Json::Value index_len_list = meta["index_len_list"]; - _index_file_num = index_len_list.size(); - - if (_index_file_num == 0) { - LOG(ERROR) << "index len list size is 0!"; - return false; - } - - for (uint32_t i = 0; i < _index_file_num; ++i) { - LOG(INFO) << "index_len:" << index_len_list[i].asString().c_str(); - - try { - _index_file_list.push_back( - boost::lexical_cast(index_len_list[i].asString())); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - if (meta["index_total_count"].isNull() || - !meta["index_total_count"].isString()) { - LOG(ERROR) << "parse index_total_count json error!"; - return false; - } - - LOG(INFO) << "index_total_count:" - << meta["index_total_count"].asString().c_str(); - try { - _count = - boost::lexical_cast(meta["index_total_count"].asString()); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - - return true; -} - -bool CROVLBuilderIncremental::write_cur_meta_to_local() { - char file[MAX_DATA_DIR_LEN * 2]; - std::string meta_path = _data_dir; - meta_path = meta_path + "/../../meta_info"; - if (!checkDirectory(meta_path)) { - LOG(ERROR) << "create meta_path path failed:" << meta_path.c_str(); - return false; - } - snprintf(file, - sizeof(file), - "%s/%s_%s_%s_%s.json", - meta_path.c_str(), - _cur_version.c_str(), - _depend_version.c_str(), - _shard_id.c_str(), - _split_id.c_str()); - - Json::Value meta; - - try { - meta["index_total_count"] = boost::lexical_cast(_count); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - - Json::Value data; - - for (size_t i = 0; i < _data_file_list.size(); ++i) { - try { - data.append(boost::lexical_cast(_data_file_list[i])); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - meta["data_len_list"] = data; - - Json::Value index; - - for (size_t i = 0; i < _index_file_list.size(); ++i) { - try { - index.append(boost::lexical_cast(_index_file_list[i])); - } catch (boost::bad_lexical_cast &e) { - LOG(ERROR) << "bad lexical cast:" << e.what(); - return false; - } - } - - meta["index_len_list"] = index; - - std::ofstream ofs; - ofs.open(file); - if (!ofs) { - LOG(ERROR) << "open file failed!" << file; - return false; - } - ofs << meta.toStyledString(); - ofs.close(); - return true; -} diff --git a/cube/cube-builder/src/curl_simple.cpp b/cube/cube-builder/src/curl_simple.cpp deleted file mode 100644 index f95902f180bbd35cda5cf6e3b9ed5a352136185b..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/curl_simple.cpp +++ /dev/null @@ -1,159 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube-builder/curl_simple.h" -#include -#include -#include -#include -#include -#include -#include - -const size_t BUFFER_SIZE = 9096; - -CurlSimple::CurlSimple() { _p_curl = curl_easy_init(); } - -CurlSimple::~CurlSimple() { curl_easy_cleanup(_p_curl); } - -/* * - * @method write_callback - * @para: - * contents, the pointer response data, it will cast to information you - * need - * size * nmemb is the memory size of contents - * userp, the poinser user return info - * @return: - * size_t must return size * nmemb, or it was failed - * */ -size_t CurlSimple::write_callback(void *contents, - size_t size, - size_t nmemb, - void *userp) { - size_t realsize = size * nmemb; - snprintf(static_cast(userp), - BUFFER_SIZE, - "%s", - static_cast(contents)); - return realsize; -} // end write_callback - /* * - * @method curl_get - * @para: - * _p_curl, the pointer of CURL, - * url , string, input url string with get parameters - * @return: - * void - * */ -std::string CurlSimple::curl_get(const char *url) { - char buffer[BUFFER_SIZE]; - CURLcode res; - /* specify URL to get */ - curl_easy_setopt(_p_curl, CURLOPT_URL, url); - /* send all data to this function */ - curl_easy_setopt(_p_curl, CURLOPT_WRITEFUNCTION, CurlSimple::write_callback); - /* we pass our 'chunk' struct to the callback function */ - curl_easy_setopt(_p_curl, CURLOPT_WRITEDATA, static_cast(buffer)); - /* some servers don't like requests that are made without a user-agent - field, so we provide one */ - curl_easy_setopt(_p_curl, CURLOPT_USERAGENT, "libcurl-agent/1.0"); - /* get it! */ - res = curl_easy_perform(_p_curl); - - /* check for errors */ - if (res != CURLE_OK) { - LOG(ERROR) << "curl_easy_perform() failed: " << curl_easy_strerror(res); - return ""; - } else { - /* - * Now, our chunk.memory points to a memory block that is chunk.size - * bytes big and contains the remote file. - * - * Do something nice with it! - */ - return buffer; - } -} // end curl_get - /* * - * @method curl_post - * @para: - * _p_curl, the pointer of CURL, - * url , the input url string without post parameters - * para_map, std::map the input post parameters - * @return: - * void - * */ -std::string CurlSimple::curl_post( - const char *url, const std::map ¶_map) { - char buffer[BUFFER_SIZE]; - CURLcode res; - std::string para_url = ""; - std::map::const_iterator para_iterator; - bool is_first = true; - - for (para_iterator = para_map.begin(); para_iterator != para_map.end(); - para_iterator++) { - if (is_first) { - is_first = false; - } else { - para_url.append("&"); - } - - std::string key = para_iterator->first; - std::string value = para_iterator->second; - para_url.append(key); - para_url.append("="); - para_url.append(value); - } - - LOG(INFO) << "para_url=" << para_url.c_str() << " size:" << para_url.size(); - - /* specify URL to get */ - curl_easy_setopt(_p_curl, CURLOPT_URL, url); - /* send all data to this function */ - curl_easy_setopt(_p_curl, CURLOPT_WRITEFUNCTION, CurlSimple::write_callback); - - /* send all data to this function */ - curl_easy_setopt(_p_curl, CURLOPT_POSTFIELDS, para_url.c_str()); - /* we pass our 'chunk' struct to the callback function */ - curl_easy_setopt( - _p_curl, CURLOPT_WRITEDATA, reinterpret_cast(buffer)); - /* some servers don't like requests that are made without a user-agent - field, so we provide one */ - curl_easy_setopt(_p_curl, CURLOPT_USERAGENT, "libcurl-agent/1.0"); - /* get it! */ - int retry_num = 3; - bool is_succ = false; - - for (int i = 0; i < retry_num; ++i) { - res = curl_easy_perform(_p_curl); - - /* check for errors */ - if (res != CURLE_OK) { - std::cerr << "curl_easy_perform() failed:" << curl_easy_strerror(res) - << std::endl; - } else { - /* - * Now, our chunk.memory points to a memory block that is chunk.size - * bytes big and contains the remote file. - * - * Do something nice with it! - */ - is_succ = true; - break; - } - } - - return is_succ ? buffer : ""; -} diff --git a/cube/cube-builder/src/main.cpp b/cube/cube-builder/src/main.cpp deleted file mode 100644 index 7ea428919ad063ffc63e908d203bb9c302e53021..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/main.cpp +++ /dev/null @@ -1,135 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include "butil/logging.h" -#include "cube-builder/builder_job.h" -#include "cube-builder/crovl_builder_increment.h" -#include "cube-builder/util.h" - -DEFINE_string(dict_name, "", "dict name, no need"); -DEFINE_string(input_path, "", "source data input path"); -DEFINE_string(output_path, "", "source data input path"); - -DEFINE_string(job_mode, "base", "job mode base/delta default:base"); -DEFINE_int32(last_version, 0, "last version, job mode delta need"); -DEFINE_int32(cur_version, 0, "current version, no need"); -DEFINE_int32(depend_version, 0, "depend version, job mode delta need"); -DEFINE_int32(shard_num, -1, "shard num"); - -DEFINE_string(master_address, "", "master address, no need"); -DEFINE_bool(only_build, true, "wheather build need transfer"); - -int main(int argc, char *argv[]) { - google::SetVersionString("1.0.0.0"); - google::SetUsageMessage("Usage : ./cube-builder --help "); - google::ParseCommandLineFlags(&argc, &argv, true); - google::InitGoogleLogging(argv[0]); - google::SetLogDestination(google::GLOG_INFO, "./log_"); - google::SetStderrLogging(google::GLOG_WARNING); - - LOG(INFO) << "start"; - - string last_version = std::to_string(FLAGS_last_version); - string cur_version = std::to_string(FLAGS_cur_version); - string depend_version = std::to_string(FLAGS_depend_version); - - if (FLAGS_input_path == "" || FLAGS_output_path == "" || - FLAGS_shard_num == -1) { - LOG(ERROR) << "Param error! Usage: " << argv[0] << " --help"; - return -1; - } - if (FLAGS_job_mode == "base") { - if (FLAGS_only_build) { - time_t t; - time(&t); - cur_version = std::to_string(t); - depend_version = cur_version; - } - - } else if (FLAGS_job_mode == "delta") { - if (FLAGS_last_version == 0 || FLAGS_depend_version == 0) { - LOG(ERROR) << "Param error! need last_version and depend_version! Usage: " - << argv[0] << " --help"; - return -1; - } else { - if (FLAGS_only_build) { - time_t t; - time(&t); - cur_version = std::to_string(t); - } - } - } else { - LOG(ERROR) << "Job mode error! Usage: " << argv[0] << " --help"; - return -1; - } - - Job job; - job.set_dict_name(FLAGS_dict_name); - job.set_shard_num(FLAGS_shard_num); - job.set_input_path(FLAGS_input_path); - job.set_output_path(FLAGS_output_path + "/" + depend_version + "_" + - cur_version); - job.set_job_mode(FLAGS_job_mode); - - vector files; - getAllFiles(job.get_input_path(), &files); - - if (!checkDirectory(job.get_output_path())) { - LOG(ERROR) << "create output_path path failed: " - << job.get_output_path().c_str(); - return -1; - } - - vector reduces; - for (auto i = 0; i < job.get_shard_num(); i++) { - string tar_path = job.get_output_path() + "/" + job.get_dict_name() + - "_part" + std::to_string(i) + ".tar"; - string build_path = job.get_output_path() + "/" + job.get_dict_name() + - "_part" + std::to_string(i); - - CROVLBuilderIncremental *_builder = new CROVLBuilderIncremental(); - if (!_builder->Init(IT_HASH, - MAX_BLOCK_SIZE, - job.get_job_mode().c_str(), - build_path.c_str(), - tar_path.c_str(), - job.get_dict_name().c_str(), - std::to_string(i), - std::to_string(0), - last_version, - cur_version, - depend_version, - FLAGS_master_address.c_str())) { - LOG(ERROR) << "CROVLBuilderIncremental init failed " << build_path; - return -1; - } - reduces.push_back(_builder); - } - - for (auto file : files) { - mapFileLocal(job, file, reduces); - LOG(INFO) << "next file to reduce!"; - } - for (auto reduce : reduces) { - reduce->done(); - reduce->archive(); - reduce->md5sum(); - } - google::ShutdownGoogleLogging(); - return 0; -} diff --git a/cube/cube-builder/src/seqfile_reader.cpp b/cube/cube-builder/src/seqfile_reader.cpp deleted file mode 100644 index 378ce5e006a8d40ab94dac9c625cb7b6cc636858..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/seqfile_reader.cpp +++ /dev/null @@ -1,150 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube-builder/seqfile_reader.h" -#include -#include "butil/logging.h" -#include "cube-builder/vtext.h" - -int SequenceFileRecordReader::open() { - if (_raw_reader->open() != 0) { - return -1; - } - LOG(INFO) << "open sequence file ok! file:" << _path.c_str(); - return 0; -} -int SequenceFileRecordReader::close() { - if (_raw_reader->close() != 0) { - return -1; - } - LOG(INFO) << "close sequence file ok! file:" << _path.c_str(); - return 0; -} -int SequenceFileRecordReader::next(Record* record) { - uint32_t record_len = 0; - int64_t ret = _raw_reader->read(&record_len); - if (ret == 0) { - return 1; // ?????1??????????????? - } else if (ret != sizeof(record_len)) { - LOG(ERROR) << "read sequence file:" << _path - << " record(record_len) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - record->record_len = static_cast(ntohl(record_len)); - // got marker - if (record->record_len == -1) { - std::string marker; - if ((ret = _raw_reader->read_buf(&marker, 16)) != 16) { - LOG(ERROR) << "read sequence file:" << _path - << " record(marker) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - if (marker != record->sync_marker) { - LOG(ERROR) << "read sequence file:" << _path - << " record(sync_marker) error!"; - return -1; - } - if ((ret = _raw_reader->read(&record->record_len)) != - sizeof(record->record_len)) { - LOG(ERROR) << "read sequence file:" << _path - << " record(len) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - record->record_len = static_cast(ntohl(record->record_len)); - } - uint32_t key_len = 0; - if ((ret = _raw_reader->read(&key_len)) != sizeof(key_len)) { - LOG(ERROR) << "read sequence file:" << _path - << " record(key_len) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - record->key_len = static_cast(ntohl(key_len)); - if ((ret = _raw_reader->read_buf(&record->key, record->key_len)) != - record->key_len) { - LOG(ERROR) << "read sequence file:" << _path - << " record(key_len) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - if ((ret = _raw_reader->read_buf(&record->value, - record->record_len - record->key_len)) != - (record->record_len - record->key_len)) { - LOG(ERROR) << "read sequence file:" << _path - << " record(value_len) errno:" << ret - << ", errmsg:" << _raw_reader->errno_to_str(ret); - return -1; - } - return 0; -} - -int SequenceFileRecordReader::read_header() { - LOG(INFO) << "start to read sequence file header:" << _path; - char version[4]; - if (_raw_reader->read_buf(&version, 4) != 4) { - LOG(ERROR) << "read sequence file header(version) error:" << _path; - return -1; - } - _header.version = version[3]; - if (!VString::read_string(_raw_reader, &_header.key_class)) { - LOG(ERROR) << "read sequence file header(key_class) error:" << _path; - return -1; - } - if (!VString::read_string(_raw_reader, &_header.value_class)) { - LOG(ERROR) << "read sequence file header(value_class) error:" << _path; - return -1; - } - if (_raw_reader->read(&_header.is_compress) != sizeof(bool)) { - LOG(ERROR) << "read sequence file header(is_compress) error:" << _path; - return -1; - } - if (_raw_reader->read(&_header.is_block_compress) != sizeof(bool)) { - LOG(ERROR) << "read sequence file header(is_block_compress) error:" - << _path; - return -1; - } - if (_header.is_compress) { - if (!VString::read_string(_raw_reader, &_header.compress_class)) { - LOG(ERROR) << "read sequence file header(compress_class) error:" << _path; - return -1; - } - } - int32_t meta_cnt = 0; - if (_raw_reader->read(&meta_cnt) != sizeof(int32_t)) { - LOG(ERROR) << "read sequence file header(meta_cnt) error:" << _path; - return -1; - } - _header.metas.resize(meta_cnt); - for (int32_t i = 0; i != meta_cnt; ++i) { - if (!VString::read_string(_raw_reader, &_header.metas[i].key)) { - LOG(ERROR) << "read sequence file header(meta_key) error:" << _path; - return -1; - } - if (!VString::read_string(_raw_reader, &_header.metas[i].value)) { - LOG(ERROR) << "read sequence file header(meta_value) error:" << _path; - return -1; - } - } - if (_raw_reader->read_buf(&_header.sync_marker, 16) != 16) { - LOG(ERROR) << "read sequence file header(sync_marker) error:" << _path; - return -1; - } - - LOG(INFO) << "sync_marker:" << _header.sync_marker; - LOG(INFO) << "read sequence file header ok:" << _path; - return 0; -} diff --git a/cube/cube-builder/src/util.cpp b/cube/cube-builder/src/util.cpp deleted file mode 100644 index 8524a4c7527e68b3e67141535bffcf4dae330c9e..0000000000000000000000000000000000000000 --- a/cube/cube-builder/src/util.cpp +++ /dev/null @@ -1,77 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube-builder/util.h" -#include -#include -#include -#include -#include -#include -#include "butil/logging.h" - -void getAllFiles(std::string path, std::vector *files) { - DIR *dir; - struct dirent *ptr; - if ((dir = opendir(path.c_str())) == NULL) { - perror("Open dri error..."); - exit(1); - } - while ((ptr = readdir(dir)) != NULL) { - if (strcmp(ptr->d_name, ".") == 0 || strcmp(ptr->d_name, "..") == 0) { - continue; - } else if ((ptr->d_type) == 8) { // file - if (ptr->d_name[0] != '.') files->push_back(path + "/" + ptr->d_name); - } else if (ptr->d_type == 10) { // link file - continue; - } else if (ptr->d_type == 4) { - getAllFiles(path + "/" + ptr->d_name, files); - } - } - closedir(dir); -} - -std::string string_to_hex(const std::string &input) { - static const char *const lut = "0123456789ABCDEF"; - size_t len = input.length(); - std::string output; - output.reserve(2 * len); - for (size_t i = 0; i < len; ++i) { - const unsigned char c = input[i]; - output.push_back(lut[c >> 4]); - output.push_back(lut[c & 15]); - } - return output; -} - -bool checkDirectory(const std::string folder) { - LOG(INFO) << "check dir:" << folder; - if (access(folder.c_str(), F_OK) == 0) { - return 1; - } - LOG(WARNING) << "no dir will mkdir:" << folder; - return (mkdir(folder.c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) == 0); -} - -void CmdTarfiles(const std::string folder) { - std::string cmd = "cd " + folder + " && tar -cvPf " + folder + ".tar ."; - LOG(INFO) << "tar file cmd:" << cmd; - system(cmd.c_str()); -} - -void CmdMd5sum(const std::string folder) { - std::string cmd = "md5sum " + folder + ".tar > " + folder + ".tar.md5"; - LOG(INFO) << "md5sum file cmd:" << cmd; - system(cmd.c_str()); -} diff --git a/cube/cube-server/include/cube/control.h b/cube/cube-server/include/cube/control.h deleted file mode 100644 index 91e2f635e48896eb88db7edd91b53c42ccef28f8..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/control.h +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include - -#include "cube-server/control.pb.h" - -#include "butil/third_party/rapidjson/document.h" -#include "butil/third_party/rapidjson/prettywriter.h" -#include "butil/third_party/rapidjson/stringbuffer.h" - -namespace rec { -namespace mcube { - -class Control : public ControlService { - public: - Control(); - - virtual ~Control(); - - virtual void cmd(::google::protobuf::RpcController* controller, - const ::rec::mcube::HttpRequest* request, - ::rec::mcube::HttpResponse* response, - ::google::protobuf::Closure* done); - - private: - int handle_status(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, - BUTIL_RAPIDJSON_NAMESPACE::Document* res); - - int handle_reload_base(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, - const std::string& v_path); - int handle_reload_patch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, - const std::string& v_path); - - int handle_bg_load_base(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, - const std::string& v_path); - int handle_bg_load_patch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd, - const std::string& v_path); - - int handle_bg_unload(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); - - int handle_bg_switch(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); - - int handle_enable(const BUTIL_RAPIDJSON_NAMESPACE::Document& cmd); - - std::mutex _cmd_mutex; -}; // class Control - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/dict.h b/cube/cube-server/include/cube/dict.h deleted file mode 100644 index 7f8a08de5077602bd712ac134ff7a4f12bc4cdfa..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/dict.h +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include - -#include -#include -#include -#include - -#include "cube/rw_lock.h" -#include "cube/slim_hash_map.h" -#include "cube/virtual_dict.h" - -namespace rec { -namespace mcube { - -class Dict : public VirtualDict { - public: - Dict(); - - virtual ~Dict(); - - /* - void set_base_dict(const Dict * dict){ - _base_dict = dict; - } - */ - - virtual void set_base_dict(const VirtualDict* dict) { - _base_dict = static_cast(dict); - } - - int load(const std::string& dict_path, - bool in_mem, - const std::string& v_path); - - int destroy(); - - bool seek(uint64_t key, char* buff, uint64_t* buff_size); - - const std::string& version(); // no lock, used by framework seek - - std::string guard_version(); - - void atom_inc_seek_num(); - - void atom_dec_seek_num(); - - uint32_t atom_seek_num(); - - private: - int load_index(const std::string& dict_path, const std::string& v_path); - - int load_data(const std::string& dict_path, const std::string& v_path); - - int load_data_mmap(const std::string& dict_path, const std::string& v_path); - - void set_version(const std::string& v_path); - - private: - struct DataBlock { - DataBlock() : size(0), fd(-1) {} - - std::shared_ptr s_data; - uint32_t size; - int fd; - }; - - private: - // boost::unordered_map _table; - slim_hash_map _slim_table; - std::vector _block_set; - std::atomic _seek_num; - const Dict* _base_dict; - std::string _version; - RWLock _rw_lock; -}; // class Dict - -typedef std::shared_ptr DictPtr; - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/dict_set.h b/cube/cube-server/include/cube/dict_set.h deleted file mode 100644 index 4a9037fa04ee5edb327f75c80cac3974e9632de6..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/dict_set.h +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include - -#include "cube/dict.h" -#include "cube/virtual_dict.h" - -namespace rec { -namespace mcube { - -class DictSet : public VirtualDict { - public: - explicit DictSet(int dict_split); - - virtual ~DictSet(); - - virtual int load(const std::vector& dict_path, - bool in_mem, - const std::string& v_path); - - virtual int destroy(); - - virtual const std::string& version(); - - virtual std::string guard_version(); - - virtual void set_base_dict(const VirtualDict* dict); - - virtual bool seek(uint64_t key, char* buff, uint64_t* buff_size); - - virtual void atom_inc_seek_num(); - - virtual void atom_dec_seek_num(); - - virtual uint32_t atom_seek_num(); - - private: - std::atomic _seek_num{0}; - std::vector _dict_set; - int _dict_split{0}; - std::string _version{""}; - RWLock _rw_lock; -}; // DictSet - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/framework.h b/cube/cube-server/include/cube/framework.h deleted file mode 100644 index 5debe94559a2830e2f4e6ded8a0543c6be80706a..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/framework.h +++ /dev/null @@ -1,128 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include - -#include "butil/third_party/rapidjson/document.h" -#include "butil/third_party/rapidjson/prettywriter.h" -#include "butil/third_party/rapidjson/stringbuffer.h" - -#include "cube-server/cube.pb.h" -#include "cube/rw_lock.h" -#include "cube/virtual_dict.h" - -namespace rec { -namespace mcube { - -struct Status { - enum StatusCode { F_RUNNING = 0, F_LOADING }; -}; - -class Framework { - public: - static Framework* instance(); - - public: - ~Framework(); - - int init(uint32_t dict_split, bool in_mem); - - int destroy(); - - int status(BUTIL_RAPIDJSON_NAMESPACE::Document* res); - - int seek(const DictRequest* req, DictResponse* res); - - int reload(const std::string& v_path); - - int patch(const std::string& v_path); - - // load dict base - int bg_load_base(const std::string& v_path); - - // load dict patch - int bg_load_patch(const std::string& v_path); - - int bg_unload(); - - int bg_switch(); - - int enable(const std::string& version); - - private: - void init_dict(uint32_t dict_split); - - VirtualDict* create_dict(); - - private: - VirtualDict* get_cur_dict() { - _rw_lock.r_lock(); - VirtualDict* dict = _dict[_dict_idx]; - dict->atom_inc_seek_num(); - _rw_lock.unlock(); - return dict; - } - - std::string get_cur_version() { - _rw_lock.r_lock(); - VirtualDict* dict = _dict[_dict_idx]; - std::string version = dict->version(); - _rw_lock.unlock(); - return version; - } - - VirtualDict* get_bg_dict() const { return _dict[1 - _dict_idx]; } - - std::string get_bg_version() { - _bg_rw_lock.r_lock(); - VirtualDict* dict = _dict[1 - _dict_idx]; - std::string version = ""; - if (dict) { - version = dict->guard_version(); - } - _bg_rw_lock.unlock(); - return version; - } - - void set_bg_dict(VirtualDict* dict) { - _bg_rw_lock.w_lock(); - _dict[1 - _dict_idx] = dict; - _bg_rw_lock.unlock(); - } - - void release(VirtualDict* dict); - - private: - Framework() : _dict_idx(0) {} - Framework(const Framework&) {} - - private: - VirtualDict* _dict[2]{nullptr, nullptr}; - int _dict_idx{0}; - std::string _dict_path{""}; - bool _in_mem{true}; - std::atomic_int _status; - RWLock _rw_lock; - RWLock _bg_rw_lock; - uint32_t _max_val_size{0}; - uint32_t _dict_split{0}; - std::vector _dict_set_path; -}; // class Framework - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/recycle.h b/cube/cube-server/include/cube/recycle.h deleted file mode 100644 index a520bd875a0b2d38e4df71874c1cc4949f813af9..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/recycle.h +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include - -#include "cube/dict.h" - -namespace rec { -namespace mcube { - -class Recycle { - public: - static Recycle* get_instance(); - - public: - ~Recycle(); - - /** - * @brief init recycle module - */ - int init(); - - /** - * @brief destroy recycle module and wait recycle quit - */ - int destroy(); - - /** - * @brief send dict to recycle module - */ - // void recycle(Dict* dict); - - /** - * @brief send dict to recycle module - */ - void recycle(VirtualDict* dict); - - private: - static void* recycle_func(void*); - - Recycle(); - - /** - * @brief lock recycle list - */ - void lock(); - - /** - * @brief unlock recycle list - */ - void unlock(); - - private: - pthread_t _recycle_thread; - pthread_mutex_t _recycle_mutex; - // std::queue _recycle_list; - std::queue _recycle_list; - bool _running; -}; // class Recycle - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/server.h b/cube/cube-server/include/cube/server.h deleted file mode 100644 index fa5a4a465d865c91a63647785b51b124db51b43e..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/server.h +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include "cube-server/cube.pb.h" - -namespace rec { -namespace mcube { - -class Server : public DictService { - public: - Server(); - - virtual ~Server(); - - virtual void seek(::google::protobuf::RpcController* controller, - const ::rec::mcube::DictRequest* request, - ::rec::mcube::DictResponse* response, - ::google::protobuf::Closure* done); -}; - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/include/cube/virtual_dict.h b/cube/cube-server/include/cube/virtual_dict.h deleted file mode 100644 index 0618750dafbdc3317b9603744215fd69933eb28d..0000000000000000000000000000000000000000 --- a/cube/cube-server/include/cube/virtual_dict.h +++ /dev/null @@ -1,66 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include - -#include "cube/error.h" - -namespace rec { -namespace mcube { - -class VirtualDict { - public: - VirtualDict() {} - - virtual ~VirtualDict() {} - - virtual int load(const std::string& /*dict_path*/, - bool /*in_mem*/, - const std::string& /*v_path*/) { - return E_NOT_IMPL; - } - - virtual int load(const std::vector& /*dict_path*/, - bool /*in_mem*/, - const std::string& /*v_path*/) { - return E_NOT_IMPL; - } - - virtual int destroy() { return E_NOT_IMPL; } - - virtual const std::string& version() { - static std::string UNKNOWN_VERSION = "UNKNOWN"; - return UNKNOWN_VERSION; - } - - virtual std::string guard_version() { - static std::string UNKNOWN_VERSION = "UNKNOWN"; - return UNKNOWN_VERSION; - } - - virtual void set_base_dict(const VirtualDict* dict) = 0; - - virtual bool seek(uint64_t key, char* buff, uint64_t* buff_size) = 0; - - virtual void atom_inc_seek_num() = 0; - - virtual void atom_dec_seek_num() = 0; - virtual uint32_t atom_seek_num() = 0; -}; // class VirtualDict - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/control.cpp b/cube/cube-server/src/control.cpp deleted file mode 100644 index 8d4074da20c45c1f5c8df8f1fc723945d3e6b2a9..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/control.cpp +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include - -#include "cube/control.h" -#include "cube/framework.h" - -namespace rec { -namespace mcube { - -using ::rec::mcube::HttpRequest; -using ::rec::mcube::HttpResponse; - -using ::google::protobuf::RpcController; -using ::google::protobuf::Closure; - -using ::brpc::HttpHeader; -using ::brpc::URI; -using ::brpc::Controller; -using ::brpc::ClosureGuard; - -using BUTIL_RAPIDJSON_NAMESPACE::Document; - -std::string rapidjson_value_to_string( - const BUTIL_RAPIDJSON_NAMESPACE::Value& value) { - BUTIL_RAPIDJSON_NAMESPACE::StringBuffer buffer; - BUTIL_RAPIDJSON_NAMESPACE::PrettyWriter< - BUTIL_RAPIDJSON_NAMESPACE::StringBuffer> - writer(buffer); - value.Accept(writer); - return buffer.GetString(); -} - -Control::Control() {} - -Control::~Control() {} - -void Control::cmd(::google::protobuf::RpcController* cntl_base, - const ::rec::mcube::HttpRequest* /*request*/, - ::rec::mcube::HttpResponse* /*response*/, - ::google::protobuf::Closure* done) { - ClosureGuard done_guard(done); - Controller* cntl = static_cast(cntl_base); - - std::string cmd_str = cntl->request_attachment().to_string(); - Document cmd; - cmd.Parse(cmd_str.c_str()); - LOG(INFO) << "HANDLE CMD: " << cmd_str; - if (!cmd.IsObject()) { - LOG(ERROR) << "parse command failed"; - cntl->http_response().set_status_code(brpc::HTTP_STATUS_BAD_REQUEST); - return; - } - - if (!cmd.HasMember("cmd") || !cmd["cmd"].IsString()) { - cntl->http_response().set_status_code(brpc::HTTP_STATUS_BAD_REQUEST); - return; - } - - std::string cmd_name = cmd["cmd"].GetString(); - - std::string version_path = ""; - if (cmd.HasMember("version_path") && cmd["version_path"].IsString()) { - version_path = cmd["version_path"].GetString(); - } - - int ret = 0; - Document response; - if (cmd_name.compare("status") == 0) { - ret = handle_status(cmd, &response); - } else if (_cmd_mutex.try_lock()) { - if (cmd_name.compare("reload_base") == 0) { - ret = handle_reload_base(cmd, version_path); - } else if (cmd_name.compare("reload_patch") == 0) { - ret = handle_reload_patch(cmd, version_path); - } else if (cmd_name.compare("bg_load_base") == 0) { - ret = handle_bg_load_base(cmd, version_path); - } else if (cmd_name.compare("bg_load_patch") == 0) { - ret = handle_bg_load_patch(cmd, version_path); - } else if (cmd_name.compare("bg_unload") == 0) { - ret = handle_bg_unload(cmd); - } else if (cmd_name.compare("bg_switch") == 0) { - ret = handle_bg_switch(cmd); - } else if (cmd_name.compare("enable") == 0) { - ret = handle_enable(cmd); - } else { - ret = -1; - LOG(ERROR) << "unknown cmd: " << cmd_name; - } - _cmd_mutex.unlock(); - } else { - LOG(ERROR) << "try to get cmd mutex failed cmd: " << cmd_name; - ret = -1; - } - - cntl->response_attachment().append(rapidjson_value_to_string(response)); - if (ret == 0) { - cntl->http_response().set_status_code(brpc::HTTP_STATUS_OK); - } else { - cntl->http_response().set_status_code( - brpc::HTTP_STATUS_INTERNAL_SERVER_ERROR); - } - - LOG(INFO) << "CMD DONE: " << cmd_str; - return; -} - -int Control::handle_status(const Document& /*cmd*/, Document* res) { - Framework* framework = Framework::instance(); - return framework->status(res); -} - -int Control::handle_reload_patch(const Document& /*cmd*/, - const std::string& v_path) { - Framework* framework = Framework::instance(); - return framework->patch(v_path); -} - -int Control::handle_reload_base(const Document& /*cmd*/, - const std::string& v_path) { - Framework* framework = Framework::instance(); - return framework->reload(v_path); -} - -int Control::handle_bg_load_patch(const Document& /*cmd*/, - const std::string& v_path) { - Framework* framework = Framework::instance(); - return framework->bg_load_patch(v_path); -} - -int Control::handle_bg_load_base(const Document& /*cmd*/, - const std::string& v_path) { - Framework* framework = Framework::instance(); - return framework->bg_load_base(v_path); -} - -int Control::handle_bg_unload(const Document& /*cmd*/) { - Framework* framework = Framework::instance(); - return framework->bg_unload(); -} - -int Control::handle_bg_switch(const Document& /*cmd*/) { - Framework* framework = Framework::instance(); - return framework->bg_switch(); -} - -int Control::handle_enable(const Document& cmd) { - if (!cmd.HasMember("version") || !cmd["version"].IsString()) { - return -1; - } - Framework* framework = Framework::instance(); - return framework->enable(cmd["version"].GetString()); -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/cube_bvar.cpp b/cube/cube-server/src/cube_bvar.cpp deleted file mode 100644 index 557c43eb466fc4ec31263c30c265f5ca4ae19dc3..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/cube_bvar.cpp +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube/cube_bvar.h" - -namespace rec { -namespace mcube { - -bvar::IntRecorder g_keys_num; -bvar::Window g_keys_win("keys_per_request_num", - &g_keys_num, - bvar::FLAGS_bvar_dump_interval); - -bvar::Adder g_request_num("request_num"); -bvar::Window> g_request_num_minute("request_num_minute", - &g_request_num, - 60); - -bvar::IntRecorder g_data_load_time("data_load_time"); - -bvar::IntRecorder g_data_size("data_size"); - -bvar::Adder g_long_value_num("long_value_num"); -bvar::Window> g_long_value_num_minute( - "long_value_num_minute", &g_long_value_num, 60); - -bvar::Adder g_unfound_key_num("unfound_key_num"); -bvar::Window> g_unfound_key_num_minute( - "unfound_key_num_minute", &g_unfound_key_num, 60); - -bvar::Adder g_total_key_num("total_key_num"); -bvar::Window> g_total_key_num_minute( - "total_key_num_minute", &g_total_key_num, 60); -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/dict.cpp b/cube/cube-server/src/dict.cpp deleted file mode 100644 index 5897d366ee2b4910ad9d0f8b331f6be541ee63c9..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/dict.cpp +++ /dev/null @@ -1,432 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include - -#include -#include -#include -#include -#include -#include -#include - -#include "cube/cube_bvar.h" -#include "cube/dict.h" -#include "cube/error.h" -#include "cube/util.h" - -namespace rec { -namespace mcube { - -static void munmap_deleter(void* data, uint32_t size) { - if (data != MAP_FAILED) { - munmap(data, size); - } -} - -Dict::Dict() : _seek_num(0), _base_dict(NULL) {} - -Dict::~Dict() {} - -void Dict::atom_dec_seek_num() { --_seek_num; } - -void Dict::atom_inc_seek_num() { ++_seek_num; } - -uint32_t Dict::atom_seek_num() { return _seek_num; } - -int Dict::load(const std::string& dict_path, - bool in_mem, - const std::string& v_path) { - TIME_FLAG(load_start); - - int ret = load_index(dict_path, v_path); - if (ret != E_OK) { - LOG(WARNING) << "load index failed"; - return ret; - } - - if (in_mem) { - ret = load_data(dict_path, v_path); - if (ret != E_OK) { - LOG(ERROR) << "load data failed"; - return ret; - } - } else { - ret = load_data_mmap(dict_path, v_path); - if (ret != E_OK) { - LOG(ERROR) << "load data failed"; - return ret; - } - } - set_version(v_path); - TIME_FLAG(load_end); - g_data_load_time << time_diff(load_start, load_end); - return E_OK; -} - -int Dict::load_index(const std::string& dict_path, const std::string& v_path) { - std::string index_n_path(dict_path); - index_n_path.append(v_path); - index_n_path.append("/index.n"); - LOG(INFO) << "index file path: " << index_n_path; - - std::unique_ptr pf(fopen(index_n_path.c_str(), "rb"), - &fclose); - if (pf.get() == NULL) { - LOG(WARNING) << "open index: " << index_n_path << " failed"; - return E_DATA_ERROR; - } - - int type = 0; - if (fread(reinterpret_cast(&type), sizeof(int), 1, pf.get()) != 1) { - LOG(ERROR) << "index syntax error"; - return E_DATA_ERROR; - } - - uint32_t count = 0; - if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf.get()) != - 1) { - LOG(ERROR) << "index syntax error"; - return E_DATA_ERROR; - } - - uint32_t file_num = 0; - if (fread( - reinterpret_cast(&file_num), sizeof(uint32_t), 1, pf.get()) != - 1) { - LOG(ERROR) << "index syntax error"; - return E_DATA_ERROR; - } - LOG(INFO) << "index type:" << type << ", count:" << count - << ", file_num:" << file_num; - - // read file_lens begin - uint32_t file_cnt = file_num; - uint64_t len[1024]; - std::vector file_lens; - file_lens.reserve(file_num); - while (file_cnt > 0) { - uint32_t to_read = file_cnt > 1024 ? 1024 : file_cnt; - file_cnt -= to_read; - if (fread(reinterpret_cast(&len), - sizeof(uint64_t), - to_read, - pf.get()) != to_read) { - return E_DATA_ERROR; - } - for (uint32_t i = 0; i < to_read; ++i) { - file_lens.push_back(len[i]); - } - } - - if (file_lens.size() != file_num) { - LOG(ERROR) << "file_num[" << file_num << "] != file_lens size[" - << file_lens.size() << "], shouldn't happen"; - return E_DATA_ERROR; - } - - // try patch mode - size_t file_idx = 0; - if (_base_dict) { - if (_base_dict->_slim_table.check_file_len(file_lens, &file_idx)) { - LOG(INFO) << "index check file len ok in patch mode, set file_idx to " - << file_idx; - - if (_slim_table.copy_data_from(_base_dict->_slim_table) != 0) { - LOG(ERROR) << "copy data from old index failed in patch mode"; - return E_DATA_ERROR; - } - } else { - file_idx = 0; - LOG(INFO) - << "index check file len failed in patch mode, set file_idx to 0"; - } - } - - _slim_table.resize(count / 2); - - char file[1024]; - struct stat fstat; - for (; file_idx < file_num; ++file_idx) { - snprintf(file, - sizeof(file), - "%s%s/index.%lu", - dict_path.c_str(), - v_path.c_str(), - file_idx); - if (stat(file, &fstat) < 0) { - if (errno == ENOENT) { - LOG(WARNING) << "index." << file_idx << " not exist"; - _slim_table.add_file_len(0); - continue; - } - return E_DATA_ERROR; - } - if ((uint64_t)fstat.st_size != file_lens[file_idx]) { - LOG(ERROR) << "load_index failed, expect index file[" << file_idx - << "] size is " << file_lens[file_idx] << ", actual size is " - << (uint64_t)fstat.st_size; - return E_DATA_ERROR; - } - LOG(INFO) << "loading from index." << file_idx; - if (!_slim_table.load(file) || _slim_table.size() > count) { - return E_DATA_ERROR; - } - - _slim_table.add_file_len(file_lens[file_idx]); - } - - return E_OK; -} - -int Dict::load_data(const std::string& dict_path, const std::string& v_path) { - if (_base_dict) { - _block_set = _base_dict->_block_set; - } - - std::string data_n_path(dict_path); - data_n_path.append(v_path); - data_n_path.append("/data.n"); - FILE* pf = fopen(data_n_path.c_str(), "rb"); - if (pf == NULL) { - LOG(ERROR) << "open data [" << data_n_path << "] failed"; - return E_DATA_ERROR; - } - uint32_t count = 0; - if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf) != 1) { - LOG(ERROR) << "data syntax error"; - fclose(pf); - return E_DATA_ERROR; - } - - std::vector block_size; - uint64_t total_data_size = 0; - for (uint32_t i = 0; i < count; ++i) { - uint32_t size = 0; - if (fread(reinterpret_cast(&size), sizeof(uint32_t), 1, pf) != 1) { - LOG(ERROR) << "data syntax error"; - fclose(pf); - return E_DATA_ERROR; - } - block_size.push_back(size); - total_data_size += size; - } - g_data_size << (total_data_size / 1024 / 1024); - fclose(pf); - pf = NULL; - - uint32_t old_size = _block_set.size(); - for (size_t i = 0; i < old_size; ++i) { - if (_block_set[i].size != block_size[i]) { - old_size = 0; - break; - } - } - _block_set.resize(count); - for (size_t i = old_size; i < _block_set.size(); ++i) { - char data_path[1024]; - LOG(INFO) << "load from data." << i; - snprintf( - data_path, 1024, "%s%s/data.%lu", dict_path.c_str(), v_path.c_str(), i); - - FILE* data_file = fopen(data_path, "rb"); - if (data_file == NULL) { - LOG(WARNING) << "open data file [" << data_path << " failed"; - _block_set[i].s_data.reset(); - _block_set[i].size = 0; - continue; - } - - _block_set[i].s_data.reset( - reinterpret_cast(malloc(block_size[i] * sizeof(char)))); - if (_block_set[i].s_data.get() == NULL) { - LOG(ERROR) << "malloc data failed"; - fclose(data_file); - return E_OOM; - } - _block_set[i].size = block_size[i]; - - if (fread(reinterpret_cast(_block_set[i].s_data.get()), - sizeof(char), - _block_set[i].size, - data_file) != _block_set[i].size) { - LOG(ERROR) << "read data failed"; - fclose(data_file); - return E_DATA_ERROR; - } - - fclose(data_file); - } - - return E_OK; -} - -int Dict::load_data_mmap(const std::string& dict_path, - const std::string& v_path) { - std::string data_n_path(dict_path); - data_n_path.append(v_path); - data_n_path.append("/data.n"); - FILE* pf = fopen(data_n_path.c_str(), "rb"); - if (pf == NULL) { - LOG(ERROR) << "open data [" << data_n_path << "] failed"; - return E_DATA_ERROR; - } - uint32_t count = 0; - if (fread(reinterpret_cast(&count), sizeof(uint32_t), 1, pf) != 1) { - LOG(ERROR) << "data syntax error"; - fclose(pf); - return E_DATA_ERROR; - } - - std::vector block_size; - uint64_t total_data_size = 0; - for (uint32_t i = 0; i < count; ++i) { - uint32_t size = 0; - if (fread(reinterpret_cast(&size), sizeof(uint32_t), 1, pf) != 1) { - LOG(ERROR) << "data syntax error"; - fclose(pf); - return E_DATA_ERROR; - } - block_size.push_back(size); - total_data_size += size; - } - g_data_size << (total_data_size / 1024 / 1024); - fclose(pf); - pf = NULL; - - uint32_t old_size = _block_set.size(); - _block_set.resize(count); - for (size_t i = old_size; i < _block_set.size(); ++i) { - char data_path[1024]; - LOG(INFO) << "load from data." << i; - snprintf( - data_path, 1024, "%s%s/data.%lu", dict_path.c_str(), v_path.c_str(), i); - - int data_fd = open(data_path, - O_RDONLY | O_NONBLOCK, - S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH); - if (data_fd < 0) { - LOG(WARNING) << "open data file [" << data_path << "] failed"; - _block_set[i].s_data.reset(); - _block_set[i].size = 0; - continue; - } - - _block_set[i].s_data.reset( - reinterpret_cast( - mmap(NULL, block_size[i], PROT_READ, MAP_SHARED, data_fd, 0)), - std::bind(munmap_deleter, std::placeholders::_1, block_size[i])); - - if (_block_set[i].s_data.get() == MAP_FAILED) { - LOG(WARNING) << "map data file [" << data_path << "] failed"; - _block_set[i].s_data.reset(); - _block_set[i].size = 0; - continue; - } - _block_set[i].size = block_size[i]; - _block_set[i].fd = data_fd; - } - - return E_OK; -} - -int Dict::destroy() { - for (size_t i = 0; i < _block_set.size(); ++i) { - if (_block_set[i].fd > 0) { - close(_block_set[i].fd); - _block_set[i].fd = -1; - } - _block_set[i].size = 0; - } - return E_OK; -} - -void Dict::set_version(const std::string& v_path) { - _rw_lock.w_lock(); - _version = (v_path == "") ? "" : v_path.substr(1); - _rw_lock.unlock(); -} - -const std::string& Dict::version() { return _version; } - -std::string Dict::guard_version() { - _rw_lock.r_lock(); - std::string version = _version; - _rw_lock.unlock(); - return version; -} - -bool Dict::seek(uint64_t key, char* buff, uint64_t* buff_size) { - slim_hash_map::iterator it = _slim_table.find(key); - if (it.get_node() == NULL) { - *(reinterpret_cast(buff)) = 0; - *buff_size = sizeof(uint32_t); - g_unfound_key_num << 1; - return false; - } - if (it == _slim_table.end()) { - *(reinterpret_cast(buff)) = 0; - *buff_size = sizeof(uint32_t); - return false; - } - - uint64_t flag = it->second; - uint32_t id = (uint32_t)(flag >> 32); - uint64_t addr = (uint32_t)(flag); - - if (_block_set.size() > id) { - uint32_t block_size = _block_set[id].size; - char* block_data = NULL; - block_data = _block_set[id].s_data.get(); - - if (block_data && addr + sizeof(uint32_t) <= block_size) { - uint32_t len = *(reinterpret_cast(block_data + addr)); - if (addr + len <= block_size && len >= sizeof(uint32_t)) { - uint64_t default_buffer_size = *buff_size; - - *buff_size = len - sizeof(uint32_t); - if (*buff_size > default_buffer_size) { - g_long_value_num << 1; - LOG(ERROR) << "value len is " << *buff_size - << ", larger than default_buffer_size " - << default_buffer_size; - return false; - } - memcpy(buff, - (block_data + addr + sizeof(uint32_t)), - len - sizeof(uint32_t)); - return true; - } else { - *(reinterpret_cast(buff)) = 0; - *buff_size = sizeof(uint32_t); - return false; - } - } else { - *(reinterpret_cast(buff)) = 0; - *buff_size = sizeof(uint32_t); - return false; - } - } else { - *(reinterpret_cast(buff)) = 0; - *buff_size = sizeof(uint32_t); - return false; - } - - return false; -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/dict_set.cpp b/cube/cube-server/src/dict_set.cpp deleted file mode 100644 index 90f42456b2b243e38750fb0bc7e4693d81fa5671..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/dict_set.cpp +++ /dev/null @@ -1,91 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube/dict_set.h" - -namespace rec { -namespace mcube { - -DictSet::DictSet(int dict_split) : VirtualDict(), _dict_split(dict_split) { - _dict_set.resize(_dict_split); -} - -DictSet::~DictSet() {} - -void DictSet::set_base_dict(const VirtualDict* dict) { - const DictSet* dict_set = static_cast(dict); - for (size_t i = 0; i < _dict_set.size(); ++i) { - if (!_dict_set[i]) { - _dict_set[i] = std::make_shared(); - } - _dict_set[i]->set_base_dict(dict_set->_dict_set[i].get()); - } -} - -int DictSet::load(const std::vector& dict_path, - bool in_mem, - const std::string& v_path) { - if ((uint32_t)_dict_split != dict_path.size()) { - return E_DATA_ERROR; - } - - for (size_t i = 0; i < dict_path.size(); ++i) { - if (!_dict_set[i]) { - _dict_set[i] = std::make_shared(); - } - - if (_dict_set[i]->load(dict_path[i], in_mem, v_path) != E_OK) { - LOG(ERROR) << "dict split[" << i << "] load failed"; - return E_DATA_ERROR; - } - } - - _rw_lock.w_lock(); - _version = (v_path == "") ? "" : v_path.substr(1); - _rw_lock.unlock(); - - return E_OK; -} - -int DictSet::destroy() { - for (size_t i = 0; i < _dict_set.size(); ++i) { - if (_dict_set[i]->destroy() != E_OK) { - LOG(WARNING) << "dict split[" << i << "] destory failed"; - } - } - - return E_OK; -} - -const std::string& DictSet::version() { return _version; } - -std::string DictSet::guard_version() { - _rw_lock.r_lock(); - std::string version = _version; - _rw_lock.unlock(); - return version; -} - -bool DictSet::seek(uint64_t key, char* buff, uint64_t* buff_size) { - return _dict_set[key % _dict_split]->seek(key, buff, buff_size); -} - -void DictSet::atom_inc_seek_num() { ++_seek_num; } - -void DictSet::atom_dec_seek_num() { --_seek_num; } - -uint32_t DictSet::atom_seek_num() { return _seek_num; } - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/framework.cpp b/cube/cube-server/src/framework.cpp deleted file mode 100644 index 649782013f691c081c57a604a3d9a0b9b11fa1fa..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/framework.cpp +++ /dev/null @@ -1,339 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include "cube/cube_bvar.h" -#include "cube/dict.h" -#include "cube/dict_set.h" -#include "cube/framework.h" -#include "cube/recycle.h" - -using BUTIL_RAPIDJSON_NAMESPACE::Document; -using BUTIL_RAPIDJSON_NAMESPACE::Value; -using BUTIL_RAPIDJSON_NAMESPACE::StringRef; - -namespace { -static ::rec::mcube::Framework* g_instance = NULL; -} - -namespace rec { -namespace mcube { - -Framework* Framework::instance() { - if (g_instance == NULL) { - g_instance = new Framework(); - } - - return g_instance; -} - -Framework::~Framework() {} - -int Framework::init(uint32_t dict_split, bool in_mem) { - Recycle* rec = Recycle::get_instance(); - int ret = rec->init(); - if (ret != 0) { - LOG(ERROR) << "init recycle failed"; - return ret; - } - - /* - _dict[0] = new (std::nothrow) Dict(); - _dict[1] = NULL; - */ - init_dict(dict_split); - VirtualDict* cur_dict = _dict[_dict_idx]; - _dict_path = "./data"; - _max_val_size = 1024; - _in_mem = in_mem; - - std::string version_file = _dict_path + "/VERSION"; - std::string version_path = ""; - std::ifstream input(version_file.c_str()); - if (!std::getline(input, version_path)) { - version_path = ""; - } else { - version_path = "/" + version_path; - } - input.close(); - - LOG(INFO) << "load dict from" << _dict_path << version_path; - if (_dict_split > 1) { - _dict_set_path.clear(); - _dict_set_path.resize(_dict_split); - std::stringstream dict_set_path_buf; - for (size_t i = 0; i < _dict_split; ++i) { - dict_set_path_buf.str(std::string()); - dict_set_path_buf.clear(); - dict_set_path_buf << _dict_path << "/" << i; - _dict_set_path[i] = dict_set_path_buf.str(); - } - ret = cur_dict->load(_dict_set_path, _in_mem, version_path); - } else { - ret = cur_dict->load(_dict_path, _in_mem, version_path); - } - - if (ret != 0) { - LOG(WARNING) << "init: load dict data failed err=" << ret - << ". starting service with empty data."; - } else { - LOG(INFO) << "load dict from " << _dict_path << version_path << " done"; - } - - _status = Status::F_RUNNING; - - return 0; -} - -int Framework::destroy() { - Recycle* recycle = Recycle::get_instance(); - int ret = recycle->destroy(); - if (ret != 0) { - LOG(WARNING) << "destroy recycle failed"; - } - return 0; -} - -void Framework::init_dict(uint32_t dict_split) { - _dict_split = dict_split; - - if (_dict_split <= 1) { - _dict[0] = new (std::nothrow) Dict(); - _dict[1] = NULL; - } else { - _dict[0] = new (std::nothrow) DictSet(_dict_split); - _dict[1] = NULL; - } -} - -VirtualDict* Framework::create_dict() { - if (_dict_split > 1) { - return new (std::nothrow) DictSet(_dict_split); - } else { - return new (std::nothrow) Dict(); - } -} - -void Framework::release(VirtualDict* dict) { dict->atom_dec_seek_num(); } - -int Framework::status(Document* res) { - res->SetObject(); - Document::AllocatorType& allocator = res->GetAllocator(); - Value cur_version; - Value bg_version; - cur_version.SetString(StringRef(get_cur_version().c_str())); - bg_version.SetString(StringRef((get_bg_version().c_str()))); - res->AddMember("cur_version", cur_version, allocator); - res->AddMember("bg_version", bg_version, allocator); - res->AddMember("status", _status.load(), allocator); - return 0; -} - -int Framework::seek(const DictRequest* req, DictResponse* res) { - g_request_num << 1; - VirtualDict* cur_dict = get_cur_dict(); - char* val_buf = new char[_max_val_size]; - g_keys_num << req->keys_size(); - g_total_key_num << req->keys_size(); - - std::vector values(req->keys_size()); - for (int i = 0; i < req->keys_size(); ++i) { - values[i] = res->add_values(); - } - - for (int i = 0; i < req->keys_size(); ++i) { - uint64_t val_size = _max_val_size; - // DictValue* val = res->add_values(); - DictValue* val = values[i]; - if (cur_dict->seek(req->keys(i), val_buf, &val_size)) { - val->set_status(0); - val->set_value(val_buf, val_size); - } else { - val->set_status(-1); - val->set_value(""); - } - } - - if (req->version_required()) { - res->set_version(cur_dict->version()); - } - - // delete [] keys; - delete[] val_buf; - release(cur_dict); - return 0; -} - -int Framework::reload(const std::string& v_path) { - int ret = bg_load_base(v_path); - if (ret != 0) { - LOG(WARNING) << "background load dict base failed"; - } else { - LOG(INFO) << "background load dict base succ"; - } - - ret = bg_switch(); - if (ret != 0) { - LOG(WARNING) << "switch background dict failed"; - } else { - LOG(INFO) << "switch background dict succ"; - } - - ret = bg_unload(); - if (ret != 0) { - LOG(WARNING) << "unload background dict failed"; - } else { - LOG(INFO) << "unload background dict succ"; - } - - return ret; -} - -int Framework::patch(const std::string& v_path) { - int ret = bg_load_patch(v_path); - if (ret != 0) { - LOG(WARNING) << "background load dict patch failed"; - } else { - LOG(INFO) << "background load dict patch succ"; - } - - ret = bg_switch(); - if (ret != 0) { - LOG(WARNING) << "switch background dict failed"; - } else { - LOG(INFO) << "switch background dict succ"; - } - - ret = bg_unload(); - if (ret != 0) { - LOG(WARNING) << "unload background dict failed"; - } else { - LOG(INFO) << "unload background dict succ"; - } - - return ret; -} - -int Framework::bg_load_base(const std::string& v_path) { - int ret = bg_unload(); - if (ret != 0) { - LOG(WARNING) << "unload background dict failed"; - } - - VirtualDict* bg_dict = create_dict(); - - if (!bg_dict) { - LOG(ERROR) << "create Dict failed"; - return -1; - } - - _status = Status::F_LOADING; - if (_dict_split > 1) { - ret = bg_dict->load(_dict_set_path, _in_mem, v_path); - } else { - ret = bg_dict->load(_dict_path, _in_mem, v_path); - } - _status = Status::F_RUNNING; - if (ret != 0) { - LOG(WARNING) << "load background dict failed"; - delete bg_dict; - bg_dict = NULL; - return ret; - } else { - LOG(INFO) << "load background dict succ"; - set_bg_dict(bg_dict); - } - - return ret; -} - -int Framework::bg_load_patch(const std::string& v_path) { - int ret = bg_unload(); - if (ret != 0) { - LOG(WARNING) << "unload background dict failed"; - } - - VirtualDict* bg_dict = create_dict(); - - if (!bg_dict) { - LOG(ERROR) << "create Dict failed"; - return -1; - } - - _status = Status::F_LOADING; - if (_dict[_dict_idx]) { - bg_dict->set_base_dict(_dict[_dict_idx]); - LOG(INFO) << "set base dict from current dict " << _dict_idx; - } - - if (_dict_split > 1) { - ret = bg_dict->load(_dict_set_path, _in_mem, v_path); - } else { - ret = bg_dict->load(_dict_path, _in_mem, v_path); - } - _status = Status::F_RUNNING; - if (ret != 0) { - LOG(WARNING) << "load background dict failed"; - delete bg_dict; - bg_dict = NULL; - return ret; - } else { - LOG(INFO) << "load background dict succ"; - set_bg_dict(bg_dict); - } - return ret; -} - -int Framework::bg_unload() { - VirtualDict* bg_dict = get_bg_dict(); - if (bg_dict != NULL) { - set_bg_dict(NULL); - Recycle* recycle = Recycle::get_instance(); - recycle->recycle(bg_dict); - } - LOG(INFO) << "unload background dict succ"; - return 0; -} - -int Framework::bg_switch() { - _rw_lock.w_lock(); - int bg_idx = 1 - _dict_idx; - if (!_dict[bg_idx]) { - LOG(WARNING) << "switch dict failed because NULL"; - _rw_lock.unlock(); - return -1; - } - _dict_idx = bg_idx; - _rw_lock.unlock(); - return 0; -} - -int Framework::enable(const std::string& version) { - int ret = 0; - if (version != "" && version == get_cur_version()) { - ret = 0; - } else if (version == get_bg_version()) { - ret = bg_switch(); - } else { - LOG(WARNING) << "bg dict version not matched"; - ret = -1; - } - return ret; -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/main.cpp b/cube/cube-server/src/main.cpp deleted file mode 100644 index 9ece4391a600b6c48da030bfdde4f9773c8ee4b0..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/main.cpp +++ /dev/null @@ -1,134 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include - -#include -#include -#ifdef BCLOUD -#include "base/logging.h" -#else -#include "butil/logging.h" -#endif - -#include "cube/control.h" -#include "cube/framework.h" -#include "cube/server.h" - -DEFINE_int32(port, 8000, "TCP Port of this server"); -DEFINE_int32(dict_split, 1, "data dict split for dictset"); -DEFINE_bool(in_mem, - true, - "True[load data into memory] False[mmap data in disk]"); -DECLARE_string(flagfile); - -namespace rec { -namespace mcube { - -bool g_signal_quit = false; -static void sigint_handler(int) { g_signal_quit = true; } // sigint_handler - -int run(int argc, char** argv) { - google::ParseCommandLineFlags(&argc, &argv, true); - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = - strdup((std::string("./log/") + filename + ".log").c_str()); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - if (FLAGS_log_dir == "") { - FLAGS_log_dir = "./log"; - } - - struct stat st_buf; - int ret = 0; - if ((ret = stat(FLAGS_log_dir.c_str(), &st_buf)) != 0) { - mkdir(FLAGS_log_dir.c_str(), 0777); - ret = stat(FLAGS_log_dir.c_str(), &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path " << FLAGS_log_dir - << " not exist, and create fail"; - return -1; - } - } - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - LOG(INFO) << "Succ initialize logger"; - - Framework* framework = Framework::instance(); - ret = framework->init(FLAGS_dict_split, FLAGS_in_mem); - if (ret != 0) { - LOG(ERROR) << "init predict framework failed"; - return ret; - } - - Server cube; - Control cntl; - - brpc::Server server; - server.set_version("Cube Service"); - brpc::ServerOptions option; - - if (server.AddService(&cube, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { - LOG(ERROR) << "Failed to add predict service"; - return -1; - } - - if (server.AddService(&cntl, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { - LOG(ERROR) << "Failed to add predict service"; - return -1; - } - - if (server.Start(FLAGS_port, &option) != 0) { - LOG(ERROR) << "Fail to start service"; - return -1; - } - LOG(INFO) << "cube service start"; - - signal(SIGINT, sigint_handler); - while (!g_signal_quit) { - sleep(1); - } - - return 0; -} - -} // namespace mcube -} // namespace rec - -int main(int argc, char** argv) { - if (google::SetCommandLineOption("bvar_dump", "true").empty()) { - LOG(ERROR) << "Failed to dump bvar file"; - return -1; - } - google::SetCommandLineOption("flagfile", "conf/gflags.conf"); - return ::rec::mcube::run(argc, argv); -} - -/* vim: set ts=4 sw=4 sts=4 tw=100 */ diff --git a/cube/cube-server/src/recycle.cpp b/cube/cube-server/src/recycle.cpp deleted file mode 100644 index 391148e2ec8769121ecb942a23bd7eff8bd67c60..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/recycle.cpp +++ /dev/null @@ -1,121 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "cube/recycle.h" - -namespace { -using rec::mcube::Recycle; -static Recycle* g_instance = NULL; -} - -namespace rec { -namespace mcube { - -Recycle* Recycle::get_instance() { - if (g_instance == NULL) { - g_instance = new Recycle(); - } - - return g_instance; -} - -Recycle::Recycle() : _running(false) {} - -Recycle::~Recycle() {} - -int Recycle::init() { - // init mutex lock; - if (pthread_mutex_init(&_recycle_mutex, NULL) != 0) { - LOG(ERROR) << "init recycle lock failed"; - return -1; - } - - _running = true; - - // init thread; - if (pthread_create(&_recycle_thread, - NULL, - Recycle::recycle_func, - reinterpret_cast(this)) != 0) { - LOG(ERROR) << "init recycle thread failed"; - return -1; - } - return 0; -} - -int Recycle::destroy() { - _running = false; - // join thread; - if (pthread_join(_recycle_thread, NULL) != 0) { - LOG(WARNING) << "join recycle thread failed"; - } - // destroy lock - if (pthread_mutex_destroy(&_recycle_mutex) != 0) { - LOG(WARNING) << "destroy recycle lock failed"; - } - - return 0; -} - -/* -void Recycle::recycle(Dict* dict) { - lock(); - _recycle_list.push(dict); - unlock(); -} -*/ - -void Recycle::recycle(VirtualDict* dict) { - lock(); - _recycle_list.push(dict); - unlock(); -} - -void Recycle::lock() { pthread_mutex_lock(&_recycle_mutex); } - -void Recycle::unlock() { pthread_mutex_unlock(&_recycle_mutex); } - -void* Recycle::recycle_func(void* arg) { - Recycle* recycle = reinterpret_cast(arg); - std::queue& recycle_list = recycle->_recycle_list; - - while (recycle->_running) { - recycle->lock(); - if (recycle_list.empty()) { - recycle->unlock(); - sleep(1); - continue; - } - - VirtualDict* dict = recycle_list.front(); - recycle_list.pop(); - recycle->unlock(); - - while (dict->atom_seek_num() != 0) { - sleep(1); - } - - int ret = dict->destroy(); - if (ret != 0) { - LOG(WARNING) << "destroy dict failed"; - } - - delete dict; - } - - return NULL; -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/src/server.cpp b/cube/cube-server/src/server.cpp deleted file mode 100644 index 62174880d99e17aedc9ede1514944104c30fd4a2..0000000000000000000000000000000000000000 --- a/cube/cube-server/src/server.cpp +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include - -#include "cube/framework.h" -#include "cube/server.h" - -namespace rec { -namespace mcube { - -Server::Server() {} - -Server::~Server() {} - -void Server::seek(::google::protobuf::RpcController* /*cntl_base*/, - const ::rec::mcube::DictRequest* request, - ::rec::mcube::DictResponse* response, - ::google::protobuf::Closure* done) { - brpc::ClosureGuard done_guard(done); - - Framework* framework = Framework::instance(); - int ret = framework->seek(request, response); - if (ret != 0) { - LOG(ERROR) << "seek failed err=" << ret; - } -} - -} // namespace mcube -} // namespace rec diff --git a/cube/cube-server/test/cube_test.cpp b/cube/cube-server/test/cube_test.cpp deleted file mode 100644 index fffe413d3ef37fe00106c009d08585fe06b3d27d..0000000000000000000000000000000000000000 --- a/cube/cube-server/test/cube_test.cpp +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include "gtest/gtest.h" - -#include "cube/control.h" - -namespace rec { -namespace mcube { -namespace unittest { -struct DoNothing : public google::protobuf::Closure { - void Run() {} -}; - -class ControlTest : public ::testing::Test { - protected: - ControlTest() {} - virtual ~ControlTest() {} - virtual void SetUp() {} - virtual void TearDown() {} -}; // class ControlTest - -TEST_F(ControlTest, control_cmd) { - brpc::Controller cntl; - DoNothing do_nothing; - Control control; - - control.cmd(&cntl, NULL, NULL, &do_nothing); - ASSERT_EQ(brpc::HTTP_STATUS_BAD_REQUEST, cntl.http_response().status_code()); - cntl.Reset(); -} - -int run(int argc, char** argv) { - testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} - -} // namespace unittest -} // namespace mcube -} // namespace rec - -int main(int argc, char** argv) { - return ::rec::mcube::unittest::run(argc, argv); -} diff --git a/demo-client/CMakeLists.txt b/demo-client/CMakeLists.txt deleted file mode 100644 index 97602a6c44b9600d796969628d9b0ae3d4bdefa4..0000000000000000000000000000000000000000 --- a/demo-client/CMakeLists.txt +++ /dev/null @@ -1,144 +0,0 @@ -if (NOT EXISTS - ${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.txt) - execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory - ${CMAKE_CURRENT_LIST_DIR}/data/text_classification) - execute_process(COMMAND wget - --no-check-certificate - https://paddle-serving.bj.bcebos.com/data/text_classification/test_set.tar.gz - --output-document - ${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.tar.gz) - - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf - "${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.tar.gz" - WORKING_DIRECTORY - ${CMAKE_CURRENT_LIST_DIR}/data/text_classification - ) -endif() - -add_executable(ximage ${CMAKE_CURRENT_LIST_DIR}/src/ximage.cpp) -target_link_libraries(ximage -Wl,--whole-archive sdk-cpp - -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(ximage_press ${CMAKE_CURRENT_LIST_DIR}/src/ximage_press.cpp) -target_link_libraries(ximage_press -Wl,--whole-archive sdk-cpp - -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(echo ${CMAKE_CURRENT_LIST_DIR}/src/echo.cpp) -target_link_libraries(echo -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive - -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(echo_kvdb ${CMAKE_CURRENT_LIST_DIR}/src/echo_kvdb.cpp) -target_link_libraries(echo_kvdb -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive - -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(dense_format ${CMAKE_CURRENT_LIST_DIR}/src/dense_format.cpp) -target_link_libraries(dense_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(sparse_format ${CMAKE_CURRENT_LIST_DIR}/src/sparse_format.cpp) -target_link_libraries(sparse_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(int64tensor_format ${CMAKE_CURRENT_LIST_DIR}/src/int64tensor_format.cpp) -target_link_libraries(int64tensor_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(text_classification - ${CMAKE_CURRENT_LIST_DIR}/src/text_classification.cpp) -target_link_libraries(text_classification -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(text_classification_press - ${CMAKE_CURRENT_LIST_DIR}/src/text_classification_press.cpp) -target_link_libraries(text_classification_press -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl - -lz) - -add_executable(ctr_prediction - ${CMAKE_CURRENT_LIST_DIR}/src/ctr_prediction.cpp) -target_link_libraries(ctr_prediction -Wl,--whole-archive sdk-cpp - -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) - -add_executable(bert - ${CMAKE_CURRENT_LIST_DIR}/src/bert_service.cpp) -target_link_libraries(bert -Wl,--whole-archive sdk-cpp - -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) - -# install -install(TARGETS ximage - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/bin) -install(TARGETS ximage_press - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/data/images DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/data) - -install(TARGETS echo - RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/python/echo.py - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/python) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/php/echo.php - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/php) - -install(TARGETS echo_kvdb - RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo_kvdb/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo_kvdb/) - -install(TARGETS dense_format - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/dense_format/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/dense_format/) - -install(TARGETS sparse_format - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/sparse_format/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/sparse_format/) - -install(TARGETS int64tensor_format - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/int64tensor_format/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/int64tensor_format/) - -install(TARGETS text_classification text_classification_press - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/data/text_classification DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/data) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/python/text_classification.py - DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/python) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/php/text_classification.php - DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/php) - - - -install(TARGETS ctr_prediction - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/ctr_prediction/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/ctr_prediction/) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/data/ctr_prediction DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/ctr_prediction/data) - -install(TARGETS bert - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/bert/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/bert/) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/data/bert DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/client/bert/data) diff --git a/demo-client/conf/predictors.prototxt b/demo-client/conf/predictors.prototxt deleted file mode 100644 index df31a2245b62a51d9e852b6f3a3f310ae9203809..0000000000000000000000000000000000000000 --- a/demo-client/conf/predictors.prototxt +++ /dev/null @@ -1,155 +0,0 @@ -default_variant_conf { - tag: "default" - connection_conf { - connect_timeout_ms: 2000 - rpc_timeout_ms: 20000 - connect_retry_count: 2 - max_connection_per_host: 100 - hedge_request_timeout_ms: -1 - hedge_fetch_retry_count: 2 - connection_type: "pooled" - } - naming_conf { - cluster_filter_strategy: "Default" - load_balance_strategy: "la" - } - rpc_parameter { - compress_type: 0 - package_size: 20 - protocol: "baidu_std" - max_channel_per_request: 3 - } -} -predictors { - name: "ximage" - service_name: "baidu.paddle_serving.predictor.image_classification.ImageClassifyService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "echo_service" - service_name: "baidu.paddle_serving.predictor.echo_service.BuiltinTestEchoService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "dense_service" - service_name: "baidu.paddle_serving.predictor.dense_service.BuiltinDenseFormatService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "sparse_service" - service_name: "baidu.paddle_serving.predictor.sparse_service.BuiltinSparseFormatService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "int64tensor_service" - service_name: "baidu.paddle_serving.predictor.int64tensor_service.BuiltinFluidService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "text_classification" - service_name: "baidu.paddle_serving.predictor.text_classification.TextClassificationService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "echo_kvdb_service" - service_name: "baidu.paddle_serving.predictor.echo_kvdb_service.EchoKVDBService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} - -predictors { - name: "ctr_prediction_service" - service_name: "baidu.paddle_serving.predictor.ctr_prediction.CTRPredictionService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} -predictors { - name: "bert_service" - service_name: "baidu.paddle_serving.predictor.bert_service.BertService" - endpoint_router: "WeightedRandomRender" - weighted_random_render_conf { - variant_weight_list: "50" - } - variants { - tag: "var1" - naming_conf { - cluster: "list://127.0.0.1:8010" - } - } -} diff --git a/demo-client/data/bert/demo_wiki_data b/demo-client/data/bert/demo_wiki_data deleted file mode 100644 index fbba518fd75a18f62dd7bc6fc05482714d1a59d2..0000000000000000000000000000000000000000 --- a/demo-client/data/bert/demo_wiki_data +++ /dev/null @@ -1,100 +0,0 @@ -101 1249 170 1590 1128 5380 112 189 19073 1164 9374 1146 1240 1402 119 111 1821 1643 132 1112 170 1299 1128 1431 1579 1321 1103 13151 1149 119 119 119 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2298 5358 2145 2504 119 119 119 189 1183 2571 173 6540 2213 1111 16408 16274 5358 1204 16358 1162 1107 1103 2198 1282 106 106 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1192 1518 9367 170 7979 1105 1131 1838 1106 5354 136 1192 1129 4853 1112 4170 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 191 12416 168 1359 1131 1440 1176 170 189 4047 3382 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1109 4170 1128 2100 1164 1143 1547 1129 2276 1137 1122 1547 1129 8406 1197 1190 1103 7979 1150 1500 1122 1106 11078 111 108 4667 22997 1475 132 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1109 4170 1198 14977 1143 119 119 3548 1128 1177 12969 1105 1205 1111 9994 1133 1253 8750 1114 16358 1279 106 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 1169 1136 1198 3465 1146 1105 145 13821 2036 1113 1330 7979 119 119 146 1400 1315 1277 4170 1280 1113 106 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2612 146 112 182 4871 1104 1128 1992 7979 1279 1909 1111 1366 19244 2636 106 106 111 108 5787 18202 132 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1511 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 120 120 189 119 1884 120 172 2346 2591 1477 2924 4880 1571 2162 1527 4426 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 120 120 189 119 1884 120 139 2107 1181 26270 2107 1665 1495 1197 1658 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 120 120 189 119 1884 120 171 1584 23354 1233 1495 1377 2271 1559 2591 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 120 120 189 119 1884 120 155 1604 3361 5821 3080 2064 1571 1830 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 107 107 1398 5358 7979 1279 146 2195 1228 6391 1137 4930 1106 1129 119 119 119 119 6243 1875 111 108 11965 1571 1580 1475 132 107 107 111 108 5787 18202 132 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 15832 10186 8499 1930 23722 1190 1211 1104 1292 189 10073 8634 16358 1279 1133 119 119 119 119 119 119 119 119 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 10906 11437 9705 2225 1577 112 189 3074 1106 2496 1176 7979 1279 3568 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1262 13280 1161 8991 1117 5855 183 4971 1122 1114 170 7172 17719 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 155 1942 137 17008 2822 2665 1527 14430 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 1930 2010 111 108 5787 16770 132 189 1713 1278 1112 1277 1191 1195 1238 111 108 5787 16770 132 189 1138 1106 2239 1114 7979 3919 4952 107 107 119 11336 1204 24887 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 112 182 170 8750 175 8517 1152 1163 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 27464 1341 4676 170 23609 15074 1110 10509 1208 136 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 118 14159 8223 1193 1592 13976 27825 1942 1186 2349 20257 1116 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 4373 11078 1518 1455 1240 7979 1111 1168 7979 1279 118 24181 3382 1162 1490 107 107 2160 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1731 190 2065 2498 190 1197 1334 7979 1106 170 1342 1187 1192 1221 14680 176 2087 2053 1120 136 106 111 108 11965 25491 1495 132 111 108 11965 25491 1495 132 111 108 11965 25491 1495 132 111 108 11965 25491 1495 132 107 107 146 156 2924 12420 2069 106 106 106 106 106 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 3180 6262 1663 3940 170 2926 8209 111 1821 1643 132 1202 1292 10514 119 107 107 1448 12327 1186 136 10605 1233 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 13136 1592 3276 10719 10073 15410 137 3414 5926 168 168 168 168 7979 9367 190 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 10259 2156 17571 1299 7979 3919 11437 9705 3354 107 107 1180 1128 4268 1329 2335 12043 136 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2009 1103 9069 1643 9180 9712 1186 3454 1202 1162 136 107 107 194 1119 1474 1131 1350 1176 7015 181 1918 1186 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1124 24147 8780 159 26601 1306 14965 111 108 11965 1571 1604 1527 132 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 15619 14516 1324 1143 23609 15074 4375 2083 1173 170 5946 12354 119 119 119 119 108 18257 6801 10486 7921 1204 1757 107 107 111 181 1204 132 181 1918 1186 106 106 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 108 8507 9199 1105 1451 108 8507 1444 1106 1267 1115 185 1596 146 1198 6310 1272 1115 7979 1198 1163 1103 1211 18848 4170 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 14941 9367 25189 24631 117 1155 194 112 1155 1199 3591 5859 175 8517 18855 1116 1299 117 3240 1110 1297 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2963 16019 10919 4974 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 146 9562 112 189 4170 119 107 107 8441 16851 20099 25338 1233 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 190 1518 2311 170 22904 1113 1103 12447 1105 1341 4477 1184 1191 1115 11437 9705 1161 1108 1113 1117 1236 1106 1243 1199 23609 15074 107 107 1302 171 1116 1538 171 111 176 1204 132 1476 110 2640 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 168 23209 1810 2064 15265 1183 1183 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 4329 1233 2037 2213 1164 1103 176 17643 120 11542 119 119 119 1133 1112 170 5102 2898 1146 117 170 11437 9705 1161 1125 4106 9238 9238 9238 106 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1109 9193 1113 20867 119 119 119 13271 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 111 108 11965 16770 1571 132 111 108 11965 16770 1571 132 111 108 11965 16770 1571 132 155 1942 137 24928 1233 168 170 19429 1424 27400 7486 1129 5277 1106 2496 1176 11437 9705 2225 1177 2213 111 108 11965 25491 1495 132 111 108 11965 25491 1495 132 111 108 11965 25491 1495 132 1115 4170 9562 1204 10509 3051 3051 107 107 1133 11437 9705 2225 2496 1176 7979 1279 119 119 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 3949 7697 1158 7979 106 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 11750 119 155 1942 137 1115 1399 12320 4027 146 112 182 1575 119 2372 1343 11259 4386 4820 15659 1116 136 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 23330 117 27466 1116 119 107 107 1153 112 173 1897 1129 170 2795 7979 136 115 26733 115 1131 112 1325 1138 1106 1587 1143 1293 1122 1759 1111 1123 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 160 11941 2162 9753 1183 3048 9014 137 1731 3810 2137 4064 3810 14541 15027 1200 107 107 6463 3624 1181 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 2098 2249 3329 1592 10775 175 8517 18855 2373 1139 189 24887 1116 1170 5358 1204 180 107 107 1122 1445 112 189 1256 6276 25338 1233 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1188 7979 1108 1177 8362 14867 1566 2365 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 1151 11665 26063 7979 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 1653 168 24438 6775 23698 2393 9724 6639 3954 1116 107 107 1119 1116 170 27528 1200 188 1306 1324 1128 1169 1587 1119 1116 170 1143 8745 7804 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 138 19429 1389 2107 1665 1658 7341 2816 5913 11437 5700 107 107 5749 26063 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1165 190 1197 3218 3301 190 1115 190 1138 22232 18630 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 107 107 137 1659 2036 1181 3048 2312 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1327 1156 194 112 1155 181 2723 10126 18035 2917 7979 1279 1202 1191 1152 1831 1543 1294 118 1146 111 1821 1643 132 1195 8308 136 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 23932 1618 1782 1142 4477 1342 1177 146 1169 1301 14807 1105 4170 108 4503 1658 8167 1776 7941 107 107 1128 1618 1838 25338 13460 1139 11437 1403 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 11099 1171 1106 1278 22797 1167 14458 1190 1103 16358 1279 1150 4739 1122 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1212 1139 1236 1106 9367 26063 7979 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 1653 168 24438 6775 23698 1293 1435 1128 1309 2498 1143 2094 107 107 178 1274 1204 1138 170 1610 1231 6817 1181 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1409 8864 2728 2246 2144 112 189 1437 1146 1114 2630 1161 14086 2692 16358 1279 146 1306 1136 1117 1910 4169 107 107 11824 146 1814 1176 1176 129 21146 1513 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1731 10535 1172 13009 106 106 106 106 107 107 15104 4455 23609 15074 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 149 8271 2346 2346 2346 2346 2346 2346 2346 2346 2346 2346 2346 1142 11437 9705 1161 137 148 11071 1584 168 151 23698 168 8396 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 181 2723 168 170 9866 1182 1873 1128 1221 146 1108 15277 1916 1115 144 4170 1106 1128 111 1821 1643 132 1128 1108 1280 5682 1964 1116 107 107 7979 185 1233 1584 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2421 1143 1294 170 2337 189 24887 1116 1228 16408 12550 3674 117 1177 146 1281 112 189 1243 1107 189 10073 8634 7237 119 107 107 181 1918 1186 7979 1274 112 189 7959 1143 1254 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 15557 5854 1110 1198 1126 9107 1106 1301 1554 1231 6817 1181 1111 1476 3071 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1821 1424 2837 1183 111 108 11965 1571 1580 1475 132 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1515 1141 9125 2130 1110 1236 1183 1183 1183 1183 1618 1190 1515 16358 1279 117 25021 1665 111 108 11965 16770 1571 132 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 153 13356 1183 20238 23609 15074 119 119 119 119 1143 4064 1143 4064 108 6682 2924 17481 1162 2101 8209 7136 10973 17175 111 108 11965 1568 1527 1580 132 18630 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 23114 1149 1412 5247 1299 119 108 13009 2249 1891 107 107 1256 1114 1155 1343 175 8517 18855 183 1183 3899 1107 1103 4061 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1327 3333 1106 1172 191 7231 1424 4035 1204 7979 1279 107 107 1152 1400 1868 1105 3885 1106 1103 1334 1176 170 2555 6690 7979 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 1653 168 24438 6775 23698 13280 1103 7979 3008 17899 1116 26227 111 108 11965 25491 1527 132 111 108 11965 1571 24458 132 111 108 11965 1568 1571 1545 132 107 107 192 4064 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 159 6512 1775 9664 13245 1128 112 1231 8750 6463 117 1602 26511 16358 1162 107 107 14382 1149 1111 108 12008 1324 2349 5412 1658 4371 4050 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1109 9367 1129 2488 1114 1292 7979 1279 136 107 107 9913 3520 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 14680 2339 3210 1146 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 4819 170 107 107 146 112 182 6391 107 107 2076 1104 7979 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 7348 7979 1279 1107 1103 141 2107 1133 146 1274 112 189 1518 2373 112 9712 107 107 1134 1110 194 1240 1499 124 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 5079 1265 1111 1103 1782 119 108 11063 107 107 1188 1110 1187 1103 1567 1408 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 2743 4736 1112 7979 146 1274 112 189 9367 1114 26063 5658 5658 6094 1358 1358 1358 119 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1131 1541 1455 1143 1115 2044 3919 3021 24438 1186 117 1155 178 1180 1474 1108 107 107 7979 192 19989 1204 107 107 149 13901 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 112 182 1126 1346 5285 1105 146 112 182 170 1480 19976 117 1177 146 112 182 10228 1105 1138 23357 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 3278 12847 1158 1113 2302 5557 2144 112 189 1839 2213 3568 119 107 107 146 1202 1115 23609 15074 4170 1451 1285 119 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 20008 14542 21906 15241 1174 1249 2185 1193 18643 14540 140 11811 12463 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 2198 2249 16470 168 19465 138 2246 119 107 107 119 119 119 175 8517 117 1274 112 189 189 24887 107 107 170 2246 107 107 1106 1143 25338 1233 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1249 1263 1112 1103 19713 13151 1121 1208 1113 117 146 1180 1920 2008 119 1262 1115 112 188 1842 119 107 107 119 21362 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 177 1568 1197 24679 1181 146 1238 112 189 1474 1625 24438 1186 107 107 3041 1143 1173 175 8517 18855 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1142 1103 107 107 146 1505 5862 117 28015 1113 2636 117 1105 4330 180 21893 1182 12026 6527 1116 107 107 1716 12734 8413 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 1180 1301 1111 170 7930 3919 7979 1113 1139 4443 107 107 1269 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1542 4007 3675 106 106 106 106 111 108 11965 1571 25041 132 111 108 11965 1571 21336 132 107 107 10730 26063 153 119 152 7979 189 10073 8634 15301 1605 1129 7015 1179 108 4299 2107 18066 2107 11682 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 14680 1334 7979 13224 1221 1122 112 188 2995 1106 1142 4170 119 119 11183 2367 1128 1139 5009 1121 14953 1341 1394 10535 2232 107 107 181 6262 8057 1186 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 111 108 5787 10973 132 137 10882 2271 21732 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1636 16358 1279 1129 2422 25224 1281 112 189 15933 1152 3919 111 108 11965 1571 22433 132 111 108 11965 1568 26253 132 107 107 9562 1605 9304 23698 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 14680 2339 7979 1279 20787 1185 7521 1129 1833 1103 1211 2520 111 108 11965 25491 1495 132 111 108 11965 1571 22433 132 111 108 4850 1580 1571 132 107 107 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 14680 2339 1253 1280 7959 1137 12770 1142 1214 1137 9468 1324 136 107 107 2630 8147 13280 1161 1129 5358 4105 14051 1467 2875 8991 7979 1279 8483 183 4170 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 16445 1138 2673 1114 1139 4113 9367 1123 1268 1107 1115 23609 15074 1187 146 1338 1121 107 107 4477 1128 1400 5871 13303 1176 9367 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1409 1131 3041 190 1114 1123 1257 1501 2824 1115 7979 106 107 107 181 1306 8057 1186 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1192 170 1156 1161 1180 1161 1431 1161 3919 16358 1162 111 108 11965 1571 1545 1495 132 111 108 11965 1571 22392 132 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 8325 139 6194 27400 1732 1249 1116 27453 9705 1161 137 13136 1592 3276 10719 10073 15410 107 107 3073 6052 1566 1115 7979 5155 1146 106 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 122 4538 4164 3051 137 21902 6709 3048 19270 1215 1106 3952 1115 7979 1146 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 158 18901 7979 1279 1129 1176 146 112 182 1139 1319 27189 3840 1324 7979 1128 9562 112 189 8582 1950 1116 111 108 11965 24050 1527 132 111 108 11965 24050 1527 132 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 137 2198 2249 16470 168 19465 11437 9705 1161 1128 1221 1195 5871 23143 14204 16358 1279 119 107 107 119 119 119 9468 1324 117 146 4932 1185 1440 4488 181 1918 1186 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 27652 146 112 182 2033 1149 1777 5161 119 4302 1133 170 9670 1104 11437 9705 2225 1107 111 1821 1643 132 1149 1777 7237 111 1821 1643 132 14908 7979 1279 1114 6340 4067 9367 1394 9712 119 107 107 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 1188 2762 112 189 176 17643 119 119 119 119 119 1122 112 188 6866 18630 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 146 1156 1676 170 16358 1162 1178 16408 1584 1195 2010 112 189 1920 1115 1195 18661 1107 1296 1168 119 107 107 119 119 119 1725 2049 1103 2398 1107 1103 1148 1282 136 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; -101 6819 1423 2762 112 189 1126 9107 1106 1129 170 16358 1162 119 107 107 137 1109 2346 1673 2107 14788 168 14557 1358 107 102 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0;0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0; diff --git a/demo-client/data/ctr_prediction/data.txt b/demo-client/data/ctr_prediction/data.txt deleted file mode 100644 index 09f6468c98e1ec858bd9d6ec4cedbc45fe7b960a..0000000000000000000000000000000000000000 --- a/demo-client/data/ctr_prediction/data.txt +++ /dev/null @@ -1,1000 +0,0 @@ - 29 50 5 7260 437 1 4 14 1 0 6 5a9ed9b0 a0e12995 a1e14474 08a40877 25c83c98 964d1fdd 5b392875 a73ee510 de89c3d2 59cd5ae7 8d98db20 8b216f7b 1adce6ef 78c64a1d 3ecdadf7 3486227d 1616f155 21ddcdc9 5840adea 2c277e62 423fab69 54c91918 9b3e8820 e75c9ae9 -27 17 45 28 2 28 27 29 28 1 1 23 68fd1e64 960c983b 9fbfbfd5 38c11726 25c83c98 7e0ccccf fe06fd10 062b5529 a73ee510 ca53fc84 67360210 895d8bbb 4f8e2224 f862f261 b4cc2435 4c0041e5 e5ba7672 b4abdd09 21ddcdc9 5840adea 36a7ab86 32c7478e 85e4d73f 010f6491 ee63dd9b -1 1 19 7 1 3 1 7 7 1 1 2 09ca0b81 8947f767 a87e61f7 c4ba2a67 25c83c98 7e0ccccf ce6020cc 062b5529 a73ee510 b04d3cfe 70dcd184 899eb56b aca22cf9 b28479f6 a473257f 88f592e4 d4bb7bd8 bd17c3da 1d04f4a4 a458ea53 82bdc0bb 32c7478e 5bdcd9c4 010f6491 cca57dcc -4 1 6 1051 134 4 35 72 1 1 6 05db9164 532da141 a7ded28e 456b4d8c 25c83c98 fbad5c96 5f29da0e 0b153874 a73ee510 4b344a42 0ad37b4b 8ea37200 f9d99d81 cfef1c29 abd8f51e 9a9902d0 07c540c4 bdc06043 6dfd157c ad3062eb 423fab69 ef089725 -7 1 25 10 139 74 48 13 44 1 8 2 12 05db9164 207b2d81 2b280564 ad5ffc6b 25c83c98 7e0ccccf 103c17bc 0b153874 a73ee510 8e54038a e6e0c2dc 2a064dba e9332a03 07d13a8f 0c67c4ca 7d9b60c8 27c07bd6 395856b0 21ddcdc9 a458ea53 9c3eb598 ad3062eb 3a171ecb c0b8dfd6 001f3601 7a2fb9af -8 11 38 9 316 25 8 11 10 1 1 9 05db9164 09e68b86 aa8c1539 85dd697c 25c83c98 7e0ccccf bc252bd0 5b392875 a73ee510 ef5c0d3c 0bd0c3b3 d8c29807 c0e6befc 8ceecbc8 d2f03b75 c64d548f e5ba7672 63cdbb21 cf99e5de 5840adea 5f957280 55dd3565 1793a828 e8b83407 b7d9c3bc -2 1 4 7 4 2 4 4 1 1 4 05db9164 2ae0a573 c5d94b65 5cc8f91d 25c83c98 fe6b92e5 dfc6e241 5b392875 a73ee510 5fe250bc 3547565f 75c79158 12880350 ad1cc976 b046231a 208d4baf 07c540c4 3e340673 6a909d9a c3dc6cef 1f68c81f - 0 8906 541 2 2 78 1 05db9164 d833535f b00d1501 d16679b9 25c83c98 fe6b92e5 eb1a4bfa 0b153874 a73ee510 ef9be7c6 1b723d3c e0d76380 2e072c0d 07d13a8f 943169c2 1203a270 07c540c4 281769c2 73d06dde ad3062eb 3a171ecb aee52b6f - 4 40 5 0 139 2 0 30 5a9ed9b0 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf af0809a5 64523cfa 7cc72ec2 3b08e48b 9e12e146 8fe001f4 025225f2 b28479f6 16d2748c 36103458 2005abd1 003d4f4f e587c466 be7c41b4 3b183c5c -8 0 1 36 457 81 70 14 774 1 5 51 05db9164 b7ca2abd ee96fc95 68ad052c 25c83c98 7e0ccccf d2d741ca 0b153874 a73ee510 18139a78 ea4adb47 ce875433 05781932 64c94865 5f2d5a3a 5f92b84a e5ba7672 4771e483 95b757a6 423fab69 41be4766 - 4 13 20 17700 0 20 1 0 20 68fd1e64 08d6d899 9143c832 f56b7dd5 0942e0a7 7e0ccccf e88f1cec 0b153874 a73ee510 3b08e48b 8f410860 ae1bb660 b8eec0b1 b28479f6 bffbd637 bad5ee18 776ce399 bbf70d82 0429f84b be7c41b4 c0d61a5c - 52 8 30 1572 56 5 30 134 4 30 68fd1e64 09e68b86 aa8c1539 85dd697c 25c83c98 fe6b92e5 c5919aca 0b153874 a73ee510 343ac6ed 8924112e d8c29807 3cf672d1 8ceecbc8 d2f03b75 c64d548f e5ba7672 63cdbb21 cf99e5de 5840adea 5f957280 ad3062eb 3a171ecb 1793a828 e8b83407 b7d9c3bc - 1 24 124689 3 87552397 31520db9 d1e7b5d9 5fd7e960 25c83c98 93b19353 0b153874 7cc72ec2 3b08e48b d2b7c44b d8bf293a 68637c0d 64c94865 22d19b8c 8d422b7e e5ba7672 30d1165e 21ddcdc9 5840adea 4a74c2f6 32c7478e 471f55fb 010f6491 2c444dca -16 18 5203 8 0 0 4 49 10 0 1 0 05db9164 9f7e1d07 0253bbf5 d6420627 4cf72387 0db090eb 0b153874 a73ee510 3b08e48b 10e6a64f 31adfaee 38b5339a 07d13a8f 3e25e5f5 1621c7f4 e5ba7672 6a58e423 21ddcdc9 5840adea bcc7a461 32c7478e 3214afd4 ea9a246c e7ecb821 - 2 4 4 508 0 16 17 0 4 5a9ed9b0 6e638bbc 74e1a23a 9a6888fb 384874ce 7e0ccccf a24c8c8e 5b392875 a73ee510 2e8e8e87 41b3f655 fb8fab62 ce5114a2 07d13a8f d4525f76 c6b1e1b2 1e88c74f f6a2fc70 21ddcdc9 5840adea 99c09e97 32c7478e 335a6a1e 9b3e8820 3055b376 - 1503 25509 10 68fd1e64 d833535f ad4b77ff d16679b9 25c83c98 fbad5c96 038685fb 37e4aa92 a73ee510 3b08e48b ed04080f a2f4e8b5 5579ddc3 b28479f6 a733d362 89052618 776ce399 281769c2 d4703ebd 32c7478e aee52b6f -1 18 2 8 0 0 1 9 8 1 1 0 f473b8dc d833535f b00d1501 d16679b9 25c83c98 7e0ccccf f01779eb 0b153874 a73ee510 a1f4ff73 0f1fa8b8 e0d76380 e4e9ce3a b28479f6 a733d362 1203a270 3486227d 281769c2 73d06dde 32c7478e aee52b6f - 3 36977 135 1 0 63 1 0 87552397 9adf4cf9 d0ba1c0b 4c942c6d 25c83c98 fbad5c96 77e91f62 0b153874 a73ee510 ca2f139a 7defe259 1727332f 11fa2c12 ad1cc976 778f5086 2c3ad7de e5ba7672 76ae8aa6 565ebb25 8ec974f4 c3dc6cef 90b6276f -14 11 10 6 2 2 21 14 16 1 3 2 87552397 38a947a1 e058fc3c 2192038e 25c83c98 7e0ccccf 6fa3c1a7 0b153874 a73ee510 5f50c86b b8deab54 f7cbe917 efbb2435 b28479f6 79595843 0c6b4ad6 e5ba7672 4427594e f6e3bd9c 32c7478e 9e07eb4a - 3 20 19 32306 0 22 22 0 22 05db9164 fc1fa80d 6ff38c9f 45e7b9c6 4cf72387 7e0ccccf 9f35dfeb 0b153874 a73ee510 f4233f25 723eb72b 902ac8b1 8a6ad3da b28479f6 4ce39685 ff5a027e e5ba7672 f68751cd e27d6c43 c9d4222a 32c7478e 1793a828 -0 37 10 5 5965 111 1 15 49 0 1 5 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 50631f06 0b153874 a73ee510 7259dc52 f25fe7e9 dfbb09fb dd183b4c 1adce6ef ae0c3875 84898b2a d4bb7bd8 15a36060 0014c32a c9d4222a 55dd3565 3b183c5c -0 43 14 21 2152 137 14 17 263 0 4 21 05db9164 af447d7a 05e89637 06b1cf6e 25c83c98 7e0ccccf 5fbd9170 0b153874 a73ee510 474773a7 2bcfb78f 8fbe0072 e6fc496d b28479f6 f0d27586 25b075e4 e5ba7672 98ff11f4 af1869be 32c7478e 0ff91809 - 14 13122 1540 10 0 69 3 0 05db9164 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 1dac1752 0b153874 a73ee510 3b08e48b aa566c09 8fe001f4 a4857795 07d13a8f f3996583 36103458 3486227d 003d4f4f e587c466 423fab69 3b183c5c -0 -1 4 17 1546 92 81 40 943 0 15 3 17 05db9164 89ddfee8 c2627d9b 9bb39152 43b19349 7e0ccccf c96de117 0b153874 a73ee510 eb9ca757 ad757a5a de4d74cc 93b18cb5 b28479f6 25753fb1 2a838f95 8efede7f 5bb2ec8e 55dd3565 b1252a9d d1071420 bcdee96c 3fdb382b f0f449dd aa18ef34 -0 2554 1 0 4669 312 15 48 72 0 1 1 14 09ca0b81 4c2bc594 d032c263 c18be181 25c83c98 13718bbd 08e57a96 062b5529 a73ee510 fbbf2c95 7c430b79 dfbb09fb 7f0d7407 8ceecbc8 7ac43a46 84898b2a 3486227d bc48b783 0014c32a 3a171ecb 3b183c5c -0 69 8 15 4379 135 9 14 1478 0 4 0 29 89889f05 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 632a71f5 985e3fcb a73ee510 ac9e0776 e81438fc dfbb09fb f745e01e 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c -2 360 3 3 87 3 2 3 3 1 1 3 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 fe6b92e5 a90a99c5 0b153874 a73ee510 e6003298 e9561d8b 3563ab62 1cc9ac51 1adce6ef a6bf53df b688c8cc 07c540c4 65c9624a 21ddcdc9 5840adea 2754aaf1 ad3062eb 3a171ecb 3b183c5c e8b83407 adb5d234 -2 1 1 3 1 1 17 14 73 1 6 1 68fd1e64 38a947a1 7e77f5fb ee6d5dbe 25c83c98 871caac6 0b153874 a73ee510 0a9fb6a6 00e16cd3 fa543f67 c3e9876f 64c94865 22442906 c3ccd43c e5ba7672 219e7221 c8314daf 32c7478e c2dc7217 -0 -1 751 65 1 41 73 0 1 1 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 26a81064 0b153874 a73ee510 dcbc7c2b 9e511730 dfbb09fb 04e4a7e0 8ceecbc8 7ac43a46 84898b2a 3486227d bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c - -1 69 7247 0 0 6 0 05db9164 73a46ff0 ab7da2f6 f0501841 25c83c98 13718bbd bf115338 0b153874 a73ee510 3b08e48b 41516dc9 d3940cbb 8b11c4b8 b28479f6 4f648a87 a395fb2c 776ce399 da507f45 21ddcdc9 b1252a9d 03d3e1bf be7c41b4 2833fe6a ea9a246c 7ed1c999 - 2 1 1 5a9ed9b0 38a947a1 24b45e80 4404b915 25c83c98 6f6d9be8 88002ee1 0b153874 7cc72ec2 3b08e48b f1b78ab4 2a06e796 6e5da64f 1adce6ef f6ad7b3d 12a39398 2005abd1 494df740 e33f7dba 32c7478e e874323a -0 -1 15 1 1447 14 10 8 463 0 4 6 68fd1e64 b80912da f48bd32f 8397ecd3 43b19349 7e0ccccf 24703a34 0b153874 a73ee510 3b08e48b fe951f20 c3783bee bd45bc75 1adce6ef 387ececc e01a074f 8efede7f 7119e567 21ddcdc9 a458ea53 e29ae147 423fab69 02350cd9 9d93af03 513eba7e - 1 1 1 11679 66 9 13 362 4 1 05db9164 3ab4d7f5 a4b38ecc 27d8fdb5 25c83c98 fe6b92e5 0dff1cd8 0b153874 a73ee510 24b40018 fcdb3f1a 47d2b89c 95aebe34 07d13a8f 0507b832 77ecf4f4 e5ba7672 b76fb0de 21ddcdc9 b1252a9d 33e00b0e 423fab69 65e74c52 c9f3bea7 f3ea27fd -0 -1 1922 36 1 36 36 0 1 05db9164 4c2bc594 d032c263 c18be181 43b19349 fe6b92e5 66167403 0b153874 a73ee510 aa9347e0 92955a26 dfbb09fb db381caa 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c - 1 2 1 0 18 96 0 15 5bfa8ab5 38a947a1 4470baf4 8c8a4c47 25c83c98 7e0ccccf ce8217f8 0b153874 7cc72ec2 3b08e48b 9d12ce9b bb669e25 9dfda2b9 b28479f6 091737ad 2b2ce127 2005abd1 ade68c22 2b796e4a be7c41b4 8d365d3b -0 12 4 7 1939 52 7 7 50 0 2 7 05db9164 a8b6b751 cef50bbe 409d3e80 25c83c98 fbad5c96 8b55891c c8ddd494 a73ee510 7f79890b c4adf918 7f2b3859 85dbe138 b28479f6 694e45e3 32c1c5c1 e5ba7672 d787f192 21ddcdc9 5840adea a45fd580 32c7478e 16b01f6a 001f3601 1d5d3a57 -1 283 6 1 381 28 1 22 22 1 1 2 05db9164 bc478804 b5443e18 13508380 25c83c98 fbad5c96 9140e6ca 37e4aa92 a73ee510 42103299 33fa033a fcef1043 54be6cea 07d13a8f 0af7c64c 4ea17034 d4bb7bd8 65a2ac26 79849f24 b1252a9d ccd5534a 32c7478e 45ab94c8 cb079c2d c84c4aec -2 31 40 19 947 128 31 49 301 1 6 0 20 be589b51 b06f9574 d8dd6f6f 5ec469f9 25c83c98 fbad5c96 5186ec40 0b153874 a73ee510 95b6ef60 a7b606c4 c94a041d eae197fd 1adce6ef b62ec7c9 18fbd7af e5ba7672 e9a3d86d 21ddcdc9 b1252a9d 695514c6 ad3062eb 3a171ecb dadea544 001f3601 6dff734f -0 132 8 8 1622 11 42 10 398 0 15 8 5a9ed9b0 38a947a1 912c8e98 157d62cd 4cf72387 7e0ccccf 9f525672 0b153874 a73ee510 1e2ab9fa 843d8639 87678b95 9cab1003 b28479f6 17194aa4 3a92cd79 e5ba7672 1f8f8372 a3f2d22e ad3062eb 423fab69 b258af68 -0 1005 1 0 3156 64 4 14 11 0 1 2 05db9164 7772ab29 02cf9876 c18be181 25c83c98 fe6b92e5 1037bf4f 1f89b562 a73ee510 305a0646 1a58b9cd 8fe001f4 933cfdb3 b28479f6 64ad30e5 36103458 e5ba7672 ba0e319f e587c466 ad3062eb 3a171ecb 3b183c5c - 20 2 30394 0 11 2 0 0 2 05db9164 2c16a946 b67978af fbd91004 25c83c98 7e0ccccf 11ffbf5b 0b153874 a73ee510 7ad4ea2c f2313205 bc8f8b6b 9c7a975e 07d13a8f 18231224 169dc46f 27c07bd6 74ef3502 784d1d2a 3a171ecb 9117a34a -0 -1 1998 15 6 10 10 0 1 05db9164 4c2bc594 d032c263 c18be181 4cf72387 fe6b92e5 646b4bca 5b392875 a73ee510 3b08e48b 9b972b2e dfbb09fb df941d33 64c94865 c9f66e21 84898b2a e5ba7672 fe94fad1 0014c32a c7dc6720 3b183c5c - 1871 1 1 6845 20 7 5 22 1 1 05db9164 38a947a1 e058fc3c 2192038e 25c83c98 fe6b92e5 283d5555 5b392875 a73ee510 3b08e48b 3d5fb018 f7cbe917 94172618 b28479f6 1545f0d7 0c6b4ad6 e5ba7672 4427594e f6e3bd9c ad3062eb 32c7478e 9e07eb4a -0 -1 2881 163 22 19 246 0 5 05db9164 89ddfee8 073f0e50 abef185d b706ee81 fbad5c96 1c86e0eb 0b153874 a73ee510 b906acff 755e4a50 ba51a2c8 5978055e b28479f6 25753fb1 b94aacf2 e5ba7672 5bb2ec8e dd25bffc b1252a9d 45cbd102 32c7478e ff1c909e cb079c2d ce860ee0 -0 -1 11047 24 0 0 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 6e97aede 0b153874 a73ee510 18bf9127 75ae185c dfbb09fb d53bbf5c 1adce6ef ae0c3875 84898b2a e5ba7672 15a36060 0014c32a 32c7478e 3b183c5c -0 37 21 15 1539 78 10 27 477 0 3 0 28 05db9164 c8687797 63f8d4e4 e4005c97 4cf72387 13718bbd ed0714a0 0b153874 a73ee510 7cfcb35e c3669360 9699b949 c3f71b59 b28479f6 dc96c4b0 ea95fc5f e5ba7672 a7e06874 21ddcdc9 b1252a9d 32f1f809 32c7478e 87f61a7d 010f6491 891dabaf -1 1080 58 11 53 12 1 26 22 1 1 0 12 b455c6d7 4c2bc594 d032c263 c18be181 4cf72387 fbad5c96 968a6688 0b153874 a73ee510 8a176218 f25fe7e9 dfbb09fb dd183b4c 8ceecbc8 c7b09696 84898b2a e5ba7672 fe94fad1 0014c32a 32c7478e 3b183c5c -3 2 1 6 492 94 48 20 1423 1 6 0 6 be589b51 942f9a8d 435c3859 be42d44a 4cf72387 7e0ccccf 3f4ec687 0b153874 a73ee510 0e9ead52 c4adf918 e4c074db 85dbe138 1adce6ef ae97ecc3 a029b14b 3486227d 1f868fdd 21ddcdc9 a458ea53 76ff3b70 32c7478e 9fc6df89 9d93af03 91002aff - 195 30 18 37 35 1 17 18 1 18 05db9164 207b2d81 0794f5ea 2cde248f 25c83c98 fe6b92e5 41e6f3d3 1f89b562 a73ee510 79041558 30b2a438 899bb855 aebdb575 b28479f6 899da9d5 57b5dffa d4bb7bd8 25c88e42 21ddcdc9 b1252a9d 2ff22e89 32c7478e 244a7d22 001f3601 cf995043 - 162 4 4 0 4 4 0 4 68fd1e64 4c2bc594 d032c263 c18be181 4cf72387 fe6b92e5 0dab78da 5b392875 7cc72ec2 3b08e48b 7bc78da9 dfbb09fb 6b5d07b4 8ceecbc8 7ac43a46 84898b2a 2005abd1 bc48b783 0014c32a 78e2e389 be7c41b4 3b183c5c -2 0 275 5 10 38 113 1 2 0 68fd1e64 80e26c9b ba1947d0 85dd697c 43b19349 7e0ccccf 650f5583 0b153874 a73ee510 e5330e23 3decbee2 34a238e0 7351d888 1adce6ef 0f942372 da441c7e e5ba7672 005c6740 21ddcdc9 5840adea 8717ea07 32c7478e 1793a828 e8b83407 b9809574 -1 0 2 2 2 0 92 5 37 1 7 0 0 05db9164 08c2f5df dde182a0 de1dc0c1 4cf72387 fbad5c96 407438c8 0b153874 a73ee510 935a36f0 755e4a50 7a27d4e1 5978055e 07d13a8f 747ea14a 84534f54 3486227d 29b0e3e5 2b81e06c c9d4222a 32c7478e 2f647dfe -0 -1 3582 27 5 12 25 0 2 1 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 4b219154 1f89b562 a73ee510 3e07d661 f25fe7e9 dfbb09fb dd183b4c 8ceecbc8 7ac43a46 84898b2a 3486227d bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c -0 64 45 0 14758 1491 1 18 1164 0 1 17 05db9164 8084ee93 02cf9876 c18be181 384874ce 7e0ccccf c5b5de76 0b153874 a73ee510 c811e460 e4034ebf 8fe001f4 ea089f5d 07d13a8f 422c8577 36103458 e5ba7672 52e44668 e587c466 ad3062eb 32c7478e 3b183c5c -1 1 71 13 28 13 1 12 13 1 1 13 87552397 80e26c9b 93c3f40c 85dd697c 25c83c98 fe6b92e5 62629a0c 0b153874 a73ee510 42459662 88196a93 cc19f478 1211c647 07d13a8f e8f4b767 2d0bbe92 d4bb7bd8 005c6740 21ddcdc9 b1252a9d 531aa022 32c7478e 1793a828 e8b83407 9904c656 -3 1114 4 3 228 20 3 20 20 1 1 4 9a89b36c 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf d6bf922f 0b153874 a73ee510 3b08e48b 6af26531 dfbb09fb 5fcbc3ef 1adce6ef ae0c3875 84898b2a 1e88c74f 15a36060 0014c32a bcdee96c 3b183c5c -0 0 7 0 1573 87 76 0 283 0 10 4 6062d843 0a519c5c 02cf9876 c18be181 25c83c98 fbad5c96 08deaad1 0b153874 a73ee510 5be0d285 4fc18a28 8fe001f4 ff3ffc9f b28479f6 9a6e9a96 36103458 e5ba7672 3412118d e587c466 32c7478e 3b183c5c - 1 1 1 68fd1e64 38a947a1 223b0e16 ca55061c 4cf72387 7e0ccccf e7698644 0b153874 7cc72ec2 3b08e48b 3ec9c616 156f99ef b55434a9 b28479f6 42e41d92 5fbf4a84 2005abd1 1999bae9 deb9605d be7c41b4 e448275f - 105 1 1 194801 0 1 20 0 1 68fd1e64 38a947a1 c0788a71 82a61820 25c83c98 7e0ccccf 00f47310 1f89b562 7cc72ec2 6a3a24d0 a4ea009a 3f8aec46 1e9339bc 1adce6ef 3aa85cb3 5306324f e5ba7672 e96a7df2 0586873f 423fab69 cafb4e4d - 10 2 2 5705 4 0 2 4 0 0 2 05db9164 ef69887a 3f24378e e5c98cf0 25c83c98 f9e7e1f7 5b392875 a73ee510 3b08e48b 6fc1ac4c fc4bb24a e1448645 b28479f6 902a109f 157f049e 3486227d 4bcc9449 8b067084 b1252a9d 2a706f1f 32c7478e 8489cd2e 47907db5 fe36661d - 1 1 2 29558 423 2 2 337 1 2 05db9164 5dac953d d032c263 c18be181 25c83c98 fbad5c96 f36791d8 5b392875 a73ee510 c7009b63 2714650d dfbb09fb 9a88e2e2 1adce6ef b4a435f2 84898b2a e5ba7672 63e4be9d 0014c32a bcdee96c 3b183c5c -1 4 66 5 46 9 1 5 5 1 1 5 75ac2fe6 38a947a1 b1c694ba a2d43cbf 43b19349 fbad5c96 d03c0e35 5b392875 a73ee510 30fdb872 f2a195a2 0b45e487 519f294e 1adce6ef b3019cbd 3c1ae56e d4bb7bd8 d144df58 4eeb367e ad3062eb 32c7478e 744d559b -4 28 13 11 0 0 4 12 11 1 1 0 05db9164 38a947a1 5ee4022f 03b49895 25c83c98 fe6b92e5 59bbdf75 0b153874 a73ee510 e855083d ae4c531b 228edab3 01c2bbc7 64c94865 4bf4361a da729723 e5ba7672 bbe2f8c3 4b298614 32c7478e 2fea1d4d -7 29 3 39 148 76 11 16 2175 1 4 76 05db9164 38a947a1 c83d66c1 713f7660 bf9f7f48 7e0ccccf 024a4c3d 0b153874 a73ee510 28ced8b3 ac60dfda 2fba5c44 d100e0ca b28479f6 8c7816d3 cc067f0e e5ba7672 7c21218c fdf5a4ad ad3062eb 32c7478e b258af68 -0 838 22 22 4517 216 9 28 210 0 5 22 5a9ed9b0 76c475b1 73c582f5 15801a38 43b19349 804d2f11 0b153874 a73ee510 69af56b9 1aa6cf31 38c3af79 3b03d76e 1adce6ef 280a440c 2b3c29f7 e5ba7672 ae09efbe f90d7df9 32c7478e 5ddc2c4c - 0 19 3 6112 0 2 20 0 3 05db9164 09e68b86 46a7fb6f c35b84a2 90e893ba 50631f06 5b392875 a73ee510 3b08e48b f25fe7e9 f2af1996 dd183b4c 1adce6ef dbc5e126 7ebe13a3 776ce399 5aed7436 21ddcdc9 a458ea53 a4e1425e 32c7478e 1793a828 e8b83407 8b8b6204 -0 1 106 22 4423 121 27 29 621 0 7 0 52 05db9164 942f9a8d 2e14663b e01bfe4e 25c83c98 7e0ccccf 3f4ec687 5b392875 a73ee510 c5fe5cb9 c4adf918 77b3b813 85dbe138 1adce6ef ae97ecc3 b1addded 27c07bd6 1f868fdd 21ddcdc9 a458ea53 21d40c8c ad3062eb 32c7478e 3fdb382b e8b83407 49d68486 -0 -1 33 12 4864 250 2 1 244 0 1 13 05db9164 e77e5e6e b7625ea9 7252f01a 25c83c98 7e0ccccf ad9b2639 062b5529 a73ee510 035a9960 e4034ebf 3cf784db ea089f5d 051219e6 a6b876ce f32fbd3f d4bb7bd8 449d6705 21ddcdc9 a458ea53 1557ac5c 32c7478e 296559ed 445bbe3b c9dada51 - 176 2 7 19416 97 21 11 135 3 0 9 05db9164 c41a84c8 04e51b4a bee72785 0942e0a7 7e0ccccf a61aeaec 0b153874 a73ee510 739ff196 17586bd8 bef78a22 4c9ff09f 07d13a8f d345cbde 880b4662 e5ba7672 2b46823a af53b446 423fab69 590b856f -2 -1 453 21 4 29 65 1 3 8cf07265 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 29d5bb09 37e4aa92 a73ee510 05906beb b5bb9d63 dfbb09fb ab04d8fe 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c - 0 11 4396 6 5 1 8 2 1 68fd1e64 333137d9 e84641fb bb575676 25c83c98 7e0ccccf 78737263 0b153874 a73ee510 fa7d0797 4955b0c0 821d931b 9be66b48 b28479f6 a46bf7c6 a1f5c824 3486227d c61e82d7 21ddcdc9 5840adea f91f2915 3a171ecb 5b82037c 001f3601 0a5ae604 -0 1 2 8 1530 36 3 13 92 0 2 8 68fd1e64 38d50e09 01a0648b 657dc3b9 25c83c98 7e0ccccf d130cbd1 51d76abe a73ee510 4effc25c 9a422971 11fcf7fa 174e4cac 07d13a8f fa321567 5e1b6b9d 07c540c4 52b872ed 21ddcdc9 a458ea53 bfeb50f6 32c7478e df487a73 001f3601 c27f155b - 1 8 8 13014 0 8 327 0 8 05db9164 c76014f5 df00c4f0 031bba14 4cf72387 fbad5c96 894ba00a 0b153874 a73ee510 3b08e48b 62750746 336bb1d7 48b975db b28479f6 a46c3543 631f0045 776ce399 93b0d1d7 1fe472e2 be7c41b4 89bd83a1 -0 311 28 4 1632 386 11 47 731 0 3 33 05db9164 26ece8a8 f2336534 1e0ec6a2 25c83c98 fbad5c96 0742262f 5b392875 a73ee510 3b08e48b 2792ae4e 15d97f2a 0de1a815 07d13a8f 102fc449 e895d2cc e5ba7672 87fd936e f9860df8 ad3062eb 3a171ecb 5a456be6 -0 0 1 2 728 19 114 7 98 0 22 6 05db9164 52e9ecfc a9d15bf1 6bb5a9c4 30903e74 7e0ccccf 1c86e0eb 0b153874 a73ee510 34ccc264 755e4a50 f3dbd9b0 5978055e b28479f6 37663ab0 4f02a842 e5ba7672 f3644223 21ddcdc9 b1252a9d 780bdc55 32c7478e 2f647dfe f0f449dd 52d71dab - -1 9509 36 14 11 76 4 0 be589b51 8f5b4275 b009d929 c7043c4b 25c83c98 fe6b92e5 c0698233 0b153874 a73ee510 401ced54 f8ba74ae 3563ab62 2b9fb512 1adce6ef a6bf53df b688c8cc 3486227d 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 - 26 5 5 4332 13 1 12 13 1 5 87552397 38a947a1 56befc13 4f6304e1 43b19349 7e0ccccf bb93c2d4 0b153874 a73ee510 3b08e48b 5a6b65cc ad6c14a5 5b61cea7 f862f261 9053eb82 b1183a84 d4bb7bd8 2fdf0882 916ade53 32c7478e 202637d5 -24 21 7 24 9 389 16 84 1 17 0 7 05db9164 2c16a946 00148a74 9f43a1b5 4cf72387 13718bbd dda1fed2 0b153874 a73ee510 2a47dab8 7f8ffe57 6fb8f39a 46f42a63 b28479f6 3628a186 87140baa 3486227d e4ca448c 67bb5322 3a171ecb 9117a34a -0 -1 3098 6 7 0 0 0 1 05db9164 80e26c9b 80422e44 0c8cc302 25c83c98 11754474 0b153874 a73ee510 3b08e48b 88ac36d5 9d674bb6 d8e8499b 07d13a8f f3635baf 1c72109f e5ba7672 f54016b9 21ddcdc9 a458ea53 0b23df39 93bad2c0 52c59e65 e8b83407 fcd5a3f4 - -1 483 0 13 16 0 ae82ea21 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 5af26afd 5b392875 a73ee510 3b08e48b a6925b63 dfbb09fb d9946b7d 8ceecbc8 7ac43a46 84898b2a 776ce399 bc48b783 0014c32a c9d4222a 32c7478e 3b183c5c - 18 6 6 8755 295 2 37 222 1 6 05db9164 0b8e9caf 6cf16daf 99f80b6a 25c83c98 fe6b92e5 c89615d2 0b153874 a73ee510 0ab7712f 45922c00 a1ae9096 5029598e b28479f6 5340cb84 ae6d9c5c 07c540c4 ca6a63cf 97dc7d84 be7c41b4 08b0ce98 - -1 672 0 12 14 0 5a9ed9b0 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 0d43cf13 5b392875 a73ee510 f665b5a4 2cda6e6e dfbb09fb 38e7245c 8ceecbc8 7ac43a46 84898b2a 1e88c74f bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c - 1 22 10 1658 0 29 45 0 10 05db9164 95e2d337 4e2a1c5f 9c64c398 4cf72387 7e0ccccf 8c2fedb1 0b153874 a73ee510 3b08e48b af763b4c 9dcbc18c d90d259c 07d13a8f 4e505ea3 be827193 776ce399 7b06fafe cdca75c5 b1252a9d 4c81b21f b264a060 fef88e98 010f6491 e09e9d78 -1 32 5 15 17 16 2 13 35 1 2 15 05db9164 e18b1e61 f281d2a7 7e0ccccf ee47b323 0b153874 a73ee510 3b08e48b 2996a71e 44af41ef 07d13a8f 1d432c1e e5ba7672 b2879faf 3a171ecb -26 9 26 18 0 14 70 9 167 1 8 1 0 05db9164 942f9a8d 9e92bf09 7a512f64 25c83c98 fbad5c96 3f4ec687 5b392875 a73ee510 0e9ead52 c4adf918 0c68dfb8 85dbe138 b28479f6 ac182643 139e1d4f 3486227d 1f868fdd 21ddcdc9 b1252a9d 85f4a6ec ad3062eb 32c7478e 53e0a237 9d93af03 718dad9f -0 14 92 5 915 247 22 45 416 0 9 0 5 05db9164 8947f767 6f6cdf1c 2106cad5 4cf72387 25c64e98 37e4aa92 a73ee510 e8438e24 2872a4bd c07fefdc f8320f48 b28479f6 a473257f 5bfb82fe 3486227d bd17c3da 73006510 a458ea53 8d1f6da9 32c7478e b94bd0ee 010f6491 0dd4407a -0 13 6 4 99 13 386 13 326 0 56 3 8 68fd1e64 207b2d81 ab585dcf 5889d566 4cf72387 7e0ccccf adf507fb 0b153874 a73ee510 b22fc48e 2c7b458c 334db336 63f28c33 b28479f6 c6438ddb 6eb1f618 8efede7f fa0643ee 21ddcdc9 5840adea 418f2a90 32c7478e c2d7c93b 001f3601 d0390abb -2 6 4 892 7 2 7 7 1 1 17f69355 6e638bbc 41d2969c 8efb86eb 25c83c98 fbad5c96 8818fa86 5b392875 a73ee510 9ec876ba ecf21575 3e52951c 5e400308 07d13a8f d4525f76 367cf5a3 07c540c4 f6a2fc70 21ddcdc9 b1252a9d ed2ac806 423fab69 a5af52c4 445bbe3b 3ef39041 -1 102 30 214 30 5 26 237 1 4 30 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 9a4f2943 0b153874 a73ee510 86b46b2e 4a00b569 dfbb09fb 42ef23bb 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 32c7478e 3b183c5c - 19 16 12 1519 45 2 13 20 1 1 12 05db9164 207b2d81 8b57b943 2ac9344f 25c83c98 fbad5c96 424fbb9a 0b153874 a73ee510 cd44503d 2386466b 4c6ad4f5 45db6793 b28479f6 3c767806 5eb9c4aa 3486227d 395856b0 21ddcdc9 b1252a9d d6cb2886 ad3062eb 32c7478e ee2c9e5e 001f3601 17c3439f -0 21 39 2 3261 17 2 11 17 0 1 2 5 05db9164 e5fb1af3 9b953c56 7be07df9 4cf72387 fbad5c96 6c5e14ec 0b153874 a73ee510 5ba575e7 043725ae 6bca71b1 7f0d7407 07d13a8f b5de5956 fb8ca891 27c07bd6 13145934 21ddcdc9 b1252a9d b1ae3ed2 3a171ecb 3fdb382b 9b3e8820 49d68486 -0 6 4 48 65 557 42 343 0 25 1 4 05db9164 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 0e9ead52 c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 8efede7f b486119d 73d06dde 32c7478e aee52b6f -0 68 0 7824 5 0 2 05db9164 d4e5ee28 5c76c83f 5e023e6b 25c83c98 7e0ccccf 0c41b6a1 5b392875 a73ee510 e5edcbd4 4ba74619 bc805d91 879fa878 07d13a8f 5d1e64c6 4e1aed4e e5ba7672 2b829a72 ad15f8ae 423fab69 8a3cfad4 - 36 16 8 10992 117 1 4 69 1 0 8 05db9164 207b2d81 98c06bc9 94d4065e 25c83c98 2e8a689b 37e4aa92 a73ee510 efea433b e51ddf94 31d3cd61 3516f6e6 b28479f6 899da9d5 c4abf3ed d4bb7bd8 25c88e42 21ddcdc9 b1252a9d 9af78a5a 32c7478e 244a7d22 001f3601 cf995043 -1 3 16 2 69 34 3 33 41 1 3 11 05db9164 38d50e09 7ebe08b3 76b52ce1 43b19349 3bf701e7 dc7659bd 5b392875 a73ee510 a9043efc e51ddf94 ef0c2022 3516f6e6 07d13a8f e2275836 8a00a9dd 3486227d fffe2a63 21ddcdc9 b1252a9d 0187218b 32c7478e df487a73 001f3601 c27f155b -0 10 1 22168 11 0 1 68fd1e64 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 52283d1c 1f89b562 a73ee510 efea433b e51ddf94 e0d76380 3516f6e6 b28479f6 a733d362 1203a270 d4bb7bd8 281769c2 73d06dde 3a171ecb aee52b6f - 1 2 245128 0 0 2 0 05db9164 38a947a1 e0eb5552 ab3c096f 25c83c98 6f6d9be8 91992e62 0b153874 7cc72ec2 b883655e 40862c01 2baffa42 0f39538f b28479f6 257c2d0c 87b19664 d4bb7bd8 f6ece579 e1b22d92 32c7478e 85e4d73f -7 1 4 0 8 0 8 6 6 1 2 0 68fd1e64 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf d686b3b3 5b392875 a73ee510 3b08e48b 058b2e38 dfbb09fb 35323fda 1adce6ef 2a63319f 84898b2a e5ba7672 fe94fad1 0014c32a be7c41b4 3b183c5c -4 64 7 6 162 6 17 6 156 2 8 6 5a9ed9b0 e77e5e6e ac62a7f9 42f825da 384874ce 678e9b5b 5b392875 a73ee510 26e0e41b 44e1a73d 791cd89c 34bc3a7e 1adce6ef 5dd684c2 2196bcde e5ba7672 118f3bce 4764bf77 b1252a9d 9964f757 32c7478e 198d00e5 445bbe3b 69a16fdc -0 706 6 4429 279 1 21 243 0 1 1 11 68fd1e64 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf 436fc57e 0b153874 a73ee510 3b08e48b 13d4586f e0d76380 1cf9c8dd b28479f6 7f6af6b0 1203a270 3486227d eea3ab97 73d06dde 3a171ecb aee52b6f -12 1 39 1101 41 16 47 61 0 2 41 05db9164 68b3edbf b00d1501 d16679b9 25c83c98 95bb412b 0b153874 a73ee510 7f518378 ec2b795a e0d76380 a5975b1d 1adce6ef 9ebbad56 1203a270 e5ba7672 cf1cde40 73d06dde 423fab69 aee52b6f - 2 39 16 6940 190 9 26 199 1 26 68fd1e64 ef69887a c256d623 c09b189d 25c83c98 fe6b92e5 7c7f8ebd 0b153874 a73ee510 82bb4986 d7129972 f75837d8 c0c5f46b 07d13a8f b98be2c0 40878e75 e5ba7672 4bcc9449 69f18506 a458ea53 4e52453a 32c7478e c1996069 010f6491 7d5cc2a2 - 0 2 6 6040 21 6 0 152 3 0 6 87552397 d8c4e58f b2a56749 42937d7b 25c83c98 7e0ccccf de87ff87 0b153874 a73ee510 4600bc29 0ad37b4b 832ba69d f9d99d81 07d13a8f 9b731d45 1876bd2a 8efede7f d6301f08 21ddcdc9 5840adea d7cbbd74 423fab69 9a0e75df 445bbe3b 6ae9621c -0 5 0 5065 81 3 1 50 0 1 4 05db9164 78ccd99e c0b1b3a5 3b89782d 4cf72387 13718bbd 8e2c2068 25239412 a73ee510 4264303d 192b5981 8def2c16 0c7dd611 051219e6 9917ad07 c933d218 07c540c4 e7e991cb 1d1eb838 a458ea53 f0db7f33 3a171ecb 02e9339b e8b83407 ace6c113 -0 0 7 2 1355 37 32 32 130 0 3 4 05db9164 942f9a8d aa91b30e 03e699f8 25c83c98 fbad5c96 3f4ec687 062b5529 a73ee510 0e9ead52 c4adf918 aa5476fe 85dbe138 07d13a8f a8e962af d614a7f0 3486227d 1f868fdd 1d04f4a4 a458ea53 b2387ac1 32c7478e 3fdb382b 9d93af03 49d68486 -4 -1 851 14 4 14 14 1 1 0 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf af678ecb 0b153874 a73ee510 aa9347e0 92955a26 3563ab62 db381caa 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 -0 110 13 5 2171 158 2 8 39 0 1 6 05db9164 8f5b4275 b009d929 c7043c4b 4cf72387 fbad5c96 9a4f2943 5b392875 a73ee510 86b46b2e 4a00b569 3563ab62 42ef23bb 1adce6ef a6bf53df b688c8cc 07c540c4 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 -1 -1 84 0 3 0 0 1 2 0 be589b51 09e68b86 5810f243 30667889 25c83c98 7e0ccccf 33cca6fa 985e3fcb a73ee510 fb999b75 f8ba74ae d44b072d 2b9fb512 b28479f6 52baadf5 168e1231 07c540c4 5aed7436 1d04f4a4 a458ea53 77f0240e 8ec974f4 3a171ecb 3fdb382b 2bf691b1 49d68486 -1 0 1 2 1392 155 15 49 376 0 3 0 5 68fd1e64 4e8d18ed 63d75846 611fdffb 25c83c98 fbad5c96 820e7ca9 0b153874 a73ee510 39ed2bfc a9b84bd5 d1f72493 cdc2ccda 07d13a8f 8d016df5 d6f3d3b2 e5ba7672 47e4d79e 2d3ec2f0 b1252a9d 5130e06e c7dc6720 d0800ddc e8b83407 5f85ee67 - -1 33878 0 7 48 0 05db9164 4c2bc594 d032c263 c18be181 4cf72387 13718bbd cd175af1 1f89b562 a73ee510 3b08e48b ba395776 dfbb09fb e2bab9cb 8ceecbc8 7ac43a46 84898b2a 776ce399 bc48b783 0014c32a 3a171ecb 3b183c5c -0 26 2 19350 5 0 2 05db9164 0d6ad090 dc04465b 16c6592a 384874ce fbad5c96 ed3d0b6d 0b153874 a73ee510 388855bd ce997386 a8d14e0e 5ba9ebe2 07d13a8f 12642bae 0bfb1557 3486227d cb95e657 03445731 423fab69 531ba5cb - 14 4 4 42543 0 19 24 0 4 ae82ea21 38d50e09 b3ee24fe 631a0f79 25c83c98 fbad5c96 694e9fe2 c8ddd494 a73ee510 3b08e48b c8aad345 9b665b9c cdc4ba5e b28479f6 42b3012c b7a016ed 776ce399 582152eb 21ddcdc9 b1252a9d 1df3ad93 be7c41b4 3aebd96a 001f3601 aa5f0a15 -0 2 78 6 4449 61 10 20 94 0 2 19 05db9164 e5fb1af3 7de49b9a 7f835d90 25c83c98 7e0ccccf af84702c 5b392875 a73ee510 fbbf2c95 ae19a197 94a99f1d 7f0d7407 64c94865 0ae958e9 a1e4d0dc e5ba7672 13145934 5b885066 a458ea53 53711c87 3a171ecb 69becd3d e8b83407 b05ce991 - -1 349254 0 10 21 0 05db9164 4c2bc594 d032c263 c18be181 4cf72387 7e0ccccf ac6231c2 5b392875 7cc72ec2 5ec9caa4 3f3009e8 dfbb09fb 79f7177d 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 55dd3565 3b183c5c -6 8 1 1 4 1 6 1 1 1 1 1 1 05db9164 b961056b 0a972d6c 0cd9d1eb 25c83c98 fbad5c96 4813a129 5b392875 a73ee510 4c923a68 e3baf8d4 b05ee22a bc1e82c6 07d13a8f 6b94b61c fd90abe9 3486227d 5162930e 1af393cf ad3062eb c7dc6720 71292dbb -3 1 27 29 4 4 7 35 86 1 4 4 24eda356 95e2d337 b4137e9e 72fad0ca 4cf72387 fd5c0ed6 0b153874 a73ee510 267caf03 95eaf7a0 99f87c64 ccfd4002 b28479f6 17a3bcd8 09ba57e5 e5ba7672 7b06fafe 5b885066 a458ea53 ed160149 c0061c6d bcdee96c 799ebff0 2bf691b1 748a713e - 0 9 1 2 0 1 1 0 1 75ac2fe6 73a46ff0 8f56f662 a94ec92b 25c83c98 fbad5c96 81bb0302 51d76abe a73ee510 f918493f b7094596 22db4551 1f9d2c38 1adce6ef d57668e2 6cec723d 1e88c74f da507f45 21ddcdc9 b1252a9d a6fefe9e 32c7478e ffc0467d ea9a246c 3d90e67b -8 160 21 13 69 62 14 43 90 1 2 16 3c9d8785 bce95927 1b34b4cd 13508380 4cf72387 7e0ccccf cd98cc3d 5b392875 a73ee510 372f26e1 dcc84468 adbfd398 b72482f5 07d13a8f fec218c0 e820e898 e5ba7672 04d863d5 55dd3565 b1252a9d bd60e672 423fab69 45ab94c8 e8b83407 c84c4aec - 49 24785 0 1 20 0 05db9164 38a947a1 51e39466 1c2daa02 43b19349 13718bbd 7669afed 5b392875 a73ee510 31d98122 adac42e2 1c3458d2 4fd5719b b28479f6 77ef1e58 42ff1a39 1e88c74f b6b880ec 10621037 32c7478e 4e50d146 - -1 2 2617 83 7 0 87 2 0 05db9164 1cfdf714 27307af0 bcbe2928 f281d2a7 7e0ccccf 7195046d 062b5529 a73ee510 61409cc8 4d8549da 33e91c8f 51b97b8f b28479f6 d345b1a0 726378e3 27c07bd6 e88ffc9d e5e1bbb7 a458ea53 03bd7e44 ad3062eb bcdee96c dbe0773a cb079c2d e47d5fd6 -2 0 11 0 2 0 2 1 0 1 1 0 0 39af2607 e5fb1af3 ad078bb3 3cdc525d afcf7897 7e0ccccf 26d35971 5b392875 a73ee510 a4ce2b8b 8f736c02 567b9afc 954f731f 07d13a8f b5de5956 464a3a8e 07c540c4 13145934 21ddcdc9 5840adea 8a25e12f 423fab69 1793a828 e8b83407 a9637a08 -0 -1 2367 205 10 13 617 0 2 05db9164 4c2bc594 d032c263 c18be181 4cf72387 fe6b92e5 40d4ce68 0b153874 a73ee510 86b46b2e 4a00b569 dfbb09fb 42ef23bb 8ceecbc8 7ac43a46 84898b2a 3486227d bc48b783 0014c32a 32c7478e 3b183c5c -2 886 10 8 24 4 15 12 71 1 4 4 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 a477b7f3 0b153874 a73ee510 6f2a94ba 094d98ad dfbb09fb fc3dc255 64c94865 c9f66e21 84898b2a e5ba7672 fe94fad1 0014c32a 78e2e389 32c7478e 3b183c5c - 2 1 7506 7 3 0 36 2 05db9164 38a947a1 25c83c98 6f6d9be8 968a6688 0b153874 a73ee510 7259dc52 f25fe7e9 dd183b4c 07d13a8f 7f1c4567 e5ba7672 95f5c722 32c7478e - 1 67 11 3404 87 3 13 63 1 15 05db9164 80e26c9b ff030570 85dd697c 4cf72387 7e0ccccf 1c5f1bfc 0b153874 a73ee510 5c429fea 00adbfbb 8229bc5b d4b85d8d 8ceecbc8 8d015bd8 da441c7e 07c540c4 005c6740 21ddcdc9 5840adea 5a9032d6 8ec974f4 32c7478e 1793a828 e8b83407 9904c656 - 66 18 18 6128 124 9 28 135 5 19 05db9164 270cc1b8 439fc3a8 f922efad 25c83c98 fe6b92e5 9799eacf 0b153874 a73ee510 3b08e48b 0d150684 2aec40ba bcbbdd43 1adce6ef 732eea45 e2e2fcd9 e5ba7672 86b4c7aa 71d4501c ad3062eb bcdee96c b34f3128 -1 718 11 13 156 13 1 13 13 1 1 13 05db9164 287130e0 d8e285c1 8e8d570c 25c83c98 7bcc368f 0b153874 a73ee510 f26b2389 60d2afd7 4b697711 155ff7d9 07d13a8f 10040656 d3a2591a d4bb7bd8 891589e7 e3b5ceb7 b1252a9d 44579ba1 3a171ecb 5a9a5de4 ea9a246c 8e08ab72 - 1707 16 0 71388 2 0 1 5bfa8ab5 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 543d9801 0b153874 7cc72ec2 0cbab662 7c53dc69 dfbb09fb 4fd35e8f 8ceecbc8 7ac43a46 84898b2a 3486227d bc48b783 0014c32a 55dd3565 3b183c5c -1 2518 8 3 822 45 4 30 221 1 3 20 05db9164 2c16a946 77c9a33e 9f43a1b5 4cf72387 7e0ccccf 880b3651 37e4aa92 a73ee510 610f6d4c d257849e 3354eff4 a8af8c1d b28479f6 3628a186 87140baa 07c540c4 e4ca448c 5af340e7 bcdee96c 9117a34a -2 -1 175 8 2 8 8 1 1 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf a90a99c5 0b153874 a73ee510 e6003298 e9561d8b 3563ab62 1cc9ac51 1adce6ef a6bf53df b688c8cc 07c540c4 65c9624a 21ddcdc9 5840adea 2754aaf1 c9d4222a 55dd3565 3b183c5c e8b83407 adb5d234 - 986 1 134513 11 8cf07265 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf 34c888cc 5b392875 7cc72ec2 a2c3010e 7f61881c 3563ab62 ca040b71 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 c9d4222a 3a171ecb 3b183c5c e8b83407 adb5d234 - 1 89 2 12849 0 4 2 0 2 05db9164 09e68b86 79dc9c1b efa20379 25c83c98 f1ff45d6 25239412 a73ee510 9a1250bd a33816cf ea4eb831 9bbdb8bd b28479f6 6f73304a 03202977 e5ba7672 479030a6 1a9b8580 5840adea 31ba873c 32c7478e 41be4766 e8b83407 d8a062c4 -6 482 144 2 86 30 503 1 23 0 5a9ed9b0 4c2bc594 d032c263 c18be181 4cf72387 7e0ccccf 89391314 5b392875 a73ee510 d38d058f 608452cc dfbb09fb cbb8fa8b 8ceecbc8 7ac43a46 84898b2a 8efede7f bc48b783 0014c32a 55dd3565 3b183c5c - -1 4387 13 28 0 20 6 0 68fd1e64 ef69887a 994e92da 9a229bdb 25c83c98 fe6b92e5 20f1ad4c 0b153874 a73ee510 0ffa3ba1 f59c87f6 da100966 7f3c0396 b28479f6 902a109f f8a4c295 e5ba7672 4bcc9449 3aae8792 b1252a9d 5a96c421 3a171ecb b77f253e 47907db5 974bb6b3 -0 5 48 7 241 0 8 7 0 0 0 7 ae82ea21 09e68b86 1ffea7c0 3f54bfd5 25c83c98 fe6b92e5 b46e01f1 0b153874 a73ee510 0cbab662 7c53dc69 3c915ba8 4fd35e8f b28479f6 52baadf5 098926dd 3486227d 5aed7436 54591762 b1252a9d 9a7e0a7a 3a171ecb c6e9e11d e8b83407 0033e7f3 -0 -1 3669 118 1 14 93 0 1 1 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 8ebe9f8b 1f89b562 a73ee510 5e3c7100 7760d878 dfbb09fb 8c2b39b2 1adce6ef ae0c3875 84898b2a 3486227d 15a36060 0014c32a 3a171ecb 3b183c5c -3 0 1 2 1414 102 47 40 231 0 4 0 2 8cf07265 38a947a1 4470baf4 8c8a4c47 25c83c98 fe6b92e5 dda1fed2 5b392875 a73ee510 49d1ad89 7f8ffe57 bb669e25 46f42a63 b28479f6 9a82459a 2b2ce127 e5ba7672 b133fcd4 2b796e4a 3a171ecb 8d365d3b -0 23 10 2 4282 24 12 2 101 0 1 0 3 05db9164 8947f767 0e028223 c0df2dad 65be028e fbad5c96 176dc88e 0b153874 a73ee510 3b08e48b d2b7c44b 8791d822 68637c0d 07d13a8f 2c14c412 4106854f 3486227d bd17c3da 21ddcdc9 a458ea53 df2226bd ad3062eb 32c7478e 3fdb382b 010f6491 49d68486 - 7 1 1 840 0 1 1 0 1 68fd1e64 e1696232 756b66d1 0c8cc302 25c83c98 6f6d9be8 62a1acbc 5b392875 a73ee510 3b08e48b 4a5bd6e8 df24443c a658cd46 b28479f6 830017af ba6db3eb 776ce399 c3186a4a 8df20eb3 8ec974f4 be7c41b4 52c59e65 -0 18 3 16 3120 417 12 14 411 0 3 20 be589b51 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf d2d741ca 37e4aa92 a73ee510 0a9d9c0c ea4adb47 3563ab62 05781932 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 bcdee96c 3b183c5c e8b83407 adb5d234 -0 116 3 1 989 6 3 1 6 0 2 1 68fd1e64 09e68b86 f51f3f52 4df5e3ab 4cf72387 7227c706 37e4aa92 a73ee510 305a0646 9625b211 ccaf8706 dccbd94b f862f261 1dca7862 97ea80f7 07c540c4 5aed7436 061feb43 a458ea53 d9ad388f 32c7478e 3fdb382b e8b83407 49d68486 -6 2790 16 0 167 6 42 6 537 1 11 0 6 68fd1e64 404660bb 8991d785 31ceadfe 4cf72387 7e0ccccf 1c86e0eb 5b392875 a73ee510 3b08e48b 755e4a50 41428bc4 5978055e 07d13a8f 633f1661 1c4f5b79 e5ba7672 4b17f8a2 21ddcdc9 5840adea e7b2952a 32c7478e 45fd5c7e f0f449dd 984e0db0 -0 21 2 26 1473 42 8 27 94 0 4 26 05db9164 d833535f d032c263 c18be181 384874ce 7e0ccccf 7307f77d 0b153874 a73ee510 8ffa5d97 06d58ceb dfbb09fb 5b2b6068 b28479f6 e2502ec9 84898b2a e5ba7672 42a2edb9 0014c32a 32c7478e 3b183c5c - 5 110063 0 05db9164 a5b69ae3 003f419b ff852091 25c83c98 7e0ccccf 0e53b80a 8bedcc53 7cc72ec2 3b08e48b ad5db3a6 349450bc 1e152deb b28479f6 9703aa2f 6615ffe6 e5ba7672 a1654f4f 21ddcdc9 b1252a9d 3dd38d65 3a171ecb c2fe6ca4 2bf691b1 0015d4de -0 1 3 0 5888 256 3 24 171 0 2 3 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 124131fa 0b153874 a73ee510 a1ee64a6 9ba53fcc dfbb09fb 42156eb4 1adce6ef ae0c3875 84898b2a 07c540c4 15a36060 0014c32a bcdee96c 3b183c5c - 0 6 5 7227 0 9 8 0 5 68fd1e64 90081f33 14e6175c 9ff76ed7 f281d2a7 13718bbd f00bddf8 5b392875 a73ee510 ca1bb880 55795b33 6d84a3df 39795005 64c94865 1ce3ecc3 6fdd8c4d e5ba7672 0ebdbf46 233300ef 32c7478e 8e84e831 -1 0 361 17 8 40 44 1 3 68fd1e64 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 124131fa 37e4aa92 a73ee510 dfc627e4 9ba53fcc dfbb09fb 42156eb4 1adce6ef ae0c3875 84898b2a e5ba7672 15a36060 0014c32a bcdee96c 3b183c5c - 37 3 4 6046 26 16 4 28 1 2 4 05db9164 4c2bc594 d032c263 c18be181 4cf72387 fe6b92e5 7de93965 0b153874 a73ee510 4ed88d64 9ba53fcc dfbb09fb 42156eb4 8ceecbc8 7ac43a46 84898b2a 27c07bd6 bc48b783 0014c32a dbb486d7 3b183c5c -1 1 21 34 194 102 1 18 100 1 1 100 05db9164 bfdcfc4a 003f419b ff852091 b2241560 fe6b92e5 f1ff45d6 5b392875 a73ee510 9a1250bd acc758fc 349450bc 9bbdb8bd 1adce6ef 2a7a147e 6615ffe6 d4bb7bd8 ffd53157 21ddcdc9 b1252a9d 3dd38d65 c9d4222a 3a171ecb c2fe6ca4 e8b83407 0015d4de -0 -1 200 20 14582 534 3 30 95 0 1 30 87552397 58e67aaf d6516423 715dbf7b 25c83c98 7e0ccccf a870a74a 37e4aa92 a73ee510 c54fcbcd 17586bd8 e1550868 4c9ff09f 1adce6ef d002b6d9 21fb7305 07c540c4 c21c3e4c 338f20de b1252a9d 6d6a1aa2 423fab69 bc8b14b9 9b3e8820 cdd2b5b7 -0 2 2 1585 19 20 13 256 0 4 2 05db9164 38a947a1 c192a27d 50a7c0a5 25c83c98 fe6b92e5 ca4c27ef 5b392875 a73ee510 7ef432eb 1bdc0607 435037ea 619a03e9 07d13a8f c2b7aaa6 4d4388d7 e5ba7672 659bdb63 cce5e548 423fab69 4f7e5007 - 2 72 5 31151 125 33 5 123 0 0 5 05db9164 1cfdf714 1dcef0d9 84f83170 30903e74 6f441cf5 0b153874 7cc72ec2 20bb74cf 1054ae5c 7adf0ed4 d7ce3abd 07d13a8f f775a6d5 8c75f7d3 e5ba7672 e88ffc9d 733bf73d b1252a9d ebed6518 c7dc6720 dc3f143c cb079c2d bf2f4e1a - 0 1 14 315671 0 1 1858 0 14 05db9164 3e4b7926 9cfa9e90 c2f0597e 25c83c98 7e0ccccf 7e64d215 5b392875 7cc72ec2 0f086324 c3516644 d171d1b5 9f24464b 07d13a8f 156fd361 84b97f71 e5ba7672 6da37216 21ddcdc9 b1252a9d 59014cda c7dc6720 043ce596 e8b83407 5bd8d5fa -17 223 6 13 4 0 17 16 16 1 1 17 0 05db9164 38a947a1 63a7a67b 44167b55 4cf72387 7e0ccccf 468a0854 5b392875 a73ee510 3b08e48b a60de4e5 a17e9509 605bbc24 b28479f6 292027ef 4c52ca35 8efede7f 20e28e86 bdea5b02 3a171ecb f80ced1c - 387 24540 0 4 0 0 1 be589b51 80e26c9b a3560e0f dad66aab 43b19349 7e0ccccf a093294b 0b153874 a73ee510 3b08e48b e470ff63 d4e9b273 81fcad9c b28479f6 4c1df281 45ab91b0 776ce399 f54016b9 21ddcdc9 b1252a9d 0d0c85c1 32c7478e 1793a828 e8b83407 79af32c6 -2 2192 5 0 86 5 5 0 3 1 2 0 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf 06e43bba 1f89b562 a73ee510 3b08e48b 2cae895d 3563ab62 78d8f465 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 -0 25 7 25 11643 1020 1 1 955 0 1 45 87552397 09e68b86 aa8c1539 85dd697c 43b19349 fbad5c96 95792846 0b153874 a73ee510 3f9cecf7 ca4aa270 d8c29807 7150d0d7 8ceecbc8 d2f03b75 c64d548f d4bb7bd8 63cdbb21 cf99e5de 5840adea 5f957280 32c7478e 1793a828 e8b83407 b7d9c3bc - 905 9 7 14317 45 48 9 78 2 0 8 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf dab879f2 0b153874 a73ee510 c307fa5a 3f3009e8 dfbb09fb 79f7177d 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c - 0 19 1 66173 58 0 1 18 0 1 05db9164 c5fe64d9 e76a5c41 8030832d 4cf72387 fe6b92e5 5caddc07 0b153874 7cc72ec2 cde5d6cd 2b0240af 70f54bc2 a15f7072 07d13a8f 52b49730 c8cc3d95 e5ba7672 c235abed 21ddcdc9 a458ea53 a83e4635 3a171ecb 27b03081 ea9a246c 2921e678 -48 0 5 5 0 0 160 5 30 1 10 0 0 05db9164 8947f767 0020af42 28d3d121 25c83c98 7e0ccccf 6d490d7a 0b153874 a73ee510 f717eda0 77212bd7 5513b4b7 7203f04e 1adce6ef ba8b8b16 ae780f64 e5ba7672 bd17c3da 81d9a273 a458ea53 2106149b ad3062eb 423fab69 287dd8ed 010f6491 1c27ddf0 - 22 1 158 0 6 6 0 05db9164 09e68b86 aa8c1539 85dd697c 25c83c98 fe6b92e5 50631f06 0b153874 a73ee510 3b08e48b f25fe7e9 d8c29807 dd183b4c 8ceecbc8 d2f03b75 c64d548f 776ce399 63cdbb21 cf99e5de 5840adea 5f957280 c9d4222a 32c7478e 1793a828 e8b83407 b7d9c3bc - 0 2 46719 942 0 1 171 0 05db9164 028bd518 77f2f2e5 d16679b9 4cf72387 7e0ccccf ccbac4d9 5b392875 7cc72ec2 3b08e48b c012107d 9f32b866 c8dca410 07d13a8f 90453bc2 31ca40b6 d4bb7bd8 2a40f0da dfcfc3fa be7c41b4 aee52b6f - 375 4616 0 0 70 0 05db9164 b961056b ca1be416 d27e1744 25c83c98 fbad5c96 8cf87048 062b5529 a73ee510 3b08e48b a12fca95 47c85b55 9b9e44d2 07d13a8f 6b94b61c 811c9f77 776ce399 5162930e 591a5dc8 be7c41b4 71292dbb -7 1 47 4 20 3 7 1 4 1 1 3 05db9164 58e67aaf d854d30c 6edf3c54 25c83c98 7e0ccccf 5392de9d 1f89b562 a73ee510 4cd9b343 f89fe102 79ffc857 83e6ca2e 1adce6ef d002b6d9 2106a98b e5ba7672 c21c3e4c cb9d08a1 a458ea53 ba3f97e6 423fab69 09e5d319 9b3e8820 274d1175 - -1 3322 0 14 28 0 5bfa8ab5 4c2bc594 d032c263 c18be181 4cf72387 13718bbd 1035913d 5b392875 a73ee510 3b08e48b 740f5b4f dfbb09fb 5d8f6443 8ceecbc8 7ac43a46 84898b2a 776ce399 bc48b783 0014c32a dbb486d7 3b183c5c - 1 0 2832 24 7 4 56 2 0 3 05db9164 78ccd99e 532cb1d5 821b7c77 43b19349 13718bbd d86bc4cf 0b153874 a73ee510 82df227a bdd79cc0 aeb3b385 6db8c2c4 051219e6 9917ad07 45a327bd e5ba7672 e7e991cb 55dd3565 a458ea53 b7b22621 c7dc6720 0accd1a6 ea9a246c 354782b4 - 79 3 2 1713 2 5 3 2 1 2 05db9164 4d554e60 d032c263 c18be181 25c83c98 7e0ccccf fe06fd10 1f89b562 a73ee510 aacf5f39 67360210 dfbb09fb 4f8e2224 64c94865 7801874e 84898b2a e5ba7672 c41887ad 0014c32a 3a171ecb 3b183c5c - 11 4 1 28671 227 10 1 86 2 1 68fd1e64 287130e0 1df13f5a 6750a7f3 384874ce fe6b92e5 96e3d003 1f89b562 a73ee510 3b08e48b e98d0c6a d8dc2022 2324ef79 07d13a8f 10040656 0e299f80 e5ba7672 891589e7 55dd3565 a458ea53 468294b1 423fab69 1b2208f8 e8b83407 b8bac2eb - 0 5 17 6197 35 82 20 173 6 0 17 05db9164 38a947a1 25c83c98 7e0ccccf dc7659bd 0b153874 a73ee510 d859d84b e51ddf94 3516f6e6 07d13a8f ada91bd2 27c07bd6 a00a189e 32c7478e -2 12 105 8 218 19 89 38 194 1 23 0 10 05db9164 89ddfee8 0e43a203 0835c005 25c83c98 7e0ccccf 1c86e0eb 1aa457fb a73ee510 7142ad68 755e4a50 6fb65384 5978055e b28479f6 25753fb1 59243a8a e5ba7672 5bb2ec8e 1bd5359f a458ea53 75d1e8e0 32c7478e 6fdd5fba f0f449dd c726bbf8 -1 4255 0 11 0 11 11 331 1 7 0 0 b163ad99 e112a9de 3f4419b9 285a096b 25c83c98 fe6b92e5 d419754f 5b392875 a73ee510 711ec2bc e09c447b 34289160 8dab0422 07d13a8f d9429614 d2e70fe5 3486227d d4aabcd5 6226c3bc 32c7478e fb508a2a -0 0 1 3481 57 5 13 135 0 3 05db9164 95e2d337 3fb49579 3d8f4db3 43b19349 7e0ccccf 93ec533b 0b153874 a73ee510 3b08e48b 9ffb3655 69ee3898 a0874a81 07d13a8f 4e505ea3 7042d16d e5ba7672 7b06fafe 85684dc0 a458ea53 9f39465a c7dc6720 5a1a48d4 2bf691b1 0c1bbe81 -2 2294 3 2 224 2 2 2 2 2 2 2 68fd1e64 9e5ce894 70b23772 13508380 25c83c98 7e0ccccf fe19892c 1f89b562 a73ee510 13e7f44e cd18416f b1b9fea7 103a86a6 07d13a8f 8cf98699 109b83d4 07c540c4 a5bb7b8a 55dd3565 b1252a9d 82030bde c7dc6720 45ab94c8 ea9a246c c84c4aec - 990 3676 0 11 64 0 05db9164 d833535f 77f2f2e5 d16679b9 25c83c98 fbad5c96 4757b5b9 64523cfa a73ee510 3b08e48b e048fc7a 9f32b866 31d2ac00 b28479f6 a733d362 31ca40b6 776ce399 281769c2 dfcfc3fa 93bad2c0 aee52b6f -2 9 5 9 1 6 59 28 385 1 8 0 6 68fd1e64 f0cf0024 5d3a12c5 ee36060f 25c83c98 fbad5c96 c951628f 0b153874 a73ee510 3b08e48b afdd3fca 03afd96d d77a196a b28479f6 a2ccf91a fab4dda8 e5ba7672 88b0e440 21ddcdc9 5840adea f6e47def 32c7478e 6c1cdd05 ea9a246c 7e6f9939 - 18 4 4 87163 537 0 6 94 0 4 05db9164 38a947a1 a47ffdf1 b503a661 4cf72387 7e0ccccf b5d27db4 0b153874 7cc72ec2 86439eb8 eb9e7931 bae6c746 837d93f2 07d13a8f 5e7c7637 7295d80b e5ba7672 d70895c6 233f0d38 3a171ecb acbaacbd -1 70 7 5 328 21 1 5 21 1 1 21 05db9164 942f9a8d 17fc1783 6e2f2285 43b19349 7e0ccccf d70c05b1 0b153874 a73ee510 7f79890b c4adf918 b08428db 85dbe138 b28479f6 ac182643 04c29be3 d4bb7bd8 1f868fdd 21ddcdc9 a458ea53 816b88d8 32c7478e 3fdb382b b9266ff0 49d68486 - 0 14281 0 36 344 0 05db9164 d833535f b00d1501 d16679b9 384874ce 7e0ccccf f4710bb5 5b392875 a73ee510 3b08e48b e0be7968 e0d76380 0d86025d 1adce6ef 2ee9f086 1203a270 776ce399 7b49e3d2 73d06dde be7c41b4 aee52b6f -0 24 5 9 10052 554 3 18 377 0 2 0 9 05db9164 8084ee93 02cf9876 c18be181 4cf72387 7e0ccccf e824c09e 0b153874 a73ee510 d319dfed dcea998f 8fe001f4 55be071f b28479f6 b2ff8c6b 36103458 07c540c4 52e44668 e587c466 32c7478e 3b183c5c -0 2 10 9 1545 90 9 12 173 0 3 0 9 05db9164 8947f767 e62a3e13 3c36a27e 0942e0a7 7e0ccccf 6d490d7a 0b153874 a73ee510 ceb10289 77212bd7 3a4b140d 7203f04e 64c94865 d120f347 a76ec3c8 e5ba7672 bd17c3da 55dd3565 a458ea53 33b0c3c9 423fab69 3fdb382b 010f6491 49d68486 - 12 1 2 40566 4 64 68fd1e64 38a947a1 afeeb65f 6d83fe0a 4cf72387 7e0ccccf dc2b40a4 0b153874 a73ee510 e41fb5a0 6685ea28 8280c8db 7edc047a 1adce6ef 0e873b53 0237fe9e e5ba7672 e5611636 bc4bb8b7 423fab69 a3a26204 -0 147 0 2063 366 2 47 317 0 2 78 68fd1e64 0a519c5c b00d1501 d16679b9 0942e0a7 7e0ccccf 95b7a1e7 1f89b562 a73ee510 fbbf2c95 2d9eed4d e0d76380 949ea585 b28479f6 7f6af6b0 1203a270 e5ba7672 eea3ab97 73d06dde 32c7478e aee52b6f - 17 0 0 2 2 0 2 68fd1e64 aa6dadc6 d032c263 c18be181 25c83c98 3bf701e7 c26bb0ea 062b5529 7cc72ec2 3b08e48b 4dbc650b dfbb09fb ce08fcbf 07d13a8f 88cdcba1 84898b2a 2005abd1 05719980 0014c32a be7c41b4 3b183c5c -0 36 2808 92 6 0 37 0 1 0 5a9ed9b0 287130e0 f7414e8b 1554ce3d 43b19349 fe6b92e5 d5484ce5 0b153874 a73ee510 a9989b89 b4eb1891 2d24bd34 64d8d024 1adce6ef d173860a c9ddff6a e5ba7672 616484f3 21ddcdc9 b1252a9d f27ac34a 32c7478e 7e37d2a0 ea9a246c eb9f8db4 - 516 1 1542 114 8 0 113 2 1 5a9ed9b0 db2905e6 c906fb15 55cf9503 25c83c98 cd628e53 0b153874 a73ee510 9fb781ac 8f68a279 23f7905b 7eb73375 1adce6ef 43da1ff4 6596e6e9 e5ba7672 385c471a 21ddcdc9 5840adea ad789d5a 32c7478e 9fb5b007 e8b83407 f379f550 -0 692 0 2262 29 42 6 167 0 7 1 4 05db9164 064c8f31 70168f62 585ab217 25c83c98 7e0ccccf 01c31e6c 0b153874 a73ee510 474773a7 2bcfb78f eb83af8a e6fc496d 07d13a8f 81d3f724 69f67894 3486227d d4a314a2 21ddcdc9 5840adea e1627e2c 32c7478e a6e7d8d3 001f3601 2fede552 -2 0 8 11 4 7 46 11 72 1 3 59 2 05db9164 95e2d337 f582838b 31d4aa3d 25c83c98 fbad5c96 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 af78b5ee 605bbc24 cfef1c29 adc5d179 5093db14 8efede7f 7b06fafe 21ddcdc9 b1252a9d 9d3415df 32c7478e f271f41c 2bf691b1 cc7a24ff -2 1 15 5 4 5 2 4 5 1 1 3 5 05db9164 8947f767 5fed3100 a432e948 384874ce 7e0ccccf 0f70f07b 0b153874 a73ee510 5be0d285 4fc18a28 a066d614 ff3ffc9f 1adce6ef ba8b8b16 45ccded4 27c07bd6 bd17c3da 21ddcdc9 a458ea53 7c53c9d9 ad3062eb 32c7478e f18e11cb 010f6491 029398e0 - 34 3 2 17251 0 6 1 0 2 be589b51 2c16a946 5d4fe819 6ad68ce1 25c83c98 7e0ccccf 99cb8fdb 0b153874 a73ee510 9d17c802 744161b3 f48cb222 474aef6e b28479f6 3628a186 2d08259c e5ba7672 e4ca448c 1019792d 32c7478e 9117a34a -1 0 85 0 33 0 1 0 0 1 1 0 05db9164 52edee5f e426872e 0c31dcbd 25c83c98 1a671428 0b153874 a73ee510 3b08e48b 15e10f9c 8b82c64b 0710c0b5 b28479f6 e509a942 acaa85f0 d4bb7bd8 30adf650 21ddcdc9 5840adea b0782e7e be7c41b4 45ab94c8 2bf691b1 602f0609 -0 280 6 1 21673 253 2 2 57 0 1 0 2 05db9164 bce95927 d4a8def2 13508380 25c83c98 7e0ccccf 3c099b88 0b153874 a73ee510 6c47047a f1f0b97e 6b7fbd91 0ed79272 07d13a8f fec218c0 d027c3ab 3486227d 04d863d5 650dc442 b1252a9d e571d84e 423fab69 45ab94c8 e8b83407 c84c4aec -1 2049 7 2 77 4 1 4 4 1 1 4 05db9164 09e68b86 61679c28 983a8a84 25c83c98 fbad5c96 99ebb9c4 0b153874 a73ee510 3b08e48b 058b2e38 3135c9c1 35323fda 1adce6ef dbc5e126 e6fb05ae d4bb7bd8 5aed7436 af7c4727 b1252a9d a508d655 c9d4222a be7c41b4 eabb3fd7 e8b83407 c714210d - 1 46 1 20148 54 1 1 1 1 1 68fd1e64 95e2d337 f715d8cc 7c15fa92 43b19349 76931f79 5b392875 a73ee510 9de7c14e 0f8baa15 b9bee1c2 2d9819ce 1adce6ef 6c2fcd3f 498519e1 d4bb7bd8 1a9f6745 21ddcdc9 5840adea 71b9f31a 32c7478e cf9f8644 2bf691b1 00cd7c8a -1 48 3 3 73 24 1 18 27 1 1 0 7 05db9164 09e68b86 c80ab5c4 187292dd 384874ce 9e13c42a 0b153874 a73ee510 3b08e48b e40ee698 cfbb111f cfe11615 07d13a8f 36721ddc 81889af1 d4bb7bd8 5aed7436 ef4a5439 a458ea53 7a39c337 32c7478e 1260fbcb e8b83407 691a6530 -0 17 9 8 6727 116 7 39 78 0 3 0 8 05db9164 a796837e 42db3232 e3cc371a 25c83c98 fe6b92e5 7f9907fe 1f89b562 a73ee510 da272362 a7b606c4 c9669737 eae197fd cfef1c29 f0bf9094 c4de5bba e5ba7672 1cdbd1c5 288eaded 3a171ecb 8fc66e78 -0 -1 2517 45 3 19 216 0 3 05db9164 4c2bc594 d032c263 c18be181 4cf72387 7e0ccccf a56b946e 37e4aa92 a73ee510 6eb65ff1 3898d718 dfbb09fb 86462f28 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 55dd3565 3b183c5c -4 11 1 217 3 4 20 24 1 1 1 05db9164 e77e5e6e b65bfbef 5bd3fb0e 25c83c98 fbad5c96 15ce37bc 0b153874 a73ee510 61fa6541 ff78732c 4e5e5d61 9b656adc 1adce6ef 2c684cfd 6161b382 e5ba7672 449d6705 54591762 a458ea53 87e79ed8 423fab69 c6bfad77 445bbe3b c646ad33 -0 0 3 0 7558 986 4 12 211 0 3 1 2 05db9164 298d0556 02cf9876 c18be181 25c83c98 fbad5c96 6a3814dd 1f89b562 a73ee510 3b08e48b cfdc314b 8fe001f4 b71128bf 07d13a8f bfcf91a0 36103458 8efede7f a8f42b59 e587c466 c7dc6720 3b183c5c -1 3 3 6 387 17 1 9 53 1 1 8 5a9ed9b0 8f5b4275 b009d929 c7043c4b b2241560 fbad5c96 4b219154 0b153874 a73ee510 7259dc52 f25fe7e9 3563ab62 dd183b4c 1adce6ef a6bf53df b688c8cc 3486227d 65c9624a 21ddcdc9 5840adea 2754aaf1 32c7478e 3b183c5c e8b83407 adb5d234 -0 0 2 2 16708 620 6 23 324 0 2 0 2 05db9164 4d554e60 d032c263 c18be181 25c83c98 fbad5c96 6d490d7a 0b153874 a73ee510 715f675e 77212bd7 dfbb09fb 7203f04e 1adce6ef 368a1c96 84898b2a e5ba7672 c41887ad 0014c32a 423fab69 3b183c5c - 216 38121 3 05db9164 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 4c397c64 985e3fcb a73ee510 3b08e48b 494bd436 8fe001f4 32569bcf b28479f6 b2ff8c6b 36103458 776ce399 52e44668 e587c466 32c7478e 3b183c5c -0 29 19 32 46 1558 3 33 232 0 3 32 05db9164 38a947a1 4470baf4 8c8a4c47 25c83c98 7e0ccccf b3b280b5 0b153874 a73ee510 3b08e48b 3e38ef40 bb669e25 5e419718 b28479f6 d22224d7 2b2ce127 e5ba7672 ade68c22 2b796e4a ad3062eb 85d5a995 8d365d3b - -1 0 0 21 0 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 0dab78da 56563555 7cc72ec2 3b08e48b 7bc78da9 dfbb09fb 6b5d07b4 8ceecbc8 7ac43a46 84898b2a 2005abd1 bc48b783 0014c32a be7c41b4 3b183c5c -1 1 12 9 1431 29 4 27 41 0 1 9 05db9164 2c16a946 a78f2d3f f85c9252 25c83c98 7e0ccccf a6a575e6 062b5529 a73ee510 25103694 4829f487 8224460d 2180053c 07d13a8f 18231224 1cc5f188 e5ba7672 74ef3502 794a0de9 32c7478e 9117a34a - 0 13 10 7534 34 17 8 34 3 0 10 05db9164 09e68b86 4ba6f10f 045f4ac2 43b19349 b87f4a4a 0b153874 a73ee510 e70742b0 319687c9 7b983f10 62036f49 f7c1b33f 5726b2dc a2bf617f e5ba7672 5aed7436 083e89d9 b1252a9d 2b6fd1c0 32c7478e 0379c6ef e8b83407 4ea41590 -0 3 43 20 8039 0 45 310 0 0 43 68fd1e64 0aadb108 c798ded6 91e6318a 4cf72387 7e0ccccf 4de1072e 5b392875 a73ee510 a2c3010e 7f61881c 1b2022a0 ca040b71 07d13a8f 815790d1 b74e1eb0 e5ba7672 7ce63c71 af5dc647 c9d4222a 3a171ecb 1793a828 -0 -1 5270 220 2 25 115 0 1 0 05db9164 4c2bc594 d032c263 c18be181 384874ce fbad5c96 f83f7bb3 0b153874 a73ee510 cd481139 00adbfbb dfbb09fb d4b85d8d 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 55dd3565 3b183c5c -13 2 40 25 197 26 189 40 152 1 10 2 26 68fd1e64 89ddfee8 0b84f4b4 da1ef4ea 25c83c98 fbad5c96 1c86e0eb 0b153874 a73ee510 5df036eb 755e4a50 1de3d7bf 5978055e 07d13a8f 4df3da6b 173217a6 e5ba7672 5bb2ec8e 55dd3565 a458ea53 89358789 32c7478e 3fdb382b f0f449dd 49d68486 - 1 3 4 4214 5 3 4 5 1 4 68fd1e64 8dbd550a 25c83c98 7e0ccccf 0d15142a 0b153874 a73ee510 ac473633 df7e8e0b 84c02464 07d13a8f d30dcf14 07c540c4 7cf65c5f 32c7478e -0 406 21 5 1532 21 19 13 16 0 5 7 05db9164 4c2bc594 d032c263 c18be181 43b19349 fe6b92e5 7227c706 f504a6f4 a73ee510 5fcee6b1 9625b211 dfbb09fb dccbd94b 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 32c7478e 3b183c5c - -1 2011 149 0 0 107 0 05db9164 f40dac87 f336432c 585950a5 25c83c98 6d23e366 0b153874 a73ee510 3b08e48b 86ca7dc8 1241e747 94ebed39 07d13a8f c4b55f96 8beaa75c e5ba7672 ae288801 21ddcdc9 5840adea c0428ebd 32c7478e c3408140 47907db5 2fede552 -1 3065 10 9 466 13 3 13 13 1 2 10 05db9164 4c2bc594 d032c263 c18be181 4cf72387 7e0ccccf e168afff c8ddd494 a73ee510 472ef943 208d9dd6 dfbb09fb 59dd51b4 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 423fab69 3b183c5c - -1 31907 0 0 8cf07265 38a947a1 704af678 6a14f9b9 25c83c98 fbad5c96 9905f515 235697d5 7cc72ec2 711ec2bc 1cc4f9a8 0ea7f4fd 1e750733 07d13a8f 586a2aab f8b34416 8efede7f e5f8f18f f3ddd519 32c7478e b34f3128 -0 1 1 3 6120 94 43 2 152 0 7 3 439a44a4 38d50e09 e2772539 4f447b84 25c83c98 5e64ce5f 0b153874 a73ee510 5141558f 8b94178b b293ab33 025225f2 b28479f6 4be6e448 e8cc6979 27c07bd6 19fec6cc 21ddcdc9 a458ea53 3294f8f3 32c7478e cc80b3be 001f3601 c27f155b - 105 2 0 27411 0 19 368 0 16 36a5b3ff d833535f 77f2f2e5 d16679b9 25c83c98 fbad5c96 c8498edc 37e4aa92 a73ee510 0d7b0c26 1b3ed9b3 9f32b866 85a59646 b28479f6 a733d362 31ca40b6 1e88c74f 281769c2 dfcfc3fa ad3062eb 3a171ecb aee52b6f - 0 11 0 426 0 40 39 0 39 05db9164 bdaedcf5 ab21eff2 c19ab729 4cf72387 7e0ccccf 4bd081bf 0b153874 a73ee510 3b08e48b 2271d551 53ee8669 0092602c b28479f6 ac06c121 8a7efe23 776ce399 c793434c 51662f04 be7c41b4 2949c226 -0 -1 9385 40 8 13 112 0 2 05db9164 f32f16a6 2d125708 16fe249c 25c83c98 7e0ccccf fd0b1667 c8ddd494 a73ee510 da337cc8 9ebaacb7 f1a71ad9 581ec7a9 07d13a8f ad777e75 0302196d e5ba7672 cf736e83 21ddcdc9 5840adea cda00b65 ad3062eb 32c7478e 1793a828 e8b83407 a475662f - 26 1 1 13049 33 1 1 1 1 1 05db9164 0acbc0bb 88d23ae5 928f610c 25c83c98 7e0ccccf 12343fcc 37e4aa92 a73ee510 4ce8f99f 7f8ffe57 862b2657 46f42a63 b28479f6 aa5bc3c9 2b177949 07c540c4 140bbba0 54d55c49 8ec974f4 3a171ecb c9beb5ca -6 6 26 2 446 17 17 24 101 1 4 4 68fd1e64 95e2d337 905dd658 69040d07 4cf72387 fbad5c96 fd5c0ed6 64523cfa a73ee510 267caf03 95eaf7a0 f7cdcbeb ccfd4002 07d13a8f 1620a246 834c4ef3 e5ba7672 701d695d 712d530c a458ea53 8b82397d 423fab69 4921c033 2bf691b1 80b0aeb9 - -1 11766 1 2 0 0 1 241546e0 0a519c5c ad4b77ff d16679b9 25c83c98 7e0ccccf ea60fe71 1f89b562 a73ee510 6c47047a 6ed062c6 a2f4e8b5 1f96eb41 1adce6ef 123b2f29 89052618 d4bb7bd8 2efa89c6 d4703ebd 3a171ecb aee52b6f - 908 11 0 10108 163 3 24 151 1 10 05db9164 24d41293 d032c263 c18be181 4cf72387 7e0ccccf fda1a50f 0b153874 a73ee510 3b08e48b d2b7c44b dfbb09fb 68637c0d 07d13a8f 089dd1eb 84898b2a e5ba7672 40aab586 0014c32a 423fab69 3b183c5c - 1 1 1 17258 144 2 2 43 1 2 68fd1e64 8947f767 460310cf 8293d4da 25c83c98 7e0ccccf 0b6d8b0c 0b153874 a73ee510 870c83ec f971a7d6 c44b30f2 0c7dd611 f862f261 9b45d6e8 202a9a6f 07c540c4 bd17c3da 21ddcdc9 b1252a9d c9346de2 ad3062eb 3a171ecb 4475ce64 e8b83407 1fb96614 - 16 2 2 1641 0 1 2 0 2 05db9164 8947f767 a7bac44b 3196d9d3 25c83c98 7e0ccccf 3d5bf136 0b153874 a73ee510 3b08e48b bc65e818 501d0e09 114f70e8 b28479f6 a473257f 76ec23ee 776ce399 bd17c3da 21ddcdc9 b1252a9d 2a2a8e18 32c7478e 4baa8d93 010f6491 fe871969 -4 13 3 216 5 32 10 102 1 5 0 3 c71ae391 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 0e9ead52 c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 8efede7f b486119d 73d06dde 32c7478e aee52b6f - 50 15 14 9231 89 2 14 23 1 14 be589b51 76c475b1 3e250613 9bbf6db9 25c83c98 7e0ccccf 5b0a6891 1f89b562 a73ee510 6c47047a 6514ea2d aba52cc4 4738a95a 1adce6ef 280a440c f752ff8e d4bb7bd8 ae09efbe bebf88d7 bcdee96c 5ddc2c4c -0 1 4 2221 12 8 2 4 0 1 68fd1e64 80e26c9b 15eccf83 85dd697c 25c83c98 0dbf2675 0b153874 a73ee510 753998f6 88196a93 49e33bf0 1211c647 07d13a8f e8f4b767 2d0bbe92 e5ba7672 005c6740 21ddcdc9 b1252a9d 00bc746e 32c7478e 1793a828 e8b83407 9904c656 - 7 43731 4 9a89b36c d833535f ad4b77ff d16679b9 25c83c98 13718bbd dc63c936 1f89b562 a73ee510 3b08e48b 53b6a492 a2f4e8b5 d1019a93 cfef1c29 7e1a4d8a 89052618 776ce399 281769c2 d4703ebd be7c41b4 aee52b6f -0 41 4 1553 67 4 7 54 0 1 4 8cf07265 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf cb66c671 0b153874 a73ee510 81c8810e 70dcd184 e0d76380 aca22cf9 b28479f6 b760dcb7 1203a270 e5ba7672 2efa89c6 73d06dde 32c7478e aee52b6f -1 1 6 5 404 15 9 40 175 1 3 0 5 68fd1e64 a8b6b751 d125aecd 82a61820 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 726f00fd c4adf918 49507531 85dbe138 07d13a8f 4b1f9049 0fd6d3ca 3486227d d787f192 21ddcdc9 5840adea 7eefff0d 32c7478e cafb4e4d 001f3601 99f4f64c - 3543 0 10139 0 11 198 0 10 68fd1e64 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 8ac7c946 062b5529 a73ee510 cbf6d729 8e8b2ae0 dfbb09fb f98d9f6e 64c94865 00631f93 84898b2a 3486227d 5a5b8bf9 0014c32a 32c7478e 3b183c5c - 8 2 14 10225 122 8 19 39 2 0 20 05db9164 d833535f 77f2f2e5 d16679b9 25c83c98 7e0ccccf 3b3a8277 1f89b562 a73ee510 3b08e48b 8349edc7 9f32b866 176d07bc b28479f6 a733d362 31ca40b6 e5ba7672 281769c2 dfcfc3fa be7c41b4 aee52b6f -8 -1 0 50 0 266 3 29 3 51 0 0 68fd1e64 404660bb 7dc978a2 1acf0e98 25c83c98 7e0ccccf 1c86e0eb 0b153874 a73ee510 935a36f0 755e4a50 f4eb562a 5978055e 1adce6ef 6ddbba94 5b12a047 e5ba7672 4b17f8a2 21ddcdc9 5840adea ea8159be ad3062eb 32c7478e 7cb64d22 f0f449dd f3737bd0 - -1 8651 2 1 0 2 1 68fd1e64 38a947a1 9433016e 6a14f9b9 25c83c98 fe6b92e5 d4134c20 0b153874 a73ee510 ef93d222 e4783e44 1453fbd1 2ac84021 07d13a8f 4dad26dd f8b34416 d4bb7bd8 e5f8f18f f3ddd519 32c7478e b34f3128 -8 2589 0 43 0 57 0 42 1 4 0 0 05db9164 38a947a1 3bc1718e 6d348922 25c83c98 fe6b92e5 95667a0f c8ddd494 a73ee510 beb8cbb0 6fcaf9ee cb00e2b7 7aab7990 07d13a8f 413759ad 313aead2 3486227d 1cb978cf 160f480f 423fab69 d4a1b4cb - 181 294 0 6158 366 29 47 540 7 147 be589b51 421b43cd 38dcf50e 29998ed1 25c83c98 7e0ccccf 9963c37d 5b392875 a73ee510 d2f1c80c 9a024337 6aaba33c 7a7b8db5 b28479f6 2d0bb053 b041b04a e5ba7672 2804effd 723b4dfd c9d4222a 32c7478e b34f3128 -18 -1 388 0 214 0 136 1 21 3 5a9ed9b0 942f9a8d 505d7888 cb55c02a 384874ce 6f6d9be8 d3f2ae29 0b153874 a73ee510 0e9ead52 c4adf918 d674a6c9 85dbe138 b28479f6 ac182643 db8bf2c2 8efede7f 1f868fdd f44bef3c a458ea53 999f460c 32c7478e c43c8d37 9d93af03 7b1f0488 -0 259 7 7 4685 53 38 18 35 0 5 0 7 885aeecb 724dd8ed f5bfbe78 d8a20c3f 4cf72387 fbad5c96 a5a83bdd 1f89b562 a73ee510 6ca469d2 f697a983 e7529ed1 e5643e9a 64c94865 a0be024c 963fbc11 8efede7f b0e682dc 0ee3b7f7 423fab69 821fbf86 -0 0 1 1 5228 735 1 23 236 0 1 11 be589b51 d833535f 77f2f2e5 d16679b9 25c83c98 7e0ccccf 0808742e 5b392875 a73ee510 905f1393 2115d03b 9f32b866 40dfba03 1adce6ef 2ee9f086 31ca40b6 d4bb7bd8 7b49e3d2 dfcfc3fa 32c7478e aee52b6f - 0 13 3 49112 0 8 39 0 3 05db9164 e77e5e6e f21302c7 e29faea6 25c83c98 7e0ccccf c3d4a686 0b153874 7cc72ec2 366090e9 8b92652b bd38d0dc c5bc951e b28479f6 571f6c76 f856ca3c e5ba7672 449d6705 1d04f4a4 a458ea53 bb3acd99 c7dc6720 59d5131b f0f449dd dbc4d43f - 0 4 0 19337 33 12 1 33 1 7 68fd1e64 f6ff9aa4 51a1ba8e 499ac831 30903e74 fe6b92e5 15ce37bc 0b153874 a73ee510 e4d51b5f ff78732c 34645d5b 9b656adc 07d13a8f 0ee9165e 6a841a1b e5ba7672 8ef31929 9cfdbc70 c7dc6720 aee52b6f -10 86 3 1 1 0 26 24 216 1 6 0 05db9164 dd8c896e 6b7e0ce9 13508380 30903e74 7e0ccccf 64df3d3e 0b153874 a73ee510 3b08e48b 422750b7 6fb8a85b e325e0dd 07d13a8f 95275a51 c2bba0d9 e5ba7672 3182300e 55dd3565 a458ea53 a2bbcff5 3a171ecb 45ab94c8 010f6491 c84c4aec -2 19 5 4 15 3 34 4 10 1 2 1 3 05db9164 24c700ac 5b4750d0 b94f3636 4cf72387 7e0ccccf affecfe1 0b153874 a73ee510 3b08e48b 750c33d8 580ca792 86f2e6a7 b28479f6 7cf626ab e4f52019 27c07bd6 47b9d9e5 5376ce81 3a171ecb 8bfb698f - 46 14 44598 0 32 25 0 22 5a9ed9b0 08d6d899 b00d1501 d16679b9 43b19349 7e0ccccf dc63c936 0b153874 a73ee510 3b08e48b 53b6a492 e0d76380 d1019a93 07d13a8f 41f10449 1203a270 776ce399 698d1c68 73d06dde be7c41b4 aee52b6f -13 0 53 26 18 26 102 25 50 2 12 24 8cf07265 f0cf0024 6f67f7e5 41274cd7 384874ce fbad5c96 90d85c67 0b153874 a73ee510 3f023a08 46759dcb 623049e6 6cb5243a 1adce6ef 55dc357b c92f3b61 27c07bd6 b04e4670 21ddcdc9 b1252a9d 60f6221e 423fab69 43f13e8b ea9a246c 731c3655 - 0 1 1 2136 0 6 6 0 1 68fd1e64 4d554e60 d032c263 c18be181 25c83c98 7e0ccccf ce813de3 64523cfa a73ee510 3b08e48b 13754a9c dfbb09fb 5d111255 07d13a8f 9480ac78 84898b2a 776ce399 9ef8c1e3 0014c32a 3a171ecb 3b183c5c -0 35 9410 439 12 29 266 0 2 9a89b36c b78edce9 b00d1501 d16679b9 4cf72387 7e0ccccf 650921b9 5b392875 a73ee510 3b08e48b 6394ad05 e0d76380 7aa2166f 07d13a8f b4569567 1203a270 e5ba7672 66fcfcc7 73d06dde 423fab69 aee52b6f -10 823 14 6 136 25 11 25 41 0 1 23 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 26a81064 0b153874 a73ee510 dcbc7c2b 9e511730 dfbb09fb 04e4a7e0 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c - 2 5800 24 47 2 129 9 05db9164 b7ca2abd ee96fc95 68ad052c 25c83c98 7e0ccccf 14ad5567 0b153874 a73ee510 f71087b9 9ddd72e9 ce875433 37e99bb7 64c94865 5f2d5a3a 5f92b84a e5ba7672 4771e483 95b757a6 3a171ecb 41be4766 - 22 2 4 39769 37 1 4 37 0 4 68fd1e64 80e26c9b 791e806a 9612960b 25c83c98 fe6b92e5 596225f2 5b392875 a73ee510 3b08e48b ca265e32 b847c87c 05e9124c b28479f6 4c1df281 743ffd7b 27c07bd6 f54016b9 21ddcdc9 5840adea a6641f12 c7dc6720 1793a828 e8b83407 7e604c44 -0 277 24 10 231 1666 2 22 852 0 2 0 26 5a9ed9b0 4c2bc594 d032c263 c18be181 25c83c98 fbad5c96 b46e01f1 0b153874 a73ee510 6287b8a6 7c53dc69 dfbb09fb 4fd35e8f 1adce6ef ae0c3875 84898b2a 3486227d 15a36060 0014c32a 55dd3565 3b183c5c -4 0 2 15 36 2 102 30 948 2 23 0 2 05db9164 78ccd99e edd93c27 693c16a3 43b19349 13718bbd 888c40fe 0b153874 a73ee510 4e21597c 2770cb50 b3e4b059 6cb5243a 051219e6 9917ad07 664c338b 8efede7f e7e991cb 21ddcdc9 a458ea53 f2891eda 32c7478e 86033a89 b9266ff0 d19d358a - 1 47 0 2 52 0 05db9164 942f9a8d bc5cd26f 50c5f8a4 4cf72387 fe6b92e5 d9aa9d97 1f89b562 7cc72ec2 3b08e48b 6e647667 8b0cbf95 85dbe138 b28479f6 ac182643 1c4a9951 2005abd1 1f868fdd aecf55cd a458ea53 67c95479 ad3062eb 3a171ecb ab264e82 9d93af03 f2e94bfb -0 3 2 2 4813 20 7 2 38 0 3 7 2 ae82ea21 f3139f76 a5e30d56 bf0b19a8 b706ee81 7e0ccccf 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 89cac77c 605bbc24 07d13a8f 7858f722 5131d930 8efede7f 893857db 3b226dea 32c7478e 4fcc135f -0 169 0 4888 118 8 21 209 0 3 0 1 05db9164 68b3edbf b00d1501 d16679b9 25c83c98 fbad5c96 1e3cba9d 0b153874 a73ee510 643b1ea5 843d8639 e0d76380 9cab1003 b28479f6 f511c49f 1203a270 e5ba7672 752d8b8a 73d06dde 32c7478e aee52b6f - 2896 73484 0 0 39 0 05db9164 ef69887a b0cfda99 9f1b44e1 25c83c98 7e0ccccf 56274898 0b153874 7cc72ec2 e8b9a804 a4ea009a af8fdffb 1e9339bc b28479f6 902a109f 6e9d4c75 3486227d 4bcc9449 3dd03255 a458ea53 e5cc808d c7dc6720 22635938 47907db5 77841998 - 0 1 11800 16 3 4 16 2 0 05db9164 09e68b86 fa90dcdb 1f9f7216 25c83c98 6f6d9be8 16487bff 0b153874 a73ee510 3b08e48b 65819b7a cf104b3c 2e21cea2 b28479f6 52baadf5 18cd21b4 e5ba7672 5aed7436 21ddcdc9 a458ea53 6df75968 32c7478e 9276a528 e8b83407 55432fa3 -2 24 192 0 33 9 168 1 10 2 05db9164 26a88120 d032c263 c18be181 25c83c98 7e0ccccf d70c05b1 062b5529 a73ee510 7f79890b c4adf918 dfbb09fb 85dbe138 07d13a8f 040ec437 84898b2a e5ba7672 57598e25 0014c32a 32c7478e 3b183c5c -0 182 2920 92 1 32 168 0 1 05db9164 85af3139 d032c263 c18be181 25c83c98 7e0ccccf f8748bfc 0b153874 a73ee510 3b08e48b 90dfb174 dfbb09fb 611283ab b28479f6 af8db00e 84898b2a d4bb7bd8 d4328054 0014c32a be7c41b4 3b183c5c -20 6 16 17 105 17 29 17 150 1 3 0 17 dc5ebbd9 09e68b86 aa8c1539 85dd697c 25c83c98 13718bbd a49e5f93 a674580f a73ee510 0f9a018e 61593534 d8c29807 9259d03d 8ceecbc8 d2f03b75 c64d548f 3486227d 63cdbb21 cf99e5de 5840adea 5f957280 55dd3565 1793a828 e8b83407 b7d9c3bc -0 -1 8565 178 13 0 303 0 6 05db9164 1caf43ad fc165da9 f922efad 25c83c98 7e0ccccf a015ed43 0b153874 a73ee510 efea433b ccfdca2f 9b7bf6d6 d76cea6e 1adce6ef 67f18454 3241ec25 e5ba7672 d94f84e4 e77e3775 423fab69 b34f3128 - -1 17 7 5813 32 4 6 56 1 7 05db9164 58e67aaf 751458af e9e096ae 4cf72387 7e0ccccf c519c54d 0b153874 a73ee510 402b6ab6 59cd5ae7 df6f56ec 8b216f7b b28479f6 62eca3c0 cb0d7489 e5ba7672 c21c3e4c f30f7842 b1252a9d d42e01f0 32c7478e 3fdb382b e8b83407 49d68486 -0 19 3 3466 33 31 17 312 0 7 0 05db9164 38a947a1 94b6cf57 174470fc 4cf72387 fe6b92e5 b5b9fbe7 5b392875 a73ee510 33677623 a0085b3e 575a0667 6580b282 b28479f6 0f55a5e9 4ba2f6dd 8efede7f 9b76ff86 f835657d 32c7478e 21bf6322 -4 -1 695 31 15 22 61 1 2 0 05db9164 bce95927 02391f51 b9c629a9 25c83c98 7e0ccccf c23eb1cf 0b153874 a73ee510 e70742b0 319687c9 2397259a 62036f49 07d13a8f fec218c0 d37efe8c e5ba7672 04d863d5 21ddcdc9 5840adea b6119319 3a171ecb 45ab94c8 e8b83407 b13f4ade -0 1 18 5 5744 127 6 27 89 0 1 23 68fd1e64 04e09220 b1ecc6c4 5dff9b29 25c83c98 fbad5c96 4ee3a75a 6a698541 a73ee510 a5188390 dd244141 2436ff75 468f0632 07d13a8f f6b23a53 f4ead43c e5ba7672 6fc84bfb 4f1aa25f ad3062eb be7c41b4 ded4aac9 -0 -1 1733 101 2 46 49 0 1 68fd1e64 38a947a1 223b0e16 ca55061c 25c83c98 7e0ccccf 05254e29 5b392875 a73ee510 3b08e48b dd0eb023 156f99ef 434b8eb7 b28479f6 42e41d92 5fbf4a84 07c540c4 1999bae9 deb9605d be7c41b4 e448275f -41 12 4 321 27 672 10 563 2 29 1 4 68fd1e64 a7ee4473 e6d8101f b8b59486 25c83c98 7e0ccccf 6d490d7a 5b392875 a73ee510 ceb10289 77212bd7 d5b28e08 7203f04e 07d13a8f 5e1280bd a6791474 27c07bd6 475fc404 33b34e38 ad3062eb 423fab69 8b7e893f -0 -1 9391 872 1 1 124 0 1 439a44a4 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf bd8f1e36 5b392875 a73ee510 409cb31b 59da2976 e0d76380 a1354fa8 cfef1c29 7e1a4d8a 1203a270 d4bb7bd8 281769c2 73d06dde 3a171ecb aee52b6f - 495 10 8 41821 141 0 16 58 0 16 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf d2d741ca 0b153874 a73ee510 3b08e48b ea4adb47 3563ab62 05781932 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 c9d4222a 3a171ecb 3b183c5c e8b83407 adb5d234 -0 0 1 4930 580 14 1 632 0 3 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 aed379a6 0b153874 a73ee510 5c7b19b4 75ae185c dfbb09fb d53bbf5c 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c - 19 1 1 0 1 1 0 1 be589b51 38a947a1 e3818eb2 a4456f7e 25c83c98 fbad5c96 88002ee1 5b392875 7cc72ec2 3b08e48b f1b78ab4 3bec5d45 6e5da64f cfef1c29 94dbd80a 72d1790f 2005abd1 f03e8b05 950d91c1 55dd3565 2f7e98de -0 0 3 4 44078 2891 0 9 260 0 0 4 05db9164 bdaedcf5 76c07464 d0ab5431 25c83c98 bcec77e9 5b392875 7cc72ec2 2dd25735 44ccb891 248973e0 30f114f1 07d13a8f beafbc98 9074b33a 07c540c4 c793434c d8a05a73 32c7478e 5f44b012 - 84 5 2 7189 0 3 2 0 2 be589b51 207b2d81 2b280564 ad5ffc6b 25c83c98 13718bbd 12343fcc 0b153874 a73ee510 f6f942d1 7f8ffe57 2a064dba 46f42a63 64c94865 11b2ae92 7d9b60c8 d4bb7bd8 395856b0 21ddcdc9 b1252a9d 9c3eb598 3a171ecb c0b8dfd6 001f3601 81be451e -0 1 1 1 15893 797 0 4 128 0 0 0 1 39af2607 298d0556 02cf9876 c18be181 25c83c98 7e0ccccf 7c7f8ebd 0b153874 a73ee510 4b4670a5 d7129972 8fe001f4 c0c5f46b b28479f6 48a5d003 36103458 e5ba7672 a8f42b59 e587c466 32c7478e 3b183c5c - 3 5 5 18792 133 20 6 203 3 6 05db9164 302debf8 c740bca1 5928edab 4cf72387 7e0ccccf b72ec13d 1f89b562 a73ee510 1e12f58d 3547565f ee3501f0 12880350 64c94865 e036ff59 118ad0d5 e5ba7672 be2b722c 11c5f92a 8ec974f4 423fab69 79a1dedc -16 47 12 6 741 106 16 16 20 1 1 20 5a9ed9b0 2ae0a573 c5d94b65 5cc8f91d 25c83c98 fbad5c96 6ac49c28 0b153874 a73ee510 3b08e48b ef9a7a47 75c79158 91f9489d 5aebfb83 15cf35f3 208d4baf e5ba7672 ef97d1ee 6a909d9a 3a171ecb 1f68c81f -0 2 5 13114 0 15 17 0 0 0 5 05db9164 d833535f b00d1501 d16679b9 f281d2a7 7e0ccccf b0130b6f 0b153874 a73ee510 3b08e48b 9002e6b7 e0d76380 202a3015 b28479f6 a733d362 1203a270 3486227d 281769c2 73d06dde c9d4222a 32c7478e aee52b6f -2 4 3 42 11 29 2 42 42 1 1 0 28 41edac3d d833535f 77f2f2e5 d16679b9 25c83c98 7e0ccccf 7d251743 0b153874 a73ee510 76aa8efa 15eced00 9f32b866 bd251a95 1adce6ef 5e7a356b 31ca40b6 d4bb7bd8 281769c2 dfcfc3fa 32c7478e aee52b6f -3 6 20 50 59 51 3 29 51 1 1 51 68fd1e64 38a947a1 7eef46ee 5db066fb 25c83c98 7e0ccccf 397def4e 5b392875 a73ee510 0af798a0 20b05825 46591921 c28589ee b28479f6 54973283 c4c8682a 07c540c4 423679c5 6364be0b 32c7478e f5220a4d -4 7 3 7 224 55 102 43 983 1 12 35 05db9164 52e9ecfc 788eb00f a2dcc63d 4cf72387 7e0ccccf 1c86e0eb 0b153874 a73ee510 67eea4ef 755e4a50 1d1249c3 5978055e 07d13a8f 50a9ce4a ccd8d0e2 e5ba7672 1e42ba17 21ddcdc9 a458ea53 340eda77 32c7478e 9f0d8d79 f0f449dd f53afa2f -2 3 6 17 28 15 2 9 17 1 1 15 39af2607 38a947a1 dd17c91c 82a61820 25c83c98 7e0ccccf 15da22d0 0b153874 a73ee510 4b4670a5 d7129972 75529ad8 c0c5f46b 07d13a8f bb1e9ca8 5eea53aa 07c540c4 e96a7df2 0f78ab39 32c7478e cafb4e4d -0 -1 1959 0 1 0 0 0 1 be589b51 09e68b86 d5898840 3c3b8984 43b19349 6f6d9be8 62629a0c 51d76abe a73ee510 ae8a8ee0 88196a93 81c49eae 1211c647 f7c1b33f 5726b2dc da40e42e d4bb7bd8 5aed7436 21ddcdc9 a458ea53 2c138fa8 32c7478e 545ba04e e8b83407 c0608db0 - 4 1 0 236495 0 3 61 0 8 05db9164 0a519c5c 6b8d3b5f d16679b9 25c83c98 fbad5c96 a788607f 0b153874 7cc72ec2 fdf60c9c 8f2a5d32 d6cbb5fb 098e937e b28479f6 b760dcb7 89052618 d4bb7bd8 2efa89c6 ddbb8a5e 3a171ecb aee52b6f -5 94 23 20 15 15 5 19 20 1 1 15 be589b51 c44e8a72 c62788dc 92092e73 4cf72387 7e0ccccf de25e5cf 1f89b562 a73ee510 a6cc5a0b d74f7351 4983050b ea474a6b 07d13a8f b88d2fea 3cc29dae e5ba7672 456d734d 21ddcdc9 b1252a9d b6c98dd3 c9d4222a 423fab69 3fdb382b 724b04da e8cee7fa - 2 7 7 7886 282 1 7 57 1 7 05db9164 38a947a1 e80cc310 f8cab1c8 25c83c98 7e0ccccf 66d269da 0b153874 a73ee510 3b08e48b 18d1c966 397461c1 31493a18 b28479f6 3dcc90e1 bb009ad1 07c540c4 fb1ac727 92f2f325 3a171ecb f558ea71 - 57 1395 85 0 3 18 0 05db9164 8947f767 15945d62 075a4c63 25c83c98 7e0ccccf d20b4953 0b153874 a73ee510 5ba575e7 b5a9f90e daa75f50 949ea585 b28479f6 a473257f 31dc3f9e 27c07bd6 bd17c3da edfe7dcd a458ea53 e6258b0a 32c7478e 9fa6c835 010f6491 a227d501 - 8 20 47779 0 0 16 0 05db9164 38a947a1 578a14a1 bea25674 25c83c98 7e0ccccf 301e3e06 062b5529 7cc72ec2 3b08e48b df29f7bb 0aa6de84 67b031b4 07d13a8f 5b1e9201 179d9828 776ce399 0ccbf1dd 143de831 423fab69 80dea675 - 0 420 189 0 0 13 0 05db9164 38a947a1 76652188 a65e6439 25c83c98 6f6d9be8 e9e7564c 1f89b562 a73ee510 3b08e48b 7ca01a9d df04f6d4 97d749c9 07d13a8f 34b4b87f ee5b0870 776ce399 650b185c d324634d 32c7478e 29fab364 - 0 1 12399 109 1 0 22 1 05db9164 39dfaa0d b00d1501 d16679b9 384874ce 6f6d9be8 979bd076 0b153874 a73ee510 a3d4e5bf f1911847 e0d76380 2e9930bc 1adce6ef 80afa366 1203a270 d4bb7bd8 df4fffb7 21ddcdc9 5840adea 73d06dde 32c7478e aee52b6f 010f6491 6ae9621c -0 0 27 33 1493 36 130 37 330 0 6 0 33 05db9164 4d554e60 d032c263 c18be181 25c83c98 fe6b92e5 18671b18 5b392875 a73ee510 bd96e8fd 77212bd7 dfbb09fb 7203f04e 07d13a8f 58d23284 84898b2a 3486227d c41887ad 0014c32a c7dc6720 3b183c5c -0 -1 7 6 4914 737 7 20 272 0 2 6 8cf07265 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 6978304f 0b153874 a73ee510 5ba575e7 dbdb7970 8fe001f4 9be66b48 07d13a8f 422c8577 36103458 e5ba7672 52e44668 e587c466 3a171ecb 3b183c5c - 0 2 71082 40 0 0 7 0 17f69355 09e68b86 b7711ba0 64b4c7e8 4cf72387 6f6d9be8 1554a783 0b153874 7cc72ec2 7636f6c8 b7bb7a17 615060ed 73e186f6 07d13a8f 36721ddc 7779d526 d4bb7bd8 5aed7436 0ec8d23c a458ea53 e5141cf4 32c7478e d6ed63e6 e8b83407 da282232 -10 0 4968 29 1 2 10 33 25 0 1 0 7382c353 9f7e1d07 58067a68 a4ba6d58 25c83c98 77e91f62 0b153874 a73ee510 31be9cd5 7defe259 29d17107 11fa2c12 b28479f6 08812651 581b67db e5ba7672 6a58e423 21ddcdc9 5840adea b0389948 c7dc6720 7fdaccb2 ea9a246c e7ecb821 - 1 8871 10 5 3 11 3 0 05db9164 3e25b403 25c83c98 3fe8889f 0b153874 a73ee510 28986229 8f68a279 7eb73375 07d13a8f ae1edc05 3486227d 1c381aea 32c7478e -6 314 4 5 10 3 27 30 78 1 3 1 17f69355 bce95927 e426872e 0c31dcbd 43b19349 fbad5c96 d2d741ca 0b153874 a73ee510 18139a78 ea4adb47 8b82c64b 05781932 07d13a8f fec218c0 acaa85f0 e5ba7672 04d863d5 2b558521 5840adea b0782e7e 423fab69 45ab94c8 3d2bedd7 b13f4ade - -1 0 0 68fd1e64 38a947a1 6c53ef41 774c5091 25c83c98 7e0ccccf e7698644 0b153874 7cc72ec2 3b08e48b f9d0f35e f2d6d2b6 b55434a9 1adce6ef 72909a3a 451e1076 2005abd1 46c16414 f57f8ef9 be7c41b4 8bcaae3b -10 38 4967 29 1 2 10 33 25 0 1 0 be589b51 9f7e1d07 37f9c55f 4af066cf db679829 77e91f62 5b392875 a73ee510 31be9cd5 7defe259 1f40f8c6 11fa2c12 1adce6ef df3426f3 5787872d e5ba7672 6a58e423 21ddcdc9 5840adea 0b89b1a4 c7dc6720 14806529 ea9a246c e7ecb821 - 601 6 194 0 14 14 0 14 f473b8dc 38a947a1 0e4f7fa4 5deac079 25c83c98 7e0ccccf 43f947ab 0b153874 a73ee510 000e2f4b 024eda9a 1f6b8745 7928af93 07d13a8f 6c3ae388 50d2b997 1e88c74f a2157fe3 9c03188d 55dd3565 4b871c6a -0 0 1 1 7797 128 2 5 66 0 1 1 05db9164 78ccd99e 31eeba72 7be58a6f 25c83c98 71ddaac7 0b153874 a73ee510 4aead435 80da9312 0ca16244 d14c9212 1adce6ef b00d57a8 e19eb5fe 07c540c4 e7e991cb af7c4727 a458ea53 3f04c340 32c7478e 3fdb382b e8b83407 49d68486 -0 1 1 7 14351 0 28 13 0 0 13 05db9164 0a519c5c 77f2f2e5 d16679b9 25c83c98 7e0ccccf 088a151b 37e4aa92 a73ee510 4b4670a5 a2482a8c 9f32b866 bcc112ba 1adce6ef 123b2f29 31ca40b6 e5ba7672 2efa89c6 dfcfc3fa 32c7478e aee52b6f - 1 41 4 152945 0 4 4 0 4 05db9164 09e68b86 ef147d5f 647cbd67 25c83c98 7e0ccccf 86bb4dee 5b392875 7cc72ec2 567b9b12 27465d16 b7e2a913 db4c1ae9 cfef1c29 18847041 53938589 e5ba7672 5aed7436 13c9db1f a458ea53 1819450d 3a171ecb 6fd65940 e8b83407 ae2497a3 -0 297 14 3 4485 0 4 3 0 0 4 05db9164 26ece8a8 d2c61e57 513c4642 25c83c98 7e0ccccf 579c293b 0b153874 a73ee510 082cafb0 f66047e5 06a5d61b 13c89cc4 07d13a8f f8d15366 f38f1ad6 e5ba7672 bd6b4cf0 4a08ec4e dbb486d7 6138b4a7 -0 1 7 1 3045 81 195 3 653 0 16 0 1 68fd1e64 a8b6b751 98af366b d14e01dc 25c83c98 7e0ccccf 8b55891c 0b153874 a73ee510 7f79890b c4adf918 bc0eb380 85dbe138 b28479f6 694e45e3 c0bd8d11 e5ba7672 d787f192 21ddcdc9 5840adea 7c76bd05 ad3062eb 32c7478e 958bc15c 001f3601 aa5f0a15 - 19 2 3 567 310 0 3 144 0 0 4 05db9164 38a947a1 a405061e a21a58c6 25c83c98 7e0ccccf 4ac30148 0b153874 a73ee510 3b08e48b c05dff4b 685b7464 a22449ca b28479f6 6b8ac38e 7ca8a665 3486227d 6fe9da0c c58883db 3a171ecb 2c502c1d - 9 129 21 20354 964 0 22 65 0 21 41edac3d 09e68b86 3c467c12 a593a60b 4cf72387 fbad5c96 d2d741ca 0b153874 a73ee510 3b08e48b ea4adb47 81b40a21 05781932 b28479f6 52baadf5 6d1fc87b e5ba7672 5aed7436 21ddcdc9 b1252a9d 80312047 3a171ecb 611306e5 e8b83407 cbc3b952 -5 11 1329 1 6 3 3 0 1 05db9164 38a947a1 e058fc3c 2192038e 25c83c98 7e0ccccf 0b0a1a1b 5b392875 a73ee510 5f50c86b b8deab54 f7cbe917 efbb2435 b28479f6 79595843 0c6b4ad6 07c540c4 4427594e f6e3bd9c 32c7478e 9e07eb4a -10 0 31 15 82 33 50 40 240 1 4 0 32 8cf07265 a0e12995 622d2ce8 51c64c6d 25c83c98 7e0ccccf 0ed4baad 5b392875 a73ee510 9996c0a6 7373475d e9521d94 cfbfce5c 07d13a8f 73e2709e ab8b968d e5ba7672 1616f155 21ddcdc9 5840adea ee4fa92e 423fab69 d61a7d0a 9b3e8820 b29c74dc -6 0 31 10 14 9 6 11 10 1 1 9 05db9164 38d50e09 52ffbd0c 41afcc19 25c83c98 7e0ccccf b1537aa3 1f89b562 a73ee510 c6465bed 8139d33e c665cd2b b0ff1de2 b28479f6 4be6e448 74f15ec4 e5ba7672 19fec6cc 21ddcdc9 a458ea53 13530739 bcdee96c 9d58d744 001f3601 c27f155b -1 0 33 3 74 16 1 4 16 1 1 12 68fd1e64 3cb90ca3 07c3f597 87abc25f 25c83c98 7e0ccccf 602c7597 0b153874 a73ee510 1d56e466 159499d1 67eb6bc1 4ab361e1 b28479f6 c0f21d30 8d5674a4 07c540c4 873af5c4 21ddcdc9 5840adea 634dc13b 32c7478e 2cf2378d e8b83407 80a27288 -0 12 22 8 0 83 77 39 209 0 20 1 34f74dfd 89ddfee8 a75c40f7 62302b80 25c83c98 3bf701e7 1c86e0eb 0b153874 a73ee510 935a36f0 755e4a50 4ed25b00 5978055e f862f261 8aa7e8d4 f7a8151c e5ba7672 5bb2ec8e 9653bb65 a458ea53 eeaf1837 32c7478e d2f33946 f0f449dd ac9d56ed - 0 5 1971 122 2 0 118 1 05db9164 8947f767 118f72de 6f10382d 25c83c98 5d627b54 37e4aa92 a73ee510 95890344 a4d2f869 a8d283eb 6b7b3066 07d13a8f 2c14c412 fde8f692 e5ba7672 bd17c3da f4cb0c7d a458ea53 08aeb3f3 c7dc6720 e181127b 010f6491 669d75b8 -0 1 2 19 2446 145 9 35 87 0 2 19 05db9164 ae46a29d 3086bb1e f922efad 25c83c98 fe6b92e5 fda88ae2 5b392875 a73ee510 2f510755 75a867b0 5010d3f4 1c1cf101 b28479f6 cccdd69e e2e2fcd9 e5ba7672 e32bf683 b964dee0 32c7478e b34f3128 -0 -1 13390 346 5 18 204 0 1 5bfa8ab5 4c2bc594 d032c263 c18be181 384874ce 7e0ccccf a972360e 985e3fcb 7cc72ec2 dcbc7c2b 9e511730 dfbb09fb 04e4a7e0 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a ad3062eb 55dd3565 3b183c5c - -1 17580 0 4 35 0 05db9164 4c2bc594 d032c263 c18be181 384874ce fbad5c96 cd98cc3d 5b392875 a73ee510 372f26e1 dcc84468 dfbb09fb b72482f5 8ceecbc8 7ac43a46 84898b2a 1e88c74f bc48b783 0014c32a 55dd3565 3b183c5c -2 2 24 9 50 26 2 9 9 1 1 9 05db9164 80e26c9b 72e8cde7 85dd697c 25c83c98 fe6b92e5 1c82e4ff 0b153874 a73ee510 fd610458 fe10053c 26245658 4dfac58e 1adce6ef 0f942372 da441c7e e5ba7672 005c6740 21ddcdc9 5840adea b300fc27 32c7478e 1793a828 e8b83407 9904c656 -12 1 10 3 277 3 12 4 4 2 2 3 05db9164 09e68b86 9b240c70 f55645df 25c83c98 fe6b92e5 968a6688 361384ce a73ee510 03ed27e7 f25fe7e9 c7291e91 dd183b4c 64c94865 a8142334 d5037a7a e5ba7672 901e19dc 0ec8d23c 5840adea 1bab4840 c9d4222a 32c7478e 237343db e8b83407 a034ca84 -2 1 2 3 1372 4 5 7 8 0 1 0 3 68fd1e64 78ccd99e f375f405 58555ac4 43d2463b 9e8dab66 0b153874 a73ee510 fbbf2c95 2d9eed4d c8528ac9 949ea585 051219e6 9917ad07 7fc967fc e5ba7672 e7e991cb f2edb1f7 a458ea53 36e4d002 32c7478e 91a47f11 010f6491 f0cc172b - 1 310014 5 8cf07265 5dac953d d032c263 c18be181 25c83c98 7e0ccccf aa1c94e4 0b153874 7cc72ec2 76aa8efa 7e40f08a dfbb09fb 1aa94af3 1adce6ef b4a435f2 84898b2a 07c540c4 63e4be9d 0014c32a c9d4222a be7c41b4 3b183c5c - 0 2 2 1648 10 1 2 4 1 2 05db9164 c76014f5 df00c4f0 031bba14 4cf72387 7e0ccccf fdc48e74 64523cfa a73ee510 3b08e48b e0e79bd6 336bb1d7 96fa211f b28479f6 a46c3543 631f0045 d4bb7bd8 93b0d1d7 1fe472e2 3a171ecb 89bd83a1 -0 0 5 5 4708 92 8 29 132 0 2 0 5 68fd1e64 78c51e9e 8837b37e 1601be24 0942e0a7 fbad5c96 8221f190 5b392875 a73ee510 083944ee 6a3de4e2 51e33153 a4b5da60 1adce6ef e9910d7d 15f1882e 3486227d ecf26b99 19c13685 32c7478e 4003a508 - 2501 3 1 0 2 43 0 2 be589b51 38a947a1 4470baf4 8c8a4c47 25c83c98 fbad5c96 88002ee1 0b153874 7cc72ec2 3b08e48b f1b78ab4 bb669e25 6e5da64f b28479f6 547b8c62 2b2ce127 2005abd1 b133fcd4 2b796e4a 32c7478e 8d365d3b -8 15 2 4 59 6 8 3 5 1 1 0 5 18988050 247a1a11 25c83c98 7e0ccccf 7bcc368f 0b153874 a73ee510 f26b2389 60d2afd7 155ff7d9 07d13a8f 2559d9b6 e5ba7672 51360aab c9d4222a 3a171ecb -0 583 26 2 1454 16 2 10 14 0 1 2 05db9164 8f5b4275 b009d929 c7043c4b 30903e74 fbad5c96 045eef77 0b153874 a73ee510 ac9e0776 e81438fc 3563ab62 f745e01e 1adce6ef a6bf53df b688c8cc 07c540c4 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 - 1 8 52493 0 68fd1e64 95e2d337 16079628 09e31ec2 25c83c98 13718bbd e7cf8a4c 0b153874 7cc72ec2 7a029cb8 95eaf7a0 da97478d ccfd4002 07d13a8f 4e505ea3 fcca87dc 3486227d 7b06fafe 712d530c a458ea53 9e46445f 32c7478e f44682a5 2bf691b1 9554ba33 - 11 2 1 1 0 1 1 0 1 68fd1e64 4f25e98b 84f97266 9270ec7c 25c83c98 fbad5c96 aeabbe50 0b153874 a73ee510 865b29d9 43b7cf5e d23dc967 9c7a975e 07d13a8f dfab705f d7509283 1e88c74f 7ef5affa 872eb0d7 a458ea53 3553727d 78e2e389 3a171ecb 16624365 001f3601 54d8b1c8 -0 1 37 1 1529 69 18 10 12 0 2 1 11 5a9ed9b0 d97d4ce8 c725873a d0189e5a 25c83c98 fbad5c96 5a46027e c8ddd494 a73ee510 304fa5ee 199045c0 49fee879 e051ab3c b28479f6 936289f3 3b87fa92 3486227d fb342121 21ddcdc9 5840adea d90f665b 32c7478e 6c1cdd05 ea9a246c 1219b447 -0 0 1 4 1553 12 1 11 12 0 1 4 05db9164 80e26c9b 0a2e4d2f 99944ac5 25c83c98 b87f4a4a c8ddd494 a73ee510 e70742b0 319687c9 146d31cc 62036f49 07d13a8f f3635baf f5697bfb d4bb7bd8 f54016b9 21ddcdc9 b1252a9d c9de0c2e 32c7478e 2bb26daa e8b83407 87d8715a - -1 18950 64 5 1 74 2 3c9d8785 2f86bdee 4cf72387 6f6d9be8 c8767556 0b153874 a73ee510 edccdfed 35dc8759 c1618056 07d13a8f e04ac6ba 07c540c4 e1bdfb13 32c7478e - 2 2 796 68 11 2 192 3 0 2 ae82ea21 2ae0a573 c5d94b65 5cc8f91d 25c83c98 7e0ccccf afa309bd 0b153874 a73ee510 991111e6 77212bd7 75c79158 7203f04e 5aebfb83 15cf35f3 208d4baf e5ba7672 ef97d1ee 6a909d9a c7dc6720 1f68c81f -0 2 7601 152 3 5 272 0 2 0 39af2607 0a519c5c ad4b77ff d16679b9 25c83c98 7e0ccccf 1318627b 0b153874 a73ee510 b8d25928 0b048c07 a2f4e8b5 bb567ffd b28479f6 7f6af6b0 89052618 3486227d eea3ab97 d4703ebd c9d4222a 3a171ecb aee52b6f - 1243 10157 0 0 73 0 05db9164 2705da39 fbe36b8d 20716e3a 25c83c98 fe6b92e5 5491cf2d 0b153874 a73ee510 0d94d7b8 d8d7567b 7c18645e 47d6a934 07d13a8f d582d840 6480d107 1e88c74f 66c3058a c55fc141 32c7478e 043ce596 - 0 23 6 30520 5 0 6 05db9164 09e68b86 b2b62cd9 05bfe484 0942e0a7 7e0ccccf 91282309 0b153874 7cc72ec2 5d97f238 9e511730 73b54fcb 04e4a7e0 1adce6ef dbc5e126 4d34cbfa 8efede7f 5aed7436 21ddcdc9 5840adea d64929ca 3a171ecb 3fdb382b e8b83407 9d5c0f41 -4 680 7 887 33 20 41 366 1 4 7 5a9ed9b0 0a519c5c 77f2f2e5 d16679b9 25c83c98 fbad5c96 fda1a50f 5b392875 a73ee510 3b08e48b d2b7c44b 9f32b866 68637c0d b28479f6 b760dcb7 31ca40b6 e5ba7672 2efa89c6 dfcfc3fa ad3062eb bcdee96c aee52b6f -1 16 1 2 758 35 46 36 295 1 8 0 2 68fd1e64 08c2f5df dde182a0 de1dc0c1 0942e0a7 fbad5c96 a097ff18 c8ddd494 a73ee510 ae07e31d 3407cf7b 7a27d4e1 f0fe287d 32813e21 102957f2 84534f54 27c07bd6 29b0e3e5 2b81e06c ad3062eb 3a171ecb 2f647dfe -0 38 11 22 12113 144 9 22 285 0 3 0 30 8cf07265 a796837e 42db3232 e3cc371a 4cf72387 7e0ccccf 3b549cb8 0b153874 a73ee510 d35e1d60 6685ea28 c9669737 7edc047a cfef1c29 98eddd86 c4de5bba 3486227d e90118d1 288eaded 55dd3565 8fc66e78 -2 -1 63 0 2 0 0 1 1 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 815e3303 0b153874 a73ee510 77fbe0ec c813da1a dfbb09fb 9bbdb8bd 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 3a171ecb 3b183c5c -0 1 4 3 1671 416 11 34 300 0 0 3 05db9164 58e67aaf 37dd95ec 5b60cab7 4cf72387 7e0ccccf 36b796aa 1f89b562 a73ee510 0446ed7f 7373475d ede62414 cfbfce5c 1adce6ef d002b6d9 c04608ef e5ba7672 c21c3e4c 21ddcdc9 a458ea53 82687101 bcdee96c 537bf24c e8b83407 9bf60e42 - 1 9 20 14515 4018 0 9 2490 0 183 05db9164 298d0556 02cf9876 c18be181 25c83c98 7e0ccccf a29fc91d 5b392875 a73ee510 fc3b595d e7ce7f20 8fe001f4 f522015f b28479f6 48a5d003 36103458 e5ba7672 a8f42b59 e587c466 32c7478e 3b183c5c - 83 7711 93 1 0 1 1 05db9164 537e899b 5037b88e 9dde01fd 43b19349 13718bbd a8d2c4dc 0b153874 a73ee510 4181db14 cabf6c9d 680d7261 fa495110 07d13a8f 6d68e99c c0673b44 d4bb7bd8 b34aa802 e049c839 c7dc6720 6095f986 - 5 0 0 2 0 05db9164 8dbd550a 97127f0a e5d4c5ff 43b19349 fe6b92e5 88002ee1 5b392875 7cc72ec2 3b08e48b f1b78ab4 1bfbd812 6e5da64f b28479f6 10e14b33 f327e411 2005abd1 53d8aa6f ae90cc8b ad3062eb 3a171ecb 6c1cdd05 -2 -1 827 0 18 0 1 1 6 1 05db9164 942f9a8d 295f0119 c6bb3458 4cf72387 d3f2ae29 0b153874 a73ee510 7edea927 c4adf918 1307efa3 85dbe138 b28479f6 ac182643 9a0d377a 3486227d 1f868fdd b8a0b6d7 a458ea53 50628d5d 32c7478e 3a109f69 001f3601 25f4b811 -2 1 283 30 0 11 7 31 124 1 4 11 05db9164 4322636e b3eea8ef d96b5614 25c83c98 7e0ccccf 34bc6d4e 0b153874 a73ee510 32abf761 547c304b 8b8cacf5 cbbfff55 07d13a8f 14674f9b 9e14a657 e5ba7672 9d3171e9 21ddcdc9 5840adea 7d4a17a4 55dd3565 921c4069 ea9a246c d67a6f5b -1 -1 0 1 0 1 0 0 1 1 1 0 68fd1e64 942f9a8d c451a590 671f7598 25c83c98 fbad5c96 3f4ec687 5b392875 a73ee510 e113fc4b c4adf918 2133afad 85dbe138 1adce6ef ae97ecc3 b47bfaf2 3486227d 1f868fdd 04de9d96 b1252a9d 3c17ccda 32c7478e e5fe7725 001f3601 69a16fdc -4 1 5 53 22 4 6 6 1 1 5 05db9164 2fe85f57 9b3cea76 d44fbce6 25c83c98 7e0ccccf 6dad974f 5b392875 a73ee510 eaca4085 58676f28 35d5e2eb 8368e64b 07d13a8f c008c9df 7984048f e5ba7672 c23adf9f 3a6223c1 c9d4222a 32c7478e c6eccc02 -0 3 1648 3 4 3 3 0 1 68fd1e64 7e979632 02cf9876 c18be181 4cf72387 7e0ccccf daddc43a 0b153874 a73ee510 3b08e48b 418037d7 8fe001f4 b0bfed6d 07d13a8f d7bba1ae 36103458 07c540c4 955ed1fa e587c466 3a171ecb 3b183c5c -1 0 3 8 292 10 12 41 290 1 5 8 05db9164 38d50e09 003f419b ff852091 25c83c98 7e0ccccf 5fbd9170 5b392875 a73ee510 474773a7 2bcfb78f 349450bc e6fc496d b28479f6 7501d6be 6615ffe6 e5ba7672 f855e3f0 21ddcdc9 b1252a9d 3dd38d65 32c7478e c2fe6ca4 001f3601 0015d4de -3 3 270 2 10 3 44 43 1 1 68fd1e64 38d50e09 a1f7e30b 8d8188a0 4cf72387 7e0ccccf d3e706d5 5b392875 a73ee510 3b08e48b 69628afd ba2755e8 17c1f5eb 1adce6ef 6efcae21 2d816edd d4bb7bd8 f855e3f0 21ddcdc9 5840adea ee6cb673 423fab69 9117a34a 001f3601 aa5f0a15 -0 190 10 4 3296 338 7 20 240 0 1 5 05db9164 4f25e98b 2d8a964c 7a9a661a 4cf72387 7e0ccccf 5e64ce5f 0b153874 a73ee510 2bf72324 8b94178b 063f8d65 025225f2 b28479f6 8ab5b746 74337352 e5ba7672 7ef5affa 55dd3565 b1252a9d bb866635 ad3062eb 32c7478e d57e7d03 9d93af03 b39f5eb3 -0 8 26 10596 1543 6 28 451 0 3 5a9ed9b0 08d6d899 9143c832 f56b7dd5 25c83c98 fbad5c96 df5c2d18 0b153874 a73ee510 35acd07e a7b606c4 ae1bb660 eae197fd 07d13a8f 41f10449 bad5ee18 e5ba7672 698d1c68 0429f84b c7dc6720 c0d61a5c -15 31 4 6 8 7 20 25 102 2 4 14 6 05db9164 38a947a1 9c1ab477 59d42e61 25c83c98 fe6b92e5 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 422b77b2 605bbc24 051219e6 85fd7306 b557b182 8efede7f da72d4a6 90827477 dbb486d7 6870bd60 -0 1 3 2 1857 67 84 21 263 0 6 1 2 5a9ed9b0 f0cf0024 5d3a12c5 ee36060f 25c83c98 fe6b92e5 15b2e600 5b392875 a73ee510 30e35190 d9085127 03afd96d ef7e2c01 1adce6ef 99b06d74 fab4dda8 27c07bd6 88b0e440 21ddcdc9 5840adea f6e47def ad3062eb 423fab69 6c1cdd05 ea9a246c 7e6f9939 -3 -1 1192 0 5 0 55 0 2 05db9164 f9875f50 705d3d65 e8b4223b 25c83c98 3bf701e7 96ce77ca 0b153874 a73ee510 3b08e48b e649e0c1 713b1986 3bcc4b70 07d13a8f 4ad96776 5124d0b8 e5ba7672 43a9e4b1 21ddcdc9 b1252a9d 67bbf7e5 93bad2c0 7827330b e8b83407 d7c5d96b - 0 2 4341 117 40 23 140 4 0 2 05db9164 09e68b86 a2d11edc bfa3b0d7 0942e0a7 fe6b92e5 d2d741ca 1f89b562 a73ee510 18139a78 ea4adb47 60866ff9 05781932 07d13a8f 36721ddc 552f9787 e5ba7672 5aed7436 d0289910 a458ea53 c28039b2 423fab69 3fdb382b e8b83407 49d68486 - -1 36368 0 1 0 0 0 05db9164 c5c1d6ae 0f534130 d2cb670a 25c83c98 c01485ad 0b153874 a73ee510 942e4b19 40bb12fa 4a924bfb 90aa6bf3 f7c1b33f 980adebb 6284522d e5ba7672 1d015bd3 21ddcdc9 5840adea 02827120 32c7478e fad805fa 7a402766 39e92f36 -0 456 1 1 4583 61 6 20 289 0 4 1 68fd1e64 b80912da f95bfbb3 caa98880 25c83c98 7c88f89e 0b153874 a73ee510 3b08e48b fe951f20 c74f92a8 bd45bc75 07d13a8f 569913cf 62589caf e5ba7672 7119e567 21ddcdc9 5840adea f7bec017 32c7478e ee448990 ce62e669 7b840f23 -2 24 52 26 220 53 15 38 152 2 9 27 8cf07265 8947f767 6acd954d c956005b 25c83c98 7e0ccccf 88822b23 a674580f a73ee510 3044b0a2 3d1fed94 10189237 9619e9ff b28479f6 a473257f 0eee19c9 e5ba7672 bd17c3da 1ac39a24 b1252a9d e086362f bcdee96c 48762109 e8b83407 fafe15d4 - 67 2 2 36522 0 1 2 0 2 05db9164 80e26c9b ac0cec6b cc1a0a91 25c83c98 d69b60fc 37e4aa92 a73ee510 3b08e48b 1a036e26 0b21166b 52f64c84 07d13a8f f3635baf 79db03aa 776ce399 f54016b9 21ddcdc9 a458ea53 59859c0a 32c7478e 8ecc176a e8b83407 cd0eb7f3 - 1 2 16476 1 0 3 05db9164 38a947a1 25c83c98 7e0ccccf 6855ef53 0b153874 a73ee510 408fa381 b7094596 1f9d2c38 07d13a8f b8437aeb 3486227d a00a189e ad3062eb 32c7478e -1 108 27 1 10 1 4 28 399 1 3 1 cbffbdad 09e68b86 a3ec7801 c4df7722 25c83c98 7e0ccccf e2b20631 0b153874 a73ee510 3b08e48b afd49e13 8f8b6c0b 7a48541f b28479f6 52baadf5 3db20e09 07c540c4 5aed7436 21ddcdc9 b1252a9d 3c4385df bcdee96c 20597d96 e8b83407 56b8ef1c - 0 2 2 3258 0 9 13 0 2 68fd1e64 8947f767 ffd64eb2 e28e218a 25c83c98 7e0ccccf 0adaf163 0b153874 a73ee510 a863ec71 1c315a80 15566c46 60d783cc 07d13a8f 2c14c412 063e59ef d4bb7bd8 bd17c3da d9aa05dc b1252a9d d861866c c7dc6720 40171135 010f6491 d5927919 - 39 30 4 0 16 5 0 4 05db9164 80e26c9b 6eacece1 08125ec3 25c83c98 13718bbd 84eefcc9 1f89b562 a73ee510 3b08e48b 742e9bd6 f88ba033 9325eab4 07d13a8f f3635baf c2b1bcd9 2005abd1 f54016b9 21ddcdc9 5840adea a7d02174 be7c41b4 d0cd5a75 e8b83407 d1d45fc5 -0 172 2 7 2786 73 6 13 163 0 2 32 68fd1e64 38a947a1 223b0e16 ca55061c 25c83c98 7e0ccccf 1540d583 0b153874 a73ee510 535db25e 8bd4b780 156f99ef c0bff1ae 1adce6ef 0e78291e 5fbf4a84 e5ba7672 1999bae9 deb9605d 32c7478e e448275f -0 9 3 11543 49 2 6 123 0 2 0 3 05db9164 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf fe4e75fa 0b153874 a73ee510 6aea41c7 8f4f8f83 e0d76380 8828a59c b28479f6 7f6af6b0 1203a270 e5ba7672 eea3ab97 73d06dde ad3062eb 93bad2c0 aee52b6f -10 1 34 16 82 34 50 42 241 1 4 0 33 87552397 a0e12995 622d2ce8 51c64c6d 4cf72387 7e0ccccf 0ed4baad 0b153874 a73ee510 9996c0a6 7373475d e9521d94 cfbfce5c 1adce6ef 78c64a1d ab8b968d e5ba7672 1616f155 21ddcdc9 5840adea ee4fa92e 423fab69 d61a7d0a 9b3e8820 b29c74dc -0 822 3 1406 7 1 4 4 0 1 4 05db9164 d4be07ad 33430e23 4962b7b8 4cf72387 fe6b92e5 7da46437 0b153874 a73ee510 03ed27e7 ab147b82 1606ff92 66110d1b f862f261 78fc1b0e 32d7d6c9 d4bb7bd8 cbae5931 3014a4b1 b1252a9d 7fcceb02 55dd3565 b2f178a3 001f3601 938732a0 - 1 176 6 446898 0 7 7 0 6 05db9164 e77e5e6e 21260095 a082774a 4cf72387 fe6b92e5 fa1400c7 985e3fcb 7cc72ec2 3b08e48b 26df63c3 c697eece 6e2907f1 b28479f6 571f6c76 73e288f8 776ce399 449d6705 21ddcdc9 b1252a9d 04e926e7 bcdee96c b9f94fdb e8b83407 63d1e016 -8 1 11 6 0 0 16 13 23 3 6 0 be589b51 58e67aaf 7baa1575 95f1d52c 25c83c98 804d2f11 37e4aa92 a73ee510 72593448 1aa6cf31 c8a0683f 3b03d76e b28479f6 62eca3c0 e3e7077f e5ba7672 c21c3e4c feb03dbe b1252a9d e3c98de3 32c7478e a052b1ed 9b3e8820 2bedd34e -7 14 27 12 50 12 17 32 164 1 6 12 68fd1e64 a5b69ae3 003f419b ff852091 25c83c98 7e0ccccf 8f572b5e 0b153874 a73ee510 57b09f76 434d6c13 349450bc 7301027a 07d13a8f 64748fbe 6615ffe6 e5ba7672 a1654f4f 21ddcdc9 b1252a9d 3dd38d65 55dd3565 c2fe6ca4 2bf691b1 0015d4de - 335 165 5 934 0 37 37 0 37 e8ef605b 38d50e09 960e920d fadec3b3 25c83c98 fbad5c96 841f6a9d 5b392875 a73ee510 3b08e48b d66168dc 0c6ffb37 54c30969 07d13a8f ee569ce2 ae4fdf0e 776ce399 582152eb 21ddcdc9 5840adea 197d02a4 32c7478e 73085483 001f3601 496b82a5 -4 1 8 18 548 35 4 29 25 1 1 18 05db9164 207b2d81 d1771a1e b916db81 43b19349 7e0ccccf 0c41b6a1 5b392875 a73ee510 0c70a731 4ba74619 d7e20421 879fa878 1adce6ef 2e2bd969 d34935b7 e5ba7672 fa0643ee 21ddcdc9 b1252a9d f30541f9 423fab69 c05c98ab 001f3601 64cfe599 -22 1 3 2 969 2 23 2 2 2 3 1 2 68fd1e64 1cfdf714 731a0c36 d6651f95 25c83c98 fbad5c96 7195046d 0b153874 a73ee510 686e97b9 4d8549da d7fc762c 51b97b8f b28479f6 d345b1a0 209fffcd 3486227d e88ffc9d 712d530c b1252a9d e993dd81 bcdee96c 1b06d1e6 cb079c2d 3a490508 - 0 2 1 3408 62 1 1 60 1 1 05db9164 6496eea0 d15f8d96 8811643a 384874ce fe6b92e5 912c6d03 6c41e35e a73ee510 8ad81af0 2010b191 7c288f60 d48de876 b28479f6 856048a0 172e0308 e5ba7672 fba30a05 21ddcdc9 b1252a9d c42c7f9e 32c7478e 0b95f1c5 ea9a246c d4d7b05b -0 1 2 2 7211 737 15 4 253 0 1 4 05db9164 f6f4fe4b bc10056d 3e3ef7b9 25c83c98 7e0ccccf ae82fae4 062b5529 a73ee510 1e8c6c4d 785a24cb ac49be42 0c7dd611 64c94865 0ebc8ddf b0a482b0 e5ba7672 0705fb3d 79bc617c 3a171ecb 85858d9b - 745 3 41862 0 3 24 0 3 05db9164 b961056b ed76cb78 56659b75 25c83c98 fbad5c96 f4ae27b8 062b5529 a73ee510 6b1e4999 e3205ff0 37d968c5 b688506c 1adce6ef 4903dd2e 2c149d88 e5ba7672 5162930e b5ed38e8 32c7478e 71292dbb -6 -1 105 0 29 18 131 1 4 05db9164 ca843edf d032c263 c18be181 25c83c98 fe6b92e5 e99c1c87 0b153874 a73ee510 000e2f4b d84f0165 dfbb09fb 72a5be57 1adce6ef 1613a442 84898b2a e5ba7672 1576ec18 0014c32a c9d4222a bcdee96c 3b183c5c -0 -1 5787 95 49 12 49 0 1 0 5bfa8ab5 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 6a2e21be 6a698541 a73ee510 ebdecfc1 17d8db0e dfbb09fb 7ca53f33 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c - 0 1 19 23 0 19 19 0 19 05db9164 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 841f6a9d 5b392875 a73ee510 3b08e48b d66168dc e0d76380 54c30969 07d13a8f 943169c2 1203a270 776ce399 281769c2 73d06dde 32c7478e aee52b6f - 398 5 0 180933 0 4 3 0 2 5bfa8ab5 dd8c896e 10fb6e81 13508380 25c83c98 7e0ccccf 2db71de9 5b392875 7cc72ec2 3b08e48b a0060bca 9759e0c4 22d23aac 07d13a8f 95275a51 aa69ccaf d4bb7bd8 3182300e 1d1eb838 b1252a9d 8dd7c020 ad3062eb 423fab69 45ab94c8 010f6491 c84c4aec - 0 1 345716 0 0 17 0 1f41fcee 8947f767 ceba2c1d 4d52debf 25c83c98 a788607f 0b153874 7cc72ec2 a21d9eab 8f2a5d32 bf1fe008 098e937e b28479f6 ac98936b 539bd39b 07c540c4 2c698a26 c68db44a a458ea53 78246406 32c7478e 9c1163ab 010f6491 07752963 - 4 9 15 613 433 114 15 252 5 0 15 05db9164 38a947a1 c15f15ea 9cb0a4b5 25c83c98 7e0ccccf 5793186f 0b153874 a73ee510 54e99be5 34c909fe f468a2b1 ef9686d6 b28479f6 3b12d492 e0a1c2c3 e5ba7672 cbd13810 d8cf2871 bcdee96c d4af2638 -1 -1 453 11 1 11 11 1 1 05db9164 4c2bc594 d032c263 c18be181 25c83c98 fe6b92e5 437e46f0 5b392875 a73ee510 272e7ece 5adcba72 dfbb09fb 5b6ee19d 8ceecbc8 7ac43a46 84898b2a d4bb7bd8 bc48b783 0014c32a c9d4222a 3a171ecb 3b183c5c -1 12 11 93 12 1 6 12 1 1 12 05db9164 0468d672 003f419b ff852091 b2241560 7e0ccccf 3b16ebba 0b153874 a73ee510 8edcd037 6803595d 349450bc 2a2faae1 b28479f6 60a23d23 6615ffe6 d4bb7bd8 124c6b00 21ddcdc9 5840adea 3dd38d65 ad3062eb 32c7478e c2fe6ca4 ea9a246c 22174682 -1 13 1 646 12 8 20 126 1 2 68fd1e64 421b43cd 65c5e045 29998ed1 25c83c98 7e0ccccf 9db8b612 0b153874 a73ee510 81d9b210 d08d4ff1 6aaba33c 62a53816 b28479f6 e1ac77f7 b041b04a e5ba7672 2804effd 723b4dfd c9d4222a 32c7478e b34f3128 -34 2 13 5 4 5 401 6 24 1 20 0 5 05db9164 89ddfee8 3cc315ea 814213f0 43b19349 7e0ccccf 3625ff87 5b392875 a73ee510 75d433aa 755e4a50 171f9194 5978055e 1adce6ef 34cce7d2 55f18fc6 e5ba7672 5bb2ec8e 601f1f3b a458ea53 e6f5cdf1 423fab69 8de94088 f0f449dd 649e7734 -3 80 1 2 11 2 18 7 128 1 9 2 5bfa8ab5 bc478804 55b17ea2 13508380 25c83c98 7e0ccccf df5c2d18 0b153874 a73ee510 8f48ce11 a7b606c4 e296e6f0 eae197fd 07d13a8f 0af7c64c be47c66e e5ba7672 65a2ac26 55dd3565 b1252a9d 0c51a4db 3a171ecb 45ab94c8 001f3601 c84c4aec - -1 1 5 52009 0 5 12 0 5 05db9164 a8b6b751 58d1c994 710e6227 25c83c98 7e0ccccf d9aa9d97 0b153874 7cc72ec2 0e9ead52 c4adf918 30a1bc7c 85dbe138 07d13a8f 4b1f9049 384e0086 1e88c74f d787f192 21ddcdc9 5840adea 5781dc4a 32c7478e 10ca96ef 001f3601 1d5d3a57 -0 5 1 1 3481 228 15 25 453 0 5 1 05db9164 85af3139 02cf9876 c18be181 0942e0a7 7e0ccccf e2de05d6 0b153874 a73ee510 1ce1e29d b26d847d 8fe001f4 38016f21 b28479f6 af8db00e 36103458 27c07bd6 d4328054 e587c466 423fab69 3b183c5c -2 2 3 0 135 0 18 42 526 2 10 0 09ca0b81 ae46a29d c315dad7 f922efad 25c83c98 3bf701e7 03dda6cf 0b153874 a73ee510 7fc0c2b2 3289d3e1 66a76a26 5a777c73 1adce6ef 8ff4b403 01adbab4 e5ba7672 26b3c7a7 21c9516a 423fab69 b34f3128 -8 11 22 0 2 8 16 61 3 3 0 05db9164 26a88120 b00d1501 d16679b9 4cf72387 7e0ccccf d70c05b1 0b153874 a73ee510 0e9ead52 c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 e5ba7672 b486119d 73d06dde 32c7478e aee52b6f -0 0 1 11 1494 47 2 24 59 0 1 11 5a9ed9b0 09e68b86 a3ac758b f835e63a 25c83c98 3665bfd8 1f89b562 a73ee510 cfa5dd13 d6ea7935 32d085be 74838342 1adce6ef dbc5e126 af4c30d0 e5ba7672 5aed7436 db0b20dc a458ea53 8760eba2 32c7478e 3fdb382b e8b83407 49d68486 -0 0 17 4 7441 210 1 4 208 0 1 4 8cf07265 09e68b86 2144afb5 29a1571c 25c83c98 13718bbd 50631f06 0b153874 a73ee510 e851ff7b f25fe7e9 7caba68f dd183b4c 07d13a8f 36721ddc 7cefafab 07c540c4 5aed7436 dbc91356 b1252a9d 56868062 32c7478e 89fa735f e8b83407 e0671437 - 598 0 7728 179 6 35 155 2 0 12 5bfa8ab5 9a82ab91 02cf9876 c18be181 4cf72387 7e0ccccf 8fb5446a 0b153874 a73ee510 f007059b 59cd5ae7 8fe001f4 8b216f7b 07d13a8f 33d2c881 36103458 e5ba7672 004fdf10 e587c466 423fab69 3b183c5c -1 210 3 3 53 4 1 3 4 1 1 4 5a9ed9b0 bf58e3e3 ff92fbfe 2091baca 4cf72387 fe6b92e5 297f698b a674580f a73ee510 4b4670a5 d91d8560 863480c7 13615098 cf1fc48d f81cb17b 13798f0b 07c540c4 427f76d8 d991438c 3a171ecb 36125f5d - 32 10 10 6204 27 96 14 267 3 10 5a9ed9b0 38c81d1a 42e67176 17e68b31 25c83c98 fe6b92e5 3d63f4e6 062b5529 a73ee510 eab8822a af6a4ffc 1d434483 2a1579a2 b28479f6 558590b3 268291ea e5ba7672 a5ac4b1e 21ddcdc9 b1252a9d 3cf09b37 bcdee96c ce76fe7a b9266ff0 6ddc02f9 -0 1 3 1 4281 125 1 2 17 0 1 1 05db9164 38a947a1 13b6fed0 c9fd810e 25c83c98 7e0ccccf 40c1e0b6 1f89b562 a73ee510 d681bff0 df5e2e45 dde73338 a2e2fc5b 1adce6ef 062f70fd 2c58c4c9 d4bb7bd8 07ae81f0 f3e08856 be7c41b4 7986b75d - 1 33 23 7994 48 2 23 48 2 23 05db9164 09e68b86 f978ad46 14b771ba 25c83c98 c8e48a82 0b153874 a73ee510 c6c8dd7c ae4c531b df59eb06 01c2bbc7 07d13a8f 36721ddc 038c2536 07c540c4 5aed7436 10a826e7 b1252a9d 91d457ba 32c7478e 3fdb382b e8b83407 49d68486 -1 1 3 4 7 3 5 4 55 1 4 3 05db9164 80e26c9b a9d15bf1 6bb5a9c4 25c83c98 fbad5c96 a4a8fd5a 0b153874 a73ee510 4c1928d3 d13e1160 f3dbd9b0 45820f61 1adce6ef 8ba8b39a 4f02a842 e5ba7672 f54016b9 21ddcdc9 b1252a9d 780bdc55 ad3062eb dbb486d7 2f647dfe f0f449dd dbc4b075 -0 -1 1 2 10055 433 2 4 100 0 1 2 5a9ed9b0 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 15ce37bc 0b153874 a73ee510 c244b9d2 ff78732c 8fe001f4 9b656adc 07d13a8f 422c8577 36103458 e5ba7672 52e44668 e587c466 c7dc6720 3b183c5c -0 7 84 1 95732 0 1 1 0 0 1 05db9164 f0cf0024 80220d4b a71558c7 25c83c98 fbad5c96 68fbb662 5b392875 7cc72ec2 66c281d9 922bbb91 a568d05d ad61640d 1adce6ef abc790fd 2ebfb27c e5ba7672 cc693e93 21ddcdc9 b1252a9d 78c73862 ad3062eb 32c7478e c82350bc ea9a246c d6877d8b -4 281 16 5 982 74 4 48 48 1 1 43 05db9164 207b2d81 a73aa1d5 e9c1d858 25c83c98 13718bbd 0c41b6a1 1f89b562 a73ee510 474773a7 4ba74619 5541de9b 879fa878 b28479f6 c6438ddb d5c34020 e5ba7672 fa0643ee 21ddcdc9 b1252a9d 0fdde7db 423fab69 53951edc 001f3601 72b1f187 -0 -1 11908 110 6 3 90 0 3 68fd1e64 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf 866e2a5e 0b153874 a73ee510 3b08e48b a15790a3 3563ab62 a0abbb5b 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 bcdee96c 3b183c5c e8b83407 adb5d234 - 0 30251 0 4 140 0 05db9164 efb7db0e 23aed453 101bc0d0 4cf72387 7e0ccccf 6a871e6a 51d76abe a73ee510 4ed88d64 60b755e3 5c55d0e0 e86c4329 b28479f6 5ab7247d ebbc78b6 1e88c74f a863ac26 c3c1485b ad3062eb 32c7478e 0c55705d -1 -1 499 6 1 6 6 1 1 5a9ed9b0 80e26c9b 5c7d8ff6 902872c9 25c83c98 7e0ccccf 33cca6fa 0b153874 a73ee510 fb999b75 f8ba74ae 79b87c55 2b9fb512 b28479f6 4c1df281 5627d7e0 d4bb7bd8 f54016b9 21ddcdc9 b1252a9d 4063500f c9d4222a 3a171ecb 54baf4d1 e8b83407 98f9ccac -0 1 3159 52 5 1 116 0 5 68fd1e64 80e26c9b 0bd90340 598074ea 25c83c98 136f2270 0b153874 a73ee510 51f5dca4 7bbe6c06 70585410 ea1f21b7 07d13a8f db5c66df 3c5390fd 27c07bd6 ce25450e 21ddcdc9 b1252a9d 0c60a269 c7dc6720 1793a828 e8b83407 8efc26f8 - 1 0 5106 278 0 27 211 0 22 05db9164 38d50e09 25c83c98 7e0ccccf ade953a9 0b153874 a73ee510 b118f931 29e4ad33 80467802 b28479f6 42b3012c e5ba7672 582152eb 21ddcdc9 5840adea ad3062eb 32c7478e 001f3601 99f4f64c -0 109 4 4 3221 31 22 11 31 0 1 4 05db9164 78ccd99e 13663944 e000671b 43b19349 7e0ccccf 34bc6d4e 0b153874 a73ee510 0ac771d9 547c304b d2373fa5 cbbfff55 07d13a8f 162f3329 0aee3485 e5ba7672 e7e991cb 9437f62f a458ea53 0eb602ab 423fab69 4008e1ec 46fbac64 f2d286aa - -1 32755 0 20 110 0 be589b51 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 861c1eb8 0b153874 a73ee510 3b08e48b c95ee0f3 dfbb09fb f175cfd0 8ceecbc8 7ac43a46 84898b2a 1e88c74f bc48b783 0014c32a c9d4222a 55dd3565 3b183c5c - -1 96 6 1 1 6 1 05db9164 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf 8b55891c 5b392875 a73ee510 0e9ead52 c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 1e88c74f b486119d 73d06dde ad3062eb 32c7478e aee52b6f - 0 12 10 5961 0 15 16 0 10 68fd1e64 0a519c5c 77f2f2e5 d16679b9 4cf72387 7e0ccccf 0452b338 0b153874 a73ee510 73218f57 2872a4bd 9f32b866 f8320f48 07d13a8f b812f9f2 31ca40b6 07c540c4 2efa89c6 dfcfc3fa 32c7478e aee52b6f -3 7 45 3 0 1 3 2 3 1 1 1 8cf07265 8ab240be f7a4aced d80567d3 25c83c98 fe6b92e5 675e81f6 0b153874 a73ee510 ee325ae9 6939835e b4469b58 dc1d72e4 1adce6ef 28883800 ecee7d52 07c540c4 ca533012 21ddcdc9 5840adea 07488ebd 32c7478e e6a47ecf 445bbe3b 4e7af834 - 0 6 5 10075 5 2 5 17 1 5 be589b51 3ed8016b 9a326f4c 5b930b19 25c83c98 7e0ccccf b3b280b5 0b153874 a73ee510 3b08e48b 3e38ef40 f356044d 5e419718 07d13a8f 418dff5b dd6311b4 e5ba7672 1a5c5376 21ddcdc9 5840adea 570cf94c 423fab69 9b786035 9d93af03 aa5f0a15 -1 12 12 14 156 14 1 14 14 1 1 14 be589b51 287130e0 2211fcbc 550455bf 25c83c98 7bcc368f 64523cfa a73ee510 f26b2389 60d2afd7 c17a43e3 155ff7d9 b28479f6 9efd8b77 5df77255 d4bb7bd8 891589e7 e3b5ceb7 5840adea e281374c 3a171ecb 5a9a5de4 ea9a246c b4a4615f -1 341 6 5 8 1 10 7 23 1 4 1 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 fe6b92e5 124131fa 0b153874 a73ee510 03ed27e7 9ba53fcc 3563ab62 42156eb4 1adce6ef a6bf53df b688c8cc 07c540c4 65c9624a 21ddcdc9 5840adea 2754aaf1 c9d4222a bcdee96c 3b183c5c e8b83407 adb5d234 - 4 1 4 74288 539 0 4 93 0 4 5a9ed9b0 c1384774 b00d1501 d16679b9 25c83c98 fbad5c96 f2487bdb 0b153874 7cc72ec2 78cab4c1 5874c9c9 e0d76380 740c210d b28479f6 916e9a2c 1203a270 27c07bd6 8e8b535e 21ddcdc9 5840adea 73d06dde bcdee96c aee52b6f ea9a246c 6ab28812 -0 9 3 9 5677 0 26 19 0 0 10 68fd1e64 08d6d899 7bf6b80a b373ad8c 4cf72387 7e0ccccf cb16805b 0b153874 a73ee510 3b08e48b b2493cb6 82bfc352 5e9be0c3 07d13a8f 41f10449 7292beb4 e5ba7672 698d1c68 c9af3868 c7dc6720 f96a556f -2 1 2 848 135 2 41 43 1 1 2 5a9ed9b0 5dac953d d032c263 c18be181 25c83c98 7e0ccccf 38eb9cf4 5b392875 a73ee510 49d1ad89 7f8ffe57 dfbb09fb 46f42a63 07d13a8f 610165b2 84898b2a 07c540c4 28ebd359 0014c32a 32c7478e 3b183c5c -0 0 5 2 9168 228 9 6 281 0 2 0 3 5bfa8ab5 e77e5e6e 3d958bb1 c380da9d 25c83c98 7e0ccccf def688f3 0b153874 a73ee510 3757d3fa 8b92652b 7b53f2c7 c5bc951e 07d13a8f 2eb18840 fbe0feea 27c07bd6 449d6705 d9aa05dc b1252a9d cb8706e8 c7dc6720 f0022f7f 001f3601 fc676eac - 10 4 7780 0 47 2 0 12 5a9ed9b0 d833535f b00d1501 d16679b9 4cf72387 7e0ccccf d5f2e4bd 0b153874 a73ee510 de668ebd 2dbe1596 e0d76380 54c30969 1adce6ef 2ee9f086 1203a270 d4bb7bd8 7b49e3d2 73d06dde 32c7478e aee52b6f -0 1 182 27 1442 74 3 49 114 0 2 27 05db9164 287130e0 03c0a589 736424ad 43d2463b fbad5c96 d12723dd 0b153874 a73ee510 b1442b2a 96a52b15 38b693b3 e40f343d 07d13a8f 10040656 f0af0769 07c540c4 891589e7 cc4c70c1 a458ea53 16d1ee1d 423fab69 74f7ceeb 9d93af03 d14e41ff - 638 2 8 7236 161 17 24 328 2 21 68fd1e64 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 0c41b6a1 0b153874 a73ee510 5d61d71c 4ba74619 e0d76380 879fa878 1adce6ef 2ee9f086 1203a270 e5ba7672 7b49e3d2 73d06dde 423fab69 aee52b6f -2 -1 1026 38 86 2 1249 1 9 2 68fd1e64 89ddfee8 336c1f51 cb9cc651 43b19349 7e0ccccf 407438c8 d3334ebc a73ee510 935a36f0 755e4a50 2b6d3a5b 5978055e 07d13a8f 4df3da6b 72f9bbda 8efede7f 5bb2ec8e 21ddcdc9 a458ea53 7d54a70c ad3062eb 32c7478e 3fdb382b f0f449dd 60759197 -0 2 1 2 5999 1486 5 29 341 0 2 0 26 05db9164 0a519c5c d032c263 c18be181 25c83c98 7e0ccccf 73afe74f 0b153874 a73ee510 fa7d0797 2d9eed4d dfbb09fb 949ea585 07d13a8f 6dc710ed 84898b2a 3486227d 3412118d 0014c32a 3a171ecb 3b183c5c -0 882 5791 12 58 5 129 0 10 5a9ed9b0 a05721f4 eef7fc7f 94182604 4cf72387 fbad5c96 b3b280b5 0b153874 a73ee510 3b08e48b 3e38ef40 10da7e70 5e419718 07d13a8f 9e17b0b2 d4a7e088 e5ba7672 4ac4fd60 9cdb4e88 ad3062eb 3a171ecb 821ddafd - 3 10 3 17975 656 2 3 134 1 3 b455c6d7 d833535f 77f2f2e5 d16679b9 4cf72387 7e0ccccf cc5b6b2e 0b153874 a73ee510 056909b5 22b0963b 9f32b866 0e475ba9 cfef1c29 d3dd56d3 31ca40b6 07c540c4 7b49e3d2 dfcfc3fa 32c7478e aee52b6f - 2 4 9 6595 0 13 89 0 9 87552397 c1384774 b00d1501 d16679b9 4cf72387 7e0ccccf 05254e29 0b153874 a73ee510 3b08e48b 26800aa4 e0d76380 434b8eb7 b28479f6 916e9a2c 1203a270 776ce399 8e8b535e 21ddcdc9 5840adea 73d06dde be7c41b4 aee52b6f 2bf691b1 52be0305 -0 1 6 1 5025 159 4 34 147 0 2 34 05db9164 0a519c5c 77f2f2e5 d16679b9 25c83c98 7e0ccccf 95b7a1e7 5b392875 a73ee510 5ba575e7 2d9eed4d 9f32b866 949ea585 07d13a8f b812f9f2 31ca40b6 e5ba7672 2efa89c6 dfcfc3fa ad3062eb 32c7478e aee52b6f - 15 5963 2 1 0 2 1 0 287e684f 38a947a1 339328cd 19ae4fbd 25c83c98 4642c514 0b153874 a73ee510 2e834f9a c17b047a b04ea5e4 2e7b87f1 b28479f6 4f5fbd7d d9c51706 e5ba7672 3c4f2d82 db741c43 32c7478e 1793a828 - 11 5 8 11702 62 2 31 67 2 9 be589b51 38a947a1 4a6600e8 20e22e93 25c83c98 7e0ccccf b54c1364 0b153874 a73ee510 3b08e48b 12cf60ea 33444338 cc241569 1adce6ef e83e8005 c3ebb7c0 07c540c4 20e28e86 372983b6 423fab69 f80ced1c -0 1 11721 63 8 2 44 0 1 05db9164 80e26c9b 21ce643a d6b6e0bf 25c83c98 3559f3ca 1f89b562 a73ee510 3b08e48b cdeb6d98 067c194b 2c6b3cbd f862f261 c1563774 6de617d3 e5ba7672 f54016b9 21ddcdc9 b1252a9d df66957b 32c7478e b34f3128 e8b83407 6102ce2c - 4 2 1 6484 0 2 36 0 1 68fd1e64 89ddfee8 8dad191a 1fd90dc9 43b19349 3bf701e7 2c7bd1f3 5b392875 a73ee510 9b2a83c5 e51bf5bd b6bbc082 84620f02 051219e6 d5223973 feb1572a 1e88c74f 5bb2ec8e c48b5b0f a458ea53 46f2bf44 32c7478e 25ede159 f0f449dd efa63dcd -0 425 18678 607 1 9 355 0 1 05db9164 c6000c21 d032c263 c18be181 25c83c98 7e0ccccf 162c77bf 0b153874 a73ee510 59f73f7f fdd3a1fa dfbb09fb 3f9a68d9 07d13a8f eb8600ba 84898b2a e5ba7672 7f98f2d9 0014c32a 3a171ecb 3b183c5c - 4 14 8 12929 76 16 8 214 3 8 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 8c1351a3 0b153874 a73ee510 3b08e48b a10c0fc9 3563ab62 30cbe961 1adce6ef a6bf53df b688c8cc 27c07bd6 65c9624a 21ddcdc9 5840adea 2754aaf1 423fab69 3b183c5c e8b83407 adb5d234 - 35 3 7591 0 17 86 0 4 68fd1e64 d833535f 77f2f2e5 d16679b9 25c83c98 7e0ccccf f00bddf8 0b153874 a73ee510 ab9e9acf 55795b33 9f32b866 39795005 b28479f6 a733d362 31ca40b6 1e88c74f 281769c2 dfcfc3fa 32c7478e aee52b6f -0 0 1 3 6094 508 2 21 531 0 2 3 05db9164 ad4527a2 384874ce 7e0ccccf 32e43e65 37e4aa92 a73ee510 3b08e48b 149238ed decd9980 b28479f6 91b8fb2b 07c540c4 cdfa8259 3a171ecb - -1 2 2 18597 226 7 4 118 4 2 9a89b36c 9819deea a975403a f922efad 25c83c98 fe6b92e5 48618fe6 0b153874 a73ee510 73fd6e1c bca79aeb b99ddbc8 5218d824 b28479f6 1150f5ed 87acb535 e5ba7672 7e32f7a4 a4b7004c 3a171ecb b34f3128 - 60 1 1 43362 5 4 9a89b36c 38a947a1 bd5f748e 89ec9e28 25c83c98 13718bbd 86a057cd 1f89b562 a73ee510 472cb472 0e438766 4aa7b5dc 15bba33a 07d13a8f cf25f9a5 2ed986be d4bb7bd8 5ffc34e4 dde60037 423fab69 36325a86 -5 1 1 588 4 7 12 21 1 2 68fd1e64 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 968a6688 0b153874 a73ee510 7259dc52 f25fe7e9 dfbb09fb dd183b4c 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a c9d4222a 55dd3565 3b183c5c -14 0 1 99 1 26 13 136 3 6 05db9164 287130e0 9b0dd171 09908cd1 25c83c98 7e0ccccf ce4f7f55 0b153874 a73ee510 2ec4dbbb 38f692a7 c77230c2 6e5da64f 1adce6ef 310d155b 9563fd78 e5ba7672 891589e7 c9414bdf a458ea53 d7f6e13b 423fab69 3fdb382b e8b83407 49d68486 -2 23 3 20 0 0 2 27 28 1 1 0 05db9164 d833535f ad4b77ff d16679b9 4cf72387 7e0ccccf d5141a06 1f89b562 a73ee510 607f2aa6 f2a5d7d2 a2f4e8b5 a3b89afc 1adce6ef 2ee9f086 89052618 e5ba7672 7b49e3d2 d4703ebd 32c7478e aee52b6f - -1 141189 0 0 17 0 68fd1e64 8f5b4275 b009d929 c7043c4b 25c83c98 fbad5c96 a972360e 0b153874 7cc72ec2 dcbc7c2b 9e511730 3563ab62 04e4a7e0 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 -0 80 7 5 2806 139 8 13 48 0 1 5 68fd1e64 2c16a946 30e3156d 17a25a2e 25c83c98 fbad5c96 e05d4b01 0b153874 a73ee510 8944bc68 30b2881b 5e8a18e1 b2e5689c b28479f6 3628a186 64f2ada9 e5ba7672 e4ca448c 9b055f18 32c7478e 9117a34a - 103 7 0 0 5 25 0 3 439a44a4 38a947a1 1ef76781 40ed41e5 4cf72387 7e0ccccf ce8217f8 062b5529 7cc72ec2 3b08e48b 9d12ce9b f9de2371 9dfda2b9 b28479f6 79266ab2 56bfb1f9 2005abd1 e96a7df2 d8e97ca0 be7c41b4 a415643d -8 3 3 10 10 4 285 34 227 2 29 0 4 05db9164 bc478804 02391f51 b9c629a9 30903e74 7e0ccccf 7961b9c8 8bedcc53 a73ee510 3044b0a2 555eeba5 2397259a f0f0e3cf 07d13a8f 0af7c64c d37efe8c 27c07bd6 65a2ac26 21ddcdc9 5840adea b6119319 c7dc6720 45ab94c8 001f3601 b13f4ade - 0 6 2 21343 0 6 111 0 5 75ac2fe6 298d0556 02cf9876 c18be181 25c83c98 7e0ccccf 15da22d0 0b153874 a73ee510 3b08e48b d7129972 8fe001f4 c0c5f46b b28479f6 48a5d003 36103458 776ce399 a8f42b59 e587c466 32c7478e 3b183c5c - 1759 2 0 2 7 0 05db9164 38a947a1 cc6e9f3f 6a14f9b9 25c83c98 fbad5c96 6787993a 0b153874 7cc72ec2 3b08e48b 5f9d9fd9 7414bb5b 406194ca 07d13a8f a1ac2b6d f8b34416 2005abd1 e5f8f18f f3ddd519 32c7478e b34f3128 - 1 6275 22 1 1 19 1 6ca3af46 38a947a1 7e18f790 4df3ba04 25c83c98 805340aa 5b392875 a73ee510 c16dd063 52757995 10fa9bab c74b4c8b 07d13a8f 617d13f9 603f1216 d4bb7bd8 3cbf782e b0143cea 32c7478e 1c4b599d - -1 0 0 37 0 da4eff0f 38a947a1 52b9dd03 7df824be 25c83c98 bca35340 5b392875 a73ee510 3b08e48b bbf9c1a0 c4bc85cd a3fda569 07d13a8f 1e6bef34 069a9c83 2005abd1 3593e33b ab42065e be7c41b4 673aed71 - 90 5 4 0 4 4 0 4 5a9ed9b0 a8b6b751 635569f5 3c7933b0 25c83c98 fe6b92e5 d9aa9d97 0b153874 7cc72ec2 3b08e48b 6e647667 440bb482 85dbe138 b28479f6 694e45e3 b52a19d5 2005abd1 d787f192 21ddcdc9 5840adea c4d4ad44 c9d4222a 32c7478e a2a9ea1d 001f3601 be62abfc - 2 2 1 4524 0 21 163 0 1 5a9ed9b0 59ab477c 10099f26 ad5e61d7 25c83c98 7e0ccccf 29cfd71f 0b153874 a73ee510 5e8bba11 a4ea009a fdc23e70 1e9339bc b28479f6 a1d90ff1 a832eddf e5ba7672 74fc71da 21ddcdc9 5840adea ab02f892 c7dc6720 eb0f0525 47907db5 984e0db0 - 8 2 3 3247 37 2 13 36 1 3 05db9164 13f25995 0b0f3952 35d9e6fe 25c83c98 7e0ccccf f00bddf8 0b153874 a73ee510 6a002f59 55795b33 ff8c6fd9 39795005 07d13a8f 7cad642c 5015d391 07c540c4 c7cf2414 3db17de9 32c7478e 4fe18e82 - 1997 23735 410 1 17 256 1 0 5a9ed9b0 2c2fd77c d032c263 c18be181 25c83c98 7e0ccccf 55a1abb6 0b153874 a73ee510 91be4185 0d24afc6 dfbb09fb 3c4e22f2 1adce6ef 2683ec1f 84898b2a e5ba7672 09186e1c 0014c32a 32c7478e 3b183c5c -2 110 442 12 29 41 400 1 10 0 68fd1e64 6deb1348 14405eb7 b4d9ec9d 4cf72387 fe6b92e5 6d0ca8d7 5b392875 a73ee510 a5bb26cf 6939835e 6e75eeac dc1d72e4 07d13a8f c44556e6 1b13e66c 8efede7f 0545cc03 44a7553b 32c7478e 7e7aa5ab -0 17 11 30 1681 249 6 13 389 0 2 177 05db9164 bc478804 142227f7 13508380 4cf72387 7e0ccccf 0f4edcf3 0b153874 a73ee510 b12b0205 c658b52c 885c6a02 51cc5d51 07d13a8f 0af7c64c c701706c e5ba7672 65a2ac26 55dd3565 b1252a9d df90026f 423fab69 45ab94c8 001f3601 c84c4aec -3 1024 5 2 1349 10 21 10 19 0 5 0 2 ae82ea21 1cfdf714 268a55ae 798fde8b 4cf72387 7e0ccccf 90a2c015 5b392875 a73ee510 837e840e 66bfc5e8 bb0bb139 3af886ff b28479f6 d345b1a0 95e5779d e5ba7672 e88ffc9d 92524a76 b1252a9d 6a32cbec 3a171ecb a616e636 cb079c2d 0b731c58 - 0 1 2 39468 0 1 39 0 2 05db9164 09e68b86 a9ab2b83 db3c2e6a 25c83c98 8c28e5b5 0b153874 7cc72ec2 cb3c0ba3 ae4c531b 75a05fa7 01c2bbc7 07d13a8f 36721ddc 62ab33f3 d4bb7bd8 5aed7436 fad7575e a458ea53 b4db0ff5 32c7478e 58b64c02 e8b83407 214fe43d -4 190 3 573 63 4 0 0 1 1 05db9164 09e68b86 2c9feed1 6427c1ad 25c83c98 13718bbd d2d741ca 0b153874 a73ee510 3b08e48b ea4adb47 9a169457 05781932 b28479f6 52baadf5 632cd109 776ce399 5aed7436 21ddcdc9 b1252a9d f559be4e 3a171ecb ebb69b3b b9266ff0 303d8b41 -9 1 5 69 0 9 0 0 1 1 05db9164 e77e5e6e 3959ab2f 57811e83 25c83c98 fe6b92e5 df5c2d18 1f89b562 a73ee510 3dc9bc0f a7b606c4 c9489953 eae197fd 1adce6ef 2c684cfd 7b5c284a e5ba7672 449d6705 28f6d2e0 a458ea53 a01de3f1 3a171ecb 6566aa76 001f3601 e2afe5bb - 49 5 1 35946 0 2 1 0 0 1 f473b8dc 784f09f8 bcc7844d 6f7a4893 25c83c98 7e0ccccf b2ee0739 0b153874 a73ee510 3b08e48b 8f7b26d4 475243a3 96fa211f b28479f6 cbd68e8d a9c89822 3486227d e37d2c6d c87be3ed 3a171ecb 798632a8 - 1 85 33 195 0 39 39 0 39 5a9ed9b0 09e68b86 69742732 5da76c1b 25c83c98 fe6b92e5 5e674fb8 985e3fcb a73ee510 3b08e48b 259fce08 ddc456e9 98cab291 b28479f6 52baadf5 eb7ae9de 776ce399 5aed7436 4632bcdc a458ea53 04f16e37 ad3062eb bcdee96c 3fdb382b e8b83407 49d68486 - -1 39 8 27069 0 12 1 0 0 8 24eda356 ef69887a 34ec742b 76b29f10 4cf72387 7e0ccccf 2598f805 5b392875 a73ee510 3b08e48b 6fc1ac4c 3aeb94be e1448645 b28479f6 902a109f 33f9cc0b 3486227d 4bcc9449 21ddcdc9 a458ea53 e2c4c93a 32c7478e 22635938 47907db5 77841998 - 1 5 45185 38 0 2 14 0 68fd1e64 a5b69ae3 003f419b ff852091 25c83c98 7e0ccccf e7cf8a4c 6c41e35e 7cc72ec2 7a029cb8 95eaf7a0 349450bc ccfd4002 b28479f6 9703aa2f 6615ffe6 27c07bd6 a1654f4f 21ddcdc9 5840adea 3dd38d65 32c7478e c2fe6ca4 2bf691b1 984e0db0 -0 10 2 1 14816 0 35 3 0 0 0 3 5bfa8ab5 f3f84ffb 02cf9876 c18be181 25c83c98 7e0ccccf 8a32fe54 0b153874 a73ee510 1d56e466 9cf09d42 8fe001f4 f66b043c b28479f6 8e1fb2ba 36103458 e5ba7672 0e128609 e587c466 32c7478e 3b183c5c -9 27 3 5 154 17 9 18 12 1 1 12 5a9ed9b0 bf7a2333 210c632d 3d513154 4cf72387 fe6b92e5 124131fa 0b153874 a73ee510 a1ee64a6 9ba53fcc 8747d4c8 42156eb4 b28479f6 a9e21d3e d58d490f e5ba7672 51369abb d4b6b7e8 ad3062eb bcdee96c 37821b83 - 0 27 10 20730 0 10 1 0 10 8cf07265 9819deea 56aad0af f922efad 25c83c98 7e0ccccf 10ff3d28 0b153874 a73ee510 8958d049 61593534 b99ddbc8 9259d03d b28479f6 1150f5ed 87acb535 1e88c74f 7e32f7a4 a4b7004c 3a171ecb b34f3128 - 1 41757 0 2 6 0 05db9164 d833535f 77f2f2e5 d16679b9 25c83c98 fe6b92e5 3271e812 51d76abe a73ee510 3b08e48b 6abd0870 9f32b866 536464dd 07d13a8f 943169c2 31ca40b6 776ce399 281769c2 dfcfc3fa 32c7478e aee52b6f -1 13 5 25 51 25 21 8 123 1 3 3 25 68fd1e64 26a88120 79b8616c 82a61820 f281d2a7 7e0ccccf 3f4ec687 0b153874 a73ee510 7f79890b c4adf918 80441957 85dbe138 b28479f6 2ebbf26a 7471db7b 3486227d b486119d e983f6ee 32c7478e cafb4e4d -1 -1 3 5 2 2 12 6 7 1 2 2 68fd1e64 09e68b86 2f66e0b2 25a7416a 25c83c98 d2d741ca 0b153874 a73ee510 18139a78 ea4adb47 7b1427f3 05781932 b28479f6 52baadf5 e912782c e5ba7672 5aed7436 21ddcdc9 a458ea53 46cfa59b bcdee96c b89c31e7 e8b83407 79d5e893 -11 0 33 0 469 24 36 14 30 1 6 6 8cf07265 89ddfee8 10e2c007 1a4bc483 25c83c98 7e0ccccf bd9a3e0c 0b153874 a73ee510 54dee4bc 980e6880 77b31da8 aef750b7 b28479f6 25753fb1 6505b20f e5ba7672 5bb2ec8e 21ddcdc9 b1252a9d 4ad6c490 32c7478e ff89b61c f0f449dd d21d0b82 - -1 14928 285 7 5 255 2 0 05db9164 68b3edbf 77f2f2e5 d16679b9 25c83c98 7e0ccccf cc8ce7f3 0b153874 a73ee510 3b08e48b b6ac69d0 9f32b866 e987b058 07d13a8f 98674466 31ca40b6 d4bb7bd8 752d8b8a dfcfc3fa 3a171ecb aee52b6f -0 122 5 1548 186 9 27 200 0 2 12 05db9164 62e9e9bf 25c83c98 fbad5c96 0fb83956 0b153874 a73ee510 1ce1e29d 4a1677bb ab2497dc 07d13a8f de829bed e5ba7672 d2651d6e 32c7478e -2 3 2 5 0 0 30 4 170 1 2 2 0 05db9164 a8b6b751 f128a6c4 0a00e7c1 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 0e9ead52 c4adf918 60737ce9 85dbe138 b28479f6 694e45e3 80fcf2ad 8efede7f d787f192 21ddcdc9 5840adea 3583b6c4 ad3062eb 32c7478e c9eca765 001f3601 aa5f0a15 - 3 45 3 430 0 7 19 0 17 05db9164 4f25e98b c9f6c4f3 958e4717 25c83c98 fbad5c96 b60eb70e 0b153874 a73ee510 3b08e48b 5ae9bd3a d7f6e837 c22de786 b28479f6 8ab5b746 45cdcd72 776ce399 7ef5affa e4b30de2 a458ea53 02f37057 3a171ecb 3fdb382b 001f3601 49d68486 -0 1 412 41 4412 661 3 47 74 0 2 47 8cf07265 287130e0 94bbee35 048ef662 25c83c98 7e0ccccf c52b5f8e 0b153874 a73ee510 fb5cdbe5 419d31d4 3ca2dc9b 08961fd0 07d13a8f 10040656 f78e19ed e5ba7672 891589e7 f08320ef a458ea53 21af0463 423fab69 12078255 9d93af03 386b59b0 - 4 4 4 4803 343 6 9 158 1 4 1a5f926e 681c0354 ed4422ed 912f2ee3 25c83c98 6f6d9be8 fab6d109 0b153874 a73ee510 8fda7cf8 b1a5e8a6 5e277142 b017b046 ad1cc976 65199962 49b515c0 e5ba7672 fc35e8fe ab1e3f64 c3dc6cef 502f2493 - 261 4 43257 1499 0 0 37 0 05db9164 89ddfee8 737319cb 13508380 25c83c98 7e0ccccf 761bbc1e 0b153874 a73ee510 08658f3b ad757a5a fac32310 93b18cb5 07d13a8f 59a58e86 0e0b57b6 07c540c4 ae46962e 55dd3565 a458ea53 a5bd6429 ad3062eb c7dc6720 45ab94c8 f0f449dd c84c4aec -5 2 27 15 82 20 91 26 787 1 10 11 20 05db9164 942f9a8d b24c2e87 0953500e 4cf72387 7e0ccccf 3f4ec687 0b153874 a73ee510 726f00fd c4adf918 0fee1825 85dbe138 1adce6ef ae97ecc3 270f0da2 8efede7f 1f868fdd 5fd56cf9 a458ea53 cf66a634 32c7478e 06faabc6 9d93af03 e040e165 - 180 75 7 355 0 11 11 0 11 05db9164 421b43cd c8797e8d 29998ed1 43b19349 fe6b92e5 7f2c5a6e c8ddd494 a73ee510 f6c6d9f8 d21494f8 6aaba33c f47f13e4 b28479f6 2d0bb053 b041b04a 1e88c74f 2804effd 723b4dfd c9d4222a 3a171ecb b34f3128 - 82 1 1 16270 12 4 1 1 1 1 68fd1e64 47feb5d7 61362337 be100ff9 25c83c98 fe6b92e5 ab5ea4e1 0b153874 a73ee510 7bf9cda4 fe5bb7d9 3e13e277 6023c1d4 ad1cc976 bde7754a dc469ff4 e5ba7672 44e3f649 07f9ac65 c3dc6cef 4087e42e -0 70 4 4 3252 29 195 4 84 0 15 1 4 5a9ed9b0 e9ac66c5 4b4ba262 b1cf0c2e 25c83c98 fbad5c96 1c86e0eb 5b392875 a73ee510 6889734f 755e4a50 e3f8573a 5978055e 32813e21 c5bbd8ea 67b9fbaf e5ba7672 e85b49c7 359c7651 ad3062eb 3a171ecb 2e661f08 - 1 7 50620 0 2 7 0 be589b51 89ddfee8 b8ce2116 a04cd675 25c83c98 7e0ccccf 46f86528 5b392875 7cc72ec2 3b08e48b 78da5469 6bfd4e76 8c13f0bc 051219e6 d5223973 486b90a5 3486227d 5bb2ec8e d785f37f a458ea53 3e6e802d 32c7478e c52baee5 f0f449dd 845a552e -0 0 18 10 2052 123 33 46 454 0 6 32 24eda356 5a88f1d5 3c78c1a9 aed0db93 43b19349 fe6b92e5 821b1762 0b153874 a73ee510 451bd4e4 94952d35 92c0542f 03cd10d0 07d13a8f 8bc48045 838dc422 e5ba7672 b81a5022 39dad9b9 c7dc6720 b7e530da - 3 39 22 73 0 26 26 0 26 41edac3d 4322636e 3f598f1f 89b9aa94 25c83c98 7e0ccccf a6d9bf82 64523cfa a73ee510 3b08e48b c6c91669 eee3943b b8a76289 b28479f6 55ef2202 7e28aee1 776ce399 9d3171e9 21ddcdc9 5840adea bafa34d7 32c7478e 1a691628 46fbac64 e276b90e - 2518 3 20530 2 8 1 20 3 87552397 dd8c896e 43acde6b 13508380 25c83c98 fbad5c96 3015bd7a 0b153874 a73ee510 bc5704d7 10465598 5b7bd991 f8362c26 07d13a8f 95275a51 2f74d6ec e5ba7672 3182300e 2b558521 b1252a9d d07381f0 423fab69 45ab94c8 010f6491 c84c4aec -4 29 4 21 1 3 14 30 888 1 5 0 3 8cf07265 0a519c5c 77f2f2e5 d16679b9 384874ce 7e0ccccf 68ccb054 0b153874 a73ee510 3b08e48b d2b7c44b 9f32b866 68637c0d 07d13a8f b812f9f2 31ca40b6 27c07bd6 2efa89c6 dfcfc3fa 423fab69 aee52b6f -2 281 0 249 2 2 2 2 1 1 2 68fd1e64 8084ee93 02cf9876 c18be181 4cf72387 7e0ccccf 85d02f29 0b153874 a73ee510 39feef12 0b5280b7 8fe001f4 131341f8 b28479f6 16d2748c 36103458 07c540c4 003d4f4f e587c466 ad3062eb 3a171ecb 3b183c5c - -1 1 6206 47 2 12 46 1 05db9164 38d50e09 213fa071 8203c75e 4cf72387 dc7659bd 0b153874 a73ee510 015ac893 e51ddf94 f3a55aa0 3516f6e6 f7c1b33f 11817ae8 3ab25b0b e5ba7672 582152eb 21ddcdc9 5840adea 7d27b4d7 32c7478e 8d7ddeb6 001f3601 aa5f0a15 -0 627 2030 31 2 19 36 0 1 05db9164 38a947a1 2b8f3e48 b1231540 25c83c98 fbad5c96 f1e0eec7 0b153874 a73ee510 3b08e48b 07a94afb f1ce2ed4 e9b9711d 07d13a8f b13b0ec3 9137a27f 07c540c4 23fb8a75 2e9b1af0 32c7478e dfb22eaf - -1 9138 0 12 44 0 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 968a6688 1f89b562 a73ee510 3e07d661 f25fe7e9 dfbb09fb dd183b4c 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c - 101 2 6 25783 51 2 4 74 2 6 f473b8dc 38a947a1 db2cf870 f4b55130 25c83c98 fbad5c96 89a13b6b 0b153874 7cc72ec2 7c3ba41b fa365cf9 a3f601b5 d2420e4c 1adce6ef afa1b545 007a9689 e5ba7672 04fdc63f 4caf9566 32c7478e 69e7316d -0 8 8 4 3365 30 1 14 30 0 1 14 05db9164 9e5ce894 5165fdcd 13508380 4cf72387 7e0ccccf 03dda6cf 062b5529 a73ee510 2bb4ad95 3289d3e1 0fa7c5f1 5a777c73 07d13a8f 8cf98699 2fbeb577 d4bb7bd8 a5bb7b8a 55dd3565 b1252a9d f49ea259 423fab69 45ab94c8 ea9a246c c84c4aec - 1 3 1 24798 0 1 7 0 1 68fd1e64 0a519c5c 77f2f2e5 d16679b9 25c83c98 fe6b92e5 78c469af 0b153874 a73ee510 f0d6319a 7905be9a 9f32b866 546a84fe 1adce6ef 123b2f29 31ca40b6 1e88c74f 2efa89c6 dfcfc3fa 32c7478e aee52b6f -0 -1 4415 14 2 2 13 0 1 68fd1e64 b961056b bd409571 0c619919 25c83c98 fbad5c96 f67c69d7 0b153874 a73ee510 3fc1e5dd 83be5b37 a88f3cda 870796cf 07d13a8f 6b94b61c b6712d2f 07c540c4 5162930e a480ce62 3a171ecb aa640e91 - 481 4 6 6189 112 4 24 37 1 0 11 05db9164 c8687797 8b3921f5 766e15d9 25c83c98 fe6b92e5 4cfb0ce2 985e3fcb a73ee510 3b08e48b 2c7ca449 80d9c989 8a2b6e98 b28479f6 dc96c4b0 3d0fc7c8 e5ba7672 a7e06874 21ddcdc9 b1252a9d a3027eb5 be7c41b4 24754ad4 010f6491 73190851 - 1 2 2 5719 2 19 2 83 3 3 2 05db9164 38a947a1 4385e7c4 0a5de462 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 726f00fd c4adf918 5565c8ef 85dbe138 1adce6ef ca8af485 8d04fe7d 8efede7f 6a2d2873 437c4394 ad3062eb 32c7478e 3e1dcafc - 781 10 2 3322 16 5 15 18 3 14 68fd1e64 bce95927 9bcf49a2 13508380 25c83c98 7e0ccccf 501069e9 5b392875 a73ee510 7b7e43a5 a10c0fc9 2d3980ab 30cbe961 07d13a8f fec218c0 109de9c8 e5ba7672 04d863d5 55dd3565 a458ea53 aeb31f80 423fab69 45ab94c8 e8b83407 c84c4aec -1 53 8 9 12 8 8 12 849 1 6 0 8 87552397 a0e12995 622d2ce8 51c64c6d 25c83c98 7e0ccccf aad8a7ac 1f89b562 a73ee510 3b08e48b b6ac69d0 e9521d94 e987b058 b28479f6 83763c20 ab8b968d 27c07bd6 1616f155 21ddcdc9 5840adea ee4fa92e 3a171ecb d61a7d0a 9b3e8820 b29c74dc - 11 36 36 624 0 36 36 0 36 05db9164 38a947a1 dad323a8 9fc7e1d4 25c83c98 fbad5c96 1760a525 25239412 a73ee510 8944bc68 2d6f299a 46cfc899 f0e0f335 07d13a8f cfdf835a 673a58a4 1e88c74f 505aea10 3ddb265f c9d4222a be7c41b4 26f8b534 - 0 12 11 7250 0 12 46 0 11 87552397 287130e0 609a0f90 7f623ae6 4cf72387 d2bfca2c 0b153874 a73ee510 3b08e48b f72b4bd1 4c62f4c6 01f32ac8 cfef1c29 655fad18 4f2b8add 776ce399 891589e7 e27c6abe a458ea53 99982bd7 be7c41b4 09ac8427 ea9a246c 5c1dde8a - 29 287 2 227 0 42 47 0 29 5bfa8ab5 4322636e c0788a71 82a61820 25c83c98 7e0ccccf a6d9bf82 5b392875 a73ee510 3b08e48b c6c91669 3f8aec46 b8a76289 1adce6ef 117b1660 5306324f 776ce399 9d3171e9 21ddcdc9 5840adea 0586873f 32c7478e cafb4e4d e8b83407 99f4f64c -0 41 6 8 4435 130 9 5 434 0 2 8 05db9164 287130e0 5e25fa67 dd47ba3b afcf7897 7e0ccccf 03dda6cf 0b153874 a73ee510 87237511 3289d3e1 8ebd48c3 5a777c73 07d13a8f 10040656 e05d680b e5ba7672 891589e7 9653bb65 a458ea53 a2b7caec c9d4222a 423fab69 1481ceb4 e8b83407 988b0775 -1 5 4 20 27 20 1 16 20 1 1 20 68fd1e64 c8687797 7625ecf4 c0e4f92c 25c83c98 7e0ccccf e6ff8cc3 0b153874 a73ee510 d8ba79d2 d96a7426 d6f0da8a 2839ca0f b28479f6 dc96c4b0 81d5743c d4bb7bd8 a7e06874 21ddcdc9 b1252a9d 3564bc1a 32c7478e b2df17ed 010f6491 c3a4a0b9 -3 0 41 3 17 0 3 5 165 1 1 0 68fd1e64 80e26c9b e346a5fd 85dd697c 25c83c98 8d1db846 0b153874 a73ee510 12bb8262 1bb4f435 539c5644 e8d4ea40 1adce6ef 0f942372 aafa191e 07c540c4 005c6740 21ddcdc9 5840adea 7e5b7cc4 32c7478e 1793a828 e8b83407 b9809574 -0 302 14 24 3473 379 1 16 501 0 1 1 47 05db9164 942f9a8d e19b9a76 29638fd1 25c83c98 7e0ccccf 3f4ec687 56563555 a73ee510 7f79890b c4adf918 acc50b68 85dbe138 07d13a8f a8e962af 7be38f72 3486227d 1f868fdd 4a237258 a458ea53 8ad8f229 32c7478e 3fdb382b 9d93af03 49d68486 - 3 12 8 15978 24 3 8 19 2 8 5a9ed9b0 4c2bc594 d032c263 c18be181 4cf72387 fbad5c96 17c5d911 0b153874 a73ee510 3b08e48b 25f4f871 dfbb09fb e67cdf97 8ceecbc8 7ac43a46 84898b2a 27c07bd6 bc48b783 0014c32a 55dd3565 3b183c5c -0 316 2 1660 51 96 46 588 0 14 0 2 a0896245 31520db9 6402d7e9 31aca898 30903e74 6d490d7a 0b153874 a73ee510 ceb10289 77212bd7 be02b134 7203f04e 07d13a8f c80d508c dc5532f6 e5ba7672 30d1165e 21ddcdc9 5840adea 8ef8d974 c7dc6720 738ee223 010f6491 12b59965 - -1 68fd1e64 38a947a1 25c83c98 7e0ccccf e7698644 1f89b562 7cc72ec2 3b08e48b f9d0f35e b55434a9 1adce6ef aa05a951 2005abd1 8f1ba373 be7c41b4 - -1 14 16 29328 22 5 19 22 1 16 439a44a4 95e2d337 f1796b1b ac34b22f 25c83c98 fe6b92e5 9831827b 1f89b562 a73ee510 31774b08 dd244141 54cce48e 468f0632 07d13a8f 4e505ea3 81605d4b e5ba7672 7b06fafe 556087d3 a458ea53 b10e2a9a be7c41b4 1e6711df 2bf691b1 3688db8b - 1 4 3 12062 10 2 3 10 1 3 68fd1e64 ef69887a 99eff0c0 068a0164 25c83c98 96386eea 0b153874 a73ee510 3b08e48b d433166d 8ac52cc3 dde839bf 07d13a8f b98be2c0 b923856d 07c540c4 4bcc9449 5233fe64 b1252a9d c288d540 32c7478e 6ecbd636 e8b83407 12af5eab -11 4 1 191 19 65 27 164 1 6 0 5 39af2607 68b3edbf b00d1501 d16679b9 43b19349 7e0ccccf 8ce2a590 1f89b562 a73ee510 2246c025 f89fe102 e0d76380 83e6ca2e b28479f6 12f48803 1203a270 e5ba7672 cf1cde40 73d06dde 3a171ecb aee52b6f - 11 1 3 0 3 2 0 3 05db9164 90081f33 fd22e418 36375a46 25c83c98 fe6b92e5 4a9d0dab 5b392875 7cc72ec2 3b08e48b a3fd26e0 fb991bf5 b0c30eeb b28479f6 13f8263b d1a4e968 2005abd1 c191a3ff 9fb07dd2 be7c41b4 359dd977 - 35 17 5 3562 0 5 160 0 5 17f69355 8f5b4275 8712351f a3f149af 25c83c98 7e0ccccf 3d63f4e6 0b153874 a73ee510 70b45759 af6a4ffc d70f6107 2a1579a2 b28479f6 56aba88b 5964d17c 3486227d 8687deed 21ddcdc9 5840adea 62aa1bbf 3a171ecb 3b183c5c e8b83407 2bf605fd -0 0 7 7 1314 96 3 37 40 0 1 7 05db9164 c76014f5 645d9349 031bba14 25c83c98 fbad5c96 36b21dc8 c8ddd494 a73ee510 451bd4e4 0f1fa8b8 49eb8265 e4e9ce3a 07d13a8f 0ce49139 631f0045 07c540c4 93b0d1d7 1fe472e2 423fab69 89bd83a1 -3 10 6 28 31 23 3 28 28 1 1 22 05db9164 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf fe06fd10 0b153874 a73ee510 35940a6d 67360210 e0d76380 4f8e2224 b28479f6 b760dcb7 1203a270 07c540c4 2efa89c6 73d06dde ad3062eb 3a171ecb aee52b6f -1 1 18 17 273 26 2 27 107 1 2 17 05db9164 73a46ff0 0af45e50 974c2ef9 f281d2a7 7e0ccccf 2e62d414 0b153874 a73ee510 4b415bb3 258875ea dac3308a dcc8f90a b28479f6 4f648a87 c0a083ef d4bb7bd8 da507f45 21ddcdc9 b1252a9d b1e5d789 ad3062eb 32c7478e d6285a00 ea9a246c 3090e38b - 4 3 252838 0 3 15 0 3 68fd1e64 0a519c5c ad4b77ff d16679b9 25c83c98 7e0ccccf ccbac4d9 0b153874 7cc72ec2 3b08e48b c012107d a2f4e8b5 c8dca410 07d13a8f b812f9f2 89052618 e5ba7672 2efa89c6 d4703ebd ad3062eb be7c41b4 aee52b6f -1 1 23 6 27 16 2 6 19 1 2 6 3b65d647 09e68b86 d0da2c4c 04e394b0 30903e74 7e0ccccf 6772d022 0b153874 a73ee510 5f5c3083 e0c3cae0 487fb88e e8df3343 07d13a8f 36721ddc de7c1aad 07c540c4 5aed7436 21ddcdc9 a458ea53 7fe5bdd7 3a171ecb 8055cecc e8b83407 b7047847 -2 304 5 6 14 5 2 4 6 1 1 2 4 05db9164 33728ce9 4b0ad917 4e353d3a 25c83c98 7e0ccccf 468a0854 5b392875 a73ee510 3b08e48b a60de4e5 ce2957ad 605bbc24 b28479f6 468d6259 5f704016 3486227d 07070d63 21ddcdc9 5840adea e5195a68 32c7478e 9be5c7a4 2bf691b1 2fede552 -0 0 5 7 7269 49 5 13 210 0 3 7 05db9164 09e68b86 ce2c4247 19664c72 25c83c98 7e0ccccf d2d741ca 45f7c2dd a73ee510 18139a78 ea4adb47 216865da 05781932 07d13a8f 36721ddc 7bd4068e e5ba7672 5aed7436 21ddcdc9 a458ea53 4f140691 423fab69 1793a828 e8b83407 14b7c6f2 - 0 20 2 20424 239 16 7 54 2 2 f473b8dc 09e68b86 aa8c1539 85dd697c 43b19349 fe6b92e5 11754474 5b392875 a73ee510 3b08e48b 88ac36d5 d8c29807 d8e8499b 1adce6ef dcd06253 c64d548f e5ba7672 63cdbb21 cf99e5de a458ea53 5f957280 93bad2c0 1793a828 e8b83407 b7d9c3bc -1 14 132 47 5 8 19 40 674 1 7 2 8 17f69355 38a947a1 792674a8 7eb9a0ca 25c83c98 7e0ccccf 968690bc 0b153874 a73ee510 a9dd3a26 1d351a39 eec0e5f1 90a568bc b28479f6 31ad1239 a26e6c28 3486227d b37c34ba 3315b01a bcdee96c 5bdb4bb6 -1 80 16 2 8 2 1 2 2 1 1 2 05db9164 4f25e98b 44341d93 39931ed1 25c83c98 7e0ccccf df5c2d18 0b153874 a73ee510 200e383b a7b606c4 fce86cf1 eae197fd 07d13a8f dfab705f 187e85fd e5ba7672 7ef5affa 4b0c4f0e 5840adea 24fe2827 c9d4222a 3a171ecb 3fdb382b e8b83407 49d68486 -0 0 1 9 1776 64 1 34 55 0 1 9 05db9164 38a947a1 02caffff e30210cd 25c83c98 fe6b92e5 95e83373 1f89b562 a73ee510 3f91c53b 730987d3 90dcd13e 232ffde2 b28479f6 731c0cbb 9bfc360b d4bb7bd8 065917ca 58c57eec 32c7478e c64ce893 - -1 79577 0 0 15 0 5a9ed9b0 9e5ce894 c20b19ac 13508380 25c83c98 7e0ccccf 2219ef4d 0b153874 7cc72ec2 3b08e48b 8888be74 08f2c67f 8e648136 07d13a8f 8cf98699 2480ff53 1e88c74f a5bb7b8a 55dd3565 b1252a9d 2b492b4e c7dc6720 45ab94c8 ea9a246c c84c4aec -2 43 0 1 1 110 7 80 1 11 1 0 05db9164 a796837e dffca8ba 0fa0d423 25c83c98 fbad5c96 f6d03c1b 0b153874 a73ee510 e6f40065 30b2a438 93bab460 aebdb575 cfef1c29 0d054fb9 6bb29970 8efede7f 70e5bba7 d9d9202f ad3062eb 32c7478e 8fc66e78 - 60 7 10 5248 111 4 31 126 2 11 05db9164 2c16a946 abbe4be4 9f43a1b5 2c6b8ded fe6b92e5 0465bdc8 5b392875 a73ee510 815cce4d 7252cfd2 cf840ca7 ccb9cc75 b28479f6 3628a186 87140baa e5ba7672 e4ca448c dc10c2ca bcdee96c 9117a34a -0 49 95 1 5862 245 1 1 36 0 1 1 1 68fd1e64 4f25e98b b1b155bd c86c24cf 384874ce fbad5c96 dd028a70 0b153874 a73ee510 fbbf2c95 447a6784 43e88bfb 9be66b48 b28479f6 df2f73e9 1fd8c99c 3486227d bc5a0ff7 2442feac b1252a9d ec0a2c72 3a171ecb 784b71b6 001f3601 15a24ad1 - 0 5 3 20069 46 34 2 39 2 3 5bfa8ab5 9b25e48b 6abc79b0 a99706ce 25c83c98 7e0ccccf 52c84489 062b5529 a73ee510 6962cd4e f697a983 c6e66003 e5643e9a f862f261 fa7b7e5c 26f6b4ed e5ba7672 7d8c03aa 8c604d64 5840adea 9a8a4df4 55dd3565 3fdb382b ea9a246c 49d68486 -0 98 3 5 1677 97 9 8 88 0 1 5 68fd1e64 40ed0c67 cd38cef8 48e6a76b 4cf72387 d2d741ca 0b153874 a73ee510 d56146bc ea4adb47 e191b14a 05781932 1adce6ef f8ebf901 bc297f2a e5ba7672 2585827d 21ddcdc9 5840adea 970d8e4e bcdee96c c638e429 e8b83407 d9abef80 - -1 5212 37 1 1 8 1 68fd1e64 38a947a1 4cf72387 6f6d9be8 e1250122 0b153874 a73ee510 b127c679 d39dfd5d 52542824 1adce6ef 7ef2424b d4bb7bd8 d46f0b44 32c7478e -28 13 2 29 1424 73 89 34 269 0 1 0 67 09ca0b81 669afbed c0ac520f cbb4c12e 25c83c98 fe6b92e5 376f3f5c 5b392875 a73ee510 944ea55d 1564a011 1d6bfcff 5e350f6e 07d13a8f 0a7b0d63 44f81422 8efede7f cfa866e4 21ddcdc9 5840adea cb3e5850 c7dc6720 42998020 9b3e8820 4d2b6d37 - 1 1 3 5911 0 3 13 0 3 05db9164 38d50e09 92eb3174 88e439d9 25c83c98 01348ea8 0b153874 a73ee510 3b08e48b dd0c7036 604f499b 57960a15 07d13a8f e2275836 8e662061 776ce399 fffe2a63 21ddcdc9 b1252a9d 872c22d6 be7c41b4 df487a73 001f3601 c27f155b - 1 8 4 891 0 40 451 0 4 05db9164 73a46ff0 9d657e3f 974c2ef9 25c83c98 7e0ccccf 19be9f03 5b392875 a73ee510 f665b5a4 209ac897 98c9bbe9 8159a24c 07d13a8f 376a23f2 a334aba9 1e88c74f da507f45 21ddcdc9 a458ea53 3e20bf0a 32c7478e d6285a00 ea9a246c 3090e38b - 278 0 36191 100 0 8 37 0 2 68fd1e64 68b3edbf b00d1501 d16679b9 25c83c98 7e0ccccf 36b796aa 0b153874 a73ee510 0446ed7f 7373475d e0d76380 cfbfce5c b28479f6 f511c49f 1203a270 d4bb7bd8 752d8b8a 73d06dde 3a171ecb aee52b6f -0 35 4586 23 1 0 5 0 1 68fd1e64 a244fe99 d7cbada1 d18b9e31 25c83c98 8672200c 51d76abe a73ee510 3b08e48b 65819b7a a6d4c6c5 2e21cea2 07d13a8f 2f5df569 f4fdda10 d4bb7bd8 35901cfb 4ea773ad 32c7478e 0333a312 -0 -1 8163 7 1 0 5 0 1 05db9164 d4e5ee28 65ee4a88 10d3d37b b0530c50 bb900cf3 0b153874 a73ee510 3b08e48b 30b240f3 fefb5a77 f3437620 64c94865 79aae8a5 01982277 d4bb7bd8 8f9b4e88 fe3f52a6 32c7478e 8a3cfad4 - 579 17 0 59312 71 0 6 52 0 6 05db9164 52e9ecfc 20009f96 73fec7fb a9411994 7e0ccccf 603ed8a5 1f89b562 7cc72ec2 34ccc264 755e4a50 57c08194 5978055e b28479f6 e2dd9a77 054b386f e5ba7672 1e42ba17 21ddcdc9 b1252a9d 0dd41d11 32c7478e f9f7eb22 f0f449dd a3a8e8f4 -0 1671 1 1 1506 12 42 6 63 0 4 3 68fd1e64 8f5b4275 b009d929 c7043c4b 4cf72387 fbad5c96 26a81064 0b153874 a73ee510 dcbc7c2b 9e511730 3563ab62 04e4a7e0 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c e8b83407 adb5d234 -1 71 3 6 554 21 29 26 463 1 10 8 6 05db9164 bce95927 ed9ad8f6 13508380 25c83c98 7e0ccccf 92ce5a7d 0b153874 a73ee510 099b68bd e0c3cae0 7c9b01e4 e8df3343 07d13a8f fec218c0 5cece565 8efede7f 04d863d5 f30f7842 b1252a9d fdd4b18a ad3062eb 423fab69 45ab94c8 e8b83407 c84c4aec -0 79 40 40 5922 195 2 40 257 0 1 40 05db9164 0b8e9caf 6d283c20 99f80b6a 25c83c98 fe6b92e5 bd1a1b0b 5b392875 a73ee510 95972775 93163196 95832e49 b952cc38 b28479f6 7d4df900 ae6d9c5c 07c540c4 ca6a63cf 1e9e1754 c7dc6720 08b0ce98 -0 660 9 92 118 18 3 889 0 6 14 05db9164 b46aceb6 25c83c98 7e0ccccf 13a0a6d2 5b392875 a73ee510 69dad686 e90cbbe1 a4c7bffd 07d13a8f 6afa614f e5ba7672 a4667218 423fab69 - 14 7 4 0 4 46 0 4 05db9164 38a947a1 d0d06a22 12146618 25c83c98 7e0ccccf d9aa9d97 37e4aa92 7cc72ec2 3b08e48b c4adf918 a8956280 85dbe138 07d13a8f 599e33bb ab275d0b 2005abd1 b6d33a04 4c6a2905 ad3062eb 32c7478e 56f742f2 - 63 17 9 5734 170 1 11 162 1 9 68fd1e64 52e9ecfc a9d15bf1 6bb5a9c4 25c83c98 7e0ccccf 1c86e0eb 0b153874 a73ee510 43daf709 755e4a50 f3dbd9b0 5978055e b28479f6 37663ab0 4f02a842 e5ba7672 f3644223 21ddcdc9 b1252a9d 780bdc55 32c7478e 2f647dfe f0f449dd c0db400f - 0 143 43 6092 189 7 39 732 2 0 43 87552397 8cc9c66e c243e46d a7ac9d32 4cf72387 3bf701e7 d5f62b87 0b153874 a73ee510 3d32f06a 434d6c13 89aceb7e 7301027a b28479f6 3bfd73d1 cb9b00aa 3486227d a6f5dd38 21ddcdc9 b1252a9d f9b198fd c7dc6720 74798b91 2bf691b1 e45edfc2 -3 92 4 12 223 36 3 43 43 1 1 13 05db9164 bc478804 27bfe086 13508380 4cf72387 7e0ccccf d2dbdfe6 0b153874 a73ee510 451bd4e4 7e40f08a f03257f7 1aa94af3 07d13a8f 0af7c64c f337bf83 07c540c4 65a2ac26 1d1eb838 b1252a9d b77a1d69 32c7478e 45ab94c8 001f3601 c84c4aec - -1 12784 19 10 0 16 1 05db9164 09e68b86 daaabdea 67d06c9d 25c83c98 7e0ccccf 622305e6 062b5529 a73ee510 e70742b0 319687c9 be246747 62036f49 07d13a8f 36721ddc ed6ae9d4 e5ba7672 5aed7436 0b8cd6e5 a458ea53 ef671ddc 32c7478e 370883e6 e8b83407 f34c21e9 - -1 5832 74 9 0 90 4 68fd1e64 4f25e98b fb6e2e48 dd1de3c5 25c83c98 537d79c4 0b153874 a73ee510 2aab9463 b49d37b3 893898ad 8abf8160 b28479f6 8ab5b746 aa29f470 e5ba7672 7ef5affa 7240ec09 b1252a9d 761188c3 32c7478e 18af6c09 e8b83407 829e4218 -2 9 19 5 789 63 3 32 57 1 2 0 6 5a9ed9b0 86d4fccc b009d929 c7043c4b 43b19349 5547e1f4 37e4aa92 a73ee510 352a9b1c 087dfcfd 3563ab62 5317f239 1adce6ef b27dd6c7 b688c8cc 07c540c4 be645006 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c 001f3601 aa86a675 -6 4 65 35 105 86 30 41 121 1 2 0 35 87552397 d9060812 e9119a9d 007a1200 25c83c98 fbad5c96 e72c88ea 1f89b562 a73ee510 67cebf16 f66047e5 58af58e4 13c89cc4 b28479f6 ac04e0e8 21dfff0e 3486227d ac2846a6 ffa195ea c9d4222a bcdee96c ef218b6e - 1 6 1 8624 0 1 12 0 1 8cf07265 287130e0 e733b008 307663cd 43b19349 6f6d9be8 1ae85837 0b153874 a73ee510 3b08e48b 07a94afb 742e1e69 e9b9711d 07d13a8f 10040656 651c31f4 1e88c74f 891589e7 2b558521 a458ea53 c01cd219 8ec974f4 32c7478e 3fdb382b ea9a246c 49d68486 -7 7 1 0 10 17 20 376 2 5 0 68fd1e64 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf d70c05b1 062b5529 a73ee510 0e9ead52 c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 e5ba7672 b486119d 73d06dde 32c7478e aee52b6f - 2048 3 5780 8 6 0 25 3 05db9164 1cfdf714 c211be04 1dca82d4 25c83c98 3bf701e7 90a2c015 0b153874 a73ee510 f8beff89 66bfc5e8 20562548 3af886ff 051219e6 af56328b a7b47774 e5ba7672 e88ffc9d 27ab133b a458ea53 2939347b 3a171ecb 57bcecb7 cb079c2d dfe8ab82 - 77 43820 4 05db9164 90081f33 87349f52 5fc102c9 25c83c98 7e0ccccf d5f2e4bd 0b153874 a73ee510 de668ebd 2dbe1596 aee77256 54c30969 b28479f6 90cfbb67 73acf01b 07c540c4 622ba7f1 d948464d 32c7478e aea3714c -0 0 3 1 5335 13 5 2 94 0 2 1 68fd1e64 1cfdf714 aa22a8bf b6807b9d 30903e74 7e0ccccf e807f153 5b392875 a73ee510 abd49365 1054ae5c 1aba56af d7ce3abd b28479f6 d345b1a0 f59a3a2d 8efede7f e88ffc9d 69578b6b a458ea53 144f566a ad3062eb bcdee96c 1b06d1e6 cb079c2d 3a490508 -6 250 22 17 43 19 11 22 25 1 2 1 16 68fd1e64 2aee75a8 a92f44e0 ee9e5561 384874ce fbad5c96 c96de117 0b153874 a73ee510 54b51cb9 ad757a5a 174d85b3 93b18cb5 32813e21 6aa1d799 cfb31f50 3486227d ad19d8d8 062d72a2 c7dc6720 5d311487 - 48 0 1794 0 19 73 0 19 68fd1e64 56273427 02cf9876 c18be181 25c83c98 fbad5c96 bc7e9cb5 062b5529 a73ee510 8a5f5939 ba1ff80a 8fe001f4 b95f83fa b28479f6 8b3a08e7 36103458 1e88c74f 3d033dfe e587c466 32c7478e 3b183c5c - 29 1 8 42291 0 9 1 0 8 05db9164 0a519c5c ad4b77ff d16679b9 25c83c98 7e0ccccf ce813de3 0b153874 a73ee510 3b08e48b 13754a9c a2f4e8b5 5d111255 07d13a8f 5a7d5bd8 89052618 07c540c4 eea3ab97 d4703ebd 3a171ecb aee52b6f - 1 6 11 12837 140 4 10 147 2 11 05db9164 09e68b86 aa8c1539 85dd697c 25c83c98 052e75f4 5b392875 a73ee510 7636f6c8 b7bb7a17 d8c29807 73e186f6 b28479f6 2d49999f c64d548f e5ba7672 63cdbb21 cf99e5de 5840adea 5f957280 32c7478e 1793a828 e8b83407 b7d9c3bc - 38 4 12 5914 179 16 12 219 4 0 12 05db9164 0a519c5c b00d1501 d16679b9 384874ce fbad5c96 9e8dab66 1f89b562 a73ee510 fa7d0797 46febd4d e0d76380 949ea585 07d13a8f b812f9f2 1203a270 3486227d 2efa89c6 73d06dde 32c7478e aee52b6f -2 36 8 14 5 10 14 10 17 1 3 10 68fd1e64 80e26c9b dd8f7f19 85dd697c 25c83c98 7e0ccccf 2466d748 0b153874 a73ee510 6302090f f5387bbc c0aa0c4b 565a196f b28479f6 a785131a 2d0bbe92 e5ba7672 005c6740 21ddcdc9 5840adea d59343cc c9d4222a 32c7478e 1793a828 e8b83407 b9809574 - 199 60 2 10529 258 1 2 70 1 0 2 05db9164 4322636e bf86badd ba4a4092 25c83c98 7e0ccccf e4b9f8b4 0b153874 a73ee510 3b08e48b 1ac15ae5 7f046dfb ba344b31 f862f261 b293c436 94d19c6a 27c07bd6 9d3171e9 21ddcdc9 5840adea e7abce4d 55dd3565 82d9f5ba ea9a246c 984e0db0 - 37 19 4 25953 194 1 4 31 1 4 05db9164 8947f767 49680f31 3539e146 a9411994 7e0ccccf afa309bd 0b153874 a73ee510 38ef7fcf 77212bd7 1a63cded 7203f04e 1adce6ef ba8b8b16 69150171 e5ba7672 bd17c3da 8c8dd18c a458ea53 90be2a88 ad3062eb 423fab69 28948dbc 010f6491 d5e46346 -1 2488 5 0 0 0 1 0 0 1 1 0 05db9164 68b3edbf b00d1501 d16679b9 4cf72387 7e0ccccf e98ad345 0b153874 a73ee510 739ff196 7373475d e0d76380 cfbfce5c b28479f6 f511c49f 1203a270 d4bb7bd8 752d8b8a 73d06dde 3a171ecb aee52b6f -0 -1 2871 89 1 38 131 0 1 05db9164 d833535f 77f2f2e5 d16679b9 25c83c98 fbad5c96 0c41b6a1 a25968f2 a73ee510 0c70a731 4ba74619 9f32b866 879fa878 1adce6ef 2ee9f086 31ca40b6 e5ba7672 7b49e3d2 dfcfc3fa 423fab69 aee52b6f -13 0 9 16 15 9 20 18 18 1 2 2 9 05db9164 38a947a1 4cf72387 7e0ccccf a4fea880 0b153874 a73ee510 3b08e48b 7579b566 8803181f 07d13a8f 10cee9c2 27c07bd6 8fddd739 32c7478e -7 -1 90 0 7 0 0 1 1 68fd1e64 80e26c9b 4dcb750b 85dd697c 4cf72387 fe6b92e5 f33e4fa1 5b392875 a73ee510 204e3278 7b5deffb e72de001 269889be 07d13a8f e8f4b767 2d0bbe92 e5ba7672 005c6740 21ddcdc9 5840adea 7b7d850c 32c7478e 1793a828 e8b83407 b9809574 -0 0 3 2 1270 13 1 0 12 0 1 2 5bfa8ab5 a5b69ae3 3f598f1f 89b9aa94 25c83c98 7e0ccccf 1a671428 0b153874 a73ee510 3b08e48b 15e10f9c eee3943b 0710c0b5 b28479f6 9703aa2f 7e28aee1 07c540c4 a1654f4f 21ddcdc9 5840adea bafa34d7 ad3062eb be7c41b4 1a691628 2bf691b1 984e0db0 - -1 2841 9 161 0 324 17 2 05db9164 942f9a8d 3f0ffc77 4de28b82 43b19349 fbad5c96 3f4ec687 0b153874 a73ee510 7f79890b c4adf918 f91fd7b0 85dbe138 07d13a8f a8e962af 6d9ef2d1 8efede7f 1f868fdd 9653bb65 b1252a9d 02a01d3d 32c7478e 1481ceb4 e8b83407 988b0775 - 23 5 23 10605 555 1 47 203 1 0 45 68fd1e64 08d6d899 77f2f2e5 d16679b9 4cf72387 7e0ccccf 849ec99d 5b392875 a73ee510 8594e004 0601c4d9 9f32b866 c4bf1f3a b28479f6 bffbd637 31ca40b6 e5ba7672 bbf70d82 dfcfc3fa c9d4222a 32c7478e aee52b6f - 2 2 46278 263 0 3 16 0 439a44a4 e9ac66c5 83471565 7790bfab 25c83c98 fbad5c96 66acf824 0b153874 7cc72ec2 0ed4b00d e192b186 66b1e155 7df3a6c1 07d13a8f fc45bcbf f5c0df64 8efede7f e85b49c7 6630794a 423fab69 2e661f08 -0 -1 0 1792 71 9 44 141 0 1 0 9 be589b51 c41a84c8 7153a1f2 759c4a2e 25c83c98 7e0ccccf b796c337 5b392875 a73ee510 d4f05169 192461f2 a648ca66 bd91360a 64c94865 a772a8e2 9f56eb2f e5ba7672 2b46823a 4b4716a2 3a171ecb 590b856f -0 477 7 1 1677 47 105 36 47 0 1 1 05db9164 89ddfee8 1a2bd6ef 13508380 65be028e fbad5c96 ad3508b1 1f89b562 a73ee510 965e1030 ad757a5a 5d83cdf3 93b18cb5 07d13a8f 59a58e86 a7007463 e5ba7672 ae46962e 55dd3565 b1252a9d e431c397 c9d4222a 423fab69 45ab94c8 f0f449dd c84c4aec - 28 5 1 3049 0 1 20 0 1 ae82ea21 4f25e98b be78b2ad c76e155e 25c83c98 7e0ccccf 3271e812 0b153874 a73ee510 3b08e48b 4a658863 13c4b17d 536464dd 1adce6ef 17d9b759 d910b620 776ce399 7ef5affa f44bef3c b1252a9d 4c69a910 c9d4222a 32c7478e 51c114aa 9d93af03 539454ce - 3516 1 0 1444 0 19 19 0 5 2ebc17d3 38a947a1 2e62305a 6a14f9b9 25c83c98 7e0ccccf 8ac87f94 0b153874 a73ee510 3b08e48b bbd0e773 85e115d9 79ae8b9a 07d13a8f a4861bb9 f8b34416 776ce399 e5f8f18f f3ddd519 c7dc6720 b34f3128 - 154 86 9 1530 0 14 62 0 16 05db9164 6496eea0 0f8b497f 8d0c7214 25c83c98 fbad5c96 a6d9bf82 0b153874 a73ee510 02b3a27d c6c91669 a0c32c81 b8a76289 07d13a8f 08cec6f8 6b98792b 1e88c74f fba30a05 21ddcdc9 5840adea ff3ce4c0 ad3062eb 32c7478e d691765a ea9a246c d1d45fc5 - -1 62231 193 0 1 20 0 68fd1e64 207b2d81 5c7d8ff6 902872c9 4cf72387 7e0ccccf 4f1f0075 0b153874 7cc72ec2 3ccfe0c0 8b94178b 79b87c55 025225f2 b28479f6 c6438ddb 5627d7e0 3486227d fa0643ee 21ddcdc9 b1252a9d 4063500f c9d4222a 32c7478e 54baf4d1 001f3601 cfe622de -3 1 1 1 100 5 12 4 86 1 3 1 68fd1e64 58e67aaf e40195ba 68a37e3b 43b19349 fbad5c96 45e063a0 1f89b562 a73ee510 6fb9e9f9 da89cb9b 8d1c0902 165642be 1adce6ef d002b6d9 1d1cbb1a e5ba7672 c21c3e4c 21ddcdc9 a458ea53 cc90e0f4 ad3062eb 32c7478e 81390831 9b3e8820 e6252147 - 90 21 2 39990 0 2 126 0 2 da4eff0f 85af3139 d032c263 c18be181 4cf72387 7e0ccccf a3dac0df 0b153874 a73ee510 4b71cd50 b4dc63bf dfbb09fb 470effde b28479f6 af8db00e 84898b2a d4bb7bd8 d4328054 0014c32a 3a171ecb 3b183c5c - 1744 2 1 42471 507 0 2 464 0 3 be589b51 e9ac66c5 1ecaba94 d7759dc8 25c83c98 fbad5c96 297835a6 0b153874 a73ee510 5121bfec 2bbe08a0 281bf885 31319767 32813e21 c5bbd8ea 3d4a7e67 e5ba7672 e85b49c7 11a67fcf c7dc6720 32dfe8b6 - 1 1 26549 695 1 0 30 1 5a9ed9b0 4f25e98b 104cfc45 4c4e0a00 25c83c98 fbad5c96 896245ab 0b153874 a73ee510 ae7064ed 3eec18a5 8e416845 4beb6588 64c94865 40e29d2a 298d4d12 d4bb7bd8 7ef5affa 21ddcdc9 a458ea53 b1b255d5 ad3062eb 3a171ecb 3fdb382b 001f3601 49d68486 - 2 3 80727 4 39af2607 a5b69ae3 3f598f1f 89b9aa94 25c83c98 7e0ccccf 34459022 0b153874 7cc72ec2 3b08e48b 7579b566 eee3943b 8803181f b28479f6 9703aa2f 7e28aee1 e5ba7672 a1654f4f 21ddcdc9 5840adea bafa34d7 32c7478e 1a691628 2bf691b1 984e0db0 - -1 0 6 13 0 05db9164 4c2bc594 d032c263 c18be181 4cf72387 fe6b92e5 0dab78da 5b392875 7cc72ec2 3b08e48b 7bc78da9 dfbb09fb 6b5d07b4 1adce6ef 2a63319f 84898b2a 2005abd1 fe94fad1 0014c32a c9d4222a be7c41b4 3b183c5c - 2 25259 0 5a9ed9b0 90081f33 36f5b86d 379a7ea8 25c83c98 fe6b92e5 dc7659bd 5b392875 a73ee510 03e48276 e51ddf94 aac4855c 3516f6e6 64c94865 94eccbef 2a98c117 07c540c4 1b884e69 459064e8 c9d4222a 32c7478e ae362bdd -0 3 8 7 28357 1667 5 7 238 0 1 7 05db9164 4f25e98b 83bbc45e 0ea465d7 4cf72387 7e0ccccf 4b3c7cfe 1f89b562 7cc72ec2 20f99c62 8b94178b 95452f26 025225f2 f862f261 4595ddb7 a0e02c7b e5ba7672 7ef5affa 473e5032 b1252a9d 37a98cc5 32c7478e 3fdb382b e8b83407 49d68486 -6 0 1 1 116 6 6 5 6 1 1 0 1 05db9164 39dfaa0d 85c8b713 84620818 4cf72387 7e0ccccf 12f32164 0b153874 a73ee510 55af5fd7 70dcd184 90e17dcf aca22cf9 b28479f6 2223bbe1 acf0fbd3 e5ba7672 df4fffb7 21ddcdc9 5840adea e523b64b 32c7478e 039de642 010f6491 9b48375d - 1 1 1707 0 5 0 0 3 05db9164 e5fb1af3 4b9dc8d3 0860a771 25c83c98 65d3801d 5b392875 a73ee510 5ba575e7 043725ae 9b04f8d7 7f0d7407 b28479f6 23287566 2ab0a2c4 e5ba7672 13145934 af8bed6d a458ea53 b9ea3719 32c7478e 76812821 e8b83407 6b6d7b52 - 1 72 122902 7 17f69355 4f25e98b 997c3695 77ce67bf 4cf72387 7e0ccccf 4b3c7cfe 0b153874 7cc72ec2 e0ecbad9 8b94178b 4ba79caa 025225f2 1adce6ef 17d9b759 3380bad9 07c540c4 7ef5affa 5fd56cf9 b1252a9d 281b64e7 32c7478e da008840 e8b83407 ccd1f8e0 -3 0 5 4 1193 46 84 46 468 0 8 9 6 05db9164 6887a43c 7eb22712 ef4fd7f1 25c83c98 fbad5c96 6d0ca8d7 1f89b562 a73ee510 c9b6cc0e 6939835e c71493ed dc1d72e4 cfef1c29 9221b8f3 92e4b1e3 8efede7f 08ed8a1c 21ddcdc9 b1252a9d 9adaf9fb 423fab69 b43c75ff 445bbe3b 7826e9ae -0 34 3123 118 1 0 27 0 1 05db9164 bce95927 724e09ff 13508380 25c83c98 7e0ccccf 503bc94e 0b153874 a73ee510 3ac1ecbd 3af49b08 0d04f5c8 bcb03896 07d13a8f fec218c0 8a69f5e8 d4bb7bd8 04d863d5 21ddcdc9 b1252a9d 808ab88a 32c7478e 45ab94c8 e8b83407 c84c4aec -0 8 14 15 1840 352 17 30 580 0 3 78 05db9164 38a947a1 16da655e e3679b95 25c83c98 fbad5c96 912c6d03 0b153874 a73ee510 f88af86a 2010b191 74906f90 d48de876 07d13a8f 750d1068 925e59a8 e5ba7672 a866c2a1 30ec1dcf 423fab69 5a3afc28 -2 3 31 7 656 55 36 41 376 1 8 7 68fd1e64 09e68b86 06a1e6df 8c2a09a1 25c83c98 7e0ccccf 14ad5567 0b153874 a73ee510 9dc8b302 9ddd72e9 9469de77 37e99bb7 b28479f6 52baadf5 fc200039 e5ba7672 5aed7436 21ddcdc9 5840adea 5bba9436 3a171ecb 3fdb382b b9266ff0 eb9a9610 -0 2 2 3 3038 33 14 30 47 0 3 3 8cf07265 89ddfee8 d51f366e 3db84b7e b2241560 7e0ccccf ad3508b1 0b153874 a73ee510 07704244 ad757a5a 338d1913 93b18cb5 07d13a8f 4df3da6b 5bffd324 e5ba7672 5bb2ec8e 9437f62f a458ea53 51e73ec7 ad3062eb 423fab69 3fdb382b f0f449dd 60759197 -1 30 1 4 197 8 3 8 239 1 3 4 46300ee3 80e26c9b e6319005 e713408b 25c83c98 fe6b92e5 f1ff45d6 0b153874 a73ee510 9a1250bd acc758fc 2c7c4bba 9bbdb8bd b28479f6 4c1df281 bdb3fdc8 07c540c4 f54016b9 21ddcdc9 5840adea e6a746f3 3a171ecb 70417824 e8b83407 2b6f382a - -1 135 1 6135 151 4 28 61 1 0 37 05db9164 89ddfee8 d34edaf0 0b42d4d8 4cf72387 fe6b92e5 3ee4221b 0b153874 a73ee510 3a714417 73787f82 202a5e98 72978071 07d13a8f 4df3da6b 486c4bec e5ba7672 5bb2ec8e dcb7a0e1 a458ea53 ca0be926 78e2e389 3a171ecb dc7a3422 f0f449dd 4077c3b8 - 0 24 9 14 0 11 9 0 9 05db9164 e5fb1af3 4d3cbd76 1a55b47b 43b19349 7e0ccccf d6348309 0b153874 a73ee510 3b08e48b 4ad5ddce ac6820fe 8846a878 1adce6ef 60403b20 bd7b8828 776ce399 13145934 21ddcdc9 5840adea 8316999f ad3062eb bcdee96c 0acbced6 e8b83407 8e63e212 - 1 2 13777 0 13 3 0 2 5a9ed9b0 537e899b 5037b88e 9dde01fd 25c83c98 fe6b92e5 12e47959 1f89b562 a73ee510 70dce685 cd40d7db 680d7261 6f833c7a 1adce6ef f38153dd c0673b44 e5ba7672 65979fb7 e049c839 32c7478e 6095f986 -0 0 136 4 4610 498 3 4 199 0 2 4 68fd1e64 c5fe64d9 0496d5c7 f09d399b 25c83c98 13718bbd 94bcdac8 1f89b562 a73ee510 a1ee64a6 138856a5 61104d70 79e86662 b28479f6 3841182d 6a4fdb11 07c540c4 8378ed06 011754e0 5840adea 17a49741 32c7478e 0b95f1c5 ea9a246c 8e8f0db3 -4 4 14 32 31 31 32 44 204 1 6 0 31 5a9ed9b0 09e68b86 aa8c1539 85dd697c 4cf72387 7e0ccccf 26a81064 5b392875 a73ee510 dcbc7c2b 9e511730 d8c29807 04e4a7e0 1adce6ef dcd06253 c64d548f 3486227d 63cdbb21 cf99e5de 5840adea 5f957280 3a171ecb 1793a828 e8b83407 b7d9c3bc -5 2737 4 3 113 8 133 20 326 4 50 4 05db9164 404660bb f1397040 09003f7b 4cf72387 13718bbd ad3508b1 5b392875 a73ee510 c33aed51 ad757a5a 0cdb9a18 93b18cb5 07d13a8f 633f1661 82708081 e5ba7672 4b17f8a2 21ddcdc9 5840adea 4c14738f 423fab69 a86c0565 f0f449dd 984e0db0 -3 1 0 41 0 4 16 20 1 2 2 0 46300ee3 207b2d81 ed0efebd 75cf45d4 25c83c98 fbad5c96 62722182 0b153874 a73ee510 3b08e48b 0eb7632e 2e364a21 96fa211f b28479f6 3c767806 4f4ee7ab 27c07bd6 395856b0 21ddcdc9 a458ea53 1622c145 c9d4222a 3a171ecb 2dcedde1 001f3601 4808a23d -0 369 5 1 7 11 14 7 9 0 3 1 68fd1e64 95e2d337 1132fc15 0d6bc7eb 25c83c98 fe6b92e5 c685df7b c8ddd494 a73ee510 5769e63a bc786d15 1e6fe827 e7c6a03d 1adce6ef 559cd202 b4214b0b e5ba7672 7b06fafe e142ee46 a458ea53 b25c7d28 ad3062eb 423fab69 6fe117ab 2bf691b1 2fdde26e -9 0 1 7 570 64 79 9 694 3 21 26 87552397 8947f767 e8e7a58b cb963125 25c83c98 7e0ccccf b8af7109 0b153874 a73ee510 4b37f268 64d5ed07 4b89a054 88fc4928 1adce6ef 429860e3 96dbaee0 e5ba7672 cc0b0790 712d530c 5840adea db3f54ef 423fab69 7e99499d 010f6491 bd422f81 -6 6 12 24 656 139 7 28 139 1 2 88 05db9164 f9875f50 58fc69a2 4ff80b77 25c83c98 7e0ccccf d5527617 0fb392dd a73ee510 3b08e48b 7466b255 76c314bd f4c487c1 07d13a8f 4ad96776 463bebf7 e5ba7672 43a9e4b1 65d4fce0 a458ea53 097528a9 3a171ecb 3fdb382b e8b83407 5a4e23d4 -0 61 1 1687 25 3 1 7 0 3 1 68fd1e64 6887a43c cc7c9fda 430d2287 384874ce d9cf12f5 0b153874 a73ee510 6f8cffbf 61fccc7e 82f18efc bd161a3c b28479f6 9cc57c4d a250ceed 07c540c4 2ae4f30d 21ddcdc9 b1252a9d 33f24e3f 32c7478e f0b715af 445bbe3b 046bcfdc -1 11 8 10 460 17 1 16 16 1 1 12 05db9164 b46aceb6 4cf72387 6f6d9be8 2cee194c 37e4aa92 a73ee510 92e70d0f e90cbbe1 a4c7bffd 07d13a8f 6afa614f 07c540c4 a4667218 32c7478e -0 1 53 10 1815 222 1 10 10 0 1 10 5a9ed9b0 80e26c9b a47a857e 85dd697c 25c83c98 fe6b92e5 bdf75bb3 0b153874 a73ee510 3b08e48b 27465d16 9235148c db4c1ae9 07d13a8f e8f4b767 2d0bbe92 d4bb7bd8 005c6740 21ddcdc9 b1252a9d 1d3d0bd2 3a171ecb 1793a828 e8b83407 9904c656 - 20 11 3 3503 3 10 3 3 1 3 68fd1e64 4f25e98b bf7144f7 190d9ed0 25c83c98 7e0ccccf dc7659bd 5b392875 a73ee510 015ac893 e51ddf94 5cf01a9e 3516f6e6 b28479f6 8ab5b746 f41e5ae1 e5ba7672 7ef5affa 65b79aa2 a458ea53 c7c5bda1 32c7478e 8d818423 001f3601 21a6b020 - 2 1 7220 39 1 4 206 1 1 68fd1e64 d833535f 77f2f2e5 d16679b9 4cf72387 fbad5c96 81b62616 0b153874 a73ee510 06ee81ba fa1b06e6 9f32b866 0eb69562 1adce6ef 2ee9f086 31ca40b6 e5ba7672 7b49e3d2 dfcfc3fa 423fab69 aee52b6f -1 30 186 28 1 2 7 30 182 1 3 2 05db9164 f0cf0024 5f41f290 ea208143 0942e0a7 fbad5c96 bf5902d7 5b392875 a73ee510 616ed314 ef65befe caff0c7d c95e66fd 07d13a8f b02eef70 38150343 e5ba7672 cc693e93 21ddcdc9 b1252a9d f05d3d6c 3a171ecb 6850f913 ea9a246c aa6ef27d -0 -1 1742 86 18 6 95 0 2 0 05db9164 8947f767 53491c10 3a9030fd 25c83c98 12f32164 0b153874 a73ee510 cba9fce5 70dcd184 e475fda4 aca22cf9 1adce6ef ba8b8b16 19847768 e5ba7672 bd17c3da 7a471cd5 a458ea53 5a858594 32c7478e 0a29262d 010f6491 e68ca2bb - -1 4 05db9164 38a947a1 d60096f4 21dbbb54 25c83c98 7e0ccccf bca35340 37e4aa92 a73ee510 3b08e48b bbf9c1a0 1731f3db a3fda569 1adce6ef 785edb93 4605797a 2005abd1 3ac30845 72f082ba be7c41b4 e944e245 -23 9 8 6 4 4 23 8 7 1 1 4 241546e0 89ddfee8 e38f9fdf dbff86cf 25c83c98 fbad5c96 1c86e0eb 5b392875 a73ee510 f7276337 755e4a50 b0fc60da 5978055e 1adce6ef 34cce7d2 da635fd1 e5ba7672 5bb2ec8e e27c6abe a458ea53 00dc22cf 32c7478e 3fdb382b f0f449dd 49d68486 -0 1 4 4 9309 466 4 10 102 0 1 5 05db9164 ab577bd1 fa5f72b8 bf0b19a8 384874ce 7e0ccccf 6d23e366 5b392875 a73ee510 3b08e48b 86ca7dc8 2047be9b 94ebed39 b28479f6 744c8e3e 8845d54d e5ba7672 5d50ce9d a58d9ce3 32c7478e 4fcc135f -8 16 21 29 0 3 25 28 1809 1 5 0 3 05db9164 71ca0a25 9a942f40 2f24e4ad 25c83c98 9fe79dba 0b153874 a73ee510 c811e460 e4034ebf becd083d ea089f5d 07d13a8f a8e0f0c6 5cb34c2c e5ba7672 9bf8ffef 21ddcdc9 5840adea d38ab5d8 423fab69 8cf4cb79 445bbe3b aa5f0a15 -0 0 20 5 1537 48 27 31 140 0 8 5 68fd1e64 e77e5e6e 639fed59 477c50a4 25c83c98 88922563 0b153874 a73ee510 81a54c93 bc8d1448 fa6f227a 24b0ac45 b28479f6 571f6c76 1776a956 e5ba7672 449d6705 23a4bfcf 5840adea e01bca16 bcdee96c 29ef0f20 e8b83407 bd07b66f - 0 22 2 1 266 2 4 154 1 2 68fd1e64 95e2d337 25d46809 b30488a9 25c83c98 7e0ccccf ee47b323 0b153874 a73ee510 3b08e48b 2996a71e 7023b7d2 44af41ef 07d13a8f 4e505ea3 a323782c e5ba7672 7b06fafe d7b50177 a458ea53 7e39d717 ad3062eb 32c7478e fe3df019 010f6491 2280f93c -1 -1 1363 10 6 12 24 0 2 17f69355 38a947a1 5b9d7aba eb01cfbf 25c83c98 fe6b92e5 a573e962 5b392875 a73ee510 3b08e48b f560f2af be41d8cf da8bc9a8 b28479f6 30714eab 9152dd75 e5ba7672 53ab307b 204b515a c9d4222a 32c7478e 250fb734 -0 101 5 3166 56 6 48 143 0 3 68fd1e64 287130e0 a0cbe4b8 3015efb4 25c83c98 7e0ccccf ae5cd80c 5b392875 a73ee510 ec9291d3 3c3acf35 db0bc00b 0a110528 07d13a8f 6aaa8dbc ddc547fd e5ba7672 53515e19 21ddcdc9 5840adea 181d5c62 c7dc6720 ec542427 ea9a246c 03219b28 -10 1 43 23 290 35 202 39 82 1 32 0 23 09ca0b81 89ddfee8 60a53564 d21f36ee 4cf72387 1c86e0eb 1f89b562 a73ee510 e7ba2569 755e4a50 9d0f163b 5978055e 1adce6ef 34cce7d2 ce48dda4 e5ba7672 5bb2ec8e 55dd3565 a458ea53 39a8221c 32c7478e 3fdb382b e8b83407 a61fddcb -0 18 3 2 1873 28 42 4 57 0 3 2 68fd1e64 1cfdf714 3cc84046 69dc1bd6 25c83c98 7e0ccccf 7195046d 0b153874 a73ee510 c77292d6 4d8549da 936a332f 51b97b8f b28479f6 d345b1a0 affa8bde e5ba7672 e88ffc9d 3e0910c1 5840adea 17a800e7 ad3062eb bcdee96c 3fdb382b cb079c2d 49d68486 - 3 3 19637 1126 3 34 138 1 0 9 05db9164 beea1002 d032c263 c18be181 25c83c98 7e0ccccf 346ade38 0b153874 a73ee510 2462946f 636405ac dfbb09fb 31b42deb 07d13a8f d9c759ef 84898b2a 07c540c4 8b61249a 0014c32a ad3062eb 3a171ecb 3b183c5c -1 0 153 0 27 4 27 2 73 1 3 0 05db9164 38a947a1 1ffb5deb 894a49c5 25c83c98 8379baa1 0b153874 a73ee510 3b08e48b 7579b566 246a941e 8803181f 07d13a8f c9e013aa fa6d4272 e5ba7672 b49c9b63 e66aa861 32c7478e 4921c033 -0 14 3 3 1775 126 3 29 57 0 2 0 3 05db9164 26a88120 dd17c91c 82a61820 25c83c98 7e0ccccf ada63c05 0b153874 a73ee510 3b08e48b b750092e 75529ad8 9233128b 07d13a8f 24ff9452 5eea53aa 27c07bd6 b486119d 0f78ab39 be7c41b4 cafb4e4d -0 488 10 0 3345 178 1 36 88 0 1 28 f473b8dc 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 4e784388 0b153874 a73ee510 bdfd8a02 7ca25fd2 8fe001f4 d3802338 07d13a8f f3996583 36103458 d4bb7bd8 003d4f4f e587c466 32c7478e 3b183c5c - 590 4 1 173712 0 1 1 0 1 05db9164 bce95927 3dc324de 13508380 25c83c98 fbad5c96 a972360e 0b153874 7cc72ec2 a8cd5504 9e511730 549907ac 04e4a7e0 07d13a8f fec218c0 61d0f5f3 07c540c4 04d863d5 1d1eb838 b1252a9d 0622eca3 3a171ecb 45ab94c8 e8b83407 c84c4aec - 2473 5 0 19294 630 1 3 22 1 3 68fd1e64 68b3edbf b00d1501 d16679b9 4cf72387 7e0ccccf 9b7f373a 0b153874 a73ee510 7f518378 ec2b795a e0d76380 a5975b1d b28479f6 12f48803 1203a270 d4bb7bd8 cf1cde40 73d06dde 3a171ecb aee52b6f -8 7635 2 0 2 0 57 6 450 1 9 0 0 05db9164 89ddfee8 5f18cc4a 34a446b0 43b19349 3bf701e7 407438c8 0b153874 a73ee510 c1fe64f2 755e4a50 d92cb28e 5978055e 051219e6 d5223973 e1f513d0 8efede7f 5bb2ec8e 5b885066 a458ea53 7fec8726 32c7478e 4fcf5ebe f0f449dd c04b38a7 -0 1 101 29 5970 626 4 0 2452 0 2 151 5a9ed9b0 80e26c9b c5027a53 85dd697c 25c83c98 7e0ccccf 632a4eba 0b153874 a73ee510 3b08e48b 1495215c 7c1324e0 2cb77ec6 1adce6ef 0f942372 da441c7e e5ba7672 005c6740 21ddcdc9 5840adea d117e1fa ad3062eb 3a171ecb 1793a828 e8b83407 b9809574 - 42 17 10 95 36 0 9 24 0 10 05db9164 1cfdf714 165f8585 729e42f2 25c83c98 7e0ccccf b388a7a9 0b153874 a73ee510 04610930 6859602e 28b58a39 3e052f22 0601d3b5 f107d273 8e1aeed3 d4bb7bd8 e88ffc9d d630e5f7 a458ea53 9c9c29aa 3a171ecb eb847956 cb079c2d 9aea3351 -0 212 1 1612 12 51 10 419 0 11 68fd1e64 78ccd99e 91d2947e da0f85e8 43b19349 fe6b92e5 e773d3a8 0b153874 a73ee510 d4e7f371 5de52301 58881397 510f15b3 b28479f6 1ca2ec64 06a8eb91 e5ba7672 e7e991cb e9917330 a458ea53 4fdb912f c9d4222a bcdee96c 2e617f4d 51c3d1d4 4fccd22c -14 0 5 11 0 0 14 9 11 1 1 0 05db9164 9f7e1d07 0253bbf5 d6420627 25c83c98 81bb0302 0b153874 a73ee510 8b7e21f6 b7094596 31adfaee 1f9d2c38 07d13a8f 3e25e5f5 1621c7f4 e5ba7672 6a58e423 21ddcdc9 5840adea bcc7a461 32c7478e 3214afd4 ea9a246c e7ecb821 -0 33 1 4622 107 1 21 65 0 1 291b7ba2 95e2d337 28f5ba64 abab7735 4cf72387 7e0ccccf 4ee3a75a 0b153874 a73ee510 e8c6d5af dd244141 77848441 468f0632 1adce6ef 559cd202 85fe1bbb e5ba7672 7b06fafe 93d183db a458ea53 12adbe9d be7c41b4 1ba05a32 2bf691b1 4e1c5558 - 0 5 3 24822 91 6 3 37 1 3 05db9164 7182b361 b2aa5dce 462749d8 4cf72387 968a6688 0b153874 a73ee510 7259dc52 f25fe7e9 05ce35fd dd183b4c 07d13a8f 47367e94 1a5c540a e5ba7672 ec9b0866 437ad2af 32c7478e 73338ee2 -1 0 89 5 59 19 1 3 6 1 1 6 be589b51 f0cf0024 6f67f7e5 41274cd7 43b19349 fbad5c96 60902511 5b392875 a73ee510 edccdfed 5420373c 623049e6 ab160bba b28479f6 e6c5b5cd c92f3b61 d4bb7bd8 b04e4670 21ddcdc9 5840adea 60f6221e ad3062eb 32c7478e 43f13e8b ea9a246c 731c3655 - -1 31649 78 5 2 24 0 05db9164 38a947a1 e058fc3c 2192038e 25c83c98 fbad5c96 8108ba36 0b153874 a73ee510 3b08e48b ad2bc6f4 f7cbe917 39ccb769 b28479f6 1545f0d7 0c6b4ad6 e5ba7672 4427594e f6e3bd9c 32c7478e 9e07eb4a - 0 2 7351 9 2 2 9 1 2 05db9164 47feb5d7 0be37a01 3fd88f79 4cf72387 fe6b92e5 d8ba4ee9 0b153874 a73ee510 8d1aa7f5 577ff050 46c1b3ab b079c917 ad1cc976 bde7754a fe85c759 07c540c4 44e3f649 316b963e ad3062eb c3dc6cef 4087e42e - 0 5 43260 66 0 0 30 0 5a9ed9b0 09e68b86 3821c3f1 03464c82 43b19349 7e0ccccf 9d8d7034 0b153874 a73ee510 741be51a 51ef0313 9b8a4477 e8f6ccfe b28479f6 52baadf5 7198e621 e5ba7672 5aed7436 21ddcdc9 a458ea53 c13470e1 32c7478e 3fdb382b e8b83407 49d68486 - 1155 11 9 3324 0 21 167 0 11 05db9164 404660bb fc1cad4b 40ed41e5 25c83c98 fbad5c96 1c11202a 0b153874 a73ee510 3b08e48b e819cafc 153ff04a e1e391fd b28479f6 abcca5c1 1bf03082 776ce399 4b17f8a2 21ddcdc9 5840adea 84ec2c79 be7c41b4 a415643d f0f449dd c4304c4b -0 1 3 41 1458 209 12 20 1848 0 3 0 158 24eda356 942f9a8d a6e6424c 9518850a 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 e113fc4b c4adf918 400d7f59 85dbe138 b28479f6 ac182643 64689695 3486227d 1f868fdd 21ddcdc9 a458ea53 b89ac1ff c9d4222a 32c7478e 6491b57e 9d93af03 c497b562 -0 5 13661 11 0 0 5a9ed9b0 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 1913ac2e 0b153874 a73ee510 f3394fc0 2dad6ba2 e0d76380 47cb697a b28479f6 a66dcf27 1203a270 e5ba7672 7b49e3d2 73d06dde 32c7478e aee52b6f - 1562 26110 235 7 5 76 1 68fd1e64 68b3edbf 77f2f2e5 d16679b9 25c83c98 7e0ccccf 36b796aa 0b153874 a73ee510 07ae0d24 7373475d 9f32b866 cfbfce5c b28479f6 f511c49f 31ca40b6 e5ba7672 752d8b8a dfcfc3fa 3a171ecb aee52b6f - -1 28 4252 0 0 0 0 05db9164 e5fb1af3 27e3f09a 5698a7ba 4cf72387 fbad5c96 316949b7 5b392875 a73ee510 3b08e48b 20824485 21d008a6 4eb5dabc b28479f6 23287566 24fff9c8 776ce399 13145934 3014a4b1 a458ea53 ac558617 32c7478e 4e639651 724b04da 26410e79 - 1 3 3 2960 70 1 3 4 1 3 5a9ed9b0 f6f4fe4b 46817db9 07f75358 25c83c98 fe6b92e5 c69fca72 0b153874 a73ee510 814f28f7 7b4b217a db2d9eb4 0f3d4e02 07d13a8f 9ca59173 55b116b3 d4bb7bd8 ca5a75f3 97601569 3a171ecb 6b0dcd15 -3 2 2 4 109 7 6 25 45 1 2 0 4 05db9164 38d50e09 c48cd8f8 24d89f30 25c83c98 7e0ccccf 159f4fed 0b153874 a73ee510 d39b9463 5b20ba06 f25a8037 17531d4f b28479f6 42b3012c 9ca51d92 e5ba7672 582152eb 21ddcdc9 5840adea 17b90ef0 3a171ecb da89b7d5 001f3601 6605962d -0 25 4 19 1546 94 80 41 944 0 14 2 19 68fd1e64 2aee75a8 ef31904d a5c28859 384874ce 7e0ccccf c96de117 0b153874 a73ee510 eb9ca757 ad757a5a cd1e5f6a 93b18cb5 07d13a8f 9c792869 d6478d4b 8efede7f ad19d8d8 cce87363 423fab69 d1bcc635 -0 1265 1202 49 6 9 332 0 2 0 5bfa8ab5 09e68b86 e93ea6a2 56962c48 25c83c98 fe6b92e5 3d63f4e6 0b153874 a73ee510 94e68c1d af6a4ffc 460ab07f 2a1579a2 07d13a8f 36721ddc e0e70d13 3486227d 5aed7436 569e7ea2 b1252a9d 5abe3942 3a171ecb 2a475b60 e8b83407 08f26f5a -2 51 30 18 144 31 6 28 91 1 3 0 20 05db9164 bccb7a1a 175f96a3 a8e60158 43b19349 fe6b92e5 72334595 1f89b562 a73ee510 010e2c68 c1ee56d0 3aa8d665 ebd756bd b28479f6 1302f720 43b3cb3a 3486227d d51975d7 21ddcdc9 5840adea 5576d06f 78e2e389 32c7478e b8733c2d 001f3601 af5a4ee1 - 37 21 15 8700 57 11 15 54 1 0 15 5bfa8ab5 207b2d81 d52980aa b66d15e3 4cf72387 65b155e9 0b153874 a73ee510 550727c0 bfd9d6e5 b519c595 e1b62f8f b28479f6 3c767806 7c8ae841 e5ba7672 395856b0 21ddcdc9 b1252a9d 605305ee be7c41b4 f090fae7 001f3601 9af95efe -0 42 11558 347 10 0 5 0 1 8cf07265 e5fb1af3 690b4d68 3fb81b62 4cf72387 7e0ccccf 50370160 0b153874 a73ee510 ba06e67a c11709dc 2b216bc4 499d401f b28479f6 23287566 e558c227 e5ba7672 13145934 21ddcdc9 5840adea ee3809e1 bcdee96c b2df17ed c243e98b 33757f80 - 35 114333 628 0 2 28 0 05db9164 40ed0c67 157e304a a532d342 4cf72387 7e0ccccf 984e3529 51d76abe 7cc72ec2 0965190b 3f3009e8 ebeaffd3 79f7177d 1adce6ef f8ebf901 35c488fc 27c07bd6 2585827d 21ddcdc9 5840adea cc0c3a9a 32c7478e 75aae369 e8b83407 d690bc35 - 0 3 6 16750 95 3 7 35 2 6 05db9164 537e899b 5037b88e 9dde01fd 25c83c98 6f6d9be8 d12723dd 0b153874 a73ee510 b58c39b4 96a52b15 680d7261 e40f343d 07d13a8f 14be02cc c0673b44 07c540c4 65979fb7 e049c839 32c7478e 6095f986 -0 11 40 0 1444 50 24 30 303 0 7 8 68fd1e64 65265295 74e1a23a 9a6888fb 25c83c98 5392de9d 0b153874 a73ee510 9c61a2ca f89fe102 fb8fab62 83e6ca2e b28479f6 9b96f3bb c6b1e1b2 e5ba7672 abad9dca 21ddcdc9 5840adea 99c09e97 32c7478e 335a6a1e 9b3e8820 877c5de5 -0 10 2 1792 91 18 30 85 0 1 2 68fd1e64 5dac953d d032c263 c18be181 25c83c98 fbad5c96 6fb62f1a a25968f2 a73ee510 efea433b e51ddf94 dfbb09fb 3516f6e6 b28479f6 20e0957a 84898b2a e5ba7672 befd6e69 0014c32a 32c7478e 3b183c5c -14 33 4 11 0 0 14 9 11 1 1 0 05db9164 9f7e1d07 0253bbf5 d6420627 25c83c98 81bb0302 5b392875 a73ee510 8b7e21f6 b7094596 31adfaee 1f9d2c38 b28479f6 08812651 1621c7f4 e5ba7672 6a58e423 21ddcdc9 5840adea bcc7a461 32c7478e 3214afd4 ea9a246c e7ecb821 - 2 3 1 0 1 1 0 1 05db9164 38a947a1 a4330150 36a05f39 25c83c98 fe6b92e5 3d4f5cb7 1f89b562 7cc72ec2 3b08e48b 53be0d4b 7441161f 8803181f f862f261 358b4361 9c5a6b67 2005abd1 c769179e 22601592 32c7478e d18dc394 -0 4 1 2 3208 361 1 4 273 0 1 2 05db9164 5368c225 e22844b2 fadd820a 25c83c98 7e0ccccf 1a671428 0b153874 a73ee510 3b08e48b 15e10f9c 2a4ef823 0710c0b5 07d13a8f 61f73647 eaead249 d4bb7bd8 b4c9444e 71e3dba8 be7c41b4 2cb8e5cc -0 -1 3172 4 4 0 31 0 2 87552397 4f25e98b 2211bb6f faf7e8f9 25c83c98 cec6003a 5b392875 a73ee510 a06e334d 494bd436 d2aba0c0 32569bcf b28479f6 df2f73e9 b97d41b5 e5ba7672 bc5a0ff7 49463d54 a458ea53 d8897bb1 32c7478e a90e7e17 001f3601 224b88ae -0 47 14 1 9034 129 2 10 41 0 1 0 9 ae82ea21 38a947a1 9f206deb 2c48a69e 4cf72387 fbad5c96 1c86e0eb df1b523d a73ee510 67eea4ef 755e4a50 daec60ea 5978055e b28479f6 911a5914 92d40999 e5ba7672 b53113bf 3bae2820 32c7478e 4f18f205 -0 1 12 2 3398 23 7 5 23 0 1 2 05db9164 09e68b86 8a93f721 964ff1a6 25c83c98 7e0ccccf 2b2fa660 0b153874 a73ee510 dec405d0 d74aabe6 1d08f923 0fb78b80 b28479f6 52baadf5 64f7d368 e5ba7672 5aed7436 6c6e7412 b1252a9d 2c5ff913 ad3062eb 3a171ecb 3fdb382b 010f6491 49d68486 -0 0 2 2 2013 59 1 47 112 0 1 2 fb174e6b 09e68b86 da409021 a7ac9d32 25c83c98 b87f4a4a 0b153874 a73ee510 e70742b0 319687c9 c65a8137 62036f49 07d13a8f 36721ddc cb9b00aa e5ba7672 5aed7436 9437f62f a458ea53 e99d3419 32c7478e 74798b91 e8b83407 2e5068eb - 14 8 2 4069 0 2 22 0 0 2 68fd1e64 09e68b86 31ea71de 9418e8b4 25c83c98 7e0ccccf 7cbb5012 0b153874 a73ee510 3b08e48b 2cc0193e 8c45193a 433f9499 07d13a8f 36721ddc 63ea56bd e5ba7672 5aed7436 a18beb4f b1252a9d 5365f7c0 ad3062eb 32c7478e 299fa073 e8b83407 63093459 -8 1 2 308 0 8 0 0 1 1 0 05db9164 8947f767 d99fd239 c7a53adb 43b19349 fbad5c96 2c62f209 5b392875 a73ee510 3b08e48b 883c1eb7 894ec540 4c80e3a6 1adce6ef 429860e3 55abf98a 07c540c4 cc0b0790 712d530c b1252a9d e8c27708 32c7478e 7e99499d 010f6491 bd422f81 -0 598 19 15 15183 170 2 14 30 0 1 19 8cf07265 59ab477c bf5a3a04 867d05be 25c83c98 7e0ccccf e817a3d4 0b153874 a73ee510 e7a687d9 810357b8 74742723 000e3a30 b28479f6 a1d90ff1 668f77c8 d4bb7bd8 74fc71da 21ddcdc9 5840adea adf70000 32c7478e a9a2ac1a 47907db5 409c7293 - 19 9 1 3676 0 1 1 0 1 5bfa8ab5 0468d672 74543e29 64d556fc 25c83c98 7e0ccccf 29861d62 0b153874 a73ee510 3b08e48b 137a7f9e afdec500 8b11c4b8 b28479f6 60a23d23 5f806dea d4bb7bd8 124c6b00 21ddcdc9 a458ea53 2d025897 93bad2c0 c48364d9 ea9a246c aa5f0a15 -6 0 1 12 432 43 6 44 44 1 1 24 05db9164 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 421b4ccc 1f89b562 a73ee510 7318b5eb 59da2976 e0d76380 a1354fa8 cfef1c29 7e1a4d8a 1203a270 e5ba7672 281769c2 73d06dde c9d4222a 3a171ecb aee52b6f - 180 61 5 50931 0 8 5 0 5 05db9164 421b43cd e13d0c53 29998ed1 25c83c98 fe6b92e5 c39e2255 0b153874 7cc72ec2 b4a8738e db8bb103 6aaba33c 36078a65 b28479f6 2d0bb053 b041b04a 07c540c4 2804effd 723b4dfd c9d4222a 3a171ecb b34f3128 - 16 1 8 16490 8 8 05db9164 e112a9de 4098d6ac 22504558 25c83c98 fbad5c96 bd4eedd9 0b153874 a73ee510 3b08e48b 4088eea3 90edbc51 2b590d5f b28479f6 d1056dd6 9e0369ab 776ce399 b8c1a741 405920eb be7c41b4 8f079aa5 - 2 5 2 21824 0 2 47 0 0 2 be589b51 09e68b86 9e813472 ff2d76fa 25c83c98 7e0ccccf 5c43c7a6 5b392875 a73ee510 3b08e48b f37efd0f 14fa4d46 80acfd1a 64c94865 91126f30 efdac2c3 e5ba7672 5aed7436 04de9d96 a458ea53 b9d8debe 3a171ecb 3fdb382b e8b83407 49d68486 -7 -1 0 46 0 31 0 0 1 3 0 0 05db9164 c1384774 3401eed0 27f8c5b6 30903e74 fbad5c96 fed3cb1d 5b392875 a73ee510 70962768 b7094596 a280d9f9 1f9d2c38 b28479f6 59e23b95 762c0304 3486227d 658dca4c 21ddcdc9 5840adea 0ac620ba 32c7478e 6a6f8ecc ea9a246c 5ad577ea - -1 3094 0 21 139 0 05db9164 39dfaa0d 25c83c98 7e0ccccf 55bcd2c7 0b153874 a73ee510 fdf60c9c 8f2a5d32 098e937e 1adce6ef 80afa366 1e88c74f df4fffb7 21ddcdc9 5840adea 32c7478e 010f6491 f3b2673e - 0 7 7 227975 0 7 1 0 7 3560b08b 6c713117 b00d1501 d16679b9 25c83c98 7e0ccccf fa1400c7 23eefdc2 7cc72ec2 3b08e48b 26df63c3 e0d76380 6e2907f1 1adce6ef b0009333 1203a270 776ce399 bf6b118a 21ddcdc9 5840adea 73d06dde 423fab69 aee52b6f 445bbe3b d5f5408a - 1 4 3106 50 3 36 50 1 0 be589b51 58e67aaf 9648e5a6 378e2a27 25c83c98 7e0ccccf 1e3cba9d 0b153874 a73ee510 9a550cf8 843d8639 dfdd0809 9cab1003 b28479f6 62eca3c0 ee081120 07c540c4 c21c3e4c 9437f62f b1252a9d 04b6a0cd ad3062eb 32c7478e 45daf7ab 9b3e8820 78d5024e - 79 2 18 3692 0 48 100 0 18 7e5c2ff4 d833535f b00d1501 d16679b9 25c83c98 fbad5c96 b7220c9e 6c41e35e a73ee510 3b08e48b f9c3d82c e0d76380 7b903000 b28479f6 a733d362 1203a270 776ce399 281769c2 73d06dde be7c41b4 aee52b6f -2 232 2 15 868 35 3 0 88 1 2 21 68fd1e64 09e68b86 850e7558 db01fc03 0942e0a7 7e0ccccf 88059e21 0b153874 a73ee510 3b08e48b d19fc8c6 6d065bbd e506d458 b28479f6 52baadf5 0adebad3 07c540c4 5aed7436 a3c895d5 b1252a9d 5c5200e4 32c7478e 1793a828 e8b83407 e564f221 -0 2 2 40764 0 28 9 0 0 9 5a9ed9b0 d833535f 77f2f2e5 d16679b9 25c83c98 7e0ccccf aa239c24 1f89b562 a73ee510 f0b534a6 81cae03e 9f32b866 d413ef3e b28479f6 a66dcf27 31ca40b6 d4bb7bd8 7b49e3d2 dfcfc3fa ad3062eb 32c7478e aee52b6f - 13 24 16 40675 0 13 97 0 16 68fd1e64 d57c0709 02cf9876 c18be181 25c83c98 7e0ccccf 07ba4505 0b153874 a73ee510 4cc45dda 94952d35 8fe001f4 03cd10d0 b28479f6 f7b14c36 36103458 1e88c74f 3ae505af e587c466 c7dc6720 3b183c5c - -1 11 7 3104 77 7 6 76 1 24 05db9164 09e68b86 27e57694 49514218 25c83c98 7e0ccccf d686b3b3 0b153874 a73ee510 3b08e48b 058b2e38 3ff597e7 35323fda 1adce6ef dbc5e126 cc7f8d79 e5ba7672 5aed7436 9653bb65 a458ea53 1669e843 be7c41b4 3fdb382b e8b83407 49d68486 - 15 2 3471 62 2 3 51 1 2 68fd1e64 0a519c5c b00d1501 d16679b9 25c83c98 fe6b92e5 ef73f0b4 0b153874 a73ee510 6a39d150 d73ebc38 e0d76380 4f2491fe b28479f6 7f6af6b0 1203a270 07c540c4 eea3ab97 73d06dde 3a171ecb aee52b6f -0 1 7 25 1753 226 6 36 581 0 2 0 25 68fd1e64 0a519c5c ad4b77ff d16679b9 25c83c98 7e0ccccf 64f227d9 0b153874 a73ee510 b8d25928 94b3084b a2f4e8b5 bb567ffd 07d13a8f 5a7d5bd8 89052618 e5ba7672 eea3ab97 d4703ebd 3a171ecb aee52b6f -0 0 1 15042 152 17 0 113 0 1 5a9ed9b0 09e68b86 0d50b204 7d8c4b2d 4cf72387 6f6d9be8 b87f4a4a 0b153874 a73ee510 e70742b0 319687c9 93bd20b4 62036f49 07d13a8f 36721ddc 07962baf e5ba7672 5aed7436 21ddcdc9 a458ea53 08d09093 32c7478e 3fdb382b b9266ff0 1d3f56f8 - 3 3 1 52296 120 0 2 16 0 1 7e5c2ff4 287130e0 e4531c8c ef860cb0 25c83c98 fe6b92e5 02dabf8f 0b153874 7cc72ec2 d5f5a89f d9085127 1df311e1 ef7e2c01 1adce6ef 310d155b a1d19f53 e5ba7672 891589e7 bb2479f7 a458ea53 103289f2 3a171ecb 9ccf5367 3a6f6b59 fed9a14d -2 2 4 6 2 6 53 14 91 1 8 6 05db9164 04e09220 b1ecc6c4 5dff9b29 25c83c98 fe6b92e5 8379baa1 0b153874 a73ee510 3b08e48b 7579b566 2436ff75 8803181f 07d13a8f cae64906 f4ead43c e5ba7672 e161d23a 4f1aa25f 423fab69 ded4aac9 -0 -1 1370 61 139 0 172 0 3 15 5bfa8ab5 942f9a8d bba9a339 a6286a8c 4cf72387 fbad5c96 3f4ec687 0b153874 a73ee510 726f00fd c4adf918 c05ae48e 85dbe138 b28479f6 ac182643 33bcdc9a 8efede7f 1f868fdd 21ddcdc9 b1252a9d db086a72 32c7478e 3fdb382b e8b83407 49d68486 - 3 6 3 14201 27 2 3 17 2 3 05db9164 a5b69ae3 003f419b ff852091 25c83c98 fbad5c96 9df35e84 5b392875 a73ee510 c2c7f8ef 434d6c13 349450bc 7301027a 07d13a8f 64748fbe 6615ffe6 07c540c4 a1654f4f 21ddcdc9 5840adea 3dd38d65 c7dc6720 c2fe6ca4 2bf691b1 984e0db0 - 1 8 2 137272 325 0 2 6 0 2 68fd1e64 287130e0 637ac6fe 7b329a55 25c83c98 6f6d9be8 39ce80f6 f504a6f4 7cc72ec2 c319fc8a bfd3f296 0b9b5782 a5cf8381 b28479f6 9efd8b77 e59eaeab e5ba7672 891589e7 21ddcdc9 b1252a9d ea4ed7ab 8ec974f4 3a171ecb 3fdb382b 9d93af03 49d68486 -0 12 4 4 6050 442 45 4 267 0 5 4 7e5c2ff4 0eb070fa 2a13de69 36879fb7 25c83c98 7e0ccccf c96de117 0b153874 a73ee510 13028800 ad757a5a f35a8d60 93b18cb5 07d13a8f 733cd612 202abb5f 27c07bd6 7ba9340b a064fe19 c7dc6720 8db040fd - 1 1053218 3 05db9164 5dac953d d032c263 c18be181 25c83c98 fbad5c96 4b3c7cfe 0b153874 7cc72ec2 72ea02d9 4618e030 dfbb09fb 025225f2 1adce6ef b4a435f2 84898b2a e5ba7672 63e4be9d 0014c32a 32c7478e 3b183c5c -0 -1 1487 41 2 2 8 0 1 f473b8dc 71ca0a25 3e065922 7967fcf5 25c83c98 fbad5c96 e8cdfd91 5b392875 a73ee510 42635bfd aadb87b9 553e02c3 e9332a03 07d13a8f a8e0f0c6 91a6eec5 07c540c4 9bf8ffef 21ddcdc9 5840adea a97b62ca 3a171ecb 727a7cc7 001f3601 6935065e - -1 1 4 6043 4430 0 5 265 0 0 5 05db9164 0a519c5c 77f2f2e5 d16679b9 4cf72387 e9396c09 5b392875 a73ee510 3b08e48b a0060bca 9f32b866 22d23aac b28479f6 b760dcb7 31ca40b6 e5ba7672 2efa89c6 dfcfc3fa 32c7478e aee52b6f -13 -1 77 0 30 0 13 0 0 1 1 0 be589b51 80e26c9b aa8c1539 85dd697c 25c83c98 124131fa 0b153874 a73ee510 28c6ef79 9ba53fcc d8c29807 42156eb4 1adce6ef 0f942372 c64d548f e5ba7672 005c6740 21ddcdc9 5840adea 5f957280 bcdee96c 1793a828 e8b83407 9904c656 - 62 11 2 3199 3 6 3 3 1 0 2 ae82ea21 083aa75b 6d0ceb43 8d164e53 25c83c98 7b26d3fe 062b5529 a73ee510 fbbf2c95 ae19a197 9fa694f3 7f0d7407 b28479f6 4e47e13c a54711b4 e5ba7672 06747363 21ddcdc9 b1252a9d 78766d37 32c7478e 9e0bee34 445bbe3b c84e730b - 0 4 1 14385 85 3 0 71 1 1 05db9164 09e68b86 6a8a1217 14bfebf4 30903e74 7e0ccccf 791e872c 0b153874 a73ee510 d7ae8050 69afd526 5b355b50 84def884 1adce6ef dbc5e126 0ded9094 07c540c4 5aed7436 dfdebe48 a458ea53 831d5286 c9d4222a bcdee96c 9e9a60e4 001f3601 8ed8cc23 -3 -1 396 2 59 4 12 1 5 68fd1e64 95e2d337 25ecce7e 1d9255ba 25c83c98 7e0ccccf 8f572b5e 0b153874 a73ee510 897188be 434d6c13 feb67a72 7301027a b28479f6 17a3bcd8 e7dae089 e5ba7672 7b06fafe e3b5ceb7 b1252a9d e7a82875 bcdee96c f87cca3f e8b83407 08b44c88 -1 6 11 6 12 3 21 8 224 1 5 3 05db9164 4f25e98b 68b7d1bf 67d4b901 25c83c98 7e0ccccf 7307f77d 5b392875 a73ee510 6cd46a93 06d58ceb 659ed597 5b2b6068 b28479f6 df2f73e9 2d1e4c26 e5ba7672 bc5a0ff7 21ddcdc9 b1252a9d 7aa7103f 32c7478e 69e4f188 e8b83407 e001324a -1 2 86 11 374 112 11 4 149 1 2 1 55 05db9164 c8687797 74e1a23a 9a6888fb 25c83c98 7e0ccccf 68ccb054 813607cc a73ee510 3b08e48b d2b7c44b fb8fab62 68637c0d 07d13a8f 5db1ef75 c6b1e1b2 3486227d a7e06874 21ddcdc9 5840adea 99c09e97 3a171ecb 335a6a1e 010f6491 8d8eb391 - 230 1 1 18816 32 1 3 35 1 1 05db9164 78ccd99e 79d8f4ba 55e131f7 4cf72387 020941fb 0b153874 a73ee510 3c82d6ef 18bd2b95 39ef0e3a 89071a69 07d13a8f 162f3329 aac23b6b d4bb7bd8 e7e991cb fc134659 5840adea a1465d60 32c7478e 2b1a73ce 2bf691b1 c07c490e - 16 1 1 11620 146 5 1 122 3 1 b455c6d7 e1696232 4c7f017c 36722301 25c83c98 6f6d9be8 d69b60fc 0b153874 a73ee510 3b08e48b 1a036e26 322c00c7 52f64c84 b28479f6 830017af e6756088 e5ba7672 c3186a4a 97a5f555 32c7478e 52c59e65 - 0 2 2391 0 0 5 0 05db9164 4f25e98b b2c7f3ef 419729f4 25c83c98 1d94dd40 0b153874 a73ee510 efea433b ccfdca2f fa04df0d d76cea6e 07d13a8f dfab705f e7427c69 07c540c4 7ef5affa 1d04f4a4 b1252a9d 3bf0c6b7 32c7478e dcda2e04 724b04da c15d09a4 -4 898 4 4 115 23 4 4 24 1 1 0 23 05db9164 4c2bc594 d032c263 c18be181 4cf72387 7e0ccccf cc5ed2f1 1f89b562 a73ee510 3b08e48b e216a695 dfbb09fb 9f16a973 8ceecbc8 7ac43a46 84898b2a e5ba7672 bc48b783 0014c32a 55dd3565 3b183c5c -0 10 253 5 2257 184 21 15 1112 0 6 2 63 09ca0b81 39dfaa0d 9bd70a98 8c97a28c 25c83c98 7e0ccccf d3b8f746 0b153874 a73ee510 b8d25928 d99a1a67 6e76119f bb567ffd 07d13a8f 60fa10e5 4c99f67a 27c07bd6 df4fffb7 21ddcdc9 5840adea e0a20aee 3a171ecb a636a323 010f6491 d67a6f5b - 2 7 6 6 6 05db9164 38a947a1 2d8004c4 40ed41e5 25c83c98 fbad5c96 ce8217f8 0b153874 7cc72ec2 3b08e48b 9d12ce9b ad972965 9dfda2b9 07d13a8f c68ba31d 1206a8a1 2005abd1 e96a7df2 54d8bb06 be7c41b4 a415643d -0 -1 1398 10 27 11 124 0 11 05db9164 a5b69ae3 003f419b ff852091 25c83c98 6fa3c1a7 0b153874 a73ee510 5f50c86b b8deab54 349450bc efbb2435 f7c1b33f b5640894 6615ffe6 e5ba7672 a1654f4f 21ddcdc9 5840adea 3dd38d65 32c7478e c2fe6ca4 b9266ff0 b3606536 -0 0 12 1 1670 167 37 8 94 0 5 0 1 68fd1e64 d97d4ce8 c725873a d0189e5a 25c83c98 fbad5c96 2952cebf 5b392875 a73ee510 3fb38a44 1d351a39 49fee879 90a568bc 1adce6ef 46218630 3b87fa92 3486227d fb342121 04de9d96 5840adea d90f665b bcdee96c 6c1cdd05 ea9a246c 1219b447 - -1 6 3 89 0 4 25 0 3 05db9164 a8b6b751 de82b566 656b6600 25c83c98 13718bbd d9aa9d97 0b153874 7cc72ec2 3b08e48b c4adf918 009ecef2 85dbe138 07d13a8f 4b1f9049 7b4a383f 2005abd1 d787f192 21ddcdc9 5840adea 5dbcce45 32c7478e 4008e1ec 001f3601 d67a6f5b -13 0 7 3 421 42 104 32 490 2 17 12 3 68fd1e64 9819deea 198ad1c1 f922efad 4cf72387 fbad5c96 87c41d78 0b153874 a73ee510 f745065f d8d7567b b99ddbc8 47d6a934 b28479f6 1150f5ed 87acb535 8efede7f 7e32f7a4 a4b7004c c7dc6720 b34f3128 - 92 158 26534 338 2 0 0 1 05db9164 58e67aaf cadcf86f 8cafa4dd 4cf72387 7e0ccccf 45e063a0 37e4aa92 a73ee510 655b68d2 da89cb9b 5c2ac9a6 165642be b28479f6 62eca3c0 bb5c36f5 e5ba7672 c21c3e4c 5837ec60 b1252a9d 3cbee6bd 32c7478e 8ed869e2 9b3e8820 73128e71 - 1 4 18673 0 2 41 0 05db9164 a5b69ae3 3f598f1f 89b9aa94 25c83c98 7e0ccccf 08bd9583 c8ddd494 a73ee510 3b08e48b b1db274c eee3943b b7a9e83c b28479f6 9703aa2f 7e28aee1 776ce399 a1654f4f 21ddcdc9 5840adea bafa34d7 be7c41b4 1a691628 2bf691b1 984e0db0 -16 0 10 17 1 0 32 29 79 2 9 0 87552397 ad4527a2 ebe4edfa ebc42d91 5a3e1872 fe6b92e5 8379baa1 0b153874 a73ee510 3b08e48b 7579b566 e8c9d3fa 8803181f b28479f6 91b8fb2b 2c52502a e5ba7672 cdfa8259 f8c88eda dbb486d7 1b256e61 -3 1 16 2 1268 23 13 19 48 0 2 2 68fd1e64 287130e0 eb618286 1eef8c56 25c83c98 c69fca72 5b392875 a73ee510 814f28f7 7b4b217a 13cce054 0f3d4e02 07d13a8f 10040656 7141c0e9 e5ba7672 891589e7 1d04f4a4 a458ea53 bc3c3b7c 3a171ecb 218cf3e9 ea9a246c aec2d414 - 0 6 1 0 21 75 0 4 5a9ed9b0 d833535f 02cf9876 c18be181 43b19349 7e0ccccf 3271e812 0b153874 a73ee510 3b08e48b 6abd0870 8fe001f4 536464dd f862f261 fa461c15 36103458 776ce399 42a2edb9 e587c466 32c7478e 3b183c5c - -1 33 3 102310 211 0 4 13 0 3 05db9164 76c475b1 5039c491 077ac770 4cf72387 7e0ccccf d9a747fe 0b153874 7cc72ec2 5613a770 17586bd8 9fcd1068 4c9ff09f 1adce6ef 280a440c fefa4262 e5ba7672 ae09efbe f0bffc9c 423fab69 5ddc2c4c -1 294 3 2 833 4 4 13 16 1 2 2 05db9164 1cfdf714 2969e63a 13508380 25c83c98 7e0ccccf 77e91f62 0b153874 a73ee510 b883655e 7defe259 d15acfbb 11fa2c12 07d13a8f e439dd9b 9cd7411b e5ba7672 9df49ecd 55dd3565 a458ea53 da6025d6 c7dc6720 45ab94c8 cb079c2d c84c4aec -16 1 1 339 3 16 3 3 1 1 05db9164 58e67aaf d0c01463 6edf3c54 43b19349 7e0ccccf 7a15bf06 0b153874 a73ee510 cc41a65c 1564a011 6a986f80 5e350f6e 1adce6ef d002b6d9 7e231e69 e5ba7672 c21c3e4c cbbfa31b a458ea53 7912f0b4 423fab69 09e5d319 9b3e8820 274d1175 - 266 25 4 7692 141 4 35 141 1 34 be589b51 dd8c896e 3e653e64 13508380 25c83c98 fbad5c96 b72ec13d 6c41e35e a73ee510 5fe250bc 3547565f 9180c81b 12880350 07d13a8f 95275a51 b8b12d18 e5ba7672 3182300e 55dd3565 a458ea53 b4e86f7e 423fab69 45ab94c8 010f6491 c84c4aec - -1 0 0 12 0 f473b8dc 38a947a1 43b19349 7e0ccccf 88002ee1 0b153874 7cc72ec2 3b08e48b f1b78ab4 6e5da64f b28479f6 554c4a03 2005abd1 409455e2 32c7478e - 117 1 1 6323 15 9 1 6 1 1 05db9164 78ccd99e 6c35f07e 449f7632 25c83c98 fe6b92e5 94b76214 0b153874 a73ee510 9743bf1f 192b5981 dd4a66a9 0c7dd611 1adce6ef b00d57a8 bea7d122 e5ba7672 e7e991cb bf212c4c a458ea53 049d5c35 3a171ecb 412d3b96 ea9a246c 5fe9d29d -4 0 24 28 521 190 11 43 758 1 5 156 05db9164 58e67aaf 7ccc8a31 e26ca125 25c83c98 1e3cba9d 5b392875 a73ee510 1e2ab9fa 843d8639 c7883ba5 9cab1003 051219e6 d83fb924 542c1f96 e5ba7672 c21c3e4c 21ddcdc9 a458ea53 1bbb5c9c 32c7478e 3fdb382b 9b3e8820 49d68486 - 684 1 1 3297 13 3 2 12 1 1 1 87552397 38a947a1 384243eb 6a14f9b9 25c83c98 fe6b92e5 92ce5a7d 0b153874 a73ee510 9f7517e0 962f47a7 0f11d8bb e8df3343 07d13a8f 4dad26dd f8b34416 3486227d e5f8f18f f3ddd519 3a171ecb b34f3128 -1 702 6 4 426 24 2 29 49 1 2 4 5a9ed9b0 3ab4d7f5 3753877b f613cab3 4cf72387 fbad5c96 d3dde3a9 0b153874 a73ee510 6313f18a eb3851c7 64e74526 c888b255 dcd762ee b20f9276 1152ed2c 07c540c4 24d4558e 21ddcdc9 5840adea b82c23cf 3a171ecb 821e687c c9f3bea7 d1d40819 -1 0 16 1 596 18 5 7 33 1 3 7 68fd1e64 b7ca2abd ee96fc95 68ad052c 43b19349 fbad5c96 cc5ed2f1 0b153874 a73ee510 3b08e48b e216a695 ce875433 9f16a973 64c94865 5f2d5a3a 5f92b84a e5ba7672 4771e483 95b757a6 3a171ecb 41be4766 - 1 2 14605 90 2 4 48 1 68fd1e64 287130e0 72f54a8b a91b5db8 25c83c98 13718bbd 5e471479 0b153874 a73ee510 3b08e48b ca4fdd36 7bb1a2e7 a42a90d1 07d13a8f 10040656 2e8cb6bb 07c540c4 891589e7 db0cca70 a458ea53 5de9c382 32c7478e 0d52daef ea9a246c 1cb74d9f - 0 1 3 262676 0 9 9 0 9 39af2607 d833535f 77f2f2e5 d16679b9 25c83c98 fe6b92e5 7501053b 0b153874 7cc72ec2 3b08e48b 7beb451a 9f32b866 0e02bbfa 1adce6ef 2ee9f086 31ca40b6 776ce399 7b49e3d2 dfcfc3fa ad3062eb bcdee96c aee52b6f - 0 17 3 7261 32 3 3 32 1 3 05db9164 80e26c9b 3ad13a38 85dd697c 25c83c98 8672200c 5b392875 a73ee510 3b08e48b 65819b7a 86721a95 2e21cea2 07d13a8f e8f4b767 2d0bbe92 07c540c4 005c6740 21ddcdc9 b1252a9d 76a463de 32c7478e 1793a828 e8b83407 9904c656 -0 29 29 19 3395 272 8 17 541 0 5 19 05db9164 09e68b86 aa8c1539 85dd697c 25c83c98 7e0ccccf 124131fa 5b392875 a73ee510 28c6ef79 9ba53fcc d8c29807 42156eb4 8ceecbc8 d2f03b75 c64d548f e5ba7672 63cdbb21 cf99e5de 5840adea 5f957280 3a171ecb 1793a828 e8b83407 b7d9c3bc -0 9 4 28887 258 1 2 96 0 1 05db9164 a07503cc 7e08efbe 13508380 25c83c98 fbad5c96 80f99b7e 1f89b562 7cc72ec2 e9bc750b 72da268c a1f4d505 dc1d72e4 07d13a8f 77660bba c8c8957b 8efede7f 912c7e21 55dd3565 b1252a9d 3197e122 423fab69 45ab94c8 445bbe3b c84c4aec - 1 30427 730 2 2 19 0 0 05db9164 38a947a1 4470baf4 8c8a4c47 43b19349 fe6b92e5 12343fcc 0b153874 a73ee510 f6f942d1 bc8c9f21 bb669e25 46f42a63 b28479f6 717db705 2b2ce127 3486227d ade68c22 2b796e4a 3a171ecb 8d365d3b -2 10 108 5 36 2 13 16 198 2 9 4 2 05db9164 942f9a8d 9e742c8b 75010229 25c83c98 7e0ccccf ada63c05 0b153874 a73ee510 3b08e48b b750092e c78b507c 9233128b b28479f6 ac182643 f8738f05 8efede7f 1f868fdd 733bf73d b1252a9d 4c50f14c be7c41b4 7ee4972d e8b83407 bd4200d8 -3 1 6 2 1332 95 20 4 171 0 2 2 5a9ed9b0 0a519c5c b00d1501 d16679b9 25c83c98 fbad5c96 d20b4953 0b153874 a73ee510 5ba575e7 b5a9f90e e0d76380 949ea585 b28479f6 b760dcb7 1203a270 e5ba7672 2efa89c6 73d06dde 32c7478e aee52b6f -0 1614 6 8 1841 121 24 16 292 0 3 1 73 f473b8dc 9e5ce894 02391f51 b9c629a9 25c83c98 7e0ccccf 80d2263e 37e4aa92 a73ee510 42429aab 9d7e66c3 2397259a df957573 07d13a8f 8cf98699 d37efe8c e5ba7672 a5bb7b8a 21ddcdc9 5840adea b6119319 423fab69 45ab94c8 e8b83407 b13f4ade -2 48 2 12 705 34 52 9 1215 1 10 26 05db9164 c41a84c8 04e51b4a bee72785 25c83c98 7e0ccccf 7a15bf06 0b153874 a73ee510 cc41a65c 1564a011 bef78a22 5e350f6e 07d13a8f d345cbde 880b4662 e5ba7672 2b46823a af53b446 423fab69 590b856f - 0 1 60553 112 0 0 0 0 be589b51 38a947a1 d13860b3 5db2b93b 25c83c98 7e0ccccf 46f86528 0b153874 7cc72ec2 3b08e48b 78da5469 ae15723b 8c13f0bc 07d13a8f d795ce4b 7849f6ef 3486227d b53113bf 49a498ae 423fab69 4f18f205 -0 20 6 5 4335 168 1 3 108 0 1 0 5 05db9164 4f25e98b 67fd9557 8f86faa2 384874ce f6d03c1b 5b392875 a73ee510 8c6b20b6 30b2a438 0b20cb67 aebdb575 07d13a8f 5be89da3 26b8b5ad d4bb7bd8 bc5a0ff7 d0289910 a458ea53 96ab9623 32c7478e 197a3a69 001f3601 b1617e25 -5 103 4 7 155 7 9 4 7 1 2 7 05db9164 0aadb108 c798ded6 91e6318a 4cf72387 052e75f4 0b153874 a73ee510 7636f6c8 b7bb7a17 1b2022a0 73e186f6 b28479f6 d81d048b b74e1eb0 e5ba7672 7ce63c71 af5dc647 32c7478e 1793a828 -0 1 4 4387 285 47 1 599 0 4 be589b51 207b2d81 7edab150 2e31cf94 30903e74 13718bbd fe4dce68 0b153874 a73ee510 6a002f59 68357db6 5b97bb07 768f6658 07d13a8f da315591 dc9d47a7 e5ba7672 29907d97 21ddcdc9 b1252a9d e7258bec 32c7478e 38be899f 001f3601 c26ea7d4 - 0 3 7989 36 3 0 33 1 05db9164 09e68b86 c7e632f7 90c2eda6 43b19349 7e0ccccf 8a6600b0 37e4aa92 a73ee510 c9b5407c 4ab39743 b07b65f2 ab8a1a53 64c94865 91126f30 bc328fcc 07c540c4 5aed7436 21ddcdc9 a458ea53 0120dc21 3a171ecb af6dadc2 e8b83407 4589f06a -0 0 99 1 2707 176 2 1 36 0 1 1 5a9ed9b0 9f7e1d07 608b3227 cf3b0ec7 0942e0a7 7d48c0ae 0b153874 a73ee510 7fa80053 5874c9c9 64966947 740c210d 1adce6ef df3426f3 57d492ac 07c540c4 6a58e423 21ddcdc9 5840adea d80d83a2 32c7478e 892fb9a7 ea9a246c e7ecb821 - 5 1 1 9817 0 1 1 0 1 be589b51 80e26c9b a1ac7a54 169ffff5 25c83c98 7e0ccccf 95b0fb8d 0b153874 7cc72ec2 3b08e48b 71fd20d9 461f2713 ddd66ce1 07d13a8f 02319a52 9aa1421c 776ce399 1f9656b8 21ddcdc9 b1252a9d ebdca722 8ec974f4 be7c41b4 1793a828 e8b83407 70b6702c -0 3 11 14 7845 199 4 23 98 0 1 0 14 68fd1e64 c76014f5 645d9349 031bba14 25c83c98 fe6b92e5 48ed6f4d 0b153874 a73ee510 2d8512c6 c4bd1c72 49eb8265 bcfc54a9 07d13a8f 0ce49139 631f0045 3486227d 93b0d1d7 1fe472e2 c9d4222a c7dc6720 89bd83a1 - 0 14 7 7601 27 22 8 123 3 7 05db9164 89ddfee8 6a177175 84f9d2c3 25c83c98 7e0ccccf ad3508b1 0b153874 a73ee510 060196aa ad757a5a 95d44b89 93b18cb5 1adce6ef 34cce7d2 22e98267 e5ba7672 5bb2ec8e 21ddcdc9 a458ea53 d120a789 423fab69 3fdb382b e8b83407 49d68486 -36 0 1 2 4 2 826 5 194 1 52 0 2 68fd1e64 c01b42bc 2f9dc591 5f729b15 25c83c98 407438c8 0b153874 a73ee510 0b6ffaef 755e4a50 ade3fa1b 5978055e b28479f6 4a610ec9 98bb839d 3486227d 45e58044 21ddcdc9 5840adea 17c4171d 32c7478e 21f1329e f0f449dd 8e098f00 - 0 14 6 596856 0 4 1 0 24 8cf07265 38d50e09 e7290a18 10ee14f5 25c83c98 7e0ccccf 6574331a 0b153874 7cc72ec2 3b08e48b 63248e0c 394b6320 784618a5 b28479f6 42b3012c c336971a 07c540c4 582152eb 21ddcdc9 5840adea f226d6a0 c9d4222a 3a171ecb e4f45003 001f3601 632dae8a - 2 54 24 9309 25 3 26 50 1 0 25 05db9164 09e68b86 ad30ed0b 830ef509 25c83c98 fe6b92e5 33cca6fa 0b153874 a73ee510 401ced54 7cc82eaa f47c2c6a 2b9fb512 b28479f6 52baadf5 ab5583e5 e5ba7672 5aed7436 3eb2f959 b1252a9d 29e83164 78e2e389 3a171ecb 5ef28b07 e8b83407 f9607f7a -1 0 1 1 1422 108 15 10 105 0 1 1 1 39af2607 9819deea 19ba01c7 f922efad 25c83c98 13718bbd 26a81064 0b153874 a73ee510 dcbc7c2b 9e511730 b99ddbc8 04e4a7e0 b28479f6 1150f5ed 87acb535 3486227d 7e32f7a4 a4b7004c 3a171ecb b34f3128 -0 44 1 3143 119 2 17 111 0 2 8 05db9164 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf 7a019822 0b153874 a73ee510 3b08e48b c012107d e0d76380 c8dca410 b28479f6 7f6af6b0 1203a270 07c540c4 eea3ab97 73d06dde be7c41b4 aee52b6f -6 1 12 8 1349 45 13 14 14 0 1 1 8 05db9164 09e68b86 aa8c1539 85dd697c 25c83c98 fbad5c96 08e57a96 37e4aa92 a73ee510 fa7d0797 7c430b79 d8c29807 7f0d7407 b28479f6 2d49999f c64d548f 3486227d 63cdbb21 cf99e5de 5840adea 5f957280 ad3062eb 3a171ecb 1793a828 e8b83407 b7d9c3bc - 24 1 7066 0 8 86 0 1 05db9164 8d42d2d4 25c83c98 7e0ccccf 3271e812 0b153874 a73ee510 3b08e48b 6abd0870 536464dd 07d13a8f 064da126 776ce399 e8f3ce77 c9d4222a 32c7478e - -1 5698 0 35 0 2 2 241546e0 38a947a1 e058fc3c 2192038e 25c83c98 fbad5c96 1c86e0eb 0b153874 a73ee510 7a748247 755e4a50 f7cbe917 5978055e b28479f6 2aa3cb0b 0c6b4ad6 e5ba7672 4427594e f6e3bd9c ad3062eb 32c7478e 9e07eb4a -2 9 18 9 148 40 2 24 124 1 1 40 05db9164 38d50e09 e35eb70e a9dec5bb 25c83c98 fbad5c96 5fbd9170 0b153874 a73ee510 474773a7 2bcfb78f 4cb74f28 e6fc496d 07d13a8f ee569ce2 b3aefbee e5ba7672 582152eb 21ddcdc9 5840adea b3dd14b5 ad3062eb 32c7478e d6bd20a1 001f3601 4e7af834 -0 10 1 1082 9 6 11 56 0 5 0 05db9164 1cfdf714 bcdb4295 34344151 25c83c98 7e0ccccf 7b466955 0b153874 a73ee510 121038f7 66bfc5e8 000914ab 3af886ff b28479f6 d345b1a0 67d1d779 e5ba7672 e88ffc9d 712d530c a458ea53 ae8a2b96 bcdee96c 1b06d1e6 cb079c2d 3a490508 -13 0 50 0 14 0 761 0 358 1 25 3 0 05db9164 942f9a8d 52136edd 8e1ddcdf 43b19349 fbad5c96 3f4ec687 0b153874 a73ee510 0e9ead52 c4adf918 a1bc7ed2 85dbe138 b28479f6 ac182643 a02bcc31 8efede7f 1f868fdd f44bef3c a458ea53 e637b09e ad3062eb 32c7478e 46008b41 001f3601 a329b171 -0 67 4 4 4809 169 3 38 154 0 1 10 4 68fd1e64 0acbc0bb 29bfb2cc 928f610c 25c83c98 fe6b92e5 4aa938fc 0b153874 a73ee510 efea433b 7e40f08a f68514e9 1aa94af3 b28479f6 aa5bc3c9 6194470b 8efede7f 140bbba0 a2d1f99e c9d4222a 32c7478e c9beb5ca - 0 9 1 14 0 1 1 0 1 05db9164 083aa75b 77f2f2e5 d16679b9 25c83c98 7e0ccccf 53b5f978 0b153874 a73ee510 3b08e48b 91e8fc27 9f32b866 9ff13f22 b28479f6 4e47e13c 31ca40b6 776ce399 06747363 21ddcdc9 5840adea dfcfc3fa c9d4222a be7c41b4 aee52b6f e8b83407 7d045fa6 -0 73 3 3 10262 28 8 8 45 0 3 3 be589b51 38a947a1 25c83c98 6f6d9be8 eed449c3 0b153874 a73ee510 3b08e48b dbfc0eae 0463405f 07d13a8f 325b6d82 e5ba7672 e4ecf11e 32c7478e - -1 0 0 0 0 05db9164 38a947a1 a029d634 7ef82da2 25c83c98 7e0ccccf e7698644 5b392875 7cc72ec2 3b08e48b f9d0f35e 7e5f52f7 b55434a9 b28479f6 a39d772c f9a9cc07 2005abd1 dceb92f5 d274f690 be7c41b4 2909a885 - 1 107 1 13152 27 9 1 15 1 1 05db9164 80e26c9b 92e3bc9c 85dd697c 25c83c98 f1ff45d6 37e4aa92 a73ee510 9a1250bd acc758fc c0ce5478 9bbdb8bd 07d13a8f e8f4b767 2d0bbe92 e5ba7672 005c6740 21ddcdc9 b1252a9d fbd2835f 32c7478e 1793a828 e8b83407 9904c656 - -1 300 44 29 26 53 2 0 05db9164 80e26c9b 41fee99d f05677b6 30903e74 fbad5c96 4bcc6397 0b153874 a73ee510 ab480cda 7ce809fb f856de4c 3a129657 b28479f6 4c1df281 84c9e1a0 e5ba7672 f54016b9 21ddcdc9 5840adea 471b6594 ad3062eb bcdee96c 8c6e501f e8b83407 71961874 -7 194 4 3 586 14 12 23 84 1 2 3 05db9164 e5fb1af3 02391f51 b9c629a9 25c83c98 7e0ccccf bc252bd0 37e4aa92 a73ee510 bd10c7fe 0bd0c3b3 2397259a c0e6befc 07d13a8f b5de5956 d37efe8c e5ba7672 13145934 21ddcdc9 5840adea b6119319 423fab69 45ab94c8 e13f3bf1 b13f4ade - -1 0 4 3 0 8cf07265 08d6d899 9143c832 f56b7dd5 25c83c98 7e0ccccf d356c7e6 0b153874 7cc72ec2 3b08e48b 553ebda3 ae1bb660 49fe3d4e b28479f6 bfef54b3 bad5ee18 2005abd1 87c6f83c 0429f84b be7c41b4 c0d61a5c -0 31 9 6 1982 195 5 42 92 0 1 0 32 05db9164 71ca0a25 396df967 328b42c3 25c83c98 7e0ccccf a7ddc5e9 0b153874 a73ee510 e7ef8a26 ff78732c 8481d649 9b656adc 1adce6ef ae3a9888 b2f2a0c7 e5ba7672 9bf8ffef 21ddcdc9 5840adea f0bb1194 423fab69 a5ce2d0d e8b83407 984e0db0 -3 -1 46 17 902 57 3 48 47 1 1 17 05db9164 4f25e98b b393df87 c3fecae9 4cf72387 13718bbd ade953a9 5b392875 a73ee510 b118f931 29e4ad33 8d33fe00 80467802 07d13a8f b8db89ad 0fd4fbad 07c540c4 9e4517be 3014a4b1 a458ea53 572bdde8 32c7478e 9fa3e01a 001f3601 d9bcfc08 -0 0 4 2 13878 388 1 2 121 0 1 5 5a9ed9b0 8947f767 6d04314e fbf3664e 5a3e1872 7e0ccccf 41c90306 c8ddd494 a73ee510 a6cc5a0b c21c44c8 474f9a25 5b3fc509 b28479f6 a473257f 0ef2eb43 d4bb7bd8 bd17c3da 389c11a8 b1252a9d 657b3813 bcdee96c 3fdb382b e8b83407 49d68486 -1 1 70 28 869 86 32 32 299 1 9 0 28 5a9ed9b0 89ddfee8 077a8ceb e0c8f21d 25c83c98 fbad5c96 407438c8 5b392875 a73ee510 5df036eb 755e4a50 a025c068 5978055e 1adce6ef 34cce7d2 1dbf494d 3486227d 5bb2ec8e 21ddcdc9 b1252a9d f1955d6d 32c7478e 9e849770 f0f449dd 1e5ffff0 -1 26 15 11 43 78 28 3935 1 21 0 15 05db9164 7f068eee b02bec4b e566ddbe 384874ce 7e0ccccf 32bdb7cc 0b153874 a73ee510 7ef432eb 1564a011 4bfcfa49 5e350f6e 07d13a8f 54971505 59a2d0b9 e5ba7672 6ef5c311 2b8c5287 423fab69 6870b565 -3 438 1 3 103 4 21 45 883 2 13 4 05db9164 8f5b4275 b009d929 c7043c4b 25c83c98 7e0ccccf 9a4f2943 0b153874 a73ee510 86b46b2e 4a00b569 3563ab62 42ef23bb 1adce6ef a6bf53df b688c8cc e5ba7672 65c9624a 21ddcdc9 5840adea 2754aaf1 c9d4222a 3a171ecb 3b183c5c e8b83407 adb5d234 -0 2 21 6 18662 585 20 6 639 0 7 0 6 05db9164 e77e5e6e 01417713 4bf1098a 4cf72387 7e0ccccf c41290a0 5b392875 a73ee510 9bed549c 9cf53ffd 227a2775 dcfe4e6a 07d13a8f 2eb18840 93070d9b e5ba7672 449d6705 8279049d b1252a9d 58880e9a c7dc6720 0768db04 001f3601 88e4630a - 5 3 0 43794 761 0 3 578 0 0 3 05db9164 4883e3bc d032c263 c18be181 30903e74 7e0ccccf b3e225a6 1f89b562 a73ee510 5422e543 b61df50f dfbb09fb fea69ce3 b28479f6 a85e7b5f 84898b2a e5ba7672 a70ca30e 0014c32a 32c7478e 3b183c5c - -1 4 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf 0dab78da 5b392875 7cc72ec2 3b08e48b 7bc78da9 dfbb09fb 6b5d07b4 8ceecbc8 7ac43a46 84898b2a 2005abd1 bc48b783 0014c32a ad3062eb be7c41b4 3b183c5c -0 0 15 33 16166 2359 19 9 2084 0 1 0 52 5bfa8ab5 95e2d337 2b280aeb f9127dd4 25c83c98 7e0ccccf 8f572b5e c8ddd494 a73ee510 57b09f76 434d6c13 a5f6d531 7301027a 1adce6ef 559cd202 f7e509f3 e5ba7672 7b06fafe 9437f62f a458ea53 dc9ee80f 423fab69 24db27bb 2bf691b1 0c1bbe81 -0 0 3 11671 815 3 42 293 0 1 0 21 68fd1e64 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf 07b431a3 bae5aa63 a73ee510 a4074cba ba29baf1 e0d76380 00eb1d81 07d13a8f 5a7d5bd8 1203a270 07c540c4 eea3ab97 73d06dde c9d4222a 423fab69 aee52b6f - 0 15 31 125 0 21 31 0 31 05db9164 09e68b86 cbe6f1e0 4bac069a 25c83c98 13718bbd ef519766 0b153874 a73ee510 3b08e48b 39b4a686 03cd1f36 11b529d9 64c94865 91126f30 c9d62f74 d4bb7bd8 5aed7436 21ddcdc9 a458ea53 c8f73a05 32c7478e 3fdb382b 8f8c5acd 49d68486 -1 1 5 6 705 15 144 18 631 1 16 0 6 05db9164 58e67aaf ce47489f 86d6dcad 25c83c98 7e0ccccf 0ed4baad 5b392875 a73ee510 9343fa06 7373475d bdb0cf2c cfbfce5c 051219e6 d83fb924 e4366453 8efede7f c21c3e4c 21ddcdc9 a458ea53 40f2afbd 3a171ecb 64d28c03 9b3e8820 79eb2380 -0 0 2007 58 11 30 99 0 4 0 8cf07265 78ccd99e cc0cc564 c6cdd482 25c83c98 7e0ccccf 3ac0ed6b c8ddd494 a73ee510 a987ff0b 488b44e3 97d56b8e 86f63759 07d13a8f 162f3329 4404c966 e5ba7672 e7e991cb b1fb78cc 5840adea 1a36c79f 423fab69 2a413fbb 2bf691b1 83293b11 -0 1 11 6 3126 15 2 8 106 0 2 0 6 5a9ed9b0 8947f767 40baeafe 69e10921 30903e74 7e0ccccf 18671b18 0b153874 a73ee510 377138d3 77212bd7 11809a74 7203f04e b28479f6 a473257f 75c0a233 3486227d bd17c3da 72592995 5840adea 0194530f c7dc6720 b2df17ed 010f6491 33757f80 -0 0 2 1458 76 8 29 52 0 1 0 5bfa8ab5 f0cf0024 6f67f7e5 41274cd7 43b19349 7e0ccccf f828f7fb 0b153874 a73ee510 9acc21ac ab066900 623049e6 5d4198ed b28479f6 e6c5b5cd c92f3b61 e5ba7672 b04e4670 21ddcdc9 5840adea 60f6221e 32c7478e 43f13e8b ea9a246c 731c3655 -22 3 2 0 44 0 49 1 15 1 3 0 0 f473b8dc 58e67aaf dfa0579f 376ef183 25c83c98 fbad5c96 f4eba758 64523cfa a73ee510 c8b93b0b 16faa766 51ab0920 4422e246 f862f261 b1502433 e3d46600 e5ba7672 c21c3e4c 49463d54 a458ea53 d780939d bcdee96c 7fee1b9c 9b3e8820 433f9294 -2 79 3 8 7 1 2 32 71 1 1 1 68fd1e64 2c16a946 e00f49da 9f43a1b5 25c83c98 7e0ccccf 5fbd9170 0b153874 a73ee510 dc9f749b 2bcfb78f 50a702fb e6fc496d b28479f6 3628a186 87140baa e5ba7672 e4ca448c d5a47947 32c7478e 9117a34a - 106 3 11689 1018 5 10 411 1 6 05db9164 0a519c5c b00d1501 d16679b9 384874ce 7e0ccccf a54c550f 0b153874 a73ee510 3b08e48b b99e9d9c e0d76380 b5f7ce2d 1adce6ef 123b2f29 1203a270 e5ba7672 2efa89c6 73d06dde c9d4222a be7c41b4 aee52b6f -1 1399 7 36 4 25 0 66 1 3 4 05db9164 e9ac66c5 81d111ab 9a5d2597 25c83c98 7e0ccccf bb578fab 0b153874 a73ee510 ae07e31d 3407cf7b 8d00b7ab f0fe287d 07d13a8f fc45bcbf c932ce41 e5ba7672 e85b49c7 01541878 423fab69 b870aae5 - -1 574 0 0 0 0 05db9164 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 51f248f7 0b153874 a73ee510 3b08e48b 753571c7 8fe001f4 afd04e3a b28479f6 16d2748c 36103458 1e88c74f 003d4f4f e587c466 32c7478e 3b183c5c - 0 4 31 0 4 4 0 1 4 05db9164 5dac953d d032c263 c18be181 25c83c98 fbad5c96 78737263 985e3fcb a73ee510 fbbf2c95 4955b0c0 dfbb09fb 9be66b48 1adce6ef b4a435f2 84898b2a 3486227d 63e4be9d 0014c32a 3a171ecb 3b183c5c -6 3 1 3 116 32 8 11 32 1 2 32 05db9164 38a947a1 4470baf4 8c8a4c47 4cf72387 7e0ccccf 9f525672 1f89b562 a73ee510 c03541ea 843d8639 bb669e25 9cab1003 b28479f6 65afeec4 2b2ce127 e5ba7672 b133fcd4 2b796e4a 32c7478e 8d365d3b -0 1 9 0 12428 71 1 3 30 0 1 1 05db9164 a5b69ae3 3f598f1f 89b9aa94 25c83c98 7e0ccccf 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 eee3943b 605bbc24 b28479f6 9703aa2f 7e28aee1 27c07bd6 a1654f4f 21ddcdc9 5840adea bafa34d7 32c7478e 1a691628 2bf691b1 984e0db0 -0 11 303 7 22955 0 8 7 0 0 0 7 68fd1e64 4f25e98b 9f974213 efcca5b2 25c83c98 fe6b92e5 fa03651c 0b153874 7cc72ec2 45eab019 33fa033a 7ff8e1e7 54be6cea b28479f6 8ab5b746 667cf8f6 e5ba7672 7ef5affa 21ddcdc9 b1252a9d f2f20f6b 32c7478e 4ec8d328 001f3601 cf617418 - 1 4 0 139108 0 1 1 0 1 68fd1e64 0a519c5c ad4b77ff d16679b9 4cf72387 fbad5c96 7724ab49 5b392875 7cc72ec2 a3930b6c 27a6c0d1 a2f4e8b5 cc19e17a b28479f6 7f6af6b0 89052618 d4bb7bd8 eea3ab97 d4703ebd ad3062eb bcdee96c aee52b6f -0 2 2 4311 202 1 4 83 0 1 2 05db9164 2ae0a573 c5d94b65 5cc8f91d 25c83c98 7e0ccccf e6ff8cc3 0b153874 a73ee510 bd841179 d96a7426 75c79158 2839ca0f b28479f6 8cd0367d 208d4baf d4bb7bd8 4ff1b968 6a909d9a c9d4222a 32c7478e 1f68c81f - 0 544 1 0 6 6 0 6 8cf07265 80e26c9b e346a5fd 85dd697c 4cf72387 7e0ccccf bfa1a33f 0b153874 7cc72ec2 3b08e48b 477c3e2b 539c5644 02c899e1 b28479f6 a785131a aafa191e 2005abd1 005c6740 21ddcdc9 b1252a9d 7e5b7cc4 be7c41b4 1793a828 e8b83407 9904c656 -0 453 35 3425 18 9 5 70 0 2 be589b51 89ddfee8 8a4b3d17 17859836 25c83c98 3bf701e7 407438c8 0b153874 a73ee510 e7ba2569 755e4a50 f11e7613 5978055e 051219e6 d5223973 9a85118c 27c07bd6 5bb2ec8e 21ddcdc9 a458ea53 3c1f88bb 32c7478e 2635a7a3 f0f449dd e43542bd -0 1 1 0 1804 108 12 28 44 0 3 2 c71ae391 68b3edbf ad4b77ff d16679b9 25c83c98 7e0ccccf b3e8889a 1f89b562 a73ee510 8d34ddcd 17586bd8 a2f4e8b5 4c9ff09f b28479f6 f511c49f 89052618 1e88c74f 752d8b8a d4703ebd bcdee96c aee52b6f - 24 5902 18 2 2 8 1 5a9ed9b0 2c8c5f5d d7bd8733 9ce24ab2 4cf72387 7e0ccccf 8d1db846 0b153874 a73ee510 33a91747 1bb4f435 9712b4e7 e8d4ea40 64c94865 c1124d0c 7e348ca8 d4bb7bd8 f5f4ae5b a7a755dc 3a171ecb 89856b53 -0 2 63 13 3605 75 1 13 18 0 1 13 05db9164 80e26c9b d7d2c0db ed9c0951 25c83c98 fbad5c96 497f9d10 37e4aa92 a73ee510 0053cbf1 aab189a6 320294ff 47697512 07d13a8f f3635baf 2554a151 d4bb7bd8 f54016b9 21ddcdc9 a458ea53 d644ccab 32c7478e 825ef36f e8b83407 614915cb - 0 6 24 2972 32 40 32 39 5 0 32 87552397 38d50e09 af5e9700 a6153c31 25c83c98 7e0ccccf 65ae2219 0b153874 a73ee510 fa7d0797 dbdb7970 638ea5c7 9be66b48 b28479f6 42b3012c 36119fcc 3486227d 582152eb 21ddcdc9 5840adea 5425300c 3a171ecb 5573cfe5 001f3601 9b48375d -1 0 2 2 1 1 2 2 1 1 3 0 05db9164 38a947a1 461548e1 c29a69e3 25c83c98 fe6b92e5 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 43c5c43b 605bbc24 b28479f6 0a539f71 4c193d5e 27c07bd6 e3296f92 ad7ac7d2 32c7478e e5b8705c - 244 14 15 4934 70 21 16 66 2 1 16 05db9164 9f7e1d07 c1cb22d6 ff852091 4cf72387 23a55e69 51d76abe a73ee510 8fda7cf8 b1a5e8a6 311e914b b017b046 1adce6ef 12a6592e 0af0fc3a 3486227d 637510ea 21ddcdc9 5840adea e7911cc2 32c7478e c2fe6ca4 ea9a246c 602f0609 -1 76 33 3 260 57 1 16 14 1 1 11 05db9164 4f25e98b 6b990011 ef4c0681 25c83c98 7e0ccccf 1c63b114 0b153874 a73ee510 daea64eb 67841877 b6e21e2c 781f4d92 b28479f6 8ab5b746 f2e18cc5 3486227d 7ef5affa 21ddcdc9 b1252a9d 38168843 c9d4222a 32c7478e 88422d4d 001f3601 83ae03ae -1 9 4 4 936 7 1 7 38 1 1 4 05db9164 09e68b86 1fe53286 1e5e2162 25c83c98 6f6d9be8 045eef77 0b153874 a73ee510 a85e0b9b e81438fc 623de2fe f745e01e f7c1b33f 5726b2dc 1a95dee0 d4bb7bd8 5aed7436 712d530c b1252a9d b268320c 32c7478e 471f55fb f0f449dd cb1956a3 -1 33 1 5 990 23 1 17 23 1 1 5 5a9ed9b0 38a947a1 4470baf4 8c8a4c47 25c83c98 7e0ccccf aabe15c8 0b153874 a73ee510 57eaa63f 3e97bb96 bb669e25 fa9f89ca b28479f6 4d30aa09 2b2ce127 d4bb7bd8 b133fcd4 2b796e4a ad3062eb 32c7478e 8d365d3b -0 299 2 2 1411 157 1 2 2 0 1 2 8cf07265 80e26c9b 1d9f7f0d f3dbac8a 25c83c98 7e0ccccf 33cca6fa 5b392875 a73ee510 401ced54 f8ba74ae 4951ec91 2b9fb512 07d13a8f f3635baf ad5a7183 d4bb7bd8 f54016b9 21ddcdc9 a458ea53 bb4a28d1 3a171ecb b59ef8e3 e8b83407 9f2bd298 - 0 16 5 5906 81 3 6 79 1 5 41edac3d 89ddfee8 879106e6 60b3ccc3 25c83c98 c52b723b 51d76abe a73ee510 7ec62bc4 6fadc5f9 329609f5 bd664eee 051219e6 d5223973 f0299f23 d4bb7bd8 5bb2ec8e 55dd3565 a458ea53 feeebb8b 32c7478e 2af5bbab f0f449dd d21d0b82 - 1 3 1 39039 0 17 2 0 2 39af2607 f3139f76 41831fec bf0b19a8 25c83c98 fe6b92e5 f626266a 0b153874 a73ee510 afc4d756 5bd8a4ae 62f43136 7a3043c0 07d13a8f b29e0819 5131d930 d4bb7bd8 78db103b 3b226dea ad3062eb 423fab69 4fcc135f - -1 56773 798 0 1 203 0 75ac2fe6 24d41293 02cf9876 c18be181 25c83c98 7e0ccccf 7724ab49 1f89b562 7cc72ec2 98c496a6 27a6c0d1 8fe001f4 cc19e17a b28479f6 23bf2849 36103458 e5ba7672 40aab586 e587c466 bcdee96c 3b183c5c - 1 20832 53 1 0 30 1 05db9164 8e4f887c 25c83c98 7e0ccccf 8ad9c0db 5b392875 a73ee510 7ff4e9fe 8e3b5159 3d10145c b28479f6 695aaab0 d4bb7bd8 4b340164 8ec974f4 32c7478e -0 1 90 10 2869 75 7 30 67 0 1 1 25 05db9164 09e68b86 8ea99195 9ff83788 25c83c98 7e0ccccf 08e57a96 66f29b89 a73ee510 fbbf2c95 ae19a197 6932da5c 7f0d7407 b28479f6 52baadf5 8188fce2 3486227d 5aed7436 81551f75 a458ea53 f2b149d5 ad3062eb 3a171ecb d87b54cf 3a6f6b59 7c9ef46f -0 51 8 9 1823 56 5 27 86 0 1 9 585b6ccc 4f25e98b bc04998f 04e2444d 43b19349 fbad5c96 22ff0182 0b153874 a73ee510 3440d43b 48e01e3c 815e9e8f 613b2c28 b28479f6 99637b25 153cc4e3 07c540c4 c04ce6df 21ddcdc9 b1252a9d e108d443 32c7478e 9117a34a 001f3601 54ca28ff -25 4 16 14 103 21 25 21 21 1 1 1 21 05db9164 46320fff 74e1a23a 9a6888fb 25c83c98 fe6b92e5 09504918 0b153874 a73ee510 2e88f978 585f0af3 fb8fab62 175d4f42 07d13a8f 4b572351 c6b1e1b2 3486227d d981a095 21ddcdc9 5840adea 99c09e97 c9d4222a 3a171ecb 335a6a1e c9f3bea7 68a2a837 - -1 159226 0 5 5 0 68fd1e64 a984ae94 b00d1501 d16679b9 25c83c98 7e0ccccf 7ebb604b 37e4aa92 7cc72ec2 9a97b0bf f66047e5 e0d76380 13c89cc4 b28479f6 a552a47a 1203a270 e5ba7672 b0a66c0c 73d06dde ad3062eb 3a171ecb aee52b6f - 3 5 2 42281 1528 0 38 735 0 17 5a9ed9b0 0a519c5c b00d1501 d16679b9 25c83c98 fbad5c96 7a019822 0b153874 a73ee510 3b08e48b c012107d e0d76380 c8dca410 b28479f6 7f6af6b0 1203a270 07c540c4 eea3ab97 73d06dde be7c41b4 aee52b6f -8 1 1 24 1 3 65 24 908 2 12 3 05db9164 8cc9c66e 3e4271a4 10e91261 25c83c98 7e0ccccf 9882d927 0b153874 a73ee510 9367457d fb5156e6 af5ce1ed 67e1f5b8 1adce6ef e296eaf8 ffda1616 e5ba7672 0280dd56 21ddcdc9 b1252a9d 25609db7 32c7478e cf9f8644 2bf691b1 e914a548 - 2 1 4 41855 0 4 4 0 4 05db9164 38a947a1 e3818eb2 a4456f7e 25c83c98 fbad5c96 e3fb0ef1 0b153874 a73ee510 3b08e48b f272f98e 3bec5d45 9b9e44d2 1adce6ef 3e704e66 72d1790f 776ce399 f03e8b05 950d91c1 ad3062eb be7c41b4 2f7e98de -0 1 1 1506 1 10 1 73 0 4 1 05db9164 95e2d337 4d855e6c 216b447b 4cf72387 fe6b92e5 468a0854 0b153874 a73ee510 3b08e48b a60de4e5 dde28095 605bbc24 051219e6 b0485d9e d5d64ec7 8efede7f 6ae8c28c e51f040f a458ea53 4e80c53e 32c7478e f271f41c 2bf691b1 cc7a24ff -1 0 1 0 1 0 50 0 1 1 10 0 0 05db9164 09e68b86 983dd13e 71131e40 25c83c98 7e0ccccf cd98cc3d 0b153874 a73ee510 493b74f2 dcc84468 271573de b72482f5 07d13a8f 36721ddc 4aeb7a03 e5ba7672 5aed7436 c68db44a a458ea53 6bb48454 32c7478e 0f5f1eff e8b83407 33cd7436 - 0 4 2 2404 0 13 55 0 2 05db9164 298d0556 02cf9876 c18be181 25c83c98 7e0ccccf 2773eaab 0b153874 a73ee510 3b08e48b 06474f17 8fe001f4 2ec4b007 b28479f6 48a5d003 36103458 776ce399 a8f42b59 e587c466 bcdee96c 3b183c5c - 15 42 23 5509 49 1 27 49 1 24 05db9164 9b25e48b 02391f51 b9c629a9 b2241560 7e0ccccf e9ff3546 0b153874 a73ee510 fba4e66d 9166ec18 2397259a e392d05d 07d13a8f 054ebda1 d37efe8c d4bb7bd8 7d8c03aa 21ddcdc9 5840adea b6119319 32c7478e 45ab94c8 2bf691b1 b13f4ade -1 0 177 18 2 8 1 23 24 1 1 0 8 68fd1e64 80e26c9b ba1947d0 85dd697c 0942e0a7 7e0ccccf 35c6016d 5b392875 a73ee510 bd10c7fe 0bd0c3b3 34a238e0 c0e6befc b28479f6 a785131a da441c7e 27c07bd6 005c6740 21ddcdc9 5840adea 8717ea07 bcdee96c 1793a828 cb079c2d b9809574 -6 93 5 1 1330 3 35 42 364 0 5 0 1 be589b51 bce95927 75c19771 13508380 25c83c98 fbad5c96 26d35971 0b153874 a73ee510 29d1046a 8f736c02 4863f606 954f731f 07d13a8f fec218c0 8d3830dc e5ba7672 04d863d5 55dd3565 b1252a9d ac2fc243 c9d4222a 423fab69 45ab94c8 e8b83407 c84c4aec - 331 2 785724 0 0 43 0 5a9ed9b0 1cfdf714 87b23536 0ec2759b 4cf72387 fbad5c96 6f441cf5 0b153874 7cc72ec2 65d27e99 1054ae5c 8277bcc5 d7ce3abd 0601d3b5 f107d273 ec12caeb 07c540c4 e88ffc9d 21ddcdc9 a458ea53 b2a9ba71 ad3062eb 3a171ecb 3fdb382b 59e2d823 49d68486 -0 20 14 10 756 108 32 36 356 0 10 0 10 5a9ed9b0 8f5b4275 b009d929 c7043c4b 25c83c98 fbad5c96 82968d75 0b153874 a73ee510 bdad3f20 37deccff 3563ab62 e1fb2a68 1adce6ef a6bf53df b688c8cc 27c07bd6 65c9624a 21ddcdc9 5840adea 2754aaf1 ad3062eb 423fab69 3b183c5c e8b83407 adb5d234 - 0 4 3 222415 0 3 3 0 3 be589b51 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 460f315b 0b153874 7cc72ec2 c510044d 21c80bff 8fe001f4 4e215042 07d13a8f 422c8577 36103458 07c540c4 52e44668 e587c466 3a171ecb 3b183c5c - 2 8 2 1585 2 1 2 2 1 2 f473b8dc 80e26c9b 4c7f017c 36722301 25c83c98 50631f06 0b153874 a73ee510 7259dc52 f25fe7e9 322c00c7 dd183b4c b28479f6 4c1df281 e6756088 d4bb7bd8 f54016b9 21ddcdc9 a458ea53 97a5f555 32c7478e 52c59e65 e8b83407 fcd5a3f4 - 0 1 18799 61 6 0 80 2 05db9164 f9875f50 20359b60 f9174189 25c83c98 6f6d9be8 d5527617 5b392875 a73ee510 3b08e48b 7466b255 257ddff6 f4c487c1 f7c1b33f 660b46ce bede07bd e5ba7672 43a9e4b1 21ddcdc9 b1252a9d 1eb47988 32c7478e 42b21edd e8b83407 f5ee494e - 28 6 1 5790 204 8 32 147 1 32 05db9164 5dac953d d032c263 c18be181 25c83c98 fe6b92e5 6ad82e7a 0b153874 a73ee510 ca70d133 c1ee56d0 dfbb09fb ebd756bd cfef1c29 2b982426 84898b2a e5ba7672 3d8fdbaf 0014c32a 423fab69 3b183c5c -7 0 84 5 241 7 32 8 108 2 11 6 87552397 58e67aaf e422b0a4 cf953b12 25c83c98 7e0ccccf 5392de9d 1f89b562 a73ee510 2b85a3f6 f89fe102 b5f982a0 83e6ca2e b28479f6 62eca3c0 a05d4607 e5ba7672 c21c3e4c 21ddcdc9 a458ea53 1fb022c6 bcdee96c ff09f2d1 9b3e8820 507e0f64 - 10 1 1 134834 0 1 5 0 1 05db9164 4c2bc594 d032c263 c18be181 43b19349 7e0ccccf d4c7baf8 0b153874 7cc72ec2 3b08e48b dbf405cd dfbb09fb df132e22 8ceecbc8 7ac43a46 84898b2a 07c540c4 bc48b783 0014c32a 3a171ecb 3b183c5c - 2 117 0 1 1 5a9ed9b0 bfdcfc4a 74e1a23a 9a6888fb 25c83c98 fe6b92e5 e7698644 0b153874 7cc72ec2 3b08e48b f9d0f35e fb8fab62 b55434a9 1adce6ef 2a7a147e c6b1e1b2 2005abd1 ffd53157 21ddcdc9 5840adea 99c09e97 be7c41b4 335a6a1e e8b83407 aa5f0a15 -12 210 15 10 380 11 26 13 16 2 5 10 05db9164 404660bb 16c47b7d dc56a6c8 25c83c98 7e0ccccf 1c86e0eb 0b153874 a73ee510 0e63575c 755e4a50 aa910cce 5978055e 07d13a8f 633f1661 a0613853 e5ba7672 4b17f8a2 21ddcdc9 b1252a9d 053a45ab c9d4222a 32c7478e becdd73c f0f449dd aa5f0a15 - 47 5 248783 0 be589b51 e3ce8d54 4cf72387 7e0ccccf c86e8c6b 0b153874 7cc72ec2 5bd9a453 4d8549da 51b97b8f d2dfe871 4b0401e8 07c540c4 d9942b4c 3a171ecb -0 264 6 4 1908 36 13 11 32 0 3 4 68fd1e64 bce95927 83c2a8ff 13508380 43b19349 7e0ccccf d2d741ca 5b392875 a73ee510 18139a78 ea4adb47 fde74def 05781932 07d13a8f fec218c0 5b006148 e5ba7672 04d863d5 55dd3565 b1252a9d a97d57df 423fab69 45ab94c8 e8b83407 c84c4aec - 0 11 2 0 3 19 0 2 5bfa8ab5 a8b6b751 9ab73b18 276ba120 25c83c98 7e0ccccf d9aa9d97 1f89b562 7cc72ec2 3b08e48b 6e647667 8b3a7854 85dbe138 07d13a8f 4b1f9049 4dd56497 2005abd1 d787f192 21ddcdc9 5840adea 93a15523 32c7478e aaa9e441 001f3601 aa5f0a15 - 633 12 0 4924 62 2 27 63 1 6 05db9164 e5fb1af3 0f2e928d d31d47a9 25c83c98 fbad5c96 e7386090 985e3fcb a73ee510 09f7b75e 554a51f3 b77b424f 5402dee2 1adce6ef 60403b20 48ab5cba 07c540c4 13145934 712d530c b1252a9d df9a63d7 bcdee96c 1793a828 e8b83407 d88052b3 - 5 1 1 1604 1 3 1 1 2 1 be589b51 0468d672 697c3343 ae0d399f 25c83c98 6f6d9be8 82af59e9 0b153874 a73ee510 dc116498 a0085b3e ca777165 6580b282 07d13a8f b775a16c 18da194f e5ba7672 72002960 21ddcdc9 5840adea 2e3e6da2 32c7478e 35380c43 ea9a246c fcd456fa - 1 5 0 15212 0 3 64 0 3 05db9164 083aa75b b00d1501 d16679b9 25c83c98 fe6b92e5 60daccf7 5b392875 a73ee510 3b08e48b e07b8196 e0d76380 00e20e7b 1adce6ef 84203dfc 1203a270 776ce399 06747363 21ddcdc9 5840adea 73d06dde 32c7478e aee52b6f e8b83407 54ff8363 - 2 14 14368 551 3 15 245 1 15 68fd1e64 0a519c5c 02cf9876 c18be181 43b19349 7e0ccccf 5282678c 0b153874 a73ee510 3b08e48b 2c7ca449 8fe001f4 8a2b6e98 07d13a8f 6dc710ed 36103458 07c540c4 3412118d e587c466 be7c41b4 3b183c5c - 0 2 2 252286 0 3 2 0 2 05db9164 207b2d81 ed0efebd 75cf45d4 25c83c98 fe6b92e5 4b3c7cfe 062b5529 7cc72ec2 99b46818 8b94178b 2e364a21 025225f2 b28479f6 3c767806 4f4ee7ab e5ba7672 395856b0 21ddcdc9 a458ea53 1622c145 32c7478e 2dcedde1 001f3601 4808a23d - 0 35 17 7506 21 3 17 54 2 17 68fd1e64 58e67aaf 30da8e4e 51f0e962 25c83c98 7e0ccccf ee756623 5b392875 a73ee510 5162b19c ac48f34e 12bb6f0d a8840224 07d13a8f 10935a85 0bd09eaf 07c540c4 c21c3e4c 2b558521 a458ea53 fdbddc2e 8ec974f4 c7dc6720 4008e1ec 9b3e8820 6e059015 - 177 4 26055 0 14 511 0 4 87552397 0a519c5c 77f2f2e5 d16679b9 b2241560 7e0ccccf 3f4c6e44 0b153874 a73ee510 3b08e48b 2c7ca449 9f32b866 8a2b6e98 b28479f6 b760dcb7 31ca40b6 1e88c74f 2efa89c6 dfcfc3fa be7c41b4 aee52b6f -0 1 4 7 6272 13 3 9 23 0 1 7 05db9164 c66fca21 4cf72387 7e0ccccf 3015bd7a 0b153874 a73ee510 bc5704d7 10465598 f8362c26 07d13a8f e25cc91e e5ba7672 1304f63b 21ddcdc9 5840adea 32c7478e 010f6491 ac6ed884 - 0 3 2 10002 143 1 0 169 1 0 2 be589b51 8947f767 0c0c05ef c1da692c 25c83c98 7e0ccccf 8ff6f5af 0b153874 a73ee510 5ba575e7 46febd4d 3a5b6fe0 949ea585 b28479f6 a473257f 80297b02 3486227d bd17c3da 9f1c117d 5840adea 1be97605 32c7478e b2df17ed 010f6491 33757f80 -0 1 133 7 12503 626 4 35 597 0 1 0 42 05db9164 287130e0 0a67b38c 7407cd58 384874ce 7e0ccccf 368e23c1 0b153874 a73ee510 ac82a793 56cb5b8a d6bced2e c95e66fd 07d13a8f 10040656 fb0ee433 e5ba7672 891589e7 21ddcdc9 a458ea53 e397d9f7 3a171ecb 0174dd24 3d2bedd7 d8ecbc17 -1 0 5 17 5 1 5 5 1 1 5 05db9164 bfdcfc4a d9bee715 70daa71f f281d2a7 7e0ccccf 372a0c4c 5b392875 a73ee510 a08eee5a 18fe3b54 08334b09 94881fc3 07d13a8f aa18cf81 1e8f2686 d4bb7bd8 ffd53157 21ddcdc9 b1252a9d e7d12686 3a171ecb 02e3ce26 e8b83407 d121595f -2 1 1 321 6 9 8 42 1 2 1 be589b51 9a82ab91 02cf9876 c18be181 384874ce 7e0ccccf 9f525672 0b153874 a73ee510 c731d31c 843d8639 8fe001f4 9cab1003 07d13a8f 33d2c881 36103458 e5ba7672 004fdf10 e587c466 423fab69 3b183c5c -0 1 1 1 7745 144 5 20 88 0 1 0 1 05db9164 ae46a29d 6016adea f922efad 25c83c98 fe6b92e5 65451174 0b153874 a73ee510 e8f9266c 96736975 66a76a26 fab2664b 1adce6ef 8ff4b403 01adbab4 07c540c4 26b3c7a7 21c9516a 32c7478e b34f3128 -1 1400 1 3 869 4 33 5 656 1 5 0 4 8cf07265 1cfdf714 8a357f45 13508380 25c83c98 7e0ccccf 7195046d 0b153874 a73ee510 4d0f5c58 4d8549da 7dc0fdf7 51b97b8f 07d13a8f e439dd9b 70654578 27c07bd6 9df49ecd 55dd3565 b1252a9d 912c203f 3a171ecb 45ab94c8 cb079c2d c84c4aec -8 55 2 2 2 71 40 173 1 6 0 88abfaf6 38a947a1 3fe60a82 ea2318f1 25c83c98 7e0ccccf cc0bd899 0b153874 a73ee510 9aebe2f9 2770cb50 651b9577 6cb5243a 07d13a8f 2d812941 ee57199e e5ba7672 20404d79 39f9acac 423fab69 f353347d - 0 4 20710 0 0 0 0 05db9164 9819deea 59a0ae63 f922efad 25c83c98 6f6d9be8 24db17b4 0b153874 a73ee510 05f0143b d6ea7935 b99ddbc8 74838342 b28479f6 1150f5ed 87acb535 1e88c74f 7e32f7a4 a4b7004c 32c7478e b34f3128 -2 53 2 1 1 1 4 2 3 1 2 0 1 09ca0b81 287130e0 a762873a 4b28a82e 25c83c98 fbad5c96 e7d22058 13037314 a73ee510 c9e11adf e09c447b 07ef1e4c 8dab0422 cfef1c29 655fad18 2acebaa5 e5ba7672 891589e7 04de9d96 b1252a9d 47f68a83 bcdee96c a73deb01 ea9a246c 87d0bb68 -1 1 17 7 408 31 4 10 11 1 3 0 7 68fd1e64 38a947a1 7764974c 56a7d839 25c83c98 fbad5c96 2b99f7f4 0b153874 a73ee510 3b08e48b 2996a71e e01110ad 44af41ef f862f261 ea44578e 948c5aee e5ba7672 1f1b60da 29955c2c ad3062eb 32c7478e 5b5eff52 - 1 1 1 17867 22 4 1 1 1 1 05db9164 38a947a1 7cf7bbe7 b41ea5b8 43b19349 fbad5c96 4f9b38fe 0b153874 a73ee510 416b5b64 4ca0f167 e6ada889 eb4b1bfd 1adce6ef 446be5fb b214d84a e5ba7672 9efc6015 0a4ebd9b ad3062eb 423fab69 fea28307 - 12 2 7 12939 0 2 203 0 7 68fd1e64 0468d672 77e9e63d 0ce1ab36 25c83c98 fbad5c96 7bd17596 1f89b562 a73ee510 3b08e48b 90e43499 4346fb82 ac6687f6 1adce6ef b8acb23c 1b12fdf1 776ce399 0b331314 21ddcdc9 5840adea fac2ce8c 93bad2c0 a5d62880 ea9a246c 9a556cfc -0 -1 12883 125 19 13 316 0 5 8cf07265 9e681c70 862a1294 7cb07a1c 4cf72387 7e0ccccf eee2db9e 0b153874 a73ee510 3b08e48b c6240b97 76a79c33 022a36e3 b28479f6 40318a15 49033934 3486227d bbdd12dc a50737e9 32c7478e aee52b6f -22 4 10 3 1298 96 29 40 52 0 2 0 3 68fd1e64 558b4efb b009d929 c7043c4b 65be028e fbad5c96 92132b65 0b153874 a73ee510 fa7d0797 cf0467b4 3563ab62 9ded12ab 07d13a8f c1ddc990 b688c8cc e5ba7672 c68ebaa0 21ddcdc9 5840adea 2754aaf1 3a171ecb 3b183c5c ea9a246c 2f44e540 -0 1 5 3784 147 2 21 72 0 1 0 05db9164 a5b69ae3 003f419b ff852091 25c83c98 7e0ccccf 5636dd60 0b153874 a73ee510 3b08e48b 0a6a17de 349450bc 1e152deb b28479f6 9703aa2f 6615ffe6 07c540c4 a1654f4f 21ddcdc9 5840adea 3dd38d65 ad3062eb 3a171ecb c2fe6ca4 2bf691b1 984e0db0 -0 41 11 11 2973 50 37 7 284 0 6 11 09ca0b81 942f9a8d 17fc1783 6e2f2285 384874ce fbad5c96 8b55891c 0b153874 a73ee510 726f00fd c4adf918 b08428db 85dbe138 1adce6ef ae97ecc3 04c29be3 e5ba7672 1f868fdd 21ddcdc9 a458ea53 816b88d8 32c7478e 3fdb382b b9266ff0 49d68486 -0 0 4 6 2780 40 4 11 41 0 1 23 8cf07265 298d0556 02cf9876 c18be181 25c83c98 7e0ccccf cb694a2a 1f89b562 a73ee510 3b08e48b 0af46682 8fe001f4 a1d12736 b28479f6 48a5d003 36103458 e5ba7672 a8f42b59 e587c466 3a171ecb 3b183c5c -0 -1 1 2 8180 882 1 18 181 0 1 13 68fd1e64 d833535f ad4b77ff d16679b9 25c83c98 fbad5c96 840c9106 985e3fcb a73ee510 2e69fff3 45ca0a69 a2f4e8b5 17bb51e8 1adce6ef 5e7a356b 89052618 07c540c4 281769c2 d4703ebd 32c7478e aee52b6f - 81 2 3594 86 2 1 8 1 05db9164 6c9c9cf3 2730ec9c 5400db8b b2241560 fbad5c96 33cca6fa 0b153874 a73ee510 401ced54 f8ba74ae be45b877 2b9fb512 b28479f6 d3e39ddb 9bc7fff5 d4bb7bd8 92555263 242bb710 3a171ecb 72c78f11 -5 1 1183 2 10 1 1 0 2 10 f473b8dc 512fdf0c 6e82e332 8aea8ae9 25c83c98 fbad5c96 3cf1ccde 1f89b562 a73ee510 3b08e48b 61422b9a 50391d84 799a3beb b28479f6 fc29c5a9 2b486b52 8efede7f fd3919f9 21ddcdc9 5840adea 8a65310d 3a171ecb 0916262c 724b04da 9a556cfc - 6 2 7158 29 9 2 29 1 2 05db9164 58e67aaf 64f8deec 4e902403 25c83c98 6f6d9be8 08145aa3 0b153874 a73ee510 e502ac14 69926409 6f488b47 2fc3058f b28479f6 62eca3c0 67f1d772 e5ba7672 c21c3e4c 55dd3565 a458ea53 0f7821b7 32c7478e 3fdb382b 9b3e8820 08b9244f -0 3 22 17 1092 33 7 40 110 0 4 0 28 68fd1e64 4f25e98b 30b94526 2eca1400 30903e74 7e0ccccf 03db5ecd 0b153874 a73ee510 f24b3308 7252cfd2 8ac43d32 ccb9cc75 07d13a8f 5be89da3 64677af1 e5ba7672 bc5a0ff7 2b47c6cd a458ea53 d8bb4c26 32c7478e 1057b323 001f3601 90ff72b0 -0 1234 4 0 3487 168 10 26 31 0 1 1 05db9164 dd8c896e b2f1cb30 13508380 25c83c98 13718bbd afa309bd 0b153874 a73ee510 2436c534 77212bd7 6d3d7365 7203f04e 07d13a8f 95275a51 a3648589 e5ba7672 3182300e 55dd3565 b1252a9d 354cc1c4 423fab69 45ab94c8 010f6491 c84c4aec -9 0 31 7 0 0 34 9 66 1 4 0 05db9164 09e68b86 9aebf8bd 42ce9427 43b19349 7227c706 5b392875 a73ee510 5fcee6b1 9625b211 3bb5c0c0 dccbd94b b28479f6 52baadf5 9b94acfb e5ba7672 5aed7436 65a3ca24 b1252a9d 53584749 32c7478e 3fdb382b e8b83407 49d68486 -0 -1 3 2 8631 63 1 5 17 0 1 2 05db9164 a5b69ae3 003f419b ff852091 25c83c98 13718bbd 184fb3cf 0b153874 a73ee510 c5f36ac2 f66047e5 349450bc 13c89cc4 b28479f6 9703aa2f 6615ffe6 d4bb7bd8 a1654f4f 21ddcdc9 5840adea 3dd38d65 bcdee96c c2fe6ca4 2bf691b1 984e0db0 - -1 3 3 2901 17 2 3 7 1 3 05db9164 95e2d337 8ddcf64c b0f95598 25c83c98 fbad5c96 55339417 0b153874 a73ee510 3b08e48b f16dfa4f d048cb2f 27f3357e b28479f6 17a3bcd8 f021151a 07c540c4 7b06fafe b99b8dbb b1252a9d 6e178569 ad3062eb 32c7478e 24db27bb 2bf691b1 0c1bbe81 - 0 11 2 34891 1728 3 2 94 0 2 8cf07265 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 0b202e1b 1f89b562 a73ee510 fa7d0797 b35abc8a 8fe001f4 7d5ee5b6 b28479f6 16d2748c 36103458 e5ba7672 003d4f4f e587c466 c9d4222a 32c7478e 3b183c5c - 6 5 0 38479 1061 0 6 192 0 5 8cf07265 8084ee93 d032c263 c18be181 25c83c98 7e0ccccf 527b5b99 0b153874 a73ee510 dc6c5c76 f7756ac1 dfbb09fb 3c6e7a7d b28479f6 b2ff8c6b 84898b2a e5ba7672 52e44668 0014c32a c9d4222a 32c7478e 3b183c5c -0 761 6 14633 482 5 9 133 0 2 6 05db9164 9b25e48b 5bcc4208 bd6d1dea 25c83c98 fe6b92e5 bd53d88a 0b153874 a73ee510 df30aba6 ec967dd8 2678fc2a 9106f5bd b28479f6 e8ffeeb4 82e36ede e5ba7672 7d8c03aa 21ddcdc9 b1252a9d 6fef043a 32c7478e 3fdb382b 001f3601 49d68486 - 78 7 6 10857 24 1 7 22 1 6 439a44a4 0468d672 e1f65027 867d05be 25c83c98 0c8aa424 1f89b562 a73ee510 bbd117b4 245da965 9542e204 70e0d2b1 b28479f6 234191d3 668f77c8 d4bb7bd8 9880032b 21ddcdc9 5840adea 5c6c3408 32c7478e a9a2ac1a ea9a246c 409c7293 -2 7 108 2 649 125 2 45 46 1 1 0 33 5bfa8ab5 bfdcfc4a 11dab263 6e147362 25c83c98 7e0ccccf 88059e21 0b153874 a73ee510 3b08e48b d19fc8c6 463388fd e506d458 1adce6ef 2a7a147e 9b54e10c 07c540c4 ffd53157 21ddcdc9 5840adea dddd9338 32c7478e 38be899f 8f8c5acd aa5f0a15 -4 45 1 400 3 10 29 133 1 5 0 5a9ed9b0 92f101be 02342845 b8e42c74 43b19349 13718bbd b9aa06ff 0b153874 a73ee510 3b08e48b 611103d4 07bdbe6b 97894d02 cfef1c29 6813f031 d797b346 e5ba7672 20157126 21ddcdc9 5840adea fdc4f2dd 32c7478e 9149f647 001f3601 074bb89f -0 0 4 2 3548 155 18 16 251 0 3 1 2 b19f768d 09e68b86 aa8c1539 85dd697c 25c83c98 7e0ccccf 53e14bd5 0b153874 a73ee510 a2cb676b 319687c9 d8c29807 62036f49 07d13a8f 801ee1ae c64d548f 8efede7f 63cdbb21 cf99e5de 5840adea 5f957280 32c7478e 1793a828 e8b83407 b7d9c3bc -0 12 8 4 1933 48 4 17 141 0 3 0 4 05db9164 980cc9df 53e06f71 4b930c6a 43b19349 fe6b92e5 9a4f2943 0b153874 a73ee510 d37a911d 4a00b569 8a78a25e 42ef23bb b28479f6 11b901c4 36e6f2fa e5ba7672 05f89946 c5a8c8bb c9d4222a 32c7478e 8a23eec0 -0 0 14 8 7460 78 14 11 128 0 2 0 8 49807078 a0e12995 622d2ce8 51c64c6d 384874ce 7e0ccccf 45e063a0 5b392875 a73ee510 70c618f9 da89cb9b e9521d94 165642be 07d13a8f 73e2709e ab8b968d e5ba7672 1616f155 21ddcdc9 5840adea ee4fa92e 32c7478e d61a7d0a 9b3e8820 b29c74dc -0 14 1 12453 0 34 1 0 0 0 1 05db9164 0b8e9caf 353b2680 2d3b257b 25c83c98 fbad5c96 2a275e20 0b153874 a73ee510 6c47047a b210fd19 8abda2a8 6671dc76 b28479f6 7d4df900 0b442a80 3486227d ca6a63cf ac498960 3a171ecb 08b0ce98 -1 76 7 12 715 23 1 16 16 1 1 12 05db9164 2c16a946 e8d18f6a 64712dc5 25c83c98 fe6b92e5 ca280131 5b392875 a73ee510 3b08e48b 868a9e47 cd51a3e1 fc5dea81 b28479f6 3628a186 384d2714 e5ba7672 e4ca448c f3e9f13d bcdee96c 9117a34a - 147 118 52 64 0 48 72 0 56 39af2607 80e26c9b 74e1a23a 9a6888fb 25c83c98 7e0ccccf c7f4d077 0b153874 a73ee510 3b08e48b c7cf63e9 fb8fab62 6b5d07b4 1adce6ef 8ba8b39a c6b1e1b2 776ce399 f54016b9 21ddcdc9 b1252a9d 99c09e97 3a171ecb 335a6a1e e8b83407 d15c0cc8 - 1 22 1 44827 82 0 1 39 0 1 05db9164 09e68b86 28442562 1ff3d3d9 4cf72387 7e0ccccf 4d9d55ae 0b153874 7cc72ec2 98bd7a24 55065437 42f68cfc 80dcea18 07d13a8f 36721ddc e5c93386 e5ba7672 5aed7436 21ddcdc9 b1252a9d 30bafbeb 423fab69 1793a828 e8b83407 e9bb7f1f -0 21 1 1 3000 226 17 5 26 0 2 2 05db9164 38a947a1 fc8e7d03 6a14f9b9 4cf72387 7e0ccccf 38377571 0b153874 a73ee510 d888e259 f61e81dd adc989f1 c6881550 07d13a8f 5bcd6532 f8b34416 e5ba7672 c9ac134a f3ddd519 3a171ecb b34f3128 - 1 29 1 7909 0 1 67 0 1 5bfa8ab5 09e68b86 8a89becc 83c88500 4cf72387 26a81064 0b153874 a73ee510 dcbc7c2b 9e511730 fc93b05f 04e4a7e0 07d13a8f 36721ddc 457cae35 07c540c4 5aed7436 dcb7a0e1 5840adea 1265eeb5 3a171ecb f67c718f e8b83407 2730404b - 127 4 4 18950 0 25 4 0 4 05db9164 04e09220 71947b86 bf9e41b6 25c83c98 7e0ccccf 579c293b 0b153874 a73ee510 9a97b0bf f66047e5 8529d3b4 13c89cc4 07d13a8f cae64906 33a1f420 e5ba7672 e161d23a f22e0924 55dd3565 ded4aac9 - 47 7 0 35988 77 9 10 69 0 8 05db9164 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf d70c05b1 0b153874 a73ee510 e113fc4b c4adf918 e0d76380 85dbe138 b28479f6 2ebbf26a 1203a270 e5ba7672 b486119d 73d06dde 32c7478e aee52b6f -0 16 14 3 5739 382 21 16 24 0 1 0 11 17f69355 e5fb1af3 191ae67b cdd6d7f1 25c83c98 7e0ccccf 7b26d3fe 0b153874 a73ee510 fbbf2c95 ae19a197 cae21047 7f0d7407 b28479f6 23287566 2de5cc54 e5ba7672 13145934 071c1933 b1252a9d b279de5e 3a171ecb f174ca4f e8b83407 57419168 -8 0 3 29 47 21 8 38 104 2 2 21 05db9164 bf7a2333 210c632d 3d513154 25c83c98 7e0ccccf c8e48a82 0b153874 a73ee510 c6c8dd7c ae4c531b 8747d4c8 01c2bbc7 07d13a8f 9a0b7e16 d58d490f 07c540c4 51369abb d4b6b7e8 423fab69 37821b83 - 40 26 5 8968 0 4 18 0 5 5a9ed9b0 09e68b86 98514345 18f3e9c0 25c83c98 632a71f5 0b153874 a73ee510 a85e0b9b e81438fc 0695e674 f745e01e f7c1b33f 5726b2dc 330d29cd e5ba7672 5aed7436 5af15ee4 a458ea53 3ebb820b 32c7478e 4bbda217 e8b83407 a0565386 - 1 1 5088 0 25 101 0 26 40e63958 0a519c5c 77f2f2e5 d16679b9 25c83c98 fbad5c96 e6ff8cc3 0b153874 a73ee510 bd841179 d96a7426 9f32b866 2839ca0f b28479f6 7f6af6b0 31ca40b6 1e88c74f eea3ab97 dfcfc3fa 32c7478e aee52b6f - 0 17 91238 0 1464facd 083aa75b 25c83c98 7e0ccccf b2a27ca4 51d76abe 7cc72ec2 9cab0158 b5bb9d63 ab04d8fe 1adce6ef 84203dfc e5ba7672 06747363 21ddcdc9 b1252a9d 32c7478e e8b83407 cb639eed -6 97 3 12 40 12 7 44 63 1 2 9 05db9164 09e68b86 892fc718 fd143ae6 4cf72387 6f6d9be8 d385ea68 0b153874 a73ee510 3b08e48b 7940fc2a 94235c77 00e20e7b b28479f6 2d49999f c00ab85b e5ba7672 63cdbb21 3014a4b1 5840adea abec5c93 32c7478e 1d987843 e8b83407 69134261 -1 68 19 3 105 6 4 6 97 1 3 6 05db9164 bfdcfc4a 003f419b ff852091 25c83c98 7e0ccccf 14ad5567 5b392875 a73ee510 24c14a4a 9ddd72e9 349450bc 37e99bb7 07d13a8f aa18cf81 6615ffe6 e5ba7672 ffd53157 21ddcdc9 5840adea 3dd38d65 3a171ecb c2fe6ca4 e8b83407 cb451a6d -0 28 36 1 34976 0 3 1 0 0 1 8cf07265 38a947a1 46a2cf53 f9aff643 5b997939 7e0ccccf 04679a14 0b153874 7cc72ec2 f45a0358 19a2ded8 c886a342 90c7f9d1 07d13a8f de4e0ca0 ba92dd6b 07c540c4 fe623d4e ee91f72a 423fab69 d052bbbf - -1 1707 0 0 9 0 05db9164 cc8e236e 1c239854 cf3dc9c2 25c83c98 13718bbd fda682d3 0b153874 a73ee510 fbbf2c95 731f1c84 98d78b2b 9ded12ab 07d13a8f 3a8c68b7 da1333b6 e5ba7672 775e80fe 21ddcdc9 5840adea 3ee29a07 c7dc6720 c83e0347 ea9a246c 2fede552 -22 95 10 0 80 1 22 0 0 1 1 0 17f69355 a07503cc 5f7ea2aa 13508380 25c83c98 fe6b92e5 779aaf93 1f89b562 a73ee510 70d3f60a 5fd44797 0f5d50c5 b0ba731e 07d13a8f 77660bba 960f5d0a e5ba7672 912c7e21 55dd3565 b1252a9d 52f3a2d3 c7dc6720 45ab94c8 445bbe3b c84c4aec - 0 1 11692 90 16 5 333 6 1 8cf07265 08d6d899 6a8a1217 14bfebf4 25c83c98 13718bbd f93c8e47 0b153874 a73ee510 b15b3b27 63566efd 5b355b50 075ffbfa 1adce6ef 4db04ed5 0ded9094 e5ba7672 38748bc3 831d5286 bcdee96c 9e9a60e4 - 45 2 4 9617 576 10 17 895 4 0 5 05db9164 56273427 02cf9876 c18be181 25c83c98 fbad5c96 2f23e7a8 25239412 a73ee510 3ba1b441 88b7f981 8fe001f4 81f76635 b28479f6 8b3a08e7 36103458 e5ba7672 3d033dfe e587c466 32c7478e 3b183c5c - 7 2 2 9817 0 2 2 0 2 be589b51 80e26c9b a1ac7a54 169ffff5 25c83c98 7e0ccccf 95b0fb8d 37e4aa92 7cc72ec2 3b08e48b 71fd20d9 461f2713 ddd66ce1 07d13a8f 02319a52 9aa1421c 776ce399 1f9656b8 21ddcdc9 b1252a9d ebdca722 8ec974f4 be7c41b4 1793a828 e8b83407 70b6702c - 18 3 2 571 0 2 63 0 2 05db9164 38a947a1 f0967d85 0a1a75eb 4cf72387 fbad5c96 a6d9bf82 0b153874 a73ee510 02b3a27d c6c91669 8e4710ff b8a76289 1adce6ef 61962017 10f9d324 1e88c74f ea4a94a2 5c61e9e7 32c7478e c99b4da0 -2 0 1 19 12 21 72 44 1059 2 19 0 19 5a9ed9b0 89ddfee8 dea281d5 060bc027 4cf72387 fbad5c96 407438c8 0b153874 a73ee510 e7ba2569 755e4a50 000076c4 5978055e 07d13a8f 4df3da6b 5d83b6c8 3486227d 5bb2ec8e 21ddcdc9 b1252a9d ca507e25 32c7478e 4c5c856c f0f449dd 5e24a43d - 11 2 0 1 0 0 0 0 0 05db9164 38d50e09 396df967 328b42c3 43b19349 fbad5c96 4bd57ddc 0b153874 a73ee510 3b08e48b 910afbbb 8481d649 bd727667 1adce6ef 6efcae21 b2f2a0c7 776ce399 f855e3f0 21ddcdc9 5840adea f0bb1194 423fab69 a5ce2d0d 001f3601 984e0db0 - 7 1 39562 10 0 1 9 0 1 5a9ed9b0 95e2d337 8ddcf64c b0f95598 25c83c98 6f6d9be8 aabe15c8 0b153874 a73ee510 57eaa63f 3e97bb96 d048cb2f fa9f89ca 07d13a8f 4e505ea3 f021151a d4bb7bd8 7b06fafe b99b8dbb a458ea53 6e178569 32c7478e 24db27bb 2bf691b1 0c1bbe81 -0 3 12 2 3224 310 1 1 150 0 1 21 05db9164 80e26c9b a70de08f 58f15648 25c83c98 fbad5c96 10ff3d28 5b392875 a73ee510 baa1d4df 61593534 d7d1851b 9259d03d cfef1c29 e857f574 066fc23b d4bb7bd8 f54016b9 21ddcdc9 a458ea53 172babee 423fab69 1793a828 f0f449dd e8990e6d - 2 21 8 1435 79 2 16 16 1 8 05db9164 a5b69ae3 08b6e0e7 7bfa18fa 25c83c98 7e0ccccf 366a171d 0b153874 a73ee510 3b08e48b 1ed3ae25 0a00eba0 aaa80b97 07d13a8f 64748fbe 3921fe26 776ce399 a1654f4f 21ddcdc9 5840adea e5753ef8 3a171ecb 3b183c5c 2bf691b1 aa5f0a15 -0 27 8 1 3002 89 2 7 21 0 1 1 05db9164 09e68b86 d6f67361 d3480a47 4cf72387 7e0ccccf 4eac7c46 0b153874 a73ee510 938a06ae dbafcd7e 180a613c e7a57442 07d13a8f 36721ddc 7776bd60 07c540c4 5aed7436 7a471cd5 a458ea53 5d1cb3ba 3a171ecb 66304f69 e8b83407 ba715cd9 -0 27 12 12 1500 99 46 38 247 0 8 0 45 68fd1e64 09e68b86 aefac06e 94ea135f 25c83c98 7e0ccccf 17cd3087 0b153874 a73ee510 305a0646 26fc476a 13488561 1bf19848 07d13a8f e6757116 f25d0dca 8efede7f f0e2be93 1a9b8580 a458ea53 bfbe2f58 c7dc6720 1793a828 e8b83407 ba003504 -1 0 11 5 7 5 1 5 5 1 1 5 05db9164 3ab4d7f5 4c3bb208 85dd697c 25c83c98 fbad5c96 87e1825e 0b153874 a73ee510 383878dc 9fd640ca c8cef9b9 56b1ebb5 07d13a8f 36cc336d 2d0bbe92 1e88c74f 24d4558e 21ddcdc9 5840adea aaf4df5d 3a171ecb 1793a828 c9f3bea7 b9809574 -0 23 5 8 3250 24 1 9 24 0 1 8 68fd1e64 e5fb1af3 37ce92b5 d653d020 30903e74 7e0ccccf 6951cde4 0b153874 a73ee510 3b08e48b b3bbdaaa ff7c3dfd 89334965 1adce6ef 60403b20 a479e15f 1e88c74f 13145934 a9d84a0c 5840adea 2472c7d0 32c7478e 0fab2d26 e8b83407 d8a062c4 -0 2 0 1540 16 41 0 1288 0 3 1 4 05db9164 3df44d94 d032c263 c18be181 25c83c98 7e0ccccf 2cd6b270 0b153874 a73ee510 015dc527 99bbf84a dfbb09fb 129be74a 07d13a8f fc1f50d6 84898b2a 27c07bd6 79a92e0a 0014c32a 3a171ecb 3b183c5c -2 1 16 26 11 0 36 28 759 1 11 0 0 05db9164 2ae0a573 c5d94b65 5cc8f91d 25c83c98 7e0ccccf fda1a50f 0b153874 a73ee510 3b08e48b d2b7c44b 75c79158 68637c0d cfef1c29 94bf744c 208d4baf e5ba7672 94ab5489 6a909d9a 423fab69 1f68c81f -0 2559 5735 19 1 1 2 0 1 8cf07265 38a947a1 22deba82 6a14f9b9 25c83c98 7e0ccccf c7d96c76 5b392875 a73ee510 3b08e48b 286bec0f 44fcd82b c1dacb89 07d13a8f a1517d9c f8b34416 e5ba7672 e5f8f18f f3ddd519 3a171ecb b34f3128 -0 200 45 10740 329 1 4 54 0 1 68fd1e64 09e68b86 aa8c1539 85dd697c 25c83c98 fbad5c96 968a6688 0b153874 a73ee510 03ed27e7 f25fe7e9 d8c29807 dd183b4c 8ceecbc8 d2f03b75 c64d548f e5ba7672 63cdbb21 cf99e5de 5840adea 5f957280 32c7478e 1793a828 e8b83407 b7d9c3bc -42 12 27 4 126 9 82 41 210 2 6 9 5bfa8ab5 287130e0 ab2bcb12 d28b0be6 25c83c98 fbad5c96 ce4f7f55 5b392875 a73ee510 acc16d4c 38f692a7 a93f4cc3 6e5da64f 1adce6ef 310d155b 9ca64d89 e5ba7672 891589e7 65c9d3c2 a458ea53 6c43760f 423fab69 212ead2c ea9a246c 008fdcf0 - 0 6 5 16035 698 3 5 144 1 5 68fd1e64 56273427 b00d1501 d16679b9 25c83c98 7e0ccccf efe2d2a2 0b153874 a73ee510 6e422129 9a660f03 e0d76380 3dffcbec b28479f6 d816fd68 1203a270 e5ba7672 e392c918 73d06dde c7dc6720 aee52b6f -14 254 5 41 133 61 14 40 95 1 1 61 05db9164 26a88120 b00d1501 d16679b9 43b19349 7e0ccccf d70c05b1 0b153874 a73ee510 a15782e2 c4adf918 e0d76380 85dbe138 07d13a8f 24ff9452 1203a270 e5ba7672 b486119d 73d06dde 32c7478e aee52b6f -0 3 3 6 4754 0 10 6 0 0 6 05db9164 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf 48ed6f4d 0b153874 a73ee510 d5d5c8cc c4bd1c72 e0d76380 bcfc54a9 07d13a8f 943169c2 1203a270 07c540c4 281769c2 73d06dde 3a171ecb aee52b6f -0 2 4 4 1667 227 123 33 1043 0 7 4 4 05db9164 a8b6b751 157695d9 8f98628f 25c83c98 7e0ccccf 3f4ec687 0b153874 a73ee510 726f00fd c4adf918 83d7d5c2 85dbe138 07d13a8f 4b1f9049 7fd23f14 27c07bd6 d787f192 21ddcdc9 5840adea 307b6d5e 32c7478e 18de9e19 001f3601 01c838a0 -1 0 681 2 813 408 1 49 42 1 1 42 5bfa8ab5 207b2d81 80b25c0d 8fa3275d 25c83c98 f610c0f7 8bedcc53 a73ee510 29a7c23d cf690be6 8e15c24e 4fa1154e 07d13a8f 0c67c4ca 8e2fc5b4 e5ba7672 395856b0 21ddcdc9 b1252a9d 09192c91 32c7478e abd6caea 001f3601 7587faaa -6 19 24 21 2 3 79 43 1778 1 25 3 39af2607 4e8d18ed 6b75bc57 13508380 43b19349 7e0ccccf 4ac9db9e 0b153874 a73ee510 3b08e48b bc346946 e3a811ee bcc725fc 07d13a8f 87b94fec ad77e1f9 e5ba7672 a56e3253 4764bf77 b1252a9d 8666c5f5 423fab69 45ab94c8 e8b83407 c84c4aec -5 -1 7 11 18 11 5 11 11 1 1 11 68fd1e64 ef69887a adf01cb3 f01e4110 25c83c98 6f6d9be8 8f484f8e 0b153874 a73ee510 3b08e48b a28aaafe 332f5a53 6821d031 07d13a8f b98be2c0 54db5420 e5ba7672 4bcc9449 712d530c a458ea53 0d30b793 8ec974f4 32c7478e e22fed0c 47907db5 bf7e4243 -2 110 12 9 4 5 131 25 283 2 17 0 5 05db9164 09e68b86 7ed7ecf1 d31d8a12 25c83c98 ddecb707 0b153874 a73ee510 bcc8b4c6 e81438fc 86e47b2d f745e01e 07d13a8f 36721ddc 72e9a981 3486227d 5aed7436 7a9fe578 a458ea53 5997ff70 32c7478e 3d29547e e8b83407 04e822ec -5 42 9 19 10 13 5 19 19 1 1 13 5bfa8ab5 39dfaa0d fc1cad4b 40ed41e5 4cf72387 7e0ccccf afa309bd 0b153874 a73ee510 991111e6 77212bd7 153ff04a 7203f04e b28479f6 2223bbe1 1bf03082 e5ba7672 df4fffb7 21ddcdc9 5840adea 84ec2c79 3a171ecb a415643d 010f6491 99f4f64c -0 1 5 12 2177 0 0 80 41edac3d 38a947a1 8729257c 5ad94dc8 25c83c98 fbad5c96 dc2b40a4 1f89b562 a73ee510 e3725873 6685ea28 a4d9041a 7edc047a 07d13a8f e0ef7640 59dbe3c4 e5ba7672 cbd13810 cf3982c8 c7dc6720 f0afa5c7 - -1 0 0 340c148e 38a947a1 7e453b1a 6a14f9b9 25c83c98 fbad5c96 88002ee1 0b153874 7cc72ec2 3b08e48b f1b78ab4 f3ba40d9 6e5da64f 07d13a8f 46df822a f8b34416 2005abd1 c9ac134a f3ddd519 ad3062eb 32c7478e b34f3128 - 0 1 6 2 0 3 6 0 6 05db9164 d833535f ad4b77ff d16679b9 30903e74 7e0ccccf 9963c37d 5b392875 a73ee510 3b08e48b 9a024337 a2f4e8b5 7a7b8db5 b28479f6 a733d362 89052618 776ce399 281769c2 d4703ebd 32c7478e aee52b6f -0 9 2 3204 325 8 32 852 0 3 0 2 05db9164 4c2bc594 d032c263 c18be181 25c83c98 7e0ccccf a247195a 51d76abe a73ee510 d56146bc 208d9dd6 dfbb09fb 59dd51b4 64c94865 00631f93 84898b2a e5ba7672 5a5b8bf9 0014c32a 55dd3565 3b183c5c -0 -1 2833 15 6 1 45 0 4 68fd1e64 38a947a1 a47ffdf1 b503a661 25c83c98 7e0ccccf ea32d016 d7c4a8f5 a73ee510 ffc5e9fa 755e4a50 bae6c746 5978055e 07d13a8f bbdde2fe 7295d80b 07c540c4 0f441256 233f0d38 32c7478e acbaacbd -1 1 85 3 325 9 14 8 56 1 8 1 8 05db9164 89ddfee8 9ef94bf8 45a69eeb 384874ce 7e0ccccf 1c86e0eb 5b392875 a73ee510 79f7c195 755e4a50 f36c0ae8 5978055e 07d13a8f 4df3da6b a2d72a3f e5ba7672 5bb2ec8e a34d2cf6 b1252a9d fd741691 32c7478e 3f57fe68 e8b83407 75bab1b7 -8 0 1 1 819 13 30 9 28 1 8 0 1 5bfa8ab5 04e09220 b1ecc6c4 5dff9b29 4cf72387 fe6b92e5 a4fea880 0b153874 a73ee510 3b08e48b 7579b566 2436ff75 8803181f 07d13a8f cae64906 f4ead43c 27c07bd6 e161d23a 4f1aa25f 423fab69 ded4aac9 - 0 28 3 14434 0 5 52 0 3 68fd1e64 80e26c9b a8dcc48f 380d3ca6 25c83c98 7e0ccccf 632a71f5 0b153874 a73ee510 dfa3d0ad e81438fc bd263e9d f745e01e 07d13a8f f3635baf 2da84135 e5ba7672 f54016b9 21ddcdc9 a458ea53 d22503f1 32c7478e 1793a828 e8b83407 642d03e5 - 0 396 83 786 1013 5 33 2087 3 0 167 05db9164 58e67aaf e4596aac f526ea16 25c83c98 7e0ccccf f23492bc 062b5529 a73ee510 ec79b2d8 1bdc0607 1f3b6c7f 619a03e9 0601d3b5 53b51623 1dbe4b3c 27c07bd6 c21c3e4c 21ddcdc9 a458ea53 828111c1 bcdee96c 05566ac8 9b3e8820 0db62fb6 - 19 1 1 17249 219 4 13 107 2 1 be589b51 cb89a94d d032c263 c18be181 25c83c98 7e0ccccf 9fd51c1a 25239412 a73ee510 3b08e48b 5587bbc1 dfbb09fb 61d6d816 1adce6ef 486c8b7c 84898b2a e5ba7672 bc836583 0014c32a 423fab69 3b183c5c - 69 9 9 25241 0 28 383 0 23 05db9164 0a519c5c b00d1501 d16679b9 25c83c98 fbad5c96 b7dc9c31 0b153874 a73ee510 bbaa2887 19aaafd4 e0d76380 9a62ee76 b28479f6 7f6af6b0 1203a270 1e88c74f eea3ab97 73d06dde ad3062eb 32c7478e aee52b6f -0 353 3 1484 95 14 29 76 0 2 3 41edac3d 38a947a1 a2a0b1ae e0f24ab0 4cf72387 7e0ccccf 5d627b54 0b153874 a73ee510 62721cd6 a4d2f869 5d7da84f 6b7b3066 1adce6ef c2e2e437 3c93cd66 e5ba7672 5ce15dfc f7976261 ad3062eb 423fab69 c7b2782d -0 37 1980 8 3 0 5 0 2 0 68fd1e64 ed7b1c58 6939e115 4a7413e7 25c83c98 7e0ccccf 93eea40a 0b153874 a73ee510 3b08e48b 2c7ca449 7b50e576 8a2b6e98 b28479f6 298421a5 cf453e48 d4bb7bd8 8814ed47 b140d06d be7c41b4 0b8baf69 -0 5 4 1 1477 103 14 43 225 0 3 1 05db9164 bce95927 e911f759 13508380 4cf72387 13718bbd 622305e6 0b153874 a73ee510 2124a520 319687c9 522525ba 62036f49 07d13a8f fec218c0 ffcda2aa e5ba7672 04d863d5 55dd3565 b1252a9d 15aba6df 3a171ecb 45ab94c8 e8b83407 c84c4aec - 18 113 2 737416 2 2 8cf07265 0468d672 4df58006 30475eb1 30903e74 fbad5c96 b6913117 5b392875 7cc72ec2 3b08e48b 12d18ab5 228fcf53 4ad8a654 b28479f6 234191d3 9a09bc07 776ce399 9880032b 21ddcdc9 5840adea 6fba3c66 3a171ecb 798b43db ea9a246c aa5f0a15 -2 1 39 10 656 164 2 25 46 1 1 10 ae82ea21 207b2d81 74e1a23a 9a6888fb 25c83c98 7e0ccccf 3e5a89e0 0b153874 a73ee510 f6837a23 1e409ab1 fb8fab62 4f1b6347 b28479f6 231f3923 c6b1e1b2 07c540c4 25935396 21ddcdc9 5840adea 99c09e97 c9d4222a 32c7478e 335a6a1e 001f3601 3626d9ba -0 1 2337 24 1 0 0 0 1 87552397 ec9d1543 be4f97ae 38d7f154 25c83c98 7e0ccccf 7a019822 5b392875 a73ee510 3b08e48b c012107d 943f9bc8 c8dca410 07d13a8f cd7dbe9d bf2f3f61 d4bb7bd8 408b36fa 21617e22 be7c41b4 d2456b98 - -1 21147 0 11 65 0 05db9164 e5fb1af3 02391f51 b9c629a9 25c83c98 7e0ccccf 24eeddcb 0b153874 a73ee510 3b08e48b 826459d0 2397259a bbf281ce 07d13a8f b5de5956 d37efe8c 1e88c74f 13145934 21ddcdc9 5840adea b6119319 32c7478e 45ab94c8 59e2d823 b13f4ade - 1 16 9192 92 17 0 13 4 09ca0b81 80e26c9b f3515ef8 680ffc23 25c83c98 6f6d9be8 632a71f5 5b392875 a73ee510 a85e0b9b e81438fc 2fdeb6ff f745e01e 07d13a8f f3635baf 09f6ab35 e5ba7672 f54016b9 21ddcdc9 a458ea53 d02ea4e8 32c7478e 1793a828 e8b83407 da9fe092 - 1 6 4 11651 68 2 6 77 2 0 4 be589b51 8e4f887c 25c83c98 346ade38 56563555 a73ee510 55ecc706 636405ac 31b42deb b28479f6 695aaab0 07c540c4 4b340164 32c7478e - 0 5 1 21723 0 37 1 0 1 5a9ed9b0 08d6d899 9143c832 f56b7dd5 25c83c98 7e0ccccf 4c397c64 0b153874 a73ee510 3b08e48b 494bd436 ae1bb660 32569bcf b28479f6 bfef54b3 bad5ee18 776ce399 87c6f83c 0429f84b 32c7478e c0d61a5c -2 268 33 12 194 96 262 26 684 1 17 0 17 5a9ed9b0 3f0d3f28 43b19349 7e0ccccf a4b244b7 0b153874 a73ee510 33b9dfa5 5a859ab2 0e3b5f2a 32813e21 e8d4033b e5ba7672 744ad4a0 bcdee96c - 75 79 1 19095 342 2 7 47 2 1 05db9164 4f25e98b 86e4083a bcd4d287 43b19349 fbad5c96 59af6749 1f89b562 a73ee510 a20d767c c6b39980 14067b27 814907b3 1adce6ef 17d9b759 8d3950cb e5ba7672 7ef5affa 21ddcdc9 a458ea53 9cb54c8e bcdee96c e7bc1058 e8b83407 6b208992 - 4 123 29 0 100 108 0 103 68fd1e64 8084ee93 02cf9876 c18be181 f3474129 7e0ccccf af0809a5 0b153874 7cc72ec2 3b08e48b 9e12e146 8fe001f4 025225f2 b28479f6 16d2748c 36103458 2005abd1 003d4f4f e587c466 be7c41b4 3b183c5c - 119 5 1 48857 0 1 2 0 1 05db9164 2c8c5f5d bc262d1b 9ce24ab2 b2241560 fe6b92e5 a972360e 0b153874 7cc72ec2 dcbc7c2b 9e511730 506406f3 04e4a7e0 64c94865 c1124d0c ca3f22d9 1e88c74f f5f4ae5b 1e464577 3a171ecb 89856b53 -4 72 23 9 12 9 972 12 216 1 54 0 9 291b7ba2 89ddfee8 edcc9d83 a6cb5175 43b19349 7e0ccccf 1c86e0eb 0b153874 a73ee510 01df68a0 755e4a50 d036efb7 5978055e 07d13a8f 4df3da6b d6cb8e4d e5ba7672 5bb2ec8e 9653bb65 a458ea53 9e322cb9 32c7478e 0c3013ca f0f449dd d885a38e - 0 2 2 13180 13 8 2 12 2 0 2 05db9164 09e68b86 a853e09e 7d00ad9d 25c83c98 6f6d9be8 fb2108e5 0b153874 a73ee510 f26b7f57 f5204b1e e1f56952 e4fa2059 07d13a8f 36721ddc fdc57141 e5ba7672 5aed7436 55dd3565 a458ea53 96fa4f18 32c7478e 1b124a68 e8b83407 a02ef126 - 4 1 6134 59 3 0 11 1 be589b51 e112a9de 5c7adc62 22504558 25c83c98 fe6b92e5 ed73f170 5b392875 a73ee510 45bf62cc 87dc9425 23bc90a1 e93e5897 1adce6ef 11da3cff 776f5665 07c540c4 a7cf409e 5a5953a2 3a171ecb 8f079aa5 - 0 1 9361 26 36 8 211 12 be589b51 287130e0 051f3b2a 0814cec8 25c83c98 fe6b92e5 9fe517cb 0b153874 a73ee510 86cff510 54649d62 7aa58658 c679a49f cfef1c29 655fad18 930d2b02 e5ba7672 891589e7 21ddcdc9 a458ea53 8439b398 423fab69 1bc308e1 2bf691b1 4d42acd2 -0 1 6 10 1566 32 5 23 41 0 1 10 5a9ed9b0 26a88120 b00d1501 d16679b9 25c83c98 7e0ccccf 8b55891c 0b153874 a73ee510 7edea927 c4adf918 e0d76380 85dbe138 1adce6ef 9009bc6a 1203a270 e5ba7672 b486119d 73d06dde 32c7478e aee52b6f - -1 2 11 1848 19 2 12 21 1 11 68fd1e64 2ae0a573 c5d94b65 5cc8f91d 25c83c98 7e0ccccf 55bcd2c7 0b153874 a73ee510 92e1d970 8f2a5d32 75c79158 098e937e 5aebfb83 15cf35f3 208d4baf 07c540c4 ef97d1ee 6a909d9a bcdee96c 1f68c81f -0 2 10 6 8726 333 2 24 119 0 1 10 05db9164 24d41293 d032c263 c18be181 25c83c98 fbad5c96 7e5cbbd7 c8ddd494 a73ee510 3b08e48b 07a46575 dfbb09fb ace88beb b28479f6 23bf2849 84898b2a 07c540c4 40aab586 0014c32a 3a171ecb 3b183c5c -0 6 6 1 4423 202 4 12 20 0 3 8 05db9164 38a947a1 0c489a16 06f03557 4cf72387 fbad5c96 80162d04 0b153874 a73ee510 3b08e48b 5b97686e 4cacc5df 47727147 07d13a8f 9c27a090 431c40cc e5ba7672 c39e569b 51fe7a92 32c7478e d28d80ac -22 1254 3 3 23 0 27 39 72 3 5 0 5a9ed9b0 c5c1d6ae ae9684f6 f9a7e394 25c83c98 7e0ccccf eef6b4a6 0b153874 a73ee510 ac473633 ba34ed14 6937c791 103a86a6 1adce6ef 16b03553 9243b160 e5ba7672 1d015bd3 21ddcdc9 5840adea c94c0fdb 78e2e389 c7dc6720 7e60320b 7a402766 6527ade9 -2 4 2 2 0 0 2 2 2 1 1 0 585b6ccc 0a519c5c b00d1501 d16679b9 25c83c98 7e0ccccf a13be9ad 0017bc7c a73ee510 fa46949c e1ba038b e0d76380 e65a5fc3 b28479f6 b760dcb7 1203a270 07c540c4 2efa89c6 73d06dde ad3062eb 3a171ecb aee52b6f -0 4 1 2 12453 0 35 2 0 0 0 2 68fd1e64 0b8e9caf e87864e2 2d3b257b 25c83c98 fbad5c96 2a275e20 1f89b562 a73ee510 6c47047a b210fd19 c0468b17 6671dc76 b28479f6 7d4df900 0b442a80 3486227d ca6a63cf 3b2fba68 3a171ecb 08b0ce98 -3 0 24 7 656 20 34 6 58 1 8 0 7 05db9164 58e67aaf 743e69b2 52bec656 b0530c50 5cc3d947 0b153874 a73ee510 e362687a da89cb9b 007873c6 165642be 07d13a8f 10935a85 aa8de6b2 e5ba7672 c21c3e4c 5837ec60 a458ea53 19efdc9e 32c7478e 757643f9 9b3e8820 3db1dfc1 - 2 141 15 3602 66 11 23 76 8 0 15 5a9ed9b0 80e26c9b f6be9d58 85dd697c 25c83c98 fbad5c96 92ce5a7d 0b153874 a73ee510 794fedab e0c3cae0 25c9fa8c e8df3343 07d13a8f e8f4b767 2d0bbe92 8efede7f 005c6740 21ddcdc9 b1252a9d 86357788 c9d4222a 55dd3565 1793a828 e8b83407 9904c656 -1 13 0 20 10 7 1 4 711 1 1 0 7 68fd1e64 38a947a1 4470baf4 8c8a4c47 25c83c98 fbad5c96 98884935 5b392875 a73ee510 a8cd5504 c9ddcfd0 bb669e25 347e4e86 b28479f6 59621a99 2b2ce127 27c07bd6 b133fcd4 2b796e4a 3a171ecb 8d365d3b -0 0 2 9267 11 10 0 23 0 2 5bfa8ab5 a0e12995 622d2ce8 51c64c6d 25c83c98 7e0ccccf 45e063a0 0b153874 a73ee510 0526eedb da89cb9b e9521d94 165642be 1adce6ef 78c64a1d ab8b968d e5ba7672 1616f155 21ddcdc9 5840adea ee4fa92e 32c7478e d61a7d0a 9b3e8820 b29c74dc -0 -1 2098 487 7 48 219 0 5 05db9164 38d50e09 873cec9e faeb53d1 25c83c98 7e0ccccf 5e64ce5f 0b153874 a73ee510 88b0ca3c 8b94178b 1bad82f2 025225f2 b28479f6 06373944 754f444e e5ba7672 fffe2a63 21ddcdc9 b1252a9d 362ad5a2 32c7478e df487a73 001f3601 c27f155b - 1 1 1 142 47 4 2 33 1 1 5bfa8ab5 302debf8 5589035a 21b334c1 25c83c98 7e0ccccf ed0714a0 0b153874 a73ee510 2f829c7a b85b416c e0fd6957 c3f71b59 64c94865 e036ff59 ef3a6623 07c540c4 be2b722c 748931d7 3a171ecb 5b2df017 -2 4 2 6 1 2 33 32 473 1 7 2 2 05db9164 38a947a1 e126dcf4 1f4710e9 43b19349 fe6b92e5 24e8ca9f 0b153874 a73ee510 7d83f681 94a1f0fa 0ff31973 153f0382 1adce6ef 56e96b36 849973b8 27c07bd6 e712bb73 19657d0b 423fab69 e944e245 - 76 6 8 14951 0 8 11 0 8 05db9164 8084ee93 02cf9876 c18be181 25c83c98 7e0ccccf 841f6a9d 1f89b562 a73ee510 3b08e48b d66168dc 8fe001f4 54c30969 1adce6ef 5d922427 36103458 776ce399 003d4f4f e587c466 c9d4222a 32c7478e 3b183c5c -4 910 6 10 1424 18 7 13 61 0 2 0 11 39af2607 c8687797 99e9ddb6 a8ec061f 4cf72387 fe6b92e5 e8281e85 0b153874 a73ee510 4e56c58e b4192d04 8ae825a5 948f6009 07d13a8f 5db1ef75 8d9bd3ea e5ba7672 a7e06874 21ddcdc9 b1252a9d 3fa0a0f9 3a171ecb 910fbaa8 e8b83407 849a1ff5 - 158 6 3 5142 113 6 0 63 1 0 3 68fd1e64 09e68b86 abb79091 5fa32c7a 4cf72387 fe6b92e5 fb2108e5 0b153874 a73ee510 2ed68727 f5204b1e edc1e17d e4fa2059 1adce6ef dbc5e126 16418bfa e5ba7672 5aed7436 21ddcdc9 a458ea53 5bfbe138 32c7478e 3fdb382b e8b83407 49d68486 -27 0 2 2 172 5 27 5 5 1 1 0 2 68fd1e64 b80912da 66e48522 e526bf96 25c83c98 7e0ccccf f8008800 a25968f2 a73ee510 4b0b88c1 e16bba2e 7a66927f b17372a1 07d13a8f 569913cf ac4ae975 e5ba7672 7119e567 54e53a39 a458ea53 4c989cbb c7dc6720 3ee891eb fd2fe0bd dbb87921 - 1 8 8 26053 0 8 16 0 8 be589b51 537e899b 5037b88e 9dde01fd 25c83c98 13718bbd 3b870555 0b153874 a73ee510 3b08e48b 39ec7a77 680d7261 66bf004c 1adce6ef c535a0ec c0673b44 776ce399 b34aa802 e049c839 be7c41b4 6095f986 - 1 3 3 1490 3 3 3 88 1 3 68fd1e64 0468d672 17f19f34 4d0d0310 25c83c98 7e0ccccf f79f6778 0b153874 a73ee510 0f2ec50d ae7000db 82c4f46e 08c3f986 1adce6ef 4f3b3616 7f32aba5 e5ba7672 9880032b 21ddcdc9 5840adea c4f8ffae 8ec974f4 32c7478e 4b2df480 ea9a246c ddf88ddd - 3348 3 11507 255 2 1 144 1 8 05db9164 403ea497 2cbec47f 3e2bfbda 0942e0a7 fe6b92e5 d2d741ca 5b392875 a73ee510 afa61498 ea4adb47 21a23bfe 05781932 07d13a8f e3209fc2 587267a3 d4bb7bd8 a78bd508 21ddcdc9 5840adea c2a93b37 3a171ecb 1793a828 e8b83407 2fede552 - 6 3 3348 67 131 3 669 10 1 3 68fd1e64 04e09220 b1ecc6c4 5dff9b29 25c83c98 7e0ccccf aadb10ba 0b153874 a73ee510 4f384fbf d3bf1cde 2436ff75 bdafcab4 07d13a8f cae64906 f4ead43c 27c07bd6 e161d23a 4f1aa25f 32c7478e ded4aac9 -7 9 21 20 2 11 27 24 195 2 7 11 87552397 86d4fccc b009d929 c7043c4b 25c83c98 7e0ccccf 066186ba 0b153874 a73ee510 921af1f0 57784783 3563ab62 493fa4dc 1adce6ef b27dd6c7 b688c8cc e5ba7672 be645006 21ddcdc9 5840adea 2754aaf1 c9d4222a dbb486d7 3b183c5c 001f3601 aa86a675 -2 10 3 9 571 71 17 25 94 1 6 0 9 05db9164 68b3edbf b00d1501 d16679b9 384874ce 7e0ccccf 9f525672 0b153874 a73ee510 c731d31c 843d8639 e0d76380 9cab1003 b28479f6 f511c49f 1203a270 e5ba7672 752d8b8a 73d06dde 32c7478e aee52b6f - 504 25 8530 135 6 1 140 1 0 33 68fd1e64 2c8c5f5d f8165d4c 9ce24ab2 f281d2a7 fe6b92e5 f970e59a 37e4aa92 a73ee510 afbc3455 5adcba72 275616bb 5b6ee19d b28479f6 36fdeaa3 8150ed80 e5ba7672 f5f4ae5b 06020186 c9d4222a 32c7478e 89856b53 -0 -1 14035 0 15 2 0 0 05db9164 a796837e 08de7b18 97ce69e9 25c83c98 7e0ccccf 5f2133cc 0b153874 a73ee510 caf6d5e0 5e4d7944 c5011072 ef2542c1 cfef1c29 f0bf9094 5a9431f3 d4bb7bd8 1cdbd1c5 e754c5e1 3a171ecb 8fc66e78 -0 1205 30 0 9502 6 9 3 10 0 4 2 05db9164 89ddfee8 eba69dcd 1e488b34 25c83c98 fbad5c96 1c86e0eb 5b392875 a73ee510 19d64f85 755e4a50 eb12fa02 5978055e b28479f6 25753fb1 9a905cb0 e5ba7672 5bb2ec8e cb9d08a1 b1252a9d 13ac23e7 32c7478e 3fdb382b e8b83407 49d68486 -0 2 5 4494 91 18 5 26 0 5 1 5 68fd1e64 38a947a1 d7d70f09 b554bae9 25c83c98 7e0ccccf 6f714715 1f89b562 a73ee510 3b08e48b 2996a71e cb236cb4 44af41ef b28479f6 e5d02a87 5dc0ea5f 3486227d a01cf233 2ce7a292 32c7478e 38ba8d58 -23 14 18 5 436 6 117 18 128 2 9 6 8cf07265 89ddfee8 c2e8686e f3caf8d7 25c83c98 fbad5c96 1c86e0eb 5b392875 a73ee510 935a36f0 755e4a50 8259a64e 5978055e b28479f6 25753fb1 4fbdb819 e5ba7672 5bb2ec8e 5b885066 b1252a9d 1496dc6f c9d4222a 32c7478e 3fdb382b f0f449dd 60759197 -0 43 1 14466 604 4 12 77 0 2 5a9ed9b0 bce95927 b2ca3264 13508380 25c83c98 24aba087 0b153874 a73ee510 3b08e48b d850f8dd 92130edf dbf42252 07d13a8f fec218c0 37db2ba2 e5ba7672 04d863d5 21ddcdc9 b1252a9d 43c62900 423fab69 45ab94c8 e8b83407 c84c4aec - 0 9 1 14623 233 1 0 184 1 1 2d4ea12b 09e68b86 430b45d5 5171b4e5 25c83c98 fbad5c96 a255dd63 1f89b562 a73ee510 f26b7f57 d13e1160 a5a79450 45820f61 64c94865 91126f30 c9085494 d4bb7bd8 5aed7436 21ddcdc9 a458ea53 c803b4bc 3a171ecb 0e75983e e8b83407 e2b9889a -0 15 20 7 3564 143 3 10 103 0 1 14 05db9164 09e68b86 97dfc88b 77ec4111 25c83c98 13718bbd e56a4862 0b153874 a73ee510 3b08e48b 5e183c58 4ed01fb0 1eb0f8f0 b28479f6 52baadf5 ba4aef4d 07c540c4 5aed7436 21ddcdc9 b1252a9d 48719650 3a171ecb 2fdc9048 e8b83407 3e01e343 - 308 4 44 0 4 4 0 4 05db9164 f0cf0024 9dd3c4fc a09fab49 25c83c98 fbad5c96 809e67f4 0b153874 a73ee510 a4b832ae cfd9d2a6 3c5900b5 d1e37101 b28479f6 fdb1071f 0decd005 1e88c74f cc693e93 21ddcdc9 b1252a9d 7633c7c8 be7c41b4 17f458f7 ea9a246c 2b5727c4 - 0 3 1 183696 0 5 5 0 1 be589b51 09e68b86 233378be cb2156cb 25c83c98 7e0ccccf cc7e57a6 0b153874 7cc72ec2 05906beb b5bb9d63 44776637 ab04d8fe cfef1c29 18847041 54dd60b2 8efede7f 5aed7436 21ddcdc9 5840adea b39b1608 32c7478e 3fdb382b e8b83407 eb9a9610 - 6 49 1 30939 91 3 2 7 0 1 05db9164 80e26c9b f794f100 169ffff5 25c83c98 13718bbd 8c28e5b5 0b153874 7cc72ec2 4c77926e ae4c531b b853b799 01c2bbc7 1adce6ef 8f92e3a1 5151f2ca e5ba7672 1f9656b8 21ddcdc9 b1252a9d 38483e30 32c7478e 1793a828 e8b83407 70b6702c -0 0 5 3 1536 41 45 3 403 0 10 3 05db9164 0468d672 622d2ce8 51c64c6d 43b19349 fe6b92e5 6284da2d 0b153874 a73ee510 21fa915a 5874c9c9 e9521d94 740c210d b28479f6 234191d3 ab8b968d e5ba7672 9880032b 21ddcdc9 5840adea ee4fa92e 32c7478e d61a7d0a 9b3e8820 b29c74dc - -1 8 6 5970 53 4 15 53 1 6 f473b8dc f0cf0024 63688a0e f922efad 25c83c98 fbad5c96 387b156c 0b153874 a73ee510 9bed549c cd18416f 639c55c4 103a86a6 b28479f6 a2ccf91a 01adbab4 e5ba7672 88b0e440 21ddcdc9 5840adea 21c9516a 3a171ecb b34f3128 ea9a246c c5116a1c -11 1 4971 30 0 0 11 36 26 0 1 0 241546e0 9f7e1d07 608b3227 cf3b0ec7 25c83c98 77e91f62 37e4aa92 a73ee510 31be9cd5 7defe259 64966947 11fa2c12 07d13a8f 3e25e5f5 57d492ac e5ba7672 6a58e423 21ddcdc9 5840adea d80d83a2 c7dc6720 892fb9a7 ea9a246c e7ecb821 -0 1 15 10 17618 537 3 16 185 0 1 0 11 68fd1e64 d833535f b00d1501 d16679b9 25c83c98 fbad5c96 b0130b6f 0b153874 a73ee510 3b08e48b 9002e6b7 e0d76380 202a3015 b28479f6 a66dcf27 1203a270 3486227d 7b49e3d2 73d06dde 32c7478e aee52b6f -0 12 151 32 1581 55 1 44 47 0 1 42 05db9164 207b2d81 9389a73d c2fcecf6 25c83c98 7e0ccccf f00bddf8 1f89b562 a73ee510 60112853 55795b33 4df8fd52 39795005 07d13a8f da315591 c4e31b00 d4bb7bd8 29907d97 21ddcdc9 b1252a9d c26249b4 32c7478e 38be899f 001f3601 c26ea7d4 -11 0 4970 30 0 0 11 35 26 0 1 0 8cf07265 9f7e1d07 608b3227 cf3b0ec7 25c83c98 77e91f62 0b153874 a73ee510 31be9cd5 7defe259 64966947 11fa2c12 b28479f6 08812651 57d492ac e5ba7672 6a58e423 21ddcdc9 5840adea d80d83a2 c7dc6720 892fb9a7 ea9a246c e7ecb821 -10 0 6 0 48 1 925 27 1084 1 18 0 05db9164 287130e0 38563689 ab32a5e0 25c83c98 7e0ccccf 6284da2d 062b5529 a73ee510 622fc8eb 5874c9c9 31ac04e7 740c210d 07d13a8f 10040656 d16dd94c e5ba7672 891589e7 55dd3565 a458ea53 b34c3b69 423fab69 3fdb382b c0812fc5 49d68486 -0 6 10 8 2989 47 3 20 42 0 1 0 10 05db9164 38a947a1 2c5677a2 be7b4f43 42d2cbf8 7e0ccccf d4f2e777 5b392875 a73ee510 e9589e71 2dc2a28b 4f893105 24e01e63 64c94865 889bd31d 440f22e1 07c540c4 3b659b79 294167b5 3a171ecb c646e587 -0 1 22 9 2 332 1 14 14 0 1 7 05db9164 38a947a1 25c83c98 7e0ccccf ba24e6c2 0b153874 a73ee510 3b08e48b 004929ef 44af41ef 051219e6 729eed5d d4bb7bd8 d29b1174 ad3062eb 32c7478e - 1 7 1 6471 0 8 1 0 1 05db9164 a5b69ae3 003f419b ff852091 25c83c98 7e0ccccf 8ac87f94 45f7c2dd a73ee510 3b08e48b bbd0e773 349450bc 79ae8b9a b28479f6 9703aa2f 6615ffe6 776ce399 a1654f4f 21ddcdc9 5840adea 3dd38d65 c7dc6720 c2fe6ca4 2bf691b1 984e0db0 -16 1 8 5 40 5 16 10 10 3 3 5 05db9164 8947f767 3d380af1 f85c6e4a 4cf72387 7e0ccccf b72ec13d 0b153874 a73ee510 5fe250bc 3547565f cd1fe08d 12880350 07d13a8f 2c14c412 c44465ed e5ba7672 bd17c3da 338f20de a458ea53 5ecc4565 423fab69 786a0db5 010f6491 968f2b7d - 1 1 1 23636 140 1 1 38 1 1 d4b08d58 083aa75b ad4b77ff d16679b9 43b19349 7e0ccccf 8575441c 0b153874 a73ee510 3b08e48b 7158b034 a2f4e8b5 67414029 b28479f6 4e47e13c 89052618 d4bb7bd8 06747363 21ddcdc9 5840adea d4703ebd 32c7478e aee52b6f e8b83407 37763bb8 -0 1 6300 782 3 6 89 0 1 0 05db9164 d833535f b00d1501 d16679b9 25c83c98 7e0ccccf e092b976 0b153874 a73ee510 3b08e48b 9002e6b7 e0d76380 202a3015 b28479f6 a733d362 1203a270 07c540c4 281769c2 73d06dde 32c7478e aee52b6f - 6 4 4 34646 749 12 11 361 0 11 05db9164 d833535f b00d1501 d16679b9 0942e0a7 7e0ccccf 6ad82e7a 51c6f7ef a73ee510 010e2c68 c1ee56d0 e0d76380 ebd756bd 1adce6ef 2ee9f086 1203a270 e5ba7672 7b49e3d2 73d06dde bcdee96c aee52b6f -0 528 11772 355 11 2 79 0 1 05db9164 0d6ad090 dc04465b 16c6592a 4cf72387 fbad5c96 8f572b5e 0b153874 a73ee510 4e1c8c97 434d6c13 a8d14e0e 7301027a 07d13a8f 12642bae 0bfb1557 e5ba7672 cb95e657 03445731 c7dc6720 531ba5cb -2 197 4 7 1 2 7 4 1 1 1 05db9164 421b43cd 80d82277 29998ed1 384874ce 7e0ccccf f74ed3c0 0b153874 a73ee510 69dad686 e90cbbe1 6aaba33c a4c7bffd b28479f6 e1ac77f7 b041b04a e5ba7672 2804effd 723b4dfd 32c7478e b34f3128 -1 5 0 10 802 51 1 28 73 1 1 11 be589b51 c2004197 a9ac1772 28d926b8 4cf72387 fbad5c96 a70b42bf 062b5529 a73ee510 0a263d38 6ea0f130 ca259220 740c210d 07d13a8f 3af33a20 fc53f85c 27c07bd6 c6c8223f ed35ed93 32c7478e 4fcc135f -11 0 4970 30 0 0 11 35 26 0 1 0 05db9164 9f7e1d07 608b3227 cf3b0ec7 25c83c98 77e91f62 0b5a4776 a73ee510 31be9cd5 7defe259 64966947 11fa2c12 07d13a8f 3e25e5f5 57d492ac e5ba7672 6a58e423 21ddcdc9 5840adea d80d83a2 c7dc6720 892fb9a7 ea9a246c e7ecb821 -0 6 1 0 2351 272 42 30 388 0 5 1 68fd1e64 0eb070fa a336fcfb bf41ee2c 25c83c98 7e0ccccf ad3508b1 0b153874 a73ee510 060196aa ad757a5a e3161000 93b18cb5 32813e21 9ee86a69 4d96b5dc e5ba7672 7ba9340b d0a43392 ad3062eb c7dc6720 99b4616d - 101 5 7 799 0 32 32 0 11 68fd1e64 38a947a1 4470baf4 8c8a4c47 25c83c98 3bf701e7 e3fb0ef1 0b153874 a73ee510 3b08e48b f272f98e bb669e25 9b9e44d2 b28479f6 a3443e75 2b2ce127 776ce399 ade68c22 2b796e4a be7c41b4 8d365d3b - 3 8 1 4898 0 1 15 0 1 5a9ed9b0 38a947a1 42a04a35 7031bb66 25c83c98 7e0ccccf 0d21cab2 1f89b562 a73ee510 22a99f9d 1ad9245a 7127a7d6 b96c41d3 b28479f6 c26b5dd4 51a8930b 1e88c74f b21492d9 53cb3c2b 32c7478e b258af68 - 86 6 2 17377 0 2 20 0 2 05db9164 287130e0 06ebeb8b ae731aef 4cf72387 d2bfca2c 1f89b562 a73ee510 3b08e48b f72b4bd1 4a17b398 01f32ac8 b28479f6 9efd8b77 dd81ca66 776ce399 891589e7 33bbd403 a458ea53 c436713f be7c41b4 3fdb382b ea9a246c 49d68486 -4 -1 1 3 544 4 4 4 4 1 1 3 05db9164 1bc2d3e2 d87d3e20 f922efad 25c83c98 7e0ccccf 5ce839a9 062b5529 a73ee510 3b08e48b 52105669 dfc096e9 d2b8af4a b28479f6 05a53a2d 9282da85 e5ba7672 a896fd82 45838e05 be7c41b4 b34f3128 diff --git a/demo-client/data/images/ILSVRC2012_val_00000001.jpeg b/demo-client/data/images/ILSVRC2012_val_00000001.jpeg deleted file mode 100644 index fcd0de8866f404b87c2881435efe8aa2372f7b36..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000001.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000002.jpeg b/demo-client/data/images/ILSVRC2012_val_00000002.jpeg deleted file mode 100644 index 34476b6e5b2a1ef892f4957e8a5d7b54449aceb1..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000002.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000003.jpeg b/demo-client/data/images/ILSVRC2012_val_00000003.jpeg deleted file mode 100644 index 95438c5f18dace758c6a62cd0955c4212cfb1c1e..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000003.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000004.jpeg b/demo-client/data/images/ILSVRC2012_val_00000004.jpeg deleted file mode 100644 index d6c3df86e0a15baba0833b4b7a9c996526e5ac79..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000004.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000005.jpeg b/demo-client/data/images/ILSVRC2012_val_00000005.jpeg deleted file mode 100644 index 166f2897e3965f86a0711bce1f929e63c6dd900e..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000005.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000006.jpeg b/demo-client/data/images/ILSVRC2012_val_00000006.jpeg deleted file mode 100644 index 2f589369058e002d823c8d9c783311a576f9ebdb..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000006.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000007.jpeg b/demo-client/data/images/ILSVRC2012_val_00000007.jpeg deleted file mode 100644 index a043ebf28db967c6e1aefb0913fb1540762e3ad0..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000007.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000008.jpeg b/demo-client/data/images/ILSVRC2012_val_00000008.jpeg deleted file mode 100644 index 4844c969cc8f4c16adc0809e566f80af62048ed6..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000008.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000009.jpeg b/demo-client/data/images/ILSVRC2012_val_00000009.jpeg deleted file mode 100644 index 592eb3a5022ad5df1333dac2935a4cc4ff156aaa..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000009.jpeg and /dev/null differ diff --git a/demo-client/data/images/ILSVRC2012_val_00000010.jpeg b/demo-client/data/images/ILSVRC2012_val_00000010.jpeg deleted file mode 100644 index 6cad056bcf3cd66b586248455073b66af0e9afb5..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/ILSVRC2012_val_00000010.jpeg and /dev/null differ diff --git a/demo-client/data/images/groundtruth.txt b/demo-client/data/images/groundtruth.txt deleted file mode 100644 index ed133a9bee8c5c644f070e3e0420ef6fa9477d22..0000000000000000000000000000000000000000 --- a/demo-client/data/images/groundtruth.txt +++ /dev/null @@ -1,1000 +0,0 @@ -n01440764,丁鲷 -n01443537,金鱼 -n01484850,大白鲨 -n01491361,虎鲨 -n01494475,锤头鲨 -n01496331,电鳐 -n01498041,黄貂鱼 -n01514668,公鸡 -n01514859,母鸡 -n01518878,鸵鸟 -n01530575,燕雀 -n01531178,金翅雀 -n01532829,家朱雀 -n01534433,灯芯草雀 -n01537544,靛蓝雀,靛蓝鸟 -n01558993,蓝鹀 -n01560419,夜莺 -n01580077,松鸦 -n01582220,喜鹊 -n01592084,山雀 -n01601694,河鸟 -n01608432,鸢(猛禽) -n01614925,秃头鹰 -n01616318,秃鹫 -n01622779,大灰猫头鹰 -n01629819,欧洲火蝾螈 -n01630670,普通蝾螈 -n01631663,水蜥 -n01632458,斑点蝾螈 -n01632777,蝾螈,泥狗 -n01641577,牛蛙 -n01644373,树蛙 -n01644900,尾蛙,铃蟾蜍,肋蟾蜍,尾蟾蜍 -n01664065,红海龟 -n01665541,皮革龟 -n01667114,泥龟 -n01667778,淡水龟 -n01669191,箱龟 -n01675722,带状壁虎 -n01677366,普通鬣蜥 -n01682714,美国变色龙 -n01685808,鞭尾蜥蜴 -n01687978,飞龙科蜥蜴 -n01688243,褶边蜥蜴 -n01689811,鳄鱼蜥蜴 -n01692333,毒蜥 -n01693334,绿蜥蜴 -n01694178,非洲变色龙 -n01695060,科莫多蜥蜴 -n01697457,非洲鳄,尼罗河鳄鱼 -n01698640,美国鳄鱼,鳄鱼 -n01704323,三角龙 -n01728572,雷蛇,蠕虫蛇 -n01728920,环蛇,环颈蛇 -n01729322,希腊蛇 -n01729977,绿蛇,草蛇 -n01734418,国王蛇 -n01735189,袜带蛇,草蛇 -n01737021,水蛇 -n01739381,藤蛇 -n01740131,夜蛇 -n01742172,大蟒蛇 -n01744401,岩石蟒蛇,岩蛇,蟒蛇 -n01748264,印度眼镜蛇 -n01749939,绿曼巴 -n01751748,海蛇 -n01753488,角腹蛇 -n01755581,菱纹响尾蛇 -n01756291,角响尾蛇 -n01768244,三叶虫 -n01770081,盲蜘蛛 -n01770393,蝎子 -n01773157,黑金花园蜘蛛 -n01773549,谷仓蜘蛛 -n01773797,花园蜘蛛 -n01774384,黑寡妇蜘蛛 -n01774750,狼蛛 -n01775062,狼蜘蛛,狩猎蜘蛛 -n01776313,壁虱 -n01784675,蜈蚣 -n01795545,黑松鸡 -n01796340,松鸡,雷鸟 -n01797886,披肩鸡,披肩榛鸡 -n01798484,草原鸡,草原松鸡 -n01806143,孔雀 -n01806567,鹌鹑 -n01807496,鹧鸪 -n01817953,非洲灰鹦鹉 -n01818515,金刚鹦鹉 -n01819313,硫冠鹦鹉 -n01820546,短尾鹦鹉 -n01824575,褐翅鸦鹃 -n01828970,蜜蜂 -n01829413,犀鸟 -n01833805,蜂鸟 -n01843065,鹟䴕 -n01843383,犀鸟 -n01847000,野鸭 -n01855032,红胸秋沙鸭 -n01855672,鹅 -n01860187,黑天鹅 -n01871265,大象 -n01872401,针鼹鼠 -n01873310,鸭嘴兽 -n01877812,沙袋鼠 -n01882714,考拉,考拉熊 -n01883070,袋熊 -n01910747,水母 -n01914609,海葵 -n01917289,脑珊瑚 -n01924916,扁形虫扁虫 -n01930112,线虫,蛔虫 -n01943899,海螺 -n01944390,蜗牛 -n01945685,鼻涕虫 -n01950731,海参 -n01955084,石鳖 -n01968897,鹦鹉螺 -n01978287,珍宝蟹 -n01978455,石蟹 -n01980166,招潮蟹 -n01981276,帝王蟹,阿拉斯加蟹,阿拉斯加帝王蟹 -n01983481,美国龙虾,缅因州龙虾 -n01984695,大螯虾 -n01985128,小龙虾 -n01986214,寄居蟹 -n01990800,等足目动物(明虾和螃蟹近亲) -n02002556,白鹳 -n02002724,黑鹳 -n02006656,鹭 -n02007558,火烈鸟 -n02009229,小蓝鹭 -n02009912,美国鹭,大白鹭 -n02011460,麻鸦 -n02012849,鹤 -n02013706,秧鹤 -n02017213,欧洲水鸡,紫水鸡 -n02018207,沼泽泥母鸡,水母鸡 -n02018795,鸨 -n02025239,红翻石鹬 -n02027492,红背鹬,黑腹滨鹬 -n02028035,红脚鹬 -n02033041,半蹼鹬 -n02037110,蛎鹬 -n02051845,鹈鹕 -n02056570,国王企鹅 -n02058221,信天翁,大海鸟 -n02066245,灰鲸 -n02071294,杀人鲸,逆戟鲸,虎鲸 -n02074367,海牛 -n02077923,海狮 -n02085620,奇瓦瓦 -n02085782,日本猎犬 -n02085936,马尔济斯犬 -n02086079,狮子狗 -n02086240,西施犬 -n02086646,布莱尼姆猎犬 -n02086910,巴比狗 -n02087046,玩具犬 -n02087394,罗得西亚长背猎狗 -n02088094,阿富汗猎犬 -n02088238,猎犬 -n02088364,比格犬,猎兔犬 -n02088466,侦探犬 -n02088632,蓝色快狗 -n02089078,黑褐猎浣熊犬 -n02089867,沃克猎犬 -n02089973,英国猎狐犬 -n02090379,美洲赤狗 -n02090622,俄罗斯猎狼犬 -n02090721,爱尔兰猎狼犬 -n02091032,意大利灰狗 -n02091134,惠比特犬 -n02091244,依比沙猎犬 -n02091467,挪威猎犬 -n02091635,奥达猎犬,水獭猎犬 -n02091831,沙克犬,瞪羚猎犬 -n02092002,苏格兰猎鹿犬,猎鹿犬 -n02092339,威玛猎犬 -n02093256,斯塔福德郡牛头梗,斯塔福德郡斗牛梗 -n02093428,美国斯塔福德郡梗,美国比特斗牛梗,斗牛梗 -n02093647,贝德灵顿梗 -n02093754,边境梗 -n02093859,凯丽蓝梗 -n02093991,爱尔兰梗 -n02094114,诺福克梗 -n02094258,诺维奇梗 -n02094433,约克郡梗 -n02095314,刚毛猎狐梗 -n02095570,莱克兰梗 -n02095889,锡利哈姆梗 -n02096051,艾尔谷犬 -n02096177,凯恩梗 -n02096294,澳大利亚梗 -n02096437,丹迪丁蒙梗 -n02096585,波士顿梗 -n02097047,迷你雪纳瑞犬 -n02097130,巨型雪纳瑞犬 -n02097209,标准雪纳瑞犬 -n02097298,苏格兰梗 -n02097474,西藏梗,菊花狗 -n02097658,丝毛梗 -n02098105,软毛麦色梗 -n02098286,西高地白梗 -n02098413,拉萨阿普索犬 -n02099267,平毛寻回犬 -n02099429,卷毛寻回犬 -n02099601,金毛猎犬 -n02099712,拉布拉多猎犬 -n02099849,乞沙比克猎犬 -n02100236,德国短毛猎犬 -n02100583,维兹拉犬 -n02100735,英国谍犬 -n02100877,爱尔兰雪达犬,红色猎犬 -n02101006,戈登雪达犬 -n02101388,布列塔尼犬猎犬 -n02101556,黄毛,黄毛猎犬 -n02102040,英国史宾格犬 -n02102177,威尔士史宾格犬 -n02102318,可卡犬,英国可卡犬 -n02102480,萨塞克斯猎犬 -n02102973,爱尔兰水猎犬 -n02104029,哥威斯犬 -n02104365,舒柏奇犬 -n02105056,比利时牧羊犬 -n02105162,马里努阿犬 -n02105251,伯瑞犬 -n02105412,凯尔皮犬 -n02105505,匈牙利牧羊犬 -n02105641,老英国牧羊犬 -n02105855,喜乐蒂牧羊犬 -n02106030,牧羊犬 -n02106166,边境牧羊犬 -n02106382,法兰德斯牧牛狗 -n02106550,罗特韦尔犬 -n02106662,德国牧羊犬,德国警犬,阿尔萨斯 -n02107142,多伯曼犬,杜宾犬 -n02107312,迷你杜宾犬 -n02107574,大瑞士山地犬 -n02107683,伯恩山犬 -n02107908,Appenzeller狗 -n02108000,EntleBucher狗 -n02108089,拳师狗 -n02108422,斗牛獒 -n02108551,藏獒 -n02108915,法国斗牛犬 -n02109047,大丹犬 -n02109525,圣伯纳德狗 -n02109961,爱斯基摩犬,哈士奇 -n02110063,雪橇犬,阿拉斯加爱斯基摩狗 -n02110185,哈士奇 -n02110341,达尔马提亚,教练车狗 -n02110627,狮毛狗 -n02110806,巴辛吉狗 -n02110958,哈巴狗,狮子狗 -n02111129,莱昂贝格狗 -n02111277,纽芬兰岛狗 -n02111500,大白熊犬 -n02111889,萨摩耶犬 -n02112018,博美犬 -n02112137,松狮,松狮 -n02112350,荷兰卷尾狮毛狗 -n02112706,布鲁塞尔格林芬犬 -n02113023,彭布洛克威尔士科基犬 -n02113186,威尔士柯基犬 -n02113624,玩具贵宾犬 -n02113712,迷你贵宾犬 -n02113799,标准贵宾犬 -n02113978,墨西哥无毛犬 -n02114367,灰狼 -n02114548,白狼,北极狼 -n02114712,红太狼,鬃狼,犬犬鲁弗斯 -n02114855,狼,草原狼,刷狼,郊狼 -n02115641,澳洲野狗,澳大利亚野犬 -n02115913,豺 -n02116738,非洲猎犬,土狼犬 -n02117135,鬣狗 -n02119022,红狐狸 -n02119789,沙狐 -n02120079,北极狐狸,白狐狸 -n02120505,灰狐狸 -n02123045,虎斑猫 -n02123159,山猫,虎猫 -n02123394,波斯猫 -n02123597,暹罗暹罗猫, -n02124075,埃及猫 -n02125311,美洲狮,美洲豹 -n02127052,猞猁,山猫 -n02128385,豹子 -n02128757,雪豹 -n02128925,美洲虎 -n02129165,狮子 -n02129604,老虎 -n02130308,猎豹 -n02132136,棕熊 -n02133161,美洲黑熊 -n02134084,冰熊,北极熊 -n02134418,懒熊 -n02137549,猫鼬 -n02138441,猫鼬,海猫 -n02165105,虎甲虫 -n02165456,瓢虫 -n02167151,土鳖虫 -n02168699,天牛 -n02169497,龟甲虫 -n02172182,粪甲虫 -n02174001,犀牛甲虫 -n02177972,象甲 -n02190166,苍蝇 -n02206856,蜜蜂 -n02219486,蚂蚁 -n02226429,蚱蜢 -n02229544,蟋蟀 -n02231487,竹节虫 -n02233338,蟑螂 -n02236044,螳螂 -n02256656,蝉 -n02259212,叶蝉 -n02264363,草蜻蛉 -n02268443,蜻蜓 -n02268853,豆娘,蜻蛉 -n02276258,优红蛱蝶 -n02277742,小环蝴蝶 -n02279972,君主蝴蝶,大斑蝶 -n02280649,菜粉蝶 -n02281406,白蝴蝶 -n02281787,灰蝶 -n02317335,海星 -n02319095,海胆 -n02321529,海参,海黄瓜 -n02325366,野兔 -n02326432,兔 -n02328150,安哥拉兔 -n02342885,仓鼠 -n02346627,刺猬,豪猪, -n02356798,黑松鼠 -n02361337,土拨鼠 -n02363005,海狸 -n02364673,豚鼠,豚鼠 -n02389026,栗色马 -n02391049,斑马 -n02395406,猪 -n02396427,野猪 -n02397096,疣猪 -n02398521,河马 -n02403003,牛 -n02408429,水牛,亚洲水牛 -n02410509,野牛 -n02412080,公羊 -n02415577,大角羊,洛矶山大角羊 -n02417914,山羊 -n02422106,狷羚 -n02422699,黑斑羚 -n02423022,瞪羚 -n02437312,阿拉伯单峰骆驼,骆驼 -n02437616,骆驼 -n02441942,黄鼠狼 -n02442845,水貂 -n02443114,臭猫 -n02443484,黑足鼬 -n02444819,水獭 -n02445715,臭鼬,木猫 -n02447366,獾 -n02454379,犰狳 -n02457408,树懒 -n02480495,猩猩,婆罗洲猩猩 -n02480855,大猩猩 -n02481823,黑猩猩 -n02483362,长臂猿 -n02483708,合趾猿长臂猿,合趾猿 -n02484975,长尾猴 -n02486261,赤猴 -n02486410,狒狒 -n02487347,恒河猴,猕猴 -n02488291,白头叶猴 -n02488702,疣猴 -n02489166,长鼻猴 -n02490219,狨(美洲产小型长尾猴) -n02492035,卷尾猴 -n02492660,吼猴 -n02493509,伶猴 -n02493793,蜘蛛猴 -n02494079,松鼠猴 -n02497673,马达加斯加环尾狐猴,鼠狐猴 -n02500267,大狐猴,马达加斯加大狐猴 -n02504013,印度大象,亚洲象 -n02504458,非洲象,非洲象 -n02509815,小熊猫 -n02510455,大熊猫 -n02514041,杖鱼 -n02526121,鳗鱼 -n02536864,银鲑,银鲑鱼 -n02606052,三色刺蝶鱼 -n02607072,海葵鱼 -n02640242,鲟鱼 -n02641379,雀鳝 -n02643566,狮子鱼 -n02655020,河豚 -n02666196,算盘 -n02667093,长袍 -n02669723,学位袍 -n02672831,手风琴 -n02676566,原声吉他 -n02687172,航空母舰 -n02690373,客机 -n02692877,飞艇 -n02699494,祭坛 -n02701002,救护车 -n02704792,水陆两用车 -n02708093,模拟时钟 -n02727426,蜂房 -n02730930,围裙 -n02747177,垃圾桶 -n02749479,攻击步枪,枪 -n02769748,背包 -n02776631,面包店,面包铺, -n02777292,平衡木 -n02782093,热气球 -n02783161,圆珠笔 -n02786058,创可贴 -n02787622,班卓琴 -n02788148,栏杆,楼梯扶手 -n02790996,杠铃 -n02791124,理发师的椅子 -n02791270,理发店 -n02793495,牲口棚 -n02794156,晴雨表 -n02795169,圆筒 -n02797295,园地小车,手推车 -n02799071,棒球 -n02802426,篮球 -n02804414,婴儿床 -n02804610,巴松管,低音管 -n02807133,游泳帽 -n02808304,沐浴毛巾 -n02808440,浴缸,澡盆 -n02814533,沙滩车,旅行车 -n02814860,灯塔 -n02815834,高脚杯 -n02817516,熊皮高帽 -n02823428,啤酒瓶 -n02823750,啤酒杯 -n02825657,钟塔 -n02834397,(小儿用的)围嘴 -n02835271,串联自行车, -n02837789,比基尼 -n02840245,装订册 -n02841315,双筒望远镜 -n02843684,鸟舍 -n02859443,船库 -n02860847,雪橇 -n02865351,饰扣式领带 -n02869837,阔边女帽 -n02870880,书橱 -n02871525,书店,书摊 -n02877765,瓶盖 -n02879718,弓箭 -n02883205,蝴蝶结领结 -n02892201,铜制牌位 -n02892767,奶罩 -n02894605,防波堤,海堤 -n02895154,铠甲 -n02906734,扫帚 -n02909870,桶 -n02910353,扣环 -n02916936,防弹背心 -n02917067,动车,子弹头列车 -n02927161,肉铺,肉菜市场 -n02930766,出租车 -n02939185,大锅 -n02948072,蜡烛 -n02950826,大炮 -n02951358,独木舟 -n02951585,开瓶器,开罐器 -n02963159,开衫 -n02965783,车镜 -n02966193,旋转木马 -n02966687,木匠的工具包,工具包 -n02971356,纸箱 -n02974003,车轮 -n02977058,取款机,自动取款机 -n02978881,盒式录音带 -n02979186,卡带播放器 -n02980441,城堡 -n02981792,双体船 -n02988304,CD播放器 -n02992211,大提琴 -n02992529,移动电话,手机 -n02999410,铁链 -n03000134,围栏 -n03000247,链甲 -n03000684,电锯,油锯 -n03014705,箱子 -n03016953,衣柜,洗脸台 -n03017168,编钟,钟,锣 -n03018349,中国橱柜 -n03026506,圣诞袜 -n03028079,教堂,教堂建筑 -n03032252,电影院,剧场 -n03041632,切肉刀,菜刀 -n03042490,悬崖屋 -n03045698,斗篷 -n03047690,木屐,木鞋 -n03062245,鸡尾酒调酒器 -n03063599,咖啡杯 -n03063689,咖啡壶 -n03065424,螺旋结构(楼梯) -n03075370,组合锁 -n03085013,电脑键盘,键盘 -n03089624,糖果,糖果店 -n03095699,集装箱船 -n03100240,敞篷车 -n03109150,开瓶器,瓶螺杆 -n03110669,短号,喇叭 -n03124043,牛仔靴 -n03124170,牛仔帽 -n03125729,摇篮 -n03126707,起重机 -n03127747,头盔 -n03127925,板条箱 -n03131574,小儿床 -n03133878,砂锅 -n03134739,槌球 -n03141823,拐杖 -n03146219,胸甲 -n03160309,大坝,堤防 -n03179701,书桌 -n03180011,台式电脑 -n03187595,有线电话 -n03188531,尿布湿 -n03196217,数字时钟 -n03197337,数字手表 -n03201208,餐桌板 -n03207743,抹布 -n03207941,洗碗机,洗碟机 -n03208938,盘式制动器 -n03216828,码头,船坞,码头设施 -n03218198,狗拉雪橇 -n03220513,圆顶 -n03223299,门垫,垫子 -n03240683,钻井平台,海上钻井 -n03249569,鼓,乐器,鼓膜 -n03250847,鼓槌 -n03255030,哑铃 -n03259280,荷兰烤箱 -n03271574,电风扇,鼓风机 -n03272010,电吉他 -n03272562,电力机车 -n03290653,电视,电视柜 -n03291819,信封 -n03297495,浓缩咖啡机 -n03314780,扑面粉 -n03325584,女用长围巾 -n03337140,文件,文件柜,档案柜 -n03344393,消防船 -n03345487,消防车 -n03347037,火炉栏 -n03355925,旗杆 -n03372029,长笛 -n03376595,折叠椅 -n03379051,橄榄球头盔 -n03384352,叉车 -n03388043,喷泉 -n03388183,钢笔 -n03388549,有四根帷柱的床 -n03393912,运货车厢 -n03394916,圆号,喇叭 -n03400231,煎锅 -n03404251,裘皮大衣 -n03417042,垃圾车 -n03424325,防毒面具,呼吸器 -n03425413,汽油泵 -n03443371,高脚杯 -n03444034,卡丁车 -n03445777,高尔夫球 -n03445924,高尔夫球车 -n03447447,狭长小船 -n03447721,锣 -n03450230,礼服 -n03452741,钢琴 -n03457902,温室,苗圃 -n03459775,散热器格栅 -n03461385,杂货店,食品市场 -n03467068,断头台 -n03476684,小发夹 -n03476991,头发喷雾 -n03478589,半履带装甲车 -n03481172,锤子 -n03482405,大篮子 -n03483316,手摇鼓风机,吹风机 -n03485407,手提电脑 -n03485794,手帕 -n03492542,硬盘 -n03494278,口琴,口风琴 -n03495258,竖琴 -n03496892,收割机 -n03498962,斧头 -n03527444,手枪皮套 -n03529860,家庭影院 -n03530642,蜂窝 -n03532672,钩爪 -n03534580,衬裙 -n03535780,单杠 -n03538406,马车 -n03544143,沙漏 -n03584254,iPod -n03584829,熨斗 -n03590841,南瓜灯笼 -n03594734,牛仔裤,蓝色牛仔裤 -n03594945,吉普车 -n03595614,运动衫,T恤 -n03598930,拼图 -n03599486,人力车 -n03602883,操纵杆 -n03617480,和服 -n03623198,护膝 -n03627232,蝴蝶结 -n03630383,大褂,实验室外套 -n03633091,长柄勺 -n03637318,灯罩 -n03642806,笔记本电脑 -n03649909,割草机 -n03657121,镜头盖 -n03658185,开信刀,裁纸刀 -n03661043,图书馆 -n03662601,救生艇 -n03666591,点火器,打火机 -n03670208,豪华轿车 -n03673027,远洋班轮 -n03676483,唇膏,口红 -n03680355,平底便鞋 -n03690938,洗剂 -n03691459,扬声器 -n03692522,放大镜 -n03697007,锯木厂 -n03706229,磁罗盘 -n03709823,邮袋 -n03710193,信箱 -n03710637,女游泳衣 -n03710721,有肩带浴衣 -n03717622,窨井盖 -n03720891,沙球(一种打击乐器) -n03721384,马林巴木琴 -n03724870,面膜 -n03729826,火柴 -n03733131,花柱 -n03733281,迷宫 -n03733805,量杯 -n03742115,药箱 -n03743016,巨石,巨石结构 -n03759954,麦克风 -n03761084,微波炉 -n03763968,军装 -n03764736,奶桶 -n03769881,迷你巴士 -n03770439,迷你裙 -n03770679,面包车 -n03773504,导弹 -n03775071,连指手套 -n03775546,搅拌钵 -n03776460,活动房屋(由汽车拖拉的) -n03777568,T型发动机小汽车 -n03777754,调制解调器 -n03781244,修道院 -n03782006,显示器 -n03785016,电瓶车 -n03786901,砂浆 -n03787032,学士 -n03788195,清真寺 -n03788365,蚊帐 -n03791053,摩托车 -n03792782,山地自行车 -n03792972,登山帐 -n03793489,鼠标,电脑鼠标 -n03794056,捕鼠器 -n03796401,搬家车 -n03803284,口套 -n03804744,钉子 -n03814639,颈托 -n03814906,项链 -n03825788,乳头(瓶) -n03832673,笔记本,笔记本电脑 -n03837869,方尖碑 -n03838899,双簧管 -n03840681,陶笛,卵形笛 -n03841143,里程表 -n03843555,滤油器 -n03854065,风琴,管风琴 -n03857828,示波器 -n03866082,罩裙 -n03868242,牛车 -n03868863,氧气面罩 -n03871628,包装 -n03873416,船桨 -n03874293,明轮,桨轮 -n03874599,挂锁,扣锁 -n03876231,画笔 -n03877472,睡衣 -n03877845,宫殿 -n03884397,排箫,鸣管 -n03887697,纸巾 -n03888257,降落伞 -n03888605,双杠 -n03891251,公园长椅 -n03891332,停车收费表,停车计时器 -n03895866,客车,教练车 -n03899768,露台,阳台 -n03902125,付费电话 -n03903868,基座,基脚 -n03908618,铅笔盒 -n03908714,卷笔刀 -n03916031,香水(瓶) -n03920288,培养皿 -n03924679,复印机 -n03929660,拨弦片,拨子 -n03929855,尖顶头盔 -n03930313,栅栏,栅栏 -n03930630,皮卡,皮卡车 -n03933933,桥墩 -n03935335,存钱罐 -n03937543,药瓶 -n03938244,枕头 -n03942813,乒乓球 -n03944341,风车 -n03947888,海盗船 -n03950228,水罐 -n03954731,木工刨 -n03956157,天文馆 -n03958227,塑料袋 -n03961711,板架 -n03967562,犁型铲雪机 -n03970156,手压皮碗泵 -n03976467,宝丽来相机 -n03976657,电线杆 -n03977966,警车,巡逻车 -n03980874,雨披 -n03982430,台球桌 -n03983396,充气饮料瓶 -n03991062,花盆 -n03992509,陶工旋盘 -n03995372,电钻 -n03998194,祈祷垫,地毯 -n04004767,打印机 -n04005630,监狱 -n04008634,炮弹,导弹 -n04009552,投影仪 -n04019541,冰球 -n04023962,沙包,吊球 -n04026417,钱包 -n04033901,羽管笔 -n04033995,被子 -n04037443,赛车 -n04039381,球拍 -n04040759,散热器 -n04041544,收音机 -n04044716,射电望远镜,无线电反射器 -n04049303,雨桶 -n04065272,休闲车,房车 -n04067472,卷轴,卷筒 -n04069434,反射式照相机 -n04070727,冰箱,冰柜 -n04074963,遥控器 -n04081281,餐厅,饮食店,食堂 -n04086273,左轮手枪 -n04090263,步枪 -n04099969,摇椅 -n04111531,电转烤肉架 -n04116512,橡皮 -n04118538,橄榄球 -n04118776,直尺 -n04120489,跑步鞋 -n04125021,保险柜 -n04127249,安全别针 -n04131690,盐瓶(调味用) -n04133789,凉鞋 -n04136333,纱笼,围裙 -n04141076,萨克斯管 -n04141327,剑鞘 -n04141975,秤,称重机 -n04146614,校车 -n04147183,帆船 -n04149813,记分牌 -n04152593,屏幕 -n04153751,螺丝 -n04154565,螺丝刀 -n04162706,安全带 -n04179913,缝纫机 -n04192698,盾牌,盾牌 -n04200800,皮鞋店,鞋店 -n04201297,障子 -n04204238,购物篮 -n04204347,购物车 -n04208210,铁锹 -n04209133,浴帽 -n04209239,浴帘 -n04228054,滑雪板 -n04229816,滑雪面罩 -n04235860,睡袋 -n04238763,滑尺 -n04239074,滑动门 -n04243546,角子老虎机 -n04251144,潜水通气管 -n04252077,雪橇 -n04252225,扫雪机,扫雪机 -n04254120,皂液器 -n04254680,足球 -n04254777,袜子 -n04258138,碟式太阳能,太阳能集热器,太阳能炉 -n04259630,宽边帽 -n04263257,汤碗 -n04264628,空格键 -n04265275,空间加热器 -n04266014,航天飞机 -n04270147,铲(搅拌或涂敷用的) -n04273569,快艇 -n04275548,蜘蛛网 -n04277352,纺锤,纱锭 -n04285008,跑车 -n04286575,聚光灯 -n04296562,舞台 -n04310018,蒸汽机车 -n04311004,钢拱桥 -n04311174,钢滚筒 -n04317175,听诊器 -n04325704,女用披肩 -n04326547,石头墙 -n04328186,秒表 -n04330267,火炉 -n04332243,过滤器 -n04335435,有轨电车,电车 -n04336792,担架 -n04344873,沙发床 -n04346328,佛塔 -n04347754,潜艇,潜水艇 -n04350905,套装,衣服 -n04355338,日晷 -n04355933,太阳镜 -n04356056,太阳镜,墨镜 -n04357314,防晒霜,防晒剂 -n04366367,悬索桥 -n04367480,拖把 -n04370456,运动衫 -n04371430,游泳裤 -n04371774,秋千 -n04372370,开关,电器开关 -n04376876,注射器 -n04380533,台灯 -n04389033,坦克,装甲战车,装甲战斗车辆 -n04392985,磁带播放器 -n04398044,茶壶 -n04399382,泰迪,泰迪熊 -n04404412,电视 -n04409515,网球 -n04417672,茅草,茅草屋顶 -n04418357,幕布,剧院的帷幕 -n04423845,顶针 -n04428191,脱粒机 -n04429376,宝座 -n04435653,瓦屋顶 -n04442312,烤面包机 -n04443257,烟草店,烟草 -n04447861,马桶 -n04456115,火炬 -n04458633,图腾柱 -n04461696,拖车,牵引车,清障车 -n04462240,玩具店 -n04465501,拖拉机 -n04467665,拖车,铰接式卡车 -n04476259,托盘 -n04479046,风衣 -n04482393,三轮车 -n04483307,三体船 -n04485082,三脚架 -n04486054,凯旋门 -n04487081,无轨电车 -n04487394,长号 -n04493381,浴盆,浴缸 -n04501370,旋转式栅门 -n04505470,打字机键盘 -n04507155,伞 -n04509417,独轮车 -n04515003,直立式钢琴 -n04517823,真空吸尘器 -n04522168,花瓶 -n04523525,拱顶 -n04525038,天鹅绒 -n04525305,自动售货机 -n04532106,祭服 -n04532670,高架桥 -n04536866,小提琴,小提琴 -n04540053,排球 -n04542943,松饼机 -n04548280,挂钟 -n04548362,钱包,皮夹 -n04550184,衣柜,壁橱 -n04552348,军用飞机 -n04553703,洗脸盆,洗手盆 -n04554684,洗衣机,自动洗衣机 -n04557648,水瓶 -n04560804,水壶 -n04562935,水塔 -n04579145,威士忌壶 -n04579432,哨子 -n04584207,假发 -n04589890,纱窗 -n04590129,百叶窗 -n04591157,温莎领带 -n04591713,葡萄酒瓶 -n04592741,飞机翅膀,飞机 -n04596742,炒菜锅 -n04597913,木制的勺子 -n04599235,毛织品,羊绒 -n04604644,栅栏,围栏 -n04606251,沉船 -n04612504,双桅船 -n04613696,蒙古包 -n06359193,网站,互联网网站 -n06596364,漫画 -n06785654,纵横字谜 -n06794110,路标 -n06874185,交通信号灯 -n07248320,防尘罩,书皮 -n07565083,菜单 -n07579787,盘子 -n07583066,鳄梨酱 -n07584110,清汤 -n07590611,罐焖土豆烧肉 -n07613480,蛋糕 -n07614500,冰淇淋 -n07615774,雪糕,冰棍,冰棒 -n07684084,法式面包 -n07693725,百吉饼 -n07695742,椒盐脆饼 -n07697313,芝士汉堡 -n07697537,热狗 -n07711569,土豆泥 -n07714571,结球甘蓝 -n07714990,西兰花 -n07715103,菜花 -n07716358,绿皮密生西葫芦 -n07716906,西葫芦 -n07717410,小青南瓜 -n07717556,南瓜 -n07718472,黄瓜 -n07718747,朝鲜蓟 -n07720875,甜椒 -n07730033,刺棘蓟 -n07734744,蘑菇 -n07742313,绿苹果 -n07745940,草莓 -n07747607,橘子 -n07749582,柠檬 -n07753113,无花果 -n07753275,菠萝 -n07753592,香蕉 -n07754684,菠萝蜜 -n07760859,蛋奶冻苹果 -n07768694,石榴 -n07802026,干草 -n07831146,烤面条加干酪沙司 -n07836838,巧克力酱,巧克力糖浆 -n07860988,面团 -n07871810,瑞士肉包,肉饼 -n07873807,披萨,披萨饼 -n07875152,馅饼 -n07880968,卷饼 -n07892512,红葡萄酒 -n07920052,意大利浓咖啡 -n07930864,杯子 -n07932039,蛋酒 -n09193705,高山 -n09229709,泡泡 -n09246464,悬崖 -n09256479,珊瑚礁 -n09288635,间歇泉 -n09332890,湖边,湖岸 -n09399592,海角 -n09421951,沙洲,沙坝 -n09428293,海滨,海岸 -n09468604,峡谷 -n09472597,火山 -n09835506,棒球,棒球运动员 -n10148035,新郎 -n10565667,潜水员 -n11879895,油菜 -n11939491,雏菊 -n12057211,杓兰 -n12144580,玉米 -n12267677,橡子 -n12620546,玫瑰果 -n12768682,七叶树果实 -n12985857,珊瑚菌 -n12998815,木耳 -n13037406,鹿花菌 -n13040303,鬼笔菌 -n13044778,地星 -n13052670,多叶奇果菌 -n13054560,牛肝菌 -n13133613,玉米穗 -n15075141,卫生纸 diff --git a/demo-client/data/images/val.txt b/demo-client/data/images/val.txt deleted file mode 100644 index da362d6145f3ad9afb5ba2c02b6dd4f6b758ac55..0000000000000000000000000000000000000000 --- a/demo-client/data/images/val.txt +++ /dev/null @@ -1,10 +0,0 @@ -ILSVRC2012_val_00000001.JPEG 65 -ILSVRC2012_val_00000002.JPEG 970 -ILSVRC2012_val_00000003.JPEG 230 -ILSVRC2012_val_00000004.JPEG 809 -ILSVRC2012_val_00000005.JPEG 516 -ILSVRC2012_val_00000006.JPEG 57 -ILSVRC2012_val_00000007.JPEG 334 -ILSVRC2012_val_00000008.JPEG 415 -ILSVRC2012_val_00000009.JPEG 674 -ILSVRC2012_val_00000010.JPEG 332 diff --git a/demo-client/data/images/what.jpg b/demo-client/data/images/what.jpg deleted file mode 100644 index 5b926051b4850c989e9a099727272e7353a0dd8a..0000000000000000000000000000000000000000 Binary files a/demo-client/data/images/what.jpg and /dev/null differ diff --git a/demo-client/src/bert_service.cpp b/demo-client/src/bert_service.cpp deleted file mode 100644 index 66af91d5a81f49b6b2574036dbf37510afdf87db..0000000000000000000000000000000000000000 --- a/demo-client/src/bert_service.cpp +++ /dev/null @@ -1,294 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include -#include -#include //NOLINT -#include -#include "sdk-cpp/bert_service.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::bert_service::Request; -using baidu::paddle_serving::predictor::bert_service::Response; -using baidu::paddle_serving::predictor::bert_service::BertResInstance; -using baidu::paddle_serving::predictor::bert_service::BertReqInstance; -using baidu::paddle_serving::predictor::bert_service::EmbeddingValues; - -extern int batch_size = 1; -extern int max_seq_len = 128; -extern int layer_num = 12; -extern int thread_num = 1; -extern int max_turn = 1000; - -std::atomic g_concurrency(0); -std::vector> response_time; -std::vector> infer_time; -char* data_filename = "./data/bert/demo_wiki_data"; - -std::vector split(const std::string& str, - const std::string& pattern) { - std::vector res; - if (str == "") return res; - std::string strs = str + pattern; - size_t pos = strs.find(pattern); - while (pos != strs.npos) { - std::string temp = strs.substr(0, pos); - res.push_back(temp); - strs = strs.substr(pos + 1, strs.size()); - pos = strs.find(pattern); - } - return res; -} - -int create_req(Request* req, - const std::vector& data_list, - int data_index, - int batch_size) { - for (int i = 0; i < batch_size; ++i) { - BertReqInstance* ins = req->add_instances(); - if (!ins) { - LOG(ERROR) << "Failed create req instance"; - return -1; - } - // add data - // avoid out of boundary - int cur_index = data_index + i; - if (cur_index >= data_list.size()) { - cur_index = cur_index % data_list.size(); - } - - std::vector feature_list = split(data_list[cur_index], ";"); - std::vector token_list = split(feature_list[0], " "); - std::vector seg_list = split(feature_list[1], " "); - std::vector pos_list = split(feature_list[2], " "); - for (int fi = 0; fi < max_seq_len; fi++) { - if (std::stoi(token_list[fi]) != 0) { - ins->add_token_ids(std::stoi(token_list[fi])); - ins->add_sentence_type_ids(std::stoi(seg_list[fi])); - ins->add_position_ids(std::stoi(pos_list[fi])); - ins->add_input_masks(1.0); - } else { - ins->add_token_ids(0); - ins->add_sentence_type_ids(0); - ins->add_position_ids(0); - ins->add_input_masks(0.0); - } - } - } - req->set_max_seq_len(max_seq_len); - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - for (uint32_t ri = 0; ri < res.instances_size(); ri++) { - const BertResInstance& res_ins = res.instances(ri); - std::ostringstream oss; - oss << "["; - for (uint32_t bi = 0; bi < res_ins.instances_size(); bi++) { - const EmbeddingValues& emb_ins = res_ins.instances(bi); - oss << "["; - for (uint32_t ei = 0; ei < emb_ins.values_size(); ei++) { - oss << emb_ins.values(ei) << " "; - } - oss << "],"; - } - oss << "]\n"; - LOG(INFO) << "Receive : " << oss.str(); - } - LOG(INFO) << "Succ call predictor[bert_service], the tag is: " << route_tag - << ", elapse_ms: " << elapse_ms; -} - -void thread_worker(PredictorApi* api, - int thread_id, - int batch_size, - int server_concurrency, - const std::vector& data_list) { - Request req; - Response res; - api->thrd_initialize(); - std::string line; - int turns = 0; - while (turns < max_turn) { - timeval start; - gettimeofday(&start, NULL); - api->thrd_clear(); - Predictor* predictor = api->fetch_predictor("bert_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: bert_service"; - return; - } - req.Clear(); - res.Clear(); - while (g_concurrency.load() >= server_concurrency) { - } - g_concurrency++; - LOG(INFO) << "Current concurrency " << g_concurrency.load(); - int data_index = turns * batch_size; - if (create_req(&req, data_list, data_index, batch_size) != 0) { - return; - } - if (predictor->inference(&req, &res) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return; - } - timeval end; - gettimeofday(&end, NULL); - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - response_time[thread_id].push_back(elapse_ms); - print_res(req, res, predictor->tag(), elapse_ms); - g_concurrency--; - LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); - turns++; - } - api->thrd_finalize(); -} - -void calc_time(int server_concurrency, int batch_size) { - std::vector time_list; - for (auto a : response_time) { - time_list.insert(time_list.end(), a.begin(), a.end()); - } - LOG(INFO) << "Total request : " << (time_list.size()); - LOG(INFO) << "Batch size : " << batch_size; - LOG(INFO) << "Max concurrency : " << server_concurrency; - LOG(INFO) << "Max Seq Len : " << max_seq_len; - float total_time = 0; - float max_time = 0; - float min_time = 1000000; - for (int i = 0; i < time_list.size(); ++i) { - total_time += time_list[i]; - if (time_list[i] > max_time) max_time = time_list[i]; - if (time_list[i] < min_time) min_time = time_list[i]; - } - float mean_time = total_time / (time_list.size()); - float var_time; - for (int i = 0; i < time_list.size(); ++i) { - var_time += (time_list[i] - mean_time) * (time_list[i] - mean_time); - } - var_time = var_time / time_list.size(); - LOG(INFO) << "Total time : " << total_time / server_concurrency - << " Variance : " << var_time << " Max time : " << max_time - << " Min time : " << min_time; - float qps = 0.0; - if (total_time > 0) - qps = (time_list.size() * 1000) / (total_time / server_concurrency); - LOG(INFO) << "QPS: " << qps << "/s"; - LOG(INFO) << "Latency statistics: "; - sort(time_list.begin(), time_list.end()); - int percent_pos_50 = time_list.size() * 0.5; - int percent_pos_80 = time_list.size() * 0.8; - int percent_pos_90 = time_list.size() * 0.9; - int percent_pos_99 = time_list.size() * 0.99; - int percent_pos_999 = time_list.size() * 0.999; - if (time_list.size() != 0) { - LOG(INFO) << "Mean time : " << mean_time; - LOG(INFO) << "50 percent ms: " << time_list[percent_pos_50]; - LOG(INFO) << "80 percent ms: " << time_list[percent_pos_80]; - LOG(INFO) << "90 percent ms: " << time_list[percent_pos_90]; - LOG(INFO) << "99 percent ms: " << time_list[percent_pos_99]; - LOG(INFO) << "99.9 percent ms: " << time_list[percent_pos_999]; - } else { - LOG(INFO) << "N/A"; - LOG(INFO) << "N/A"; - LOG(INFO) << "N/A"; - LOG(INFO) << "N/A"; - LOG(INFO) << "N/A"; - LOG(INFO) << "N/A"; - } -} -int main(int argc, char** argv) { - PredictorApi api; - if (argc > 1) { - thread_num = std::stoi(argv[1]); - batch_size = std::stoi(argv[2]); - max_seq_len = std::stoi(argv[3]); - } - response_time.resize(thread_num); - int server_concurrency = thread_num; -// log set -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - std::string log_filename(argv[0]); - log_filename = log_filename.substr(log_filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + log_filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - logging::ComlogSinkOptions cso; - cso.process_name = log_filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - // predictor conf - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - // read data - std::ifstream data_file(data_filename); - if (!data_file) { - std::cout << "read file error \n" << std::endl; - return -1; - } - std::vector data_list; - std::string line; - while (getline(data_file, line)) { - data_list.push_back(line); - } - // create threads - std::vector thread_pool; - for (int i = 0; i < server_concurrency; ++i) { - thread_pool.push_back(new std::thread(thread_worker, - &api, - i, - batch_size, - server_concurrency, - std::ref(data_list))); - } - for (int i = 0; i < server_concurrency; ++i) { - thread_pool[i]->join(); - delete thread_pool[i]; - } - calc_time(server_concurrency, batch_size); - api.destroy(); - return 0; -} diff --git a/demo-client/src/ctr_prediction.cpp b/demo-client/src/ctr_prediction.cpp deleted file mode 100644 index 92e82a36203e3f39ed871e9f5afc47b619527e90..0000000000000000000000000000000000000000 --- a/demo-client/src/ctr_prediction.cpp +++ /dev/null @@ -1,355 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include -#include -#include // NOLINT -#include "sdk-cpp/ctr_prediction.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::ctr_prediction::Request; -using baidu::paddle_serving::predictor::ctr_prediction::Response; -using baidu::paddle_serving::predictor::ctr_prediction::CTRReqInstance; -using baidu::paddle_serving::predictor::ctr_prediction::CTRResInstance; - -int sparse_num = 26; -int dense_num = 13; -int hash_dim = 1000001; - -DEFINE_int32(batch_size, 50, "Set the batch size of test file."); -DEFINE_int32(concurrency, 1, "Set the max concurrency of requests"); -DEFINE_int32(repeat, 1, "Number of data samples iteration count. Default 1"); -DEFINE_bool(enable_profiling, - false, - "Enable profiling. Will supress a lot normal output"); - -std::vector cont_min = {0, -3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; -std::vector cont_diff = { - 20, 603, 100, 50, 64000, 500, 100, 50, 500, 10, 10, 10, 50}; -char* data_filename = "./data/ctr_prediction/data.txt"; -std::atomic g_concurrency(0); -std::vector> response_time; - -std::vector split(const std::string& str, - const std::string& pattern) { - std::vector res; - if (str == "") return res; - std::string strs = str + pattern; - size_t pos = strs.find(pattern); - while (pos != strs.npos) { - std::string temp = strs.substr(0, pos); - res.push_back(temp); - strs = strs.substr(pos + 1, strs.size()); - pos = strs.find(pattern); - } - return res; -} - -/** - * Simulate CPython hash function on string objects - * - * Our model training process use this function to convert string objects to - * unique ids. - * - * See string_hash() in - * https://svn.python.org/projects/python/trunk/Objects/stringobject.c - */ -int64_t hash(std::string str) { - int64_t len; - unsigned char* p; - int64_t x; - - len = str.size(); - p = (unsigned char*)str.c_str(); - x = *p << 7; - while (--len >= 0) { - x = (1000003 * x) ^ *p++; - } - x ^= str.size(); - if (x == -1) { - x = -2; - } - return x; -} - -int create_req(Request* req, - const std::vector& data_list, - int start_index, - int batch_size) { - for (int i = 0; i < batch_size; ++i) { - CTRReqInstance* ins = req->add_instances(); - if (!ins) { - LOG(ERROR) << "Failed create req instance"; - return -1; - } - - // add data - // avoid out of boundary - int cur_index = start_index + i; - if (cur_index >= data_list.size()) { - cur_index = cur_index % data_list.size(); - } - - std::vector feature_list = split(data_list[cur_index], "\t"); - for (int fi = 0; fi < dense_num; fi++) { - if (feature_list[fi] == "") { - ins->add_dense_ids(0.0); - } else { - float dense_id = std::stof(feature_list[fi]); - dense_id = (dense_id - cont_min[fi]) / cont_diff[fi]; - ins->add_dense_ids(dense_id); - } - } - for (int fi = dense_num; fi < (dense_num + sparse_num); fi++) { - int64_t sparse_id = - hash(std::to_string(fi) + feature_list[fi]) % hash_dim; - if (sparse_id < 0) { - // diff between c++ and python - sparse_id += hash_dim; - } - ins->add_sparse_ids(sparse_id); - } - } - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - if (res.err_code() != 0) { - LOG(ERROR) << "Get result fail :" << res.err_msg(); - return; - } - for (uint32_t i = 0; i < res.predictions_size(); ++i) { - const CTRResInstance& res_ins = res.predictions(i); - std::ostringstream oss; - oss << "[" << res_ins.prob0() << " " << res_ins.prob1() << "]"; - LOG(INFO) << "Receive result " << oss.str(); - } - LOG(INFO) << "Succ call predictor[ctr_prediction_service], the tag is: " - << route_tag << ", elapse_ms: " << elapse_ms; -} - -void thread_worker(PredictorApi* api, - int thread_id, - const std::vector& data_list) { - // init - Request req; - Response res; - std::string line; - - api->thrd_initialize(); - - for (int i = 0; i < FLAGS_repeat; ++i) { - int start_index = 0; - - while (true) { - if (start_index >= data_list.size()) { - break; - } - - api->thrd_clear(); - - Predictor* predictor = api->fetch_predictor("ctr_prediction_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: ctr_prediction_service"; - return; - } - - req.Clear(); - res.Clear(); - - // wait for other thread - while (g_concurrency.load() >= FLAGS_concurrency) { - } - g_concurrency++; - LOG(INFO) << "Current concurrency " << g_concurrency.load(); - - if (create_req(&req, data_list, start_index, FLAGS_batch_size) != 0) { - return; - } - start_index += FLAGS_batch_size; - LOG(INFO) << "start_index = " << start_index; - - timeval start; - gettimeofday(&start, NULL); - - if (predictor->inference(&req, &res) != 0) { - LOG(ERROR) << "failed call predictor with req:" - << req.ShortDebugString(); - return; - } - g_concurrency--; - - timeval end; - gettimeofday(&end, NULL); - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - response_time[thread_id].push_back(elapse_ms); - - if (!FLAGS_enable_profiling) { - print_res(req, res, predictor->tag(), elapse_ms); - } - - LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); - } // end while - } // end for - - api->thrd_finalize(); -} - -void calc_time() { - std::vector time_list; - for (auto a : response_time) { - time_list.insert(time_list.end(), a.begin(), a.end()); - } - - LOG(INFO) << "Total request : " << (time_list.size()); - LOG(INFO) << "Batch size : " << FLAGS_batch_size; - LOG(INFO) << "Max concurrency : " << FLAGS_concurrency; - LOG(INFO) << "enable_profiling: " << FLAGS_enable_profiling; - LOG(INFO) << "repeat count: " << FLAGS_repeat; - - float total_time = 0; - float max_time = 0; - float min_time = 1000000; - for (int i = 0; i < time_list.size(); ++i) { - total_time += time_list[i]; - if (time_list[i] > max_time) max_time = time_list[i]; - if (time_list[i] < min_time) min_time = time_list[i]; - } - - float mean_time = total_time / (time_list.size()); - float var_time; - for (int i = 0; i < time_list.size(); ++i) { - var_time += (time_list[i] - mean_time) * (time_list[i] - mean_time); - } - var_time = var_time / time_list.size(); - - LOG(INFO) << "Total time : " << total_time / FLAGS_concurrency << "ms"; - LOG(INFO) << "Variance : " << var_time << "ms"; - LOG(INFO) << "Max time : " << max_time << "ms"; - LOG(INFO) << "Min time : " << min_time << "ms"; - - float qps = 0.0; - if (total_time > 0) { - qps = (time_list.size() * 1000) / (total_time / FLAGS_concurrency); - } - LOG(INFO) << "QPS: " << qps << "/s"; - - LOG(INFO) << "Latency statistics: "; - sort(time_list.begin(), time_list.end()); - - int percent_pos_50 = time_list.size() * 0.5; - int percent_pos_80 = time_list.size() * 0.8; - int percent_pos_90 = time_list.size() * 0.9; - int percent_pos_99 = time_list.size() * 0.99; - int percent_pos_999 = time_list.size() * 0.999; - if (time_list.size() != 0) { - LOG(INFO) << "Mean time : " << mean_time; - LOG(INFO) << "50 percent ms: " << time_list[percent_pos_50]; - LOG(INFO) << "80 percent ms: " << time_list[percent_pos_80]; - LOG(INFO) << "90 percent ms: " << time_list[percent_pos_90]; - LOG(INFO) << "99 percent ms: " << time_list[percent_pos_99]; - LOG(INFO) << "99.9 percent ms: " << time_list[percent_pos_999]; - } else { - LOG(INFO) << "N/A"; - } -} -int main(int argc, char** argv) { - google::ParseCommandLineFlags(&argc, &argv, true); - - // initialize - PredictorApi api; - response_time.resize(FLAGS_concurrency); - -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - std::string log_filename(argv[0]); - log_filename = log_filename.substr(log_filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + log_filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - logging::ComlogSinkOptions cso; - cso.process_name = log_filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - // predictor conf - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - LOG(INFO) << "data sample file: " << data_filename; - - if (FLAGS_enable_profiling) { - LOG(INFO) << "In profiling mode, lot of normal output will be supressed. " - << "Use --enable_profiling=false to turn off this mode"; - } - - // read data - std::ifstream data_file(data_filename); - if (!data_file) { - std::cout << "read file error \n" << std::endl; - return -1; - } - - std::vector data_list; - std::string line; - while (getline(data_file, line)) { - data_list.push_back(line); - } - - // create threads - std::vector thread_pool; - for (int i = 0; i < FLAGS_concurrency; ++i) { - thread_pool.push_back(new std::thread(thread_worker, &api, i, data_list)); - } - - for (int i = 0; i < FLAGS_concurrency; ++i) { - thread_pool[i]->join(); - delete thread_pool[i]; - } - - calc_time(); - - api.destroy(); - return 0; -} diff --git a/demo-client/src/dense_format.cpp b/demo-client/src/dense_format.cpp deleted file mode 100644 index 1a36a1227254973e6cb35274ebd3d14aa702a9fb..0000000000000000000000000000000000000000 --- a/demo-client/src/dense_format.cpp +++ /dev/null @@ -1,155 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/dense_service.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::dense_service::Request; -using baidu::paddle_serving::predictor::dense_service::Response; -using baidu::paddle_serving::predictor::format::DensePrediction; -using baidu::paddle_serving::predictor::format::DenseInstance; - -int create_req(Request& req) { // NOLINT - DenseInstance* ins = req.mutable_instances()->Add(); - ins->add_features(1.5); - ins->add_features(16.0); - ins->add_features(14.0); - - ins = req.mutable_instances()->Add(); - ins->add_features(1.0); - ins->add_features(2.0); - ins->add_features(3.0); - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - for (uint32_t i = 0; i < res.predictions_size(); ++i) { - const DensePrediction& prediction = res.predictions(i); - std::ostringstream oss; - for (uint32_t j = 0; j < prediction.categories_size(); ++j) { - oss << prediction.categories(j) << " "; - } - LOG(INFO) << "Receive result " << oss.str(); - } - - LOG(INFO) << "Succ call predictor[dense_format], the tag is: " << route_tag - << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - while (true) { - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("dense_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: dense_service"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - usleep(50); - } // while (true) - - api.thrd_finalize(); - api.destroy(); - -#ifndef BCLOUD - google::ShutdownGoogleLogging(); -#endif - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/echo.cpp b/demo-client/src/echo.cpp deleted file mode 100644 index 090d4aa999ce7865973dc5d97072b0b421a9f352..0000000000000000000000000000000000000000 --- a/demo-client/src/echo.cpp +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/echo_service.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::echo_service::RequestAndResponse; - -int create_req(RequestAndResponse& req) { // NOLINT - req.set_a(1); - req.set_b(0.1); - return 0; -} - -void print_res(const RequestAndResponse& req, - const RequestAndResponse& res, - std::string route_tag, - uint64_t elapse_ms) { - LOG(INFO) << "Reqeive result: a = " << res.a() << ", b = " << res.b(); - - LOG(INFO) << "Succ call predictor[echo_service], the tag is: " << route_tag - << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - RequestAndResponse req; - RequestAndResponse res; - - api.thrd_initialize(); - - while (true) { - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("echo_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: echo_service"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - usleep(50); - } // while (true) - - api.thrd_finalize(); - api.destroy(); - -#ifndef BCLOUD - google::ShutdownGoogleLogging(); -#endif - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/echo_kvdb.cpp b/demo-client/src/echo_kvdb.cpp deleted file mode 100644 index 8f6dda22d664c102ccc2432c1dfa1abbc9a84be1..0000000000000000000000000000000000000000 --- a/demo-client/src/echo_kvdb.cpp +++ /dev/null @@ -1,155 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/echo_kvdb_service.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::echo_kvdb_service::Request; -using baidu::paddle_serving::predictor::echo_kvdb_service::Response; -using baidu::paddle_serving::predictor::format::KVDBReq; -using baidu::paddle_serving::predictor::format::KVDBRes; -int global_key = 0; -int create_req(Request& req) { // NOLINT - KVDBReq* key = req.mutable_reqs()->Add(); - key->set_op("SET"); - key->set_key(std::to_string(global_key)); - key->set_value(std::to_string(global_key * 1)); - - key = req.mutable_reqs()->Add(); - key->set_op("GET"); - key->set_key(std::to_string(global_key)); - global_key++; - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - LOG(INFO) << "Receive Response size: " << res.ress_size(); - for (size_t i = 0; i < res.ress_size(); i++) { - KVDBRes val = res.ress(i); - LOG(INFO) << "Receive value from demo-server: " << val.value(); - } - LOG(INFO) << "Succ call predictor[echo_kvdb_service], the tag is: " - << route_tag << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - while (true) { - if (global_key > 10000) { - break; - } - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("echo_kvdb_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: echo_kvdb_service"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - usleep(50); - } // while (true) - - api.thrd_finalize(); - api.destroy(); - -#ifndef BCLOUD - google::ShutdownGoogleLogging(); -#endif - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/int64tensor_format.cpp b/demo-client/src/int64tensor_format.cpp deleted file mode 100644 index b89db96ac097eaae6f1f12cfb746cab9bee7a02e..0000000000000000000000000000000000000000 --- a/demo-client/src/int64tensor_format.cpp +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -#include "sdk-cpp/int64tensor_service.pb.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::int64tensor_service::Request; -using baidu::paddle_serving::predictor::int64tensor_service::Response; -using baidu::paddle_serving::predictor::format::Float32TensorPredictor; -using baidu::paddle_serving::predictor::format::Int64TensorInstance; - -int create_req(Request& req) { // NOLINT - Int64TensorInstance* ins = req.mutable_instances()->Add(); - ins->add_data(1); - ins->add_data(2); - ins->add_data(3); - ins->add_data(4); - ins->add_shape(2); - ins->add_shape(2); - - ins = req.mutable_instances()->Add(); - ins->add_data(5); - ins->add_data(6); - ins->add_data(7); - ins->add_data(8); - ins->add_data(9); - ins->add_shape(5); - ins->add_shape(1); - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - for (uint32_t i = 0; i < res.predictions_size(); ++i) { - const Float32TensorPredictor& prediction = res.predictions(i); - std::ostringstream oss1; - for (uint32_t j = 0; j < prediction.data_size(); ++j) { - oss1 << prediction.data(j) << " "; - } - - std::ostringstream oss2; - for (uint32_t j = 0; j < prediction.shape_size(); ++j) { - oss2 << prediction.shape(j) << " "; - } - LOG(INFO) << "Receive result " << oss1.str() << ", shape " << oss2.str(); - } - - LOG(INFO) << "Succ call predictor[int64tensor_format], the tag is: " - << route_tag << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - while (true) { - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("int64tensor_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: int64tensor_service"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - usleep(50); - } // while (true) - - api.thrd_finalize(); - api.destroy(); - -#ifndef BCLOUD - google::ShutdownGoogleLogging(); -#endif - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/sparse_format.cpp b/demo-client/src/sparse_format.cpp deleted file mode 100644 index 07f3eb4d4b8b5e32f0cacb2c657d949b8769d075..0000000000000000000000000000000000000000 --- a/demo-client/src/sparse_format.cpp +++ /dev/null @@ -1,166 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -#include "sdk-cpp/sparse_service.pb.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::sparse_service::Request; -using baidu::paddle_serving::predictor::sparse_service::Response; -using baidu::paddle_serving::predictor::format::SparsePrediction; -using baidu::paddle_serving::predictor::format::SparseInstance; - -int create_req(Request& req) { // NOLINT - SparseInstance* ins = req.mutable_instances()->Add(); - ins->add_keys(26); - ins->add_keys(182); - ins->add_keys(232); - ins->add_shape(2000); - ins->add_values(1); - ins->add_values(1); - ins->add_values(1); - - ins = req.mutable_instances()->Add(); - ins->add_keys(0); - ins->add_keys(182); - ins->add_keys(232); - ins->add_keys(299); - ins->add_shape(2000); - ins->add_values(13); - ins->add_values(1); - ins->add_values(1); - ins->add_values(1); - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - for (uint32_t i = 0; i < res.predictions_size(); ++i) { - const SparsePrediction& prediction = res.predictions(i); - std::ostringstream oss; - for (uint32_t j = 0; j < prediction.categories_size(); ++j) { - oss << prediction.categories(j) << " "; - } - LOG(INFO) << "Receive result " << oss.str(); - } - - LOG(INFO) << "Succ call predictor[sparse_format], the tag is: " << route_tag - << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - while (true) { - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("sparse_service"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: sparse_service"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - usleep(50); - } // while (true) - - api.thrd_finalize(); - api.destroy(); - -#ifndef BCLOUD - google::ShutdownGoogleLogging(); -#endif - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/text_classification.cpp b/demo-client/src/text_classification.cpp deleted file mode 100644 index ed2c07437654e596c081c7a42d82e04ab7b8d763..0000000000000000000000000000000000000000 --- a/demo-client/src/text_classification.cpp +++ /dev/null @@ -1,288 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -#include "sdk-cpp/text_classification.pb.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::text_classification::TextReqInstance; -using baidu::paddle_serving::predictor::text_classification::TextResInstance; -using baidu::paddle_serving::predictor::text_classification::Request; -using baidu::paddle_serving::predictor::text_classification::Response; - -const char *g_test_file = "./data/text_classification/test_set.txt"; -DEFINE_int32(batch_size, 50, "Set the batch size of test file."); - -// Text Classification Data Feed -// -// Input format: -// ([termid list], truth_label) -// Where 'termid list' is a variant length id list, `truth label` is a single -// number (0 or 1) -// -const int MAX_LINE_SIZE = 1024 * 1024; -std::vector g_pred_labels; -const float g_decision_boundary = 0.500; - -class DataFeed { - public: - virtual ~DataFeed() {} - virtual void init(); - virtual bool set_file(const char *filename); - std::vector> &get_test_input() { return _test_input; } - std::vector &get_labels() { return _test_label; } - uint32_t sample_id() { return _current_sample_id; } - void set_sample_id(uint32_t sample_id) { _current_sample_id = sample_id; } - - private: - std::vector> _test_input; - std::vector _test_label; - uint32_t _current_sample_id; - int _batch_size; - std::shared_ptr _batch_id_buffer; - std::shared_ptr _label_buffer; -}; - -void DataFeed::init() { - _batch_id_buffer.reset(new int[10240 * 1024], [](int *p) { delete[] p; }); - _label_buffer.reset(new int[10240 * 1024], [](int *p) { delete[] p; }); -} - -bool DataFeed::set_file(const char *filename) { - std::ifstream ifs(filename); - char *line = new char[MAX_LINE_SIZE]; - int len = 0; - char *sequence_begin_ptr = NULL; - char *sequence_end_ptr = NULL; - char *id_begin_ptr = NULL; - char *id_end_ptr = NULL; - char *label_ptr = NULL; - int label = -1; - int id = -1; - while (!ifs.eof()) { - std::vector vec; - ifs.getline(line, MAX_LINE_SIZE); - len = strlen(line); - if (line[0] != '(' || line[len - 1] != ')') { - continue; - } - line[len - 1] = '\0'; - - sequence_begin_ptr = strchr(line, '(') + 1; - if (*sequence_begin_ptr != '[') { - continue; - } - - sequence_end_ptr = strchr(sequence_begin_ptr, ']'); - if (sequence_end_ptr == NULL) { - continue; - } - *sequence_end_ptr = '\0'; - - id_begin_ptr = sequence_begin_ptr; - while (id_begin_ptr != NULL) { - id_begin_ptr++; - id_end_ptr = strchr(id_begin_ptr, ','); - if (id_end_ptr != NULL) { - *id_end_ptr = '\0'; - } - id = atoi(id_begin_ptr); - id_begin_ptr = id_end_ptr; - vec.push_back(id); - } - - label_ptr = strchr(sequence_end_ptr + 1, ','); - if (label_ptr == NULL) { - continue; - } - *label_ptr = '\0'; - - label_ptr++; - label = atoi(label_ptr); - - _test_input.push_back(vec); - _test_label.push_back(label); - } - - ifs.close(); - - std::cout << "read record" << _test_input.size() << std::endl; - - return 0; -} - -int create_req(std::shared_ptr data_feed, Request &req) { // NOLINT - std::vector> &inputs = data_feed->get_test_input(); - uint32_t current_sample_id = data_feed->sample_id(); - int idx = 0; - - for (idx = 0; - idx < FLAGS_batch_size && current_sample_id + idx < inputs.size(); - ++idx) { - TextReqInstance *req_instance = req.add_instances(); - std::vector &sample = inputs.at(current_sample_id + idx); - for (auto x : sample) { - req_instance->add_ids(x); - } - } - - if (idx < FLAGS_batch_size) { - return -1; - } - - data_feed->set_sample_id(current_sample_id + FLAGS_batch_size); - return 0; -} - -void extract_res(const Request &req, const Response &res) { - uint32_t sample_size = res.predictions_size(); - std::string err_string; - for (uint32_t si = 0; si < sample_size; ++si) { - const TextResInstance &res_instance = res.predictions(si); - - if (res_instance.class_1_prob() < g_decision_boundary) { - g_pred_labels.push_back(0); - } else if (res_instance.class_1_prob() >= g_decision_boundary) { - g_pred_labels.push_back(1); - } - } -} - -int main(int argc, char **argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - - g_pred_labels.clear(); - - std::shared_ptr local_feed(new DataFeed()); - local_feed->init(); - local_feed->set_file(g_test_file); - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - uint64_t elapse_ms = 0; - int batch_count = 0; - while (true) { - api.thrd_clear(); - - Predictor *predictor = api.fetch_predictor("text_classification"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: text_classification"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(local_feed, req) != 0) { - break; - } - - ++batch_count; - - timeval start; - gettimeofday(&start, NULL); - - if (predictor->inference(&req, &res) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - timeval end; - gettimeofday(&end, NULL); - - elapse_ms += (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - -#if 1 - LOG(INFO) << "single round elapse time " - << (end.tv_sec * 1000000 + end.tv_usec) - - (start.tv_sec * 1000000 + start.tv_usec); -#endif - extract_res(req, res); - res.Clear(); - } // while (true) - - int correct = 0; - std::vector &truth_label = local_feed->get_labels(); - for (int i = 0; i < g_pred_labels.size(); ++i) { - if (g_pred_labels[i] == truth_label[i]) { - ++correct; - } - } - - LOG(INFO) << "Elapse ms " << elapse_ms; - LOG(INFO) << "Exe ms per batch " << elapse_ms / batch_count; - double qps = (static_cast(g_pred_labels.size()) / elapse_ms) * 1000; - - LOG(INFO) << "QPS: " << qps / FLAGS_batch_size << "/s"; - LOG(INFO) << "Accuracy " - << static_cast(correct) / g_pred_labels.size(); - - LOG(INFO) << "correct " << correct; - LOG(INFO) << "g_pred_labels " << g_pred_labels.size(); - api.thrd_finalize(); - api.destroy(); - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/text_classification_press.cpp b/demo-client/src/text_classification_press.cpp deleted file mode 100644 index e71bb18b0e1e7076b8576178381ceb1b3a32a5b4..0000000000000000000000000000000000000000 --- a/demo-client/src/text_classification_press.cpp +++ /dev/null @@ -1,369 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include -#include // NOLINT -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" -#include "sdk-cpp/text_classification.pb.h" - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::text_classification::TextReqInstance; -using baidu::paddle_serving::predictor::text_classification::TextResInstance; -using baidu::paddle_serving::predictor::text_classification::Request; -using baidu::paddle_serving::predictor::text_classification::Response; - -const char *g_test_file = "./data/text_classification/test_set.txt"; -DEFINE_int32(batch_size, 50, "Set the batch size of test file."); -DEFINE_int32(concurrency, 1, "Set the max concurrent number of requests"); - -std::vector> g_test_input; -std::vector g_test_label; -std::vector g_correct; -std::vector> g_round_time; - -std::atomic g_concurrency(0); - -// Text Classification Data Feed -// -// Input format: -// ([termid list], truth_label) -// Where 'termid list' is a variant length id list, `truth label` is a single -// number (0 or 1) -// -const int MAX_LINE_SIZE = 1024 * 1024; -std::vector> g_pred_labels; -const float g_decision_boundary = 0.500; - -class DataFeed { - public: - virtual ~DataFeed() {} - virtual void init(std::vector> *test_input, - std::vector *test_label); - std::vector> *get_test_input() { return _test_input; } - std::vector *get_labels() { return _test_label; } - uint32_t sample_id() { return _current_sample_id; } - void set_sample_id(uint32_t sample_id) { _current_sample_id = sample_id; } - - private: - std::vector> *_test_input; - std::vector *_test_label; - uint32_t _current_sample_id; - int _batch_size; -}; - -void DataFeed::init(std::vector> *test_input, - std::vector *test_label) { - _test_input = test_input; - _test_label = test_label; -} - -bool set_file(const char *filename) { - std::ifstream ifs(filename); - char *line = new char[MAX_LINE_SIZE]; - int len = 0; - char *sequence_begin_ptr = NULL; - char *sequence_end_ptr = NULL; - char *id_begin_ptr = NULL; - char *id_end_ptr = NULL; - char *label_ptr = NULL; - int label = -1; - int id = -1; - while (!ifs.eof()) { - std::vector vec; - ifs.getline(line, MAX_LINE_SIZE); - len = strlen(line); - if (line[0] != '(' || line[len - 1] != ')') { - continue; - } - line[len - 1] = '\0'; - - sequence_begin_ptr = strchr(line, '(') + 1; - if (*sequence_begin_ptr != '[') { - continue; - } - - sequence_end_ptr = strchr(sequence_begin_ptr, ']'); - if (sequence_end_ptr == NULL) { - continue; - } - *sequence_end_ptr = '\0'; - - id_begin_ptr = sequence_begin_ptr; - while (id_begin_ptr != NULL) { - id_begin_ptr++; - id_end_ptr = strchr(id_begin_ptr, ','); - if (id_end_ptr != NULL) { - *id_end_ptr = '\0'; - } - id = atoi(id_begin_ptr); - id_begin_ptr = id_end_ptr; - vec.push_back(id); - } - - label_ptr = strchr(sequence_end_ptr + 1, ','); - if (label_ptr == NULL) { - continue; - } - *label_ptr = '\0'; - - label_ptr++; - label = atoi(label_ptr); - - g_test_input.push_back(vec); - g_test_label.push_back(label); - } - - ifs.close(); - - std::cout << "read record" << g_test_input.size() << std::endl; - - return 0; -} - -int create_req(std::shared_ptr data_feed, Request *req) { // NOLINT - std::vector> *inputs = data_feed->get_test_input(); - uint32_t current_sample_id = data_feed->sample_id(); - int idx = 0; - - for (idx = 0; - idx < FLAGS_batch_size && current_sample_id + idx < inputs->size(); - ++idx) { - TextReqInstance *req_instance = req->add_instances(); - std::vector &sample = inputs->at(current_sample_id + idx); - for (auto x : sample) { - req_instance->add_ids(x); - } - } - - if (idx < FLAGS_batch_size) { - return -1; - } - - data_feed->set_sample_id(current_sample_id + FLAGS_batch_size); - return 0; -} - -void extract_res(const Request &req, const Response &res, int thread_id) { - uint32_t sample_size = res.predictions_size(); - std::string err_string; - for (uint32_t si = 0; si < sample_size; ++si) { - const TextResInstance &res_instance = res.predictions(si); - - if (res_instance.class_1_prob() < g_decision_boundary) { - g_pred_labels[thread_id].push_back(0); - } else if (res_instance.class_1_prob() >= g_decision_boundary) { - g_pred_labels[thread_id].push_back(1); - } - } -} - -void thread_worker(PredictorApi *api, int thread_id) { - std::shared_ptr local_feed(new DataFeed()); - local_feed->init(&g_test_input, &g_test_label); - - Request req; - Response res; - - api->thrd_initialize(); - - while (true) { - api->thrd_clear(); - - req.Clear(); - res.Clear(); - - Predictor *predictor = api->fetch_predictor("text_classification"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: text_classification"; - return; - } - - if (create_req(local_feed, &req) != 0) { - break; - } - - while (g_concurrency.load() >= FLAGS_concurrency) { - } - g_concurrency++; -#if 1 - LOG(INFO) << "Current concurrency " << g_concurrency.load(); -#endif - - timeval start; - timeval end; - - gettimeofday(&start, NULL); - if (predictor->inference(&req, &res) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return; - } - gettimeofday(&end, NULL); - - g_round_time[thread_id].push_back(end.tv_sec * 1000 + end.tv_usec / 1000 - - start.tv_sec * 1000 - - start.tv_usec / 1000); - - extract_res(req, res, thread_id); - - g_concurrency--; -#if 1 - LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); -#endif - } // while (true) - - std::vector *truth_label = local_feed->get_labels(); - for (int i = 0; i < g_pred_labels[thread_id].size(); ++i) { - if (g_pred_labels[thread_id][i] == truth_label->at(i)) { - ++g_correct[thread_id]; - } - } - - api->thrd_finalize(); -} - -int main(int argc, char **argv) { - google::ParseCommandLineFlags(&argc, &argv, true); - - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - - g_pred_labels.resize(FLAGS_concurrency); - g_correct.resize(FLAGS_concurrency); - g_round_time.resize(FLAGS_concurrency); - - set_file(g_test_file); - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - uint64_t elapse_ms = 0; - - timeval start; - gettimeofday(&start, NULL); - - std::vector worker_threads; - int i = 0; - for (; i < FLAGS_concurrency; ++i) { - worker_threads.push_back(new std::thread(thread_worker, &api, i)); - } - - for (i = 0; i < FLAGS_concurrency; ++i) { - worker_threads[i]->join(); - delete worker_threads[i]; - } - - timeval end; - gettimeofday(&end, NULL); - - api.destroy(); - - elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - uint64_t count = 0; - uint64_t correct = 0; - - for (int i = 0; i < FLAGS_concurrency; ++i) { - count += g_pred_labels[i].size(); - correct += g_correct[i]; - } - - std::vector round_times; - for (auto x : g_round_time) { - round_times.insert(round_times.end(), x.begin(), x.end()); - } - - std::sort(round_times.begin(), round_times.end()); - - int percent_pos_50 = round_times.size() * 0.5; - int percent_pos_80 = round_times.size() * 0.8; - int percent_pos_90 = round_times.size() * 0.9; - int percent_pos_99 = round_times.size() * 0.99; - int percent_pos_999 = round_times.size() * 0.999; - - uint64_t total_ms = 0; - for (auto x : round_times) { - total_ms += x; - } - - LOG(INFO) << "Total requests: " << round_times.size(); - LOG(INFO) << "Max concurrency: " << FLAGS_concurrency; - LOG(INFO) << "Total ms (absolute time): " << total_ms / FLAGS_concurrency; - - double qps = 0.0; - if (elapse_ms != 0) { - qps = (static_cast(count) / (total_ms / FLAGS_concurrency)) * 1000; - } - - LOG(INFO) << "QPS: " << qps / FLAGS_batch_size << "/s"; - LOG(INFO) << "Accuracy " << static_cast(correct) / count; - - LOG(INFO) << "Latency statistics: "; - if (round_times.size() != 0) { - LOG(INFO) << "Average ms: " - << static_cast(total_ms) / round_times.size(); - LOG(INFO) << "50 percent ms: " << round_times[percent_pos_50]; - LOG(INFO) << "80 percent ms: " << round_times[percent_pos_80]; - LOG(INFO) << "90 percent ms: " << round_times[percent_pos_90]; - LOG(INFO) << "99 percent ms: " << round_times[percent_pos_99]; - LOG(INFO) << "99.9 percent ms: " << round_times[percent_pos_999]; - } else { - LOG(INFO) << "N/A"; - } - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/ximage.cpp b/demo-client/src/ximage.cpp deleted file mode 100644 index d0446215366af83b5319892e91cb30bd85d22328..0000000000000000000000000000000000000000 --- a/demo-client/src/ximage.cpp +++ /dev/null @@ -1,213 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/image_class.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" - -#ifndef BCLOUD -using json2pb::JsonToProtoMessage; -#endif - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::format::XImageReqInstance; -using baidu::paddle_serving::predictor::format::DensePrediction; -using baidu::paddle_serving::predictor::image_classification::Request; -using baidu::paddle_serving::predictor::image_classification::Response; - -int create_req(Request& req) { // NOLINT - static const char* TEST_IMAGE_PATH = "./data/images/what.jpg"; - - FILE* fp = fopen(TEST_IMAGE_PATH, "rb"); - if (!fp) { - LOG(ERROR) << "Failed open image: " << TEST_IMAGE_PATH; - return -1; - } - - fseek(fp, 0L, SEEK_END); - size_t isize = ftell(fp); - char* ibuf = new (std::nothrow) char[isize]; - if (!ibuf) { - LOG(ERROR) << "Failed malloc image buffer"; - fclose(fp); - return -1; - } - - fseek(fp, 0, SEEK_SET); - fread(ibuf, sizeof(ibuf[0]), isize, fp); - XImageReqInstance* ins = req.add_instances(); - if (!ins) { - LOG(ERROR) << "Failed create req instance"; - delete[] ibuf; - fclose(fp); - return -1; - } - - ins->set_image_binary(ibuf, isize); - ins->set_image_length(isize); - - delete[] ibuf; - fclose(fp); - - return 0; -} - -void print_res(const Request& req, - const Response& res, - std::string route_tag, - uint64_t elapse_ms) { - static const char* GT_TEXT_PATH = "./data/images/groundtruth.txt"; - std::vector gt_labels; - - std::ifstream file(GT_TEXT_PATH); - std::string temp_str; - while (std::getline(file, temp_str)) { - gt_labels.push_back(temp_str); - } - - DensePrediction json_msg; - uint32_t sample_size = res.predictions_size(); - std::string err_string; - for (uint32_t si = 0; si < sample_size; ++si) { - std::string json = res.predictions(si).response_json(); - butil::IOBuf buf; - buf.append(json); - butil::IOBufAsZeroCopyInputStream wrapper(buf); - if (!JsonToProtoMessage(&wrapper, &json_msg, &err_string)) { - LOG(ERROR) << "Failed parse json from str:" << json; - return; - } - - uint32_t csize = json_msg.categories_size(); - if (csize <= 0) { - LOG(ERROR) << "sample-" << si << "has no" - << "categories props"; - continue; - } - float max_prop = json_msg.categories(0); - uint32_t max_idx = 0; - for (uint32_t ci = 1; ci < csize; ++ci) { - if (json_msg.categories(ci) > max_prop) { - max_prop = json_msg.categories(ci); - max_idx = ci; - } - } - - LOG(INFO) << "sample-" << si << "'s classify result: " << gt_labels[max_idx] - << ", prop: " << max_prop; - } - - LOG(INFO) << "Succ call predictor[ximage], the tag is: " << route_tag - << ", elapse_ms: " << elapse_ms; -} - -int main(int argc, char** argv) { - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - Request req; - Response res; - - api.thrd_initialize(); - - int count = 0; - while (count < 10) { - timeval start; - gettimeofday(&start, NULL); - - api.thrd_clear(); - - Predictor* predictor = api.fetch_predictor("ximage"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: ximage"; - return -1; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return -1; - } - - butil::IOBufBuilder debug_os; - if (predictor->debug(&req, &res, &debug_os) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return -1; - } - - butil::IOBuf debug_buf; - debug_os.move_to(debug_buf); - LOG(INFO) << "Debug string: " << debug_buf; - - timeval end; - gettimeofday(&end, NULL); - - uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - - (start.tv_sec * 1000 + start.tv_usec / 1000); - - print_res(req, res, predictor->tag(), elapse_ms); - res.Clear(); - - ++count; - } // while (true) - - api.thrd_finalize(); - api.destroy(); - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-client/src/ximage_press.cpp b/demo-client/src/ximage_press.cpp deleted file mode 100644 index 5a71508e79d8d32598b88be4ad26373ef743850a..0000000000000000000000000000000000000000 --- a/demo-client/src/ximage_press.cpp +++ /dev/null @@ -1,300 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#include -#include // NOLINT -#include "sdk-cpp/builtin_format.pb.h" -#include "sdk-cpp/image_class.pb.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/predictor_sdk.h" - -#ifndef BCLOUD -using json2pb::JsonToProtoMessage; -#endif - -using baidu::paddle_serving::sdk_cpp::Predictor; -using baidu::paddle_serving::sdk_cpp::PredictorApi; -using baidu::paddle_serving::predictor::format::XImageReqInstance; -using baidu::paddle_serving::predictor::format::DensePrediction; -using baidu::paddle_serving::predictor::image_classification::Request; -using baidu::paddle_serving::predictor::image_classification::Response; - -DEFINE_int32(concurrency, 1, "Set the max concurrent number of requests"); -DEFINE_int32(requests, 100, "Number of requests to send per thread"); -DEFINE_int32(batch_size, 1, "Batch size"); - -std::atomic g_concurrency(0); - -std::vector> g_round_time; -std::vector g_image_data; -std::vector g_image_lengths; - -const std::vector g_image_paths{ - "./data/images/ILSVRC2012_val_00000001.jpeg", - "./data/images/ILSVRC2012_val_00000002.jpeg", - "./data/images/ILSVRC2012_val_00000003.jpeg", - "./data/images/ILSVRC2012_val_00000004.jpeg", - "./data/images/ILSVRC2012_val_00000005.jpeg", - "./data/images/ILSVRC2012_val_00000006.jpeg", - "./data/images/ILSVRC2012_val_00000007.jpeg", - "./data/images/ILSVRC2012_val_00000008.jpeg", - "./data/images/ILSVRC2012_val_00000009.jpeg", - "./data/images/ILSVRC2012_val_00000010.jpeg"}; - -int prepare_data() { - for (auto x : g_image_paths) { - FILE* fp = fopen(x.c_str(), "rb"); - if (!fp) { - LOG(ERROR) << "Failed open image: " << x.c_str(); - continue; - } - - fseek(fp, 0L, SEEK_END); - size_t isize = ftell(fp); - char* ibuf = new (std::nothrow) char[isize]; - if (!ibuf) { - LOG(ERROR) << "Failed malloc image buffer"; - fclose(fp); - return -1; - } - - fseek(fp, 0, SEEK_SET); - fread(ibuf, sizeof(ibuf[0]), isize, fp); - g_image_data.push_back(ibuf); - g_image_lengths.push_back(isize); - - fclose(fp); - } - - return 0; -} - -int create_req(Request& req) { // NOLINT - for (int i = 0; i < FLAGS_batch_size; ++i) { - XImageReqInstance* ins = req.add_instances(); - if (!ins) { - LOG(ERROR) << "Failed create req instance"; - return -1; - } - - int id = i % g_image_data.size(); - ins->set_image_binary(g_image_data[id], g_image_lengths[id]); - ins->set_image_length(g_image_lengths[id]); - } - - return 0; -} - -void extract_res(const Request& req, const Response& res) { - uint32_t sample_size = res.predictions_size(); - std::string err_string; - for (uint32_t si = 0; si < sample_size; ++si) { - DensePrediction json_msg; - std::string json = res.predictions(si).response_json(); - butil::IOBuf buf; - buf.clear(); - buf.append(json); - butil::IOBufAsZeroCopyInputStream wrapper(buf); - if (!JsonToProtoMessage(&wrapper, &json_msg, &err_string)) { - LOG(ERROR) << "Failed parse json from str:" << json; - return; - } - - uint32_t csize = json_msg.categories_size(); - if (csize <= 0) { - LOG(ERROR) << "sample-" << si << "has no" - << "categories props"; - continue; - } - float max_prop = json_msg.categories(0); - uint32_t max_idx = 0; - for (uint32_t ci = 1; ci < csize; ++ci) { - if (json_msg.categories(ci) > max_prop) { - max_prop = json_msg.categories(ci); - max_idx = ci; - } - } - - LOG(INFO) << "instance " << si << "has class " << max_idx; - } // end for -} - -void thread_worker(PredictorApi* api, int thread_id) { - Request req; - Response res; - - api->thrd_initialize(); - - for (int i = 0; i < FLAGS_requests; ++i) { - api->thrd_clear(); - - Predictor* predictor = api->fetch_predictor("ximage"); - if (!predictor) { - LOG(ERROR) << "Failed fetch predictor: ximage"; - return; - } - - req.Clear(); - res.Clear(); - - if (create_req(req) != 0) { - return; - } - - while (g_concurrency.load() >= FLAGS_concurrency) { - } - g_concurrency++; -#if 1 - LOG(INFO) << "Current concurrency " << g_concurrency.load(); -#endif - - timeval start; - timeval end; - - gettimeofday(&start, NULL); - if (predictor->inference(&req, &res) != 0) { - LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); - return; - } - gettimeofday(&end, NULL); - - g_round_time[thread_id].push_back(end.tv_sec * 1000 + end.tv_usec / 1000 - - start.tv_sec * 1000 - - start.tv_usec / 1000); - - extract_res(req, res); - res.Clear(); - - g_concurrency--; -#if 1 - LOG(INFO) << "Done. Currenct concurrency " << g_concurrency.load(); -#endif - } // for (int i = 0; i < FLAGS_requests; ++i) - - api->thrd_finalize(); -} - -int main(int argc, char** argv) { - google::ParseCommandLineFlags(&argc, &argv, true); - - PredictorApi api; - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = (std::string("./log/") + filename + ".log").c_str(); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - struct stat st_buf; - int ret = 0; - if ((ret = stat("./log", &st_buf)) != 0) { - mkdir("./log", 0777); - ret = stat("./log", &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path ./log not exist, and create fail"; - return -1; - } - } - FLAGS_log_dir = "./log"; - google::InitGoogleLogging(strdup(argv[0])); -#endif - - g_round_time.resize(FLAGS_concurrency); - - if (api.create("./conf", "predictors.prototxt") != 0) { - LOG(ERROR) << "Failed create predictors api!"; - return -1; - } - - if (prepare_data() != 0) { - LOG(ERROR) << "Prepare data fail"; - return -1; - } - - std::vector worker_threads; - int i = 0; - for (; i < FLAGS_concurrency; ++i) { - worker_threads.push_back(new std::thread(thread_worker, &api, i)); - } - - for (i = 0; i < FLAGS_concurrency; ++i) { - worker_threads[i]->join(); - delete worker_threads[i]; - } - - api.destroy(); - - std::vector round_times; - for (auto x : g_round_time) { - round_times.insert(round_times.end(), x.begin(), x.end()); - } - - std::sort(round_times.begin(), round_times.end()); - - int percent_pos_50 = round_times.size() * 0.5; - int percent_pos_80 = round_times.size() * 0.8; - int percent_pos_90 = round_times.size() * 0.9; - int percent_pos_99 = round_times.size() * 0.99; - int percent_pos_999 = round_times.size() * 0.999; - - uint64_t total_ms = 0; - for (auto x : round_times) { - total_ms += x; - } - - LOG(INFO) << "Batch size: " << FLAGS_batch_size; - LOG(INFO) << "Total requests: " << round_times.size(); - LOG(INFO) << "Max concurrency: " << FLAGS_concurrency; - LOG(INFO) << "Total ms (absolute time): " << total_ms / FLAGS_concurrency; - - double qps = 0.0; - if (total_ms != 0) { - qps = (static_cast(FLAGS_concurrency * FLAGS_requests) / - (total_ms / FLAGS_concurrency)) * - 1000; - } - - LOG(INFO) << "QPS: " << qps << "/s"; - - LOG(INFO) << "Latency statistics: "; - if (round_times.size() != 0) { - LOG(INFO) << "Average ms: " - << static_cast(total_ms) / round_times.size(); - LOG(INFO) << "50 percent ms: " << round_times[percent_pos_50]; - LOG(INFO) << "80 percent ms: " << round_times[percent_pos_80]; - LOG(INFO) << "90 percent ms: " << round_times[percent_pos_90]; - LOG(INFO) << "99 percent ms: " << round_times[percent_pos_99]; - LOG(INFO) << "99.9 percent ms: " << round_times[percent_pos_999]; - } else { - LOG(INFO) << "N/A"; - } - - return 0; -} - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/demo-serving/CMakeLists.txt b/demo-serving/CMakeLists.txt deleted file mode 100644 index aba4e55e6447c3cc4277605f9aa0eea43b4ef20c..0000000000000000000000000000000000000000 --- a/demo-serving/CMakeLists.txt +++ /dev/null @@ -1,96 +0,0 @@ -if (NOT EXISTS - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm) - execute_process(COMMAND wget - --no-check-certificate https://paddle-serving.bj.bcebos.com/data/text_classification/text_classification_lstm.tar.gz - --output-document - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm.tar.gz) - - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf - "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm.tar.gz" - WORKING_DIRECTORY - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid - ) -endif() - -if (NOT EXISTS - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction) - execute_process(COMMAND wget --no-check-certificate - https://paddle-serving.bj.bcebos.com/data/ctr_prediction/ctr_prediction.tar.gz - --output-document - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction.tar.gz) - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf - "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction.tar.gz" - WORKING_DIRECTORY - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid) -endif() - -if (NOT EXISTS - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12) - execute_process(COMMAND wget --no-check-certificate - https://paddle-serving.bj.bcebos.com/data/bert/bert_cased_L-12_H-768_A-12.tar.gz - --output-document - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12.tar.gz) - execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf - "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12.tar.gz" - WORKING_DIRECTORY - ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid) -endif() - -include_directories(SYSTEM ${CMAKE_CURRENT_LIST_DIR}/../kvdb/include) - -include(op/CMakeLists.txt) -include(proto/CMakeLists.txt) -add_executable(serving ${serving_srcs}) -add_dependencies(serving pdcodegen fluid_cpu_engine pdserving paddle_fluid - opencv_imgcodecs cube-api) -if (WITH_GPU) - add_dependencies(serving fluid_gpu_engine) -endif() -target_include_directories(serving PUBLIC - ${CMAKE_CURRENT_BINARY_DIR}/../predictor - ) - -if(WITH_GPU) - target_link_libraries(serving -Wl,--whole-archive fluid_gpu_engine - -Wl,--no-whole-archive) -endif() - -target_link_libraries(serving -Wl,--whole-archive fluid_cpu_engine - -Wl,--no-whole-archive) - -target_link_libraries(serving paddle_fluid ${paddle_depend_libs}) - -target_link_libraries(serving opencv_imgcodecs - ${opencv_depend_libs}) - -target_link_libraries(serving pdserving) -target_link_libraries(serving cube-api) - -target_link_libraries(serving kvdb rocksdb) - -if(WITH_GPU) - target_link_libraries(serving ${CUDA_LIBRARIES}) -endif() -target_link_libraries(serving -liomp5 -lmklml_intel -lmkldnn -lpthread - -lcrypto -lm -lrt -lssl -ldl -lz -lbz2) - -install(TARGETS serving - RUNTIME DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/bin) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/data DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/) - -FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) -install(FILES ${inc} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/serving) - -if (${WITH_MKL}) - install(FILES - ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mklml/lib/libmklml_intel.so - ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mklml/lib/libiomp5.so - ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mkldnn/lib/libmkldnn.so.1 - DESTINATION - ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/bin) -endif() diff --git a/demo-serving/conf/model_toolkit.prototxt b/demo-serving/conf/model_toolkit.prototxt deleted file mode 100644 index fae40a9dd0b4c19225cedd8bad42aea43bd1c5d7..0000000000000000000000000000000000000000 --- a/demo-serving/conf/model_toolkit.prototxt +++ /dev/null @@ -1,49 +0,0 @@ -engines { - name: "image_classification_resnet" - type: "FLUID_CPU_ANALYSIS_DIR" - reloadable_meta: "./data/model/paddle/fluid_time_file" - reloadable_type: "timestamp_ne" - model_data_path: "./data/model/paddle/fluid/SE_ResNeXt50_32x4d" - runtime_thread_num: 0 - batch_infer_size: 0 - enable_batch_align: 0 - enable_memory_optimization: true - static_optimization: false - force_update_static_cache: false -} - -engines { - name: "text_classification_bow" - type: "FLUID_CPU_ANALYSIS_DIR" - reloadable_meta: "./data/model/paddle/fluid_time_file" - reloadable_type: "timestamp_ne" - model_data_path: "./data/model/paddle/fluid/text_classification_lstm" - runtime_thread_num: 0 - batch_infer_size: 0 - enable_batch_align: 0 -} - -engines { - name: "ctr_prediction" - type: "FLUID_CPU_ANALYSIS_DIR" - reloadable_meta: "./data/model/paddle/fluid_time_file" - reloadable_type: "timestamp_ne" - model_data_path: "./data/model/paddle/fluid/ctr_prediction" - runtime_thread_num: 0 - batch_infer_size: 0 - enable_batch_align: 0 - sparse_param_service_type: REMOTE - sparse_param_service_table_name: "test_dict" -} - -engines { - name: "bert" - type: "FLUID_CPU_ANALYSIS_DIR" - reloadable_meta: "./data/model/paddle/fluid_time_file" - reloadable_type: "timestamp_ne" - model_data_path: "./data/model/paddle/fluid/bert_cased_L-12_H-768_A-12" - runtime_thread_num: 0 - batch_infer_size: 0 - enable_batch_align: 0 - enable_memory_optimization: true -} diff --git a/demo-serving/conf/service.prototxt b/demo-serving/conf/service.prototxt deleted file mode 100644 index 7b97087e34db9f5439a2ae0eda3f27f114915662..0000000000000000000000000000000000000000 --- a/demo-serving/conf/service.prototxt +++ /dev/null @@ -1,41 +0,0 @@ -services { - name: "BuiltinDenseFormatService" - workflows: "workflow1" -} -services { - name: "BuiltinSparseFormatService" - workflows: "workflow2" -} - -services { - name: "BuiltinTestEchoService" - workflows: "workflow3" -} - -services { - name: "ImageClassifyService" - workflows: "workflow4" -} - -services { - name: "BuiltinFluidService" - workflows: "workflow5" -} -services { - name: "TextClassificationService" - workflows: "workflow6" -} - -services { - name: "EchoKVDBService" - workflows: "workflow7" -} - -services { - name: "CTRPredictionService" - workflows: "workflow8" -} -services { - name: "BertService" - workflows: "workflow9" -} diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/__model__ b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/__model__ deleted file mode 100644 index 1104a085c83558676dc89de3c4d2da5f04bd4f69..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/__model__ and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.b_0 deleted file mode 100644 index 318fcc88254dca0a641ea7cc161cb4300ed7bbbc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_0 deleted file mode 100644 index 031d940e7fcdbbf35334a4969f9286a6d1b844a7..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_1 deleted file mode 100644 index b3e04b591c0c679b3c55cf9c4f59dd43c689e69f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_2 deleted file mode 100644 index 0bdceaf7044c1531bbad343fef8eab7bcf2f2ec5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_0.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.b_0 deleted file mode 100644 index bdb6710c957d2805da2398d5cf304ae5479e6785..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_0 deleted file mode 100644 index b4f59d5ed947156ae02734a519ccde25163ef590..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_1 deleted file mode 100644 index fbde05c5f54077f497da6f8b7c9c48f718d85922..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_2 deleted file mode 100644 index 9d7cc4edef68b0689714a6cd0afb2e5aa5738bd5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_1.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.b_0 deleted file mode 100644 index cc5096e8d89c505b1d47d589df2ec3997befd0ed..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_0 deleted file mode 100644 index 6461151f41d186a51aa65429a7b11c677116c2a0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_1 deleted file mode 100644 index d80f9aeb328ce3663d9179cf1b0099b0f07c8614..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_2 deleted file mode 100644 index 2b9864b71d5502e060b5943b0c8e8cae0b910c80..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_10.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.b_0 deleted file mode 100644 index 4932bd6c7a9c9d61747752c5eb122975894a0953..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_0 deleted file mode 100644 index 1cdb33998ea617b4dda33f450db577df8e884b3e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_1 deleted file mode 100644 index 4f84755869e6316c2565dd94381fe190a14c1c69..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_2 deleted file mode 100644 index 7e019f0ad0950e49ae512a8d2b23ddce6e59e086..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_11.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.b_0 deleted file mode 100644 index 755242af9cb83db8c2037254f260da2919b0d184..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_0 deleted file mode 100644 index 05f1b53436b7b13c24c7791d25aa9ad06bcc7a0d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_1 deleted file mode 100644 index 6150bc710b1108d15e2bab7532fd757423033b99..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_2 deleted file mode 100644 index 65435605c0f14c2f48c72eadd2374476fd459e0b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_12.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.b_0 deleted file mode 100644 index be7a542204aeb5575c66cbf8612d0d827824b62b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_0 deleted file mode 100644 index 3ffdfedbb5369f9140d915e8d5bc627df8113b51..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_1 deleted file mode 100644 index 5230c2fee97d739685b03ba13f3aee969be1be81..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_2 deleted file mode 100644 index 21343557fbd7be1677b0aa2824b8ad55c8f114b5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_13.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.b_0 deleted file mode 100644 index 383b1f57335466332c6f5c8d6e0dbcbe799c7f24..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_0 deleted file mode 100644 index 74ca81be28245bbf457b9f606112cd4fdafba07c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_1 deleted file mode 100644 index 789d81ef9031a00cdfa135a475651ab4aed58441..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_2 deleted file mode 100644 index 5d3c7413c1ff8a939e9b86670294a20285317e5b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_14.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.b_0 deleted file mode 100644 index 4d21e65578743152638b3dd946d62edd50912e28..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_0 deleted file mode 100644 index 363908f1416faeb7c1d6bfa36e664db000d93583..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_1 deleted file mode 100644 index c7750160220ac6ad9a60dff342d46481ab8a8f6d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_2 deleted file mode 100644 index 4bda393ec9937b28ae218209325e4222bea99943..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_15.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.b_0 deleted file mode 100644 index 7fb12285b97f4e80e75e8c370df6dbdfc8d9cd6d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_0 deleted file mode 100644 index 02b47545d78e53c2058bb0bceef730832ce75125..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_1 deleted file mode 100644 index 9140041edfac0a718edc5f8ea3c0b4fa0c682b0c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_2 deleted file mode 100644 index 4f619171e2961ea2d575cc092fc4e584f01402c1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_16.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.b_0 deleted file mode 100644 index 590a6af3de18ee25bea93498cad0427657366f9d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_0 deleted file mode 100644 index bc03a4ac37100539a95c5ef0d14db6506351c06f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_1 deleted file mode 100644 index c07f1c8f6965ab9c34e13e8626d1e02b653f5642..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_2 deleted file mode 100644 index f6568ba035a9a7be11d44415f1bf274986df07ed..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_17.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.b_0 deleted file mode 100644 index defc60ad8a047d95b5b8de2519e57aa5fbda0e57..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_0 deleted file mode 100644 index 5bc406e40716ba9cba70a97cd47f978e8577a50c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_1 deleted file mode 100644 index e932adf36fcd834f21bbf7e5104dbf4c722125e9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_2 deleted file mode 100644 index 2b43949d34778ceb05de48b96805da46596d2e46..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_18.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.b_0 deleted file mode 100644 index a77edf4df02ee534dec71e90a5216d2e9815932a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_0 deleted file mode 100644 index c4eb2eacf75c56fed7626eb5cc8f23ac3544a528..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_1 deleted file mode 100644 index 572490bf4456e69979d4b6e853151d60ac335e9d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_2 deleted file mode 100644 index 4f9e0fae8766a455f033628b5b27c49a9756d069..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_19.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.b_0 deleted file mode 100644 index 39ab8ef014eea94bcac548005813484b0ac1e697..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_0 deleted file mode 100644 index f3a62056db74c6c0c0d4d2b7259dba9d91425b19..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_1 deleted file mode 100644 index 74a0970169e6582a5cc6e1fe0f548d4d1d5f80f6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_2 deleted file mode 100644 index a362f63cd00cdbe70282a89b4faa8b652cb974f7..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_2.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.b_0 deleted file mode 100644 index 4882f0711fdd9c386cd470442b0b5fde9e4fab0d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_0 deleted file mode 100644 index 03d8beb27092d4bc686c2b0f0da9a95e2ebb3278..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_1 deleted file mode 100644 index a57ba52043a2af51cf2547a4a03f38bcf115fe11..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_2 deleted file mode 100644 index 00cd249fc60314782da6e7414f5735a951a6c7f8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_20.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.b_0 deleted file mode 100644 index e16f9ed11ef96257bcb1ca6ea8bf803dde4101d6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_0 deleted file mode 100644 index a84387bc10820f3f694c941c9219e7fd2af3fdd2..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_1 deleted file mode 100644 index 0e229ea099e6bfa4180fc62c31a80f95a5395ec1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_2 deleted file mode 100644 index 5180506bd5b01850f67f431c14f6b5891dc7ae63..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_21.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.b_0 deleted file mode 100644 index bc67f93943db9e521d3d25a213f3f200468db162..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_0 deleted file mode 100644 index 4039a8c697e5f2516e612a5516e6f1f339a774f4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_1 deleted file mode 100644 index c68a6d55d0dd5b4254f4f405886c7f325e089c17..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_2 deleted file mode 100644 index 266bec219e4d26ec0d4bc5198e0bdb02bd2db57f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_22.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.b_0 deleted file mode 100644 index 51c74e915b8c99da118cb291a459086411877a67..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_0 deleted file mode 100644 index 75a35bdb251825091d505de969220e2e998055bd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_1 deleted file mode 100644 index 993dde77020ed90eb6d606071ffc4bf7d50de641..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_2 deleted file mode 100644 index eb208ce625f119c81884c9e465dcc73dba59d63c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_23.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.b_0 deleted file mode 100644 index 9fc249a303bf546fdbcc20f8b94e4583119cd18a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_0 deleted file mode 100644 index 2884e992173ff468550c03acbdb553553b655f17..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_1 deleted file mode 100644 index a403207455c12480c34cfd3e6638262cd4e5de7d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_2 deleted file mode 100644 index 26bf7f8cd99e26d569fcecb7aae6228d83d7992c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_24.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.b_0 deleted file mode 100644 index 03cd8c4bd95fa6fd7bc76e643b6b093b050172cb..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_0 deleted file mode 100644 index 5735711fb7e129d13539fbe056c4e84e302f36ff..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_1 deleted file mode 100644 index 97dd2aa02ca63da1b97c41602e313e9243815759..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_2 deleted file mode 100644 index bf9d473488916ed4320583c55f9fe31920f18106..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_25.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.b_0 deleted file mode 100644 index 451f73d3c015d76eca6042c046e47b6f1846754d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_0 deleted file mode 100644 index 91d6a6ce040f10982583710c79419bd97477b87f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_1 deleted file mode 100644 index 5094d883c45c1b3f02f0df739d95eee7a38057af..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_2 deleted file mode 100644 index cc52a08b53f8779bf265f2d0170059187fe7aa1d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_26.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.b_0 deleted file mode 100644 index 08f5b7838ca6d6360f00f344b6a346e5f8bc0b8a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_0 deleted file mode 100644 index 7cc264c46ea150d43f7eab5bf4206c86adcb08e9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_1 deleted file mode 100644 index d8a1f2a8632ca003baeb5bce886956fa0542fc59..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_2 deleted file mode 100644 index 2dadda9857f58e19ac53b8c60c724bcef6e4a484..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_27.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.b_0 deleted file mode 100644 index 15ed407fd91873872261ffa0fdf9f0beb3494deb..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_0 deleted file mode 100644 index df0f7703e85a2912038f3850be74636ea1bc3307..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_1 deleted file mode 100644 index 715292e77ba8ec8ac58fddea2ed394044c4f09b5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_2 deleted file mode 100644 index e979748214d60d6643b3d11ac55d693bc6d6158e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_28.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.b_0 deleted file mode 100644 index 70b66a8d8f2da23619c4fc5cd4bc3b3bb3c736eb..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_0 deleted file mode 100644 index 90095991080ace71783bf2d7c57f3c314951911c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_1 deleted file mode 100644 index f896c4b6cb938229f48146fe1f3bc346b1193459..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_2 deleted file mode 100644 index 9651958d471fd6f4be7b8a5533316b2fcdfb459d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_29.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.b_0 deleted file mode 100644 index 8e68274c3dd90711f246d418a88193cac177a844..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_0 deleted file mode 100644 index 822fcda3e6d0008db85407c86fad7e082455bc51..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_1 deleted file mode 100644 index 82467c6f70a6e58b23fbd67a424c5e7150739a53..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_2 deleted file mode 100644 index cead469e8b349a982d3c67f4cace204382babc38..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_3.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.b_0 deleted file mode 100644 index e22b2a40f76a4335ff2f74251588f0e55c73fac4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_0 deleted file mode 100644 index bb396965e7bcd771330b739e7bc2294214f46cc0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_1 deleted file mode 100644 index 386e41645ca39077ca196a9e40e542c7f82b3d8e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_2 deleted file mode 100644 index fc027a244364393438ed7ff7bd98344689245dab..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_30.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.b_0 deleted file mode 100644 index 1515606e80c7865e4229d1989809b9c2a40cb369..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_0 deleted file mode 100644 index 8f9d22874fef0521567a5ffcfa4ff4baf1e78689..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_1 deleted file mode 100644 index 2873d988717d92483353f5260238756f13bd0faf..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_2 deleted file mode 100644 index eeb7717a054a326c37b267eb03f72008fa8a3f31..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_31.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.b_0 deleted file mode 100644 index 284a12179c4a6bcff0067e2cfcdb96eca0e73ec0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_0 deleted file mode 100644 index a3d4d8554e7d415fc0bd07aba4cf17b6d0b90667..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_1 deleted file mode 100644 index 1f8b78a6d96d202e62fb1accefa2018fe24b2048..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_2 deleted file mode 100644 index e1699e15e6c28608bfd3ae350639b882491bcbbe..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_32.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.b_0 deleted file mode 100644 index 8550870911f11c624e0fa476d5e20cfab3797218..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_0 deleted file mode 100644 index a128eab1ec146a37c57cd77f49e79dc8c36e56ce..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_1 deleted file mode 100644 index 985b40534195b9cda538543a8cef01965ee59a66..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_2 deleted file mode 100644 index 9b0d058ba8f6b24b2a713fd006329ed119e6cf14..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_33.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.b_0 deleted file mode 100644 index 6b554d5a9fd0d7d2128752612a39302de4b5ea91..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_0 deleted file mode 100644 index f2bd02ab48ae20121b48ab7aa0e82f743b661f3d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_1 deleted file mode 100644 index b7d60c457d6f07a0f8846a3c5c7827cbb4899fba..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_2 deleted file mode 100644 index af5a46a9f31116b5d5e754e429c6797137c0d4b9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_34.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.b_0 deleted file mode 100644 index 408988b049a93d2e4706eb946655029b1634e840..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_0 deleted file mode 100644 index f4a1322c0a481b810d1747ae1abf2da0a096a98a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_1 deleted file mode 100644 index 8ca27ef5c6ac024e59b0f38c8985593cd1790f85..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_2 deleted file mode 100644 index 8b9f88b8d0311cf4e990665db2ee0c55b95acf47..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_35.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.b_0 deleted file mode 100644 index b8f6b5b4b3e64e8b4d904830040859deb11a1dcc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_0 deleted file mode 100644 index 9d542d10524fd1fc576a238627d442e93b5c2ca4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_1 deleted file mode 100644 index 0de5095d3282d451b17f330fced9ce5f5dada676..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_2 deleted file mode 100644 index f5b0b033c1bb413d775bf1744653eb501ebc0c1b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_36.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.b_0 deleted file mode 100644 index 515d9bb0c0897e03929ff4687384234806117947..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_0 deleted file mode 100644 index d5423a1c58f5d70967d1f99ce7fc636c357572bf..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_1 deleted file mode 100644 index 6e5e9f78bd2369bc279d237551117086312ebefa..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_2 deleted file mode 100644 index fe65c18406a7481a7b961e5c95c2f72a8bd139c9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_37.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.b_0 deleted file mode 100644 index ec4fe02a2eee338219c7a67d673d1587ed0c94cd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_0 deleted file mode 100644 index 083bc354a7924b45689b3264881c80283b221131..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_1 deleted file mode 100644 index 117015c4a1fd9b0e858c2816cc0eb0985ac5b60c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_2 deleted file mode 100644 index 98ecbe6aa403171e3d97c812d16203154c3b70ff..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_38.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.b_0 deleted file mode 100644 index 59076501469c9ff63d2cec4f0574d5de9fb7fcbd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_0 deleted file mode 100644 index a2f538e0c606a722b6397ce2a9d59b4bda3b9ca6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_1 deleted file mode 100644 index f141732d31b91a2ee002a950b09b2d465c8a9d2e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_2 deleted file mode 100644 index e389a8d9f7ee5217ddab0898a221b05f7c4ef5a4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_39.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.b_0 deleted file mode 100644 index 6dfbbf7643235c9567693e2e3d40844ab0171ff0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_0 deleted file mode 100644 index 3227939062a43888d379731ce3f0d31d7187b4ae..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_1 deleted file mode 100644 index 745551ffbc37d3c37354ac11834a62609b46b3b8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_2 deleted file mode 100644 index 98006bc349ac70d40a5fc2a35cdfb39b60b600b4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_4.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.b_0 deleted file mode 100644 index f586c12fb2a929e3b12fe5e4cc035f0ab673f7c0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_0 deleted file mode 100644 index be277d0d70dcbd0cd8a71a3433162e8965098015..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_1 deleted file mode 100644 index 406915d9a9a063a69c659bb1d02b2419c19ae658..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_2 deleted file mode 100644 index 9084ef887274395aef6a0b99f107549aa40ae45d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_40.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.b_0 deleted file mode 100644 index 4c2a0b13f883abb528aa0404499b857c362ac1f2..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_0 deleted file mode 100644 index 889515a698c1b946b1ce2d29b803ea5283940aa1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_1 deleted file mode 100644 index a831f270473c7a94feba1f73d6b2734eb87f2887..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_2 deleted file mode 100644 index 8cccb77ceca5f02cfc567fa33fe579c767e2edd6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_41.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.b_0 deleted file mode 100644 index e64e3634552138054db421ed569461247a8d0c20..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_0 deleted file mode 100644 index 68e2a948e6b79b8c7e28fe17ef32647968fec7a0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_1 deleted file mode 100644 index 4311d9dbdc6368124bcd2c0c8766f0dc51f1049c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_2 deleted file mode 100644 index 599de289e9bf19daad8a431254ab79c74e79658d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_42.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.b_0 deleted file mode 100644 index 5f70f50c4d7ce902a6b880fa7b4f3bd970d8fa6c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_0 deleted file mode 100644 index 17ea4cb824bb82640fadaff529bbcc48f8ac6b4a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_1 deleted file mode 100644 index 9c7c5a24064c5b1039f0da35188dda3206897f04..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_2 deleted file mode 100644 index 10aae85b3dd71c29b1b4e4df2e35d88672a9cea5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_43.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.b_0 deleted file mode 100644 index ab6fc8782fe3112d78bbbf89871fe38ad52c0a4d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_0 deleted file mode 100644 index f3f26224ad6b2a235f7a3e2fdf414536f37b9e97..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_1 deleted file mode 100644 index 1acdbb10c35530b59816c0e0cc1533f678c6bf73..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_2 deleted file mode 100644 index 85c8b7a7ac0702fcea8bedbdda7237da094027e8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_44.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.b_0 deleted file mode 100644 index fc4e4cec247f649c6fc50d40a4509c576a3b29f6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_0 deleted file mode 100644 index e08100615d046573cefad91cbc845f20a250f04f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_1 deleted file mode 100644 index 8d339fe5e733600f7f626ba674c9e296531dae03..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_2 deleted file mode 100644 index 67ce6b2f72927e3bf33758c50ce62148150f7649..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_45.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.b_0 deleted file mode 100644 index f156a2ffcb87370e5fdd4da27b07e54b6137eae9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_0 deleted file mode 100644 index 331b0b6205b43c410e9df0389c70cb8c5daaffed..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_1 deleted file mode 100644 index ee7de93c983309053d530e42c7b6786aaa77e4f0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_2 deleted file mode 100644 index 35b3a880ba98c2670edc79e298f57196a0f00ca9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_46.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.b_0 deleted file mode 100644 index 368c7f3f5b097764141ae4a6a0a7172dd00349af..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_0 deleted file mode 100644 index ef535989e2231c09839886fb8d5c700a00d90493..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_1 deleted file mode 100644 index f07d7772c0079075305d28409d0d8da0bfe2b73c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_2 deleted file mode 100644 index b04c514999da970850365740aba30e6ee66e2964..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_47.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.b_0 deleted file mode 100644 index 5224be1f3ed89008f7bcb7ee24243ae1499716cc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_0 deleted file mode 100644 index 6a6dcaf89f2dc2a2fde826971cdc6c0eb152c592..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_1 deleted file mode 100644 index 094d73cbe0a2858c69ee4f96f0698529b9b44777..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_2 deleted file mode 100644 index 43257f6d1f3653e7ca6a96151908e2e62135dbe9..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_48.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.b_0 deleted file mode 100644 index c72d5150a470dd00643c610115f0ea3f1f06d15f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_0 deleted file mode 100644 index a85fcbae2628a981c4ed9f921e68f9e08a9a4133..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_1 deleted file mode 100644 index d3fd5276c3ce00c96f0e5f8a7986bf01bcf4b42a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_2 deleted file mode 100644 index 990e99902d2dbe2a1639c3c33cca4d4f115f8b1e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_49.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.b_0 deleted file mode 100644 index 8417bd4b642a90ec15428d900fe172e6f9ad6fc5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_0 deleted file mode 100644 index 949f8fb495444312b662d822a4043096f5ef24b2..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_1 deleted file mode 100644 index 566e85bff0631a273dcb53b8de2b87ffa4211148..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_2 deleted file mode 100644 index 705ebbc6c36fed06759fd9ed8a2c9add6fcd1fc4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_5.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.b_0 deleted file mode 100644 index 2f8db5846ed0b706fa10257214eeb34628fba48a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_0 deleted file mode 100644 index 52754d9c49c10a19fb1d052e4381aaf6bac3bc6e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_1 deleted file mode 100644 index bb91584775663b751dc88442ee4a046dc5927145..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_2 deleted file mode 100644 index 61a56c2d9e4abb476a1715ffe09889d76589e69d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_50.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.b_0 deleted file mode 100644 index adabddba9808742ebe6d7f80acc28147ee82923b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_0 deleted file mode 100644 index 108f46ee99584b6f8dcfb8883abbef31ae8e14ec..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_1 deleted file mode 100644 index a22e0793c5e4c7190be3a13fdd3e589442ac2ddc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_2 deleted file mode 100644 index 8da025adbfa18cfa97455edd201c05fdf7f4f80c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_51.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.b_0 deleted file mode 100644 index 3aeadf7a966038127eed088b332ba4ac8fdd3a59..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_0 deleted file mode 100644 index 806103fec90bc2c25db436eab048c312d11b3a9a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_1 deleted file mode 100644 index 638b3b1a3994a829895ad8078d44135df05ffdad..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_2 deleted file mode 100644 index b4b98792fdbd74f1ba6d1f6fb012e8ca24c2aa12..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_52.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.b_0 deleted file mode 100644 index 5af5a7c5974ec17aac829587bbd98503aabfebbf..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_0 deleted file mode 100644 index d2c6fd511f2f9a1ea7d6d21655d179083e45787f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_1 deleted file mode 100644 index cafbe4d679d930d1705ccb59ed8ec317045edcc8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_2 deleted file mode 100644 index c0b2b71c201c276262147af2681ef9cd5a6a3689..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_6.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.b_0 deleted file mode 100644 index f76a3157f5c573b03065d0245e406a02b782e113..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_0 deleted file mode 100644 index 28db01d20ac1c6cc8809ed4e63257da5029ba127..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_1 deleted file mode 100644 index a37df144f7a0938f6490cc87f747780b681e6e68..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_2 deleted file mode 100644 index ab240e30d0d47a2363a82d62a5532303b2537e5c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_7.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.b_0 deleted file mode 100644 index 79cfbe7e784878ded149eac97fe950e9ff4e1aaa..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_0 deleted file mode 100644 index 4543bb9e11ee0d133302ecb61a1c9be8a693367d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_1 deleted file mode 100644 index f2a6b5304b31c724507a0f95dba358bbc52e3a53..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_2 deleted file mode 100644 index 88236d4697bd1776fa0460faa92cb1a5f6e46f99..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_8.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.b_0 deleted file mode 100644 index f7dcb4a0d02f49b6a8aac89d5e1b2e51d77122c5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_0 deleted file mode 100644 index b261378b491a01cb40a3d21ecde70432549308a7..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_1 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_1 deleted file mode 100644 index 06bc513e4088086aafaa9e49b5d4041b6059fc73..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_1 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_2 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_2 deleted file mode 100644 index 55ac9001c2634ba3e30c3d7e094a5a04ec0673c8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/batch_norm_9.w_2 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_0.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_0.w_0 deleted file mode 100644 index c6a82c46c4ee296156994fd66ff80ea8a464206d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_0.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_1.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_1.w_0 deleted file mode 100644 index e4c4d15f7dccd342c3bd67fde2beaf48ab86ede0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_1.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_10.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_10.w_0 deleted file mode 100644 index 3aba1d9861485fb04615efb264f5c1397ce420a2..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_10.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_11.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_11.w_0 deleted file mode 100644 index b8e84ef55d2ef88f511d30a475d40bc7e4f86961..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_11.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_12.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_12.w_0 deleted file mode 100644 index 05e9a997f2792c88eee4442d1a377287c1a59c08..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_12.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_13.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_13.w_0 deleted file mode 100644 index 1c88187fe51d5f9b979a46a8e475010aea873b54..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_13.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_14.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_14.w_0 deleted file mode 100644 index b70e10cbabc3e3ee316505e632f52dcfb0236765..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_14.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_15.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_15.w_0 deleted file mode 100644 index f9ddfa76883ec12aa2fa6c8aec98102635b27059..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_15.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_16.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_16.w_0 deleted file mode 100644 index fc46652f82533ae6e8e88bb70adae004ecf35309..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_16.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_17.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_17.w_0 deleted file mode 100644 index 9579c7e238e169774e9a87c4c2937c81b66ab49a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_17.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_18.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_18.w_0 deleted file mode 100644 index d9e4339941777ef3584f9d0557a88927ced6b0d3..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_18.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_19.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_19.w_0 deleted file mode 100644 index e02c0141f99c507dd70a94d014588e682d1574b3..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_19.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_2.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_2.w_0 deleted file mode 100644 index e3306fbd53189938961dccb4329a5ac85522e2e0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_2.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_20.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_20.w_0 deleted file mode 100644 index 011d460677c0669da93e989524337c2af3a878aa..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_20.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_21.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_21.w_0 deleted file mode 100644 index 8c96127d23b8a52aca2f28b9b1ba7c79b79bd0cd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_21.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_22.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_22.w_0 deleted file mode 100644 index a9314e283e997ab09e3ecd1a0aff5a02bda1340a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_22.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_23.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_23.w_0 deleted file mode 100644 index 30c96697e094d6343d8e507c36453fce85c3ebe3..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_23.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_24.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_24.w_0 deleted file mode 100644 index 238a8758f450d61cf7198a48f5668e43b00ed08c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_24.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_25.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_25.w_0 deleted file mode 100644 index 29cdf70f571de9bcf75677f6f4a4146ed0b76ad6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_25.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_26.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_26.w_0 deleted file mode 100644 index b4677a70a4ce73e86dbc2c572bbab35723e7d4a1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_26.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_27.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_27.w_0 deleted file mode 100644 index 9143eebe127310c242c54e9c636ef49faa4472e5..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_27.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_28.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_28.w_0 deleted file mode 100644 index 9e82f761e09c4147be052994792252eaaec857e7..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_28.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_29.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_29.w_0 deleted file mode 100644 index 448791857001aa142d2e4dc4169fd26ecd125554..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_29.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_3.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_3.w_0 deleted file mode 100644 index 81c00800f1e18456d5769eb516b5c2e33a5060bf..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_3.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_30.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_30.w_0 deleted file mode 100644 index 6717757df78514f5f8e64b1b61e185271a35b894..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_30.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_31.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_31.w_0 deleted file mode 100644 index 6fdaf6a524b68964af5cf4f55ca2afbe83a3e5ee..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_31.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_32.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_32.w_0 deleted file mode 100644 index 838390c64602e03d771d58795449aef3c8ecbc39..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_32.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_33.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_33.w_0 deleted file mode 100644 index 9d33d4cedb6ca654ce5c9d1af1fa186918e8ab41..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_33.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_34.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_34.w_0 deleted file mode 100644 index 89b729f4155e055ecb460eb02091a1159cba550e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_34.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_35.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_35.w_0 deleted file mode 100644 index 839439d94d2479668387508ae356074b9b1fd870..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_35.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_36.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_36.w_0 deleted file mode 100644 index ae59a017f0bbd6d67d48e81c46d6431c3a1432b6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_36.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_37.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_37.w_0 deleted file mode 100644 index 0c834aa0ebe31f7a7ba2ba18db88f138aa2711a0..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_37.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_38.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_38.w_0 deleted file mode 100644 index 72c65aed92b379d0b5c286fb74461db616833d52..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_38.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_39.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_39.w_0 deleted file mode 100644 index 8b4e1479fe60f6f78a5ce96f66e90ce826140050..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_39.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_4.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_4.w_0 deleted file mode 100644 index d9efe2b3f6aaca32072ff53c8d0ea68538b3aa96..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_4.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_40.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_40.w_0 deleted file mode 100644 index 4e3448d56ab41e1c0ca46cd57982aeccc7af57da..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_40.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_41.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_41.w_0 deleted file mode 100644 index 63b635c6c2716cfef14148851c1a587bec99f918..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_41.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_42.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_42.w_0 deleted file mode 100644 index 2366a1a08bd68c0f71240d265d946bd3a015f0b7..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_42.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_43.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_43.w_0 deleted file mode 100644 index 9debb2eca268da5553905a15698ac5ef25f2833f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_43.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_44.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_44.w_0 deleted file mode 100644 index dbf1890026d81e19cad67f74a079d274f102078f..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_44.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_45.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_45.w_0 deleted file mode 100644 index dd92d0432e2679ed0427e2465814801e14551ab8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_45.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_46.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_46.w_0 deleted file mode 100644 index 0f2cfbae0d09670d7fa4d106bfd7e78ece607f3e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_46.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_47.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_47.w_0 deleted file mode 100644 index 92425730de8667a28c4f2f40421496a3d8d69119..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_47.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_48.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_48.w_0 deleted file mode 100644 index a774e4ffff7820c81aea5a419c531d1cfed04f76..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_48.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_49.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_49.w_0 deleted file mode 100644 index 003b51e50bb83f4a736d813a06194c9ffd5c561b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_49.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_5.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_5.w_0 deleted file mode 100644 index 56b54644d3f3fe545079d277f0c94da166c8e262..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_5.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_50.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_50.w_0 deleted file mode 100644 index b94b812ca59131bbc3f58880a9161b05002782d2..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_50.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_51.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_51.w_0 deleted file mode 100644 index 190b8934d5807509c6817e636cad83767440ca2a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_51.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_52.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_52.w_0 deleted file mode 100644 index c088bdb190874cf7dd476fba0d4a6fdd78db00f8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_52.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_6.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_6.w_0 deleted file mode 100644 index 01dfb31ce68cc3748a7601910fece86bd050796b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_6.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_7.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_7.w_0 deleted file mode 100644 index 8cb4e6f3f7510bec9b74af37218f9a4235623d89..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_7.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_8.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_8.w_0 deleted file mode 100644 index 28c8eedbf3152b3c77287411ba06e71e94a8f066..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_8.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_9.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_9.w_0 deleted file mode 100644 index 96f538643699419e1e5522a1872954b230a6b9cd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/conv2d_9.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.b_0 deleted file mode 100644 index f6e32bad3a9255ad0f238a835b86c3a010916691..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.w_0 deleted file mode 100644 index 24fcb1a685c586f96576c8e63044a5d4c2812914..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_0.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.b_0 deleted file mode 100644 index afae3317b9cc14f16919e2db2c76cc0beca66f2c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.w_0 deleted file mode 100644 index c78ec1fa9be69f7d243c539d639693c51bf5ac62..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_1.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.b_0 deleted file mode 100644 index 0c918e1e146ba472a7f776b1db6bd9e6d0ecc99a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.w_0 deleted file mode 100644 index a5e6bc9aff85d5ea6f890b6b77b3c07855cc6dbc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_10.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.b_0 deleted file mode 100644 index 4ac5c64869c90a406946fc782c0770ff194a5c57..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.w_0 deleted file mode 100644 index 9a306cedbe003cc207b4bf9b33286f43025601bb..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_11.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.b_0 deleted file mode 100644 index d3db83005e20222b457a64851ec4dec2f6af14e4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.w_0 deleted file mode 100644 index 133b0f8dd150a4a24522e4acdbe6e4ed370c72fc..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_12.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.b_0 deleted file mode 100644 index 7c86dcf583dc8ea064be21b7c0eb2568b46cafb4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.w_0 deleted file mode 100644 index 130ed90d4f7c8767275e376ec7a1618833a91730..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_13.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.b_0 deleted file mode 100644 index 65df015f07097c2560321e6e6c301afb8a83fbbe..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.w_0 deleted file mode 100644 index eb440f237d384fc44fc82013169bb259621f9122..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_14.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.b_0 deleted file mode 100644 index bcad9d5ef6987c24534000e1310e3048fcd93d62..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.w_0 deleted file mode 100644 index 789c40b30e5436b9c1372640da9e82e93659d471..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_15.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.b_0 deleted file mode 100644 index 9a1ca01bceb48575bb2ade09c1a1923b51c97608..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.w_0 deleted file mode 100644 index 8abc75fa7a3e27c3e2e3cfb949db39606ba03831..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_16.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.b_0 deleted file mode 100644 index 85ffe115d568aa6b4c6bb4ed0797bc22e6f2121e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.w_0 deleted file mode 100644 index a4ef444efc670b34cc3b170d1c5bcff1bf09ba8b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_17.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.b_0 deleted file mode 100644 index de37481e26acb528ea31c6b2b787876d4d6b72be..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.w_0 deleted file mode 100644 index 93ef6dd3899495ad9a5156080d3589d4e05effcd..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_18.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.b_0 deleted file mode 100644 index d0dc9142bcc1ce5c98182e18c81b8b859d551865..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.w_0 deleted file mode 100644 index 223174b93d3a8d6f745d9d8721fab3e6763ed7f6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_19.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.b_0 deleted file mode 100644 index 1bcfc9accc09a5b673ff02875104bf4a977904c1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.w_0 deleted file mode 100644 index 23befc1cedcabb7acb6bda83157ac343366ced72..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_2.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.b_0 deleted file mode 100644 index 3f4cb17ac9bc9dbcb3848e9ccf09117e7022c154..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.w_0 deleted file mode 100644 index aded435d76e38498002075838331cff77517f8d8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_20.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.b_0 deleted file mode 100644 index 8eec170431e9516b7b64cbd474d21432582fd946..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.w_0 deleted file mode 100644 index 0c1b439f236b0213bc1b0168f21e53c02ed2f385..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_21.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.b_0 deleted file mode 100644 index abd6333dad7dead5700b78d7ff8e8ef53aeba7d3..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.w_0 deleted file mode 100644 index 2269e2842faf99e226c6cc084ff7d6a2ea1e58a1..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_22.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.b_0 deleted file mode 100644 index da68d019ec064bf27b22d3ba1ad449c3ee9604a6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.w_0 deleted file mode 100644 index 47d858502927812b328fa6c14d75f2d3c0105f88..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_23.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.b_0 deleted file mode 100644 index c7044d8ad99e61591e910d815a438d1e4f21b43b..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.w_0 deleted file mode 100644 index bee6de5c90d3cedb4cfe7bc701b4f31c9f4eed25..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_24.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.b_0 deleted file mode 100644 index 31e3b106af8ac3f8a64746b83c62363be1639bc3..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.w_0 deleted file mode 100644 index 51e187d039a0760289e16e89cab78bb2d0851c2e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_25.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.b_0 deleted file mode 100644 index fcbb7113554b6e85fd4c6dff66776c2e93555b21..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.w_0 deleted file mode 100644 index bf92a5a7d99df0db0434805bb194e4cb2f1c9b09..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_26.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.b_0 deleted file mode 100644 index 28d9885ff10862825f120f1756f237bc6cf28af6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.w_0 deleted file mode 100644 index aff6da6716d27a4f60cec8f6d94f5f65837ef007..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_27.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.b_0 deleted file mode 100644 index 3095a0db1f849caed803274fb722e9ab2675bcf8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.w_0 deleted file mode 100644 index 15f2da2f017c9a2cbc2271b2e095dd19457e933c..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_28.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.b_0 deleted file mode 100644 index 0da5f55d8d3f1df2d5d9f349a6eea7c9c9052f41..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.w_0 deleted file mode 100644 index aba6fc9b1c018549b81b43362df2776eef8948ed..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_29.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.b_0 deleted file mode 100644 index 9765457efd38f2bbb0cf3eec38cc03db9e735027..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.w_0 deleted file mode 100644 index 14460eba8912e567a7b64561c9c466bdca29ff41..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_3.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.b_0 deleted file mode 100644 index 0e1c8d70c2a38b1cd3ec056c3d80f0cc8613c506..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.w_0 deleted file mode 100644 index 4e45fe3d9372dec99b572da4a602799b8d87be72..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_30.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.b_0 deleted file mode 100644 index a472dc18355851d15ee5ad54de35ac2981e62c0d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.w_0 deleted file mode 100644 index ac48651a4cdc84ad27fde81bf937a79cec968cef..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_31.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.b_0 deleted file mode 100644 index 2d4c474e02397013bdc617b21ba2ecb90e62ebe6..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.w_0 deleted file mode 100644 index af13a051d92afdd0ab438c7d061d9f0a999be472..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_32.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.b_0 deleted file mode 100644 index eeabfd9b337688d7df4eba5e1d60e53ea2c949d4..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.w_0 deleted file mode 100644 index 0f0601a65818e688c320e3a2268ef6d8f30acb0d..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_4.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.b_0 deleted file mode 100644 index 53263569f49d45e6f878d49896d8d42c65d3ea98..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.w_0 deleted file mode 100644 index 2b984b7b86359ed9867e2c9e34975aaa414faf94..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_5.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.b_0 deleted file mode 100644 index 4f068f7d2fd92b53d658eff90ecda07ba1b82106..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.w_0 deleted file mode 100644 index 0e991db99ec859dce00663c9af17ab1ef3edd5e8..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_6.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.b_0 deleted file mode 100644 index 5cfbb1a48eb23a3d546eeaf92ebdb8d32177865e..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.w_0 deleted file mode 100644 index fcef1f5883e1d3803ae0bcf6f0fca4b4c877e6ef..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_7.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.b_0 deleted file mode 100644 index 55db7c49d3aa99fa0fb5618b67728448f9d03d62..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.w_0 deleted file mode 100644 index 35c3087367555befd0c97f8ba67095b3855ade78..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_8.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.b_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.b_0 deleted file mode 100644 index 1c25359e25c061b5a33ed985757946bd7f421c34..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.b_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.w_0 b/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.w_0 deleted file mode 100644 index 7f22fbbdf39aa151b065ef0ad1c19d799c19a866..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/SE_ResNeXt50_32x4d/fc_9.w_0 and /dev/null differ diff --git a/demo-serving/data/model/paddle/fluid/cat.jpg b/demo-serving/data/model/paddle/fluid/cat.jpg deleted file mode 100644 index 5b926051b4850c989e9a099727272e7353a0dd8a..0000000000000000000000000000000000000000 Binary files a/demo-serving/data/model/paddle/fluid/cat.jpg and /dev/null differ diff --git a/demo-serving/op/bert_service_op.cpp b/demo-serving/op/bert_service_op.cpp deleted file mode 100644 index 1261da68bf1f93af8a2ea580a56352b348d3fea3..0000000000000000000000000000000000000000 --- a/demo-serving/op/bert_service_op.cpp +++ /dev/null @@ -1,215 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/bert_service_op.h" -#include -#include -#include "predictor/framework/infer.h" -#include "predictor/framework/memory.h" -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::MempoolWrapper; -using baidu::paddle_serving::predictor::bert_service::BertResInstance; -using baidu::paddle_serving::predictor::bert_service::Response; -using baidu::paddle_serving::predictor::bert_service::BertReqInstance; -using baidu::paddle_serving::predictor::bert_service::Request; -using baidu::paddle_serving::predictor::bert_service::EmbeddingValues; - -std::vector split(const std::string &str, - const std::string &pattern) { - std::vector res; - if (str == "") return res; - std::string strs = str + pattern; - size_t pos = strs.find(pattern); - while (pos != strs.npos) { - std::string temp = strs.substr(0, pos); - res.push_back(temp); - strs = strs.substr(pos + 1, strs.size()); - pos = strs.find(pattern); - } - return res; -} - -int BertServiceOp::inference() { - timeval op_start; - gettimeofday(&op_start, NULL); - - const Request *req = dynamic_cast(get_request_message()); - - TensorVector *in = butil::get_object(); - Response *res = mutable_data(); - - uint32_t batch_size = req->instances_size(); - if (batch_size <= 0) { - LOG(WARNING) << "No instances need to inference!"; - return 0; - } - - const int64_t MAX_SEQ_LEN = req->max_seq_len(); - // const int64_t EMB_SIZE = req->emb_size(); - - paddle::PaddleTensor src_ids; - paddle::PaddleTensor pos_ids; - paddle::PaddleTensor seg_ids; - paddle::PaddleTensor input_masks; - - if (req->has_feed_var_names()) { - // support paddlehub model - std::vector feed_list = split(req->feed_var_names(), ";"); - src_ids.name = feed_list[0]; - pos_ids.name = feed_list[1]; - seg_ids.name = feed_list[2]; - input_masks.name = feed_list[3]; - } else { - src_ids.name = std::string("src_ids"); - pos_ids.name = std::string("pos_ids"); - seg_ids.name = std::string("sent_ids"); - input_masks.name = std::string("input_mask"); - } - - src_ids.dtype = paddle::PaddleDType::INT64; - src_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; - src_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); - - pos_ids.dtype = paddle::PaddleDType::INT64; - pos_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; - pos_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); - - seg_ids.dtype = paddle::PaddleDType::INT64; - seg_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; - seg_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); - - input_masks.dtype = paddle::PaddleDType::FLOAT32; - input_masks.shape = {batch_size, MAX_SEQ_LEN, 1}; - input_masks.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(float)); - - std::vector> lod_set; - lod_set.resize(1); - for (uint32_t i = 0; i < batch_size; i++) { - lod_set[0].push_back(i * MAX_SEQ_LEN); - } - // src_ids.lod = lod_set; - // pos_ids.lod = lod_set; - // seg_ids.lod = lod_set; - // input_masks.lod = lod_set; - - uint32_t index = 0; - for (uint32_t i = 0; i < batch_size; i++) { - int64_t *src_data = static_cast(src_ids.data.data()) + index; - int64_t *pos_data = static_cast(pos_ids.data.data()) + index; - int64_t *seg_data = static_cast(seg_ids.data.data()) + index; - float *input_masks_data = - static_cast(input_masks.data.data()) + index; - - const BertReqInstance &req_instance = req->instances(i); - - memcpy(src_data, - req_instance.token_ids().data(), - sizeof(int64_t) * MAX_SEQ_LEN); - memcpy(pos_data, - req_instance.position_ids().data(), - sizeof(int64_t) * MAX_SEQ_LEN); - memcpy(seg_data, - req_instance.sentence_type_ids().data(), - sizeof(int64_t) * MAX_SEQ_LEN); - memcpy(input_masks_data, - req_instance.input_masks().data(), - sizeof(float) * MAX_SEQ_LEN); - index += MAX_SEQ_LEN; - } - - in->push_back(src_ids); - in->push_back(pos_ids); - in->push_back(seg_ids); - in->push_back(input_masks); - - TensorVector *out = butil::get_object(); - if (!out) { - LOG(ERROR) << "Failed get tls output object"; - return -1; - } - -#if 0 // print request - std::ostringstream oss; - for (int j = 0; j < 3; j++) { - int64_t* example = reinterpret_cast((*in)[j].data.data()); - for (uint32_t i = 0; i < MAX_SEQ_LEN; i++) { - oss << *(example + i) << " "; - } - oss << ";"; - } - float* example = reinterpret_cast((*in)[3].data.data()); - for (int i = 0; i < MAX_SEQ_LEN; i++) { - oss << *(example + i) << " "; - } - LOG(INFO) << "msg: " << oss.str(); -#endif - timeval infer_start; - gettimeofday(&infer_start, NULL); - if (predictor::InferManager::instance().infer( - BERT_MODEL_NAME, in, out, batch_size)) { - LOG(ERROR) << "Failed do infer in fluid model: " << BERT_MODEL_NAME; - return -1; - } - timeval infer_end; - gettimeofday(&infer_end, NULL); - uint64_t infer_time = - (infer_end.tv_sec * 1000 + infer_end.tv_usec / 1000 - - (infer_start.tv_sec * 1000 + infer_start.tv_usec / 1000)); - - LOG(INFO) << "batch_size : " << out->at(0).shape[0] - << " emb_size : " << out->at(0).shape[1]; - uint32_t emb_size = out->at(0).shape[1]; - float *out_data = reinterpret_cast(out->at(0).data.data()); - for (uint32_t bi = 0; bi < batch_size; bi++) { - BertResInstance *res_instance = res->add_instances(); - for (uint32_t si = 0; si < 1; si++) { - EmbeddingValues *emb_instance = res_instance->add_instances(); - for (uint32_t ei = 0; ei < emb_size; ei++) { - uint32_t index = bi * emb_size + ei; - emb_instance->add_values(out_data[index]); - } - } - } - - timeval op_end; - gettimeofday(&op_end, NULL); - uint64_t op_time = (op_end.tv_sec * 1000 + op_end.tv_usec / 1000 - - (op_start.tv_sec * 1000 + op_start.tv_usec / 1000)); - - res->set_op_time(op_time); - res->set_infer_time(infer_time); - - for (size_t i = 0; i < in->size(); ++i) { - (*in)[i].shape.clear(); - } - in->clear(); - butil::return_object(in); - - for (size_t i = 0; i < out->size(); ++i) { - (*out)[i].shape.clear(); - } - out->clear(); - butil::return_object(out); - - return 0; -} - -DEFINE_OP(BertServiceOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/bert_service_op.h b/demo-serving/op/bert_service_op.h deleted file mode 100644 index 2cba925ba0013fbadda375d9dd5b4a4763905d88..0000000000000000000000000000000000000000 --- a/demo-serving/op/bert_service_op.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "paddle_inference_api.h" // NOLINT -#include "demo-serving/bert_service.pb.h" - -#include - -namespace baidu { -namespace paddle_serving { -namespace serving { - -static const char* BERT_MODEL_NAME = "bert"; - -class BertServiceOp - : public baidu::paddle_serving::predictor::OpWithChannel< - baidu::paddle_serving::predictor::bert_service::Response> { - public: - typedef std::vector TensorVector; - - DECLARE_OP(BertServiceOp); - int inference(); -}; -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/classify_op.cpp b/demo-serving/op/classify_op.cpp deleted file mode 100644 index 22c3393866c002985d307168fb64b4cd88d4974e..0000000000000000000000000000000000000000 --- a/demo-serving/op/classify_op.cpp +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/classify_op.h" -#include "demo-serving/op/reader_op.h" -#include "predictor/framework/infer.h" -#include "predictor/framework/memory.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::format::DensePrediction; -using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; -using baidu::paddle_serving::predictor::InferManager; - -int ClassifyOp::inference() { - const ReaderOutput* reader_out = - get_depend_argument("image_reader_op"); - if (!reader_out) { - LOG(ERROR) << "Failed mutable depended argument, op:" - << "reader_op"; - return -1; - } - - const TensorVector* in = &reader_out->tensors; - - TensorVector* out = butil::get_object(); - if (!out) { - LOG(ERROR) << "Failed get tls output object failed"; - return -1; - } - - if (in->size() != 1) { - LOG(ERROR) << "Samples should have been packed into a single tensor"; - return -1; - } - - int batch_size = in->at(0).shape[0]; - // call paddle fluid model for inferencing - if (InferManager::instance().infer( - IMAGE_CLASSIFICATION_MODEL_NAME, in, out, batch_size)) { - LOG(ERROR) << "Failed do infer in fluid model: " - << IMAGE_CLASSIFICATION_MODEL_NAME; - return -1; - } - - if (out->size() != in->size()) { - LOG(ERROR) << "Output size not eq input size: " << in->size() - << out->size(); - return -1; - } - - // copy output tensor into response - ClassifyResponse* res = mutable_data(); - const paddle::PaddleTensor& out_tensor = (*out)[0]; - -#if 0 - int out_shape_size = out_tensor.shape.size(); - LOG(ERROR) << "out_tensor.shpae"; - for (int i = 0; i < out_shape_size; ++i) { - LOG(ERROR) << out_tensor.shape[i] << ":"; - } - - if (out_shape_size != 2) { - return -1; - } -#endif - - int sample_size = out_tensor.shape[0]; -#if 0 - LOG(ERROR) << "Output sample size " << sample_size; -#endif - for (uint32_t si = 0; si < sample_size; si++) { - DensePrediction* ins = res->add_predictions(); - if (!ins) { - LOG(ERROR) << "Failed append new out tensor"; - return -1; - } - - // assign output data - uint32_t data_size = out_tensor.shape[1]; - float* data = reinterpret_cast(out_tensor.data.data() + - si * sizeof(float) * data_size); - for (uint32_t di = 0; di < data_size; ++di) { - ins->add_categories(data[di]); - } - } - - // release out tensor object resource - size_t out_size = out->size(); - for (size_t oi = 0; oi < out_size; ++oi) { - (*out)[oi].shape.clear(); - } - out->clear(); - butil::return_object(out); - - return 0; -} - -DEFINE_OP(ClassifyOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/classify_op.h b/demo-serving/op/classify_op.h deleted file mode 100644 index a4b115642025f244c181846b9ae0402431ad3df5..0000000000000000000000000000000000000000 --- a/demo-serving/op/classify_op.h +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "paddle_inference_api.h" // NOLINT -#include "demo-serving/image_class.pb.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -static const char* IMAGE_CLASSIFICATION_MODEL_NAME = - "image_classification_resnet"; - -class ClassifyOp : public baidu::paddle_serving::predictor::OpWithChannel< - baidu::paddle_serving::predictor::image_classification:: - ClassifyResponse> { - public: - typedef std::vector TensorVector; - - DECLARE_OP(ClassifyOp); - - int inference(); -}; - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/common_echo_op.cpp b/demo-serving/op/common_echo_op.cpp deleted file mode 100644 index 16b1bac17d8611d46abcd6a0c399cda1580c27ee..0000000000000000000000000000000000000000 --- a/demo-serving/op/common_echo_op.cpp +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/common_echo_op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -DEFINE_OP(CommonEchoOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/common_echo_op.h b/demo-serving/op/common_echo_op.h deleted file mode 100644 index bf3f80dd8385958e822f2aac565c0decb9aec3b4..0000000000000000000000000000000000000000 --- a/demo-serving/op/common_echo_op.h +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/echo_service.pb.h" - -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class CommonEchoOp - : public OpWithChannel< - baidu::paddle_serving::predictor::echo_service::RequestAndResponse> { - public: - typedef baidu::paddle_serving::predictor::echo_service::RequestAndResponse - RequestAndResponse; - - DECLARE_OP(CommonEchoOp); - - int inference() { - const RequestAndResponse* req = - dynamic_cast(get_request_message()); - - RequestAndResponse* data = mutable_data(); - - data->CopyFrom(*req); - - return 0; - } -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/ctr_prediction_op.cpp b/demo-serving/op/ctr_prediction_op.cpp deleted file mode 100644 index b2166819a2a6b213ae008580349e870e97797984..0000000000000000000000000000000000000000 --- a/demo-serving/op/ctr_prediction_op.cpp +++ /dev/null @@ -1,376 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/ctr_prediction_op.h" -#include -#include -#if 0 -#include -#endif -#include "cube/cube-api/include/cube_api.h" -#include "predictor/framework/infer.h" -#include "predictor/framework/kv_manager.h" -#include "predictor/framework/memory.h" - -// Flag where enable profiling mode -DECLARE_bool(enable_ctr_profiling); - -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::MempoolWrapper; -using baidu::paddle_serving::predictor::ctr_prediction::CTRResInstance; -using baidu::paddle_serving::predictor::ctr_prediction::Response; -using baidu::paddle_serving::predictor::ctr_prediction::CTRReqInstance; -using baidu::paddle_serving::predictor::ctr_prediction::Request; - -const int VARIABLE_NAME_LEN = 256; - -// Total 26 sparse input + 1 dense input -const int CTR_PREDICTION_INPUT_SLOTS = 27; - -// First 26: sparse input -const int CTR_PREDICTION_SPARSE_SLOTS = 26; - -// Last 1: dense input -const int CTR_PREDICTION_DENSE_SLOT_ID = 26; -const int CTR_PREDICTION_DENSE_DIM = 13; -const int CTR_PREDICTION_EMBEDDING_SIZE = 10; - -bthread::Mutex CTRPredictionOp::mutex_; -int64_t CTRPredictionOp::cube_time_us_ = 0; -int32_t CTRPredictionOp::cube_req_num_ = 0; -int32_t CTRPredictionOp::cube_req_key_num_ = 0; - -void fill_response_with_message(Response *response, - int err_code, - std::string err_msg) { - if (response == NULL) { - LOG(ERROR) << "response is NULL"; - return; - } - - response->set_err_code(err_code); - response->set_err_msg(err_msg); - return; -} - -int CTRPredictionOp::inference() { - const Request *req = dynamic_cast(get_request_message()); - - TensorVector *in = butil::get_object(); - Response *res = mutable_data(); - - uint32_t sample_size = req->instances_size(); - if (sample_size <= 0) { - LOG(WARNING) << "No instances need to inference!"; - fill_response_with_message(res, -1, "Sample size invalid"); - return 0; - } - - paddle::PaddleTensor lod_tensors[CTR_PREDICTION_INPUT_SLOTS]; - for (int i = 0; i < CTR_PREDICTION_INPUT_SLOTS; ++i) { - lod_tensors[i].dtype = paddle::PaddleDType::FLOAT32; - std::vector> &lod = lod_tensors[i].lod; - lod.resize(1); - lod[0].push_back(0); - } - - // Query cube API for sparse embeddings - std::vector keys; - std::vector values; - - for (uint32_t si = 0; si < sample_size; ++si) { - const CTRReqInstance &req_instance = req->instances(si); - if (req_instance.sparse_ids_size() != CTR_PREDICTION_SPARSE_SLOTS) { - std::ostringstream iss; - iss << "Sparse input size != " << CTR_PREDICTION_SPARSE_SLOTS; - fill_response_with_message(res, -1, iss.str()); - return 0; - } - - for (int i = 0; i < req_instance.sparse_ids_size(); ++i) { - keys.push_back(req_instance.sparse_ids(i)); - } - } - - rec::mcube::CubeAPI *cube = rec::mcube::CubeAPI::instance(); - predictor::KVManager &kv_manager = predictor::KVManager::instance(); - const predictor::KVInfo *kvinfo = - kv_manager.get_kv_info(CTR_PREDICTION_MODEL_NAME); - if (kvinfo == NULL) { - LOG(ERROR) << "Sparse param service info not found for model " - << CTR_PREDICTION_MODEL_NAME - << ". Maybe forgot to specify sparse_param_service_type and " - << "sparse_param_service_table_name in " - << "conf/model_toolkit.prototxt"; - fill_response_with_message(res, -1, "Sparse param service info not found"); - return 0; - } - - std::string table_name; - if (kvinfo->sparse_param_service_type != configure::EngineDesc::NONE) { - table_name = kvinfo->sparse_param_service_table_name; - if (table_name.empty()) { - LOG(ERROR) << "sparse_param_service_table_name not specified. " - << "Please specify it in conf/model_toolkit.protxt for model " - << CTR_PREDICTION_MODEL_NAME; - fill_response_with_message( - res, -1, "sparse_param_service_table_name not specified"); - return 0; - } - } - - if (kvinfo->sparse_param_service_type == configure::EngineDesc::LOCAL) { - // Query local KV service - LOG(ERROR) << "Local kv service not supported for model " - << CTR_PREDICTION_MODEL_NAME; - - fill_response_with_message( - res, -1, "Local kv service not supported for this model"); - return 0; - } else if (kvinfo->sparse_param_service_type == - configure::EngineDesc::REMOTE) { - struct timeval start; - struct timeval end; - - int ret; - - gettimeofday(&start, NULL); - ret = cube->seek(table_name, keys, &values); - gettimeofday(&end, NULL); - uint64_t usec = - end.tv_sec * 1e6 + end.tv_usec - start.tv_sec * 1e6 - start.tv_usec; - - // Statistics - mutex_.lock(); - cube_time_us_ += usec; - ++cube_req_num_; - cube_req_key_num_ += keys.size(); - - if (cube_req_num_ >= 1000) { - LOG(INFO) << "Cube request count: " << cube_req_num_; - LOG(INFO) << "Cube request key count: " << cube_req_key_num_; - LOG(INFO) << "Cube request total time: " << cube_time_us_ << "us"; - LOG(INFO) << "Average " - << static_cast(cube_time_us_) / cube_req_num_ - << "us/req"; - LOG(INFO) << "Average " - << static_cast(cube_time_us_) / cube_req_key_num_ - << "us/key"; - - cube_time_us_ = 0; - cube_req_num_ = 0; - cube_req_key_num_ = 0; - } - mutex_.unlock(); - // Statistics end - - if (ret != 0) { - fill_response_with_message(res, -1, "Query cube for embeddings error"); - LOG(ERROR) << "Query cube for embeddings error"; - return 0; - } - } - - if (values.size() != keys.size()) { - LOG(ERROR) << "Sparse embeddings not ready; " - << "maybe forgot to set sparse_param_service_type and " - << "sparse_param_sevice_table_name for " - << CTR_PREDICTION_MODEL_NAME - << " in conf/model_toolkit.prototxt"; - fill_response_with_message( - res, -1, "Sparse param service not configured properly"); - return 0; - } - - for (int i = 0; i < keys.size(); ++i) { - std::ostringstream oss; - oss << keys[i] << ": "; - const char *value = (values[i].buff.data()); - if (values[i].buff.size() != - sizeof(float) * CTR_PREDICTION_EMBEDDING_SIZE) { - LOG(WARNING) << "Key " << keys[i] << " has values less than " - << CTR_PREDICTION_EMBEDDING_SIZE; - } - -#if 0 - for (int j = 0; j < values[i].buff.size(); ++j) { - oss << std::hex << std::uppercase << std::setw(2) << std::setfill('0') - << (static_cast(value[j]) & 0xff); - } - - LOG(INFO) << oss.str().c_str(); -#endif - } - - // Sparse embeddings - for (int i = 0; i < CTR_PREDICTION_SPARSE_SLOTS; ++i) { - paddle::PaddleTensor &lod_tensor = lod_tensors[i]; - std::vector> &lod = lod_tensor.lod; - - char name[VARIABLE_NAME_LEN]; - snprintf(name, VARIABLE_NAME_LEN, "embedding_%d.tmp_0", i); - lod_tensor.name = std::string(name); - - for (uint32_t si = 0; si < sample_size; ++si) { - const CTRReqInstance &req_instance = req->instances(si); - lod[0].push_back(lod[0].back() + 1); - } - - lod_tensor.shape = {lod[0].back(), CTR_PREDICTION_EMBEDDING_SIZE}; - lod_tensor.data.Resize(lod[0].back() * sizeof(float) * - CTR_PREDICTION_EMBEDDING_SIZE); - - int offset = 0; - for (uint32_t si = 0; si < sample_size; ++si) { - float *data_ptr = static_cast(lod_tensor.data.data()) + offset; - const CTRReqInstance &req_instance = req->instances(si); - - int idx = si * CTR_PREDICTION_SPARSE_SLOTS + i; - if (values[idx].buff.size() != - sizeof(float) * CTR_PREDICTION_EMBEDDING_SIZE) { - LOG(ERROR) << "Embedding vector size not expected"; - fill_response_with_message( - res, -1, "Embedding vector size not expected"); - return 0; - } - - memcpy(data_ptr, values[idx].buff.data(), values[idx].buff.size()); - offset += CTR_PREDICTION_EMBEDDING_SIZE; - } - - in->push_back(lod_tensor); - } - - // Dense features - paddle::PaddleTensor &lod_tensor = lod_tensors[CTR_PREDICTION_DENSE_SLOT_ID]; - lod_tensor.dtype = paddle::PaddleDType::FLOAT32; - std::vector> &lod = lod_tensor.lod; - lod_tensor.name = std::string("dense_input"); - - for (uint32_t si = 0; si < sample_size; ++si) { - const CTRReqInstance &req_instance = req->instances(si); - if (req_instance.dense_ids_size() != CTR_PREDICTION_DENSE_DIM) { - std::ostringstream iss; - iss << "dense input size != " << CTR_PREDICTION_DENSE_DIM; - fill_response_with_message(res, -1, iss.str()); - return 0; - } - lod[0].push_back(lod[0].back() + req_instance.dense_ids_size()); - } - - lod_tensor.shape = {lod[0].back() / CTR_PREDICTION_DENSE_DIM, - CTR_PREDICTION_DENSE_DIM}; - lod_tensor.data.Resize(lod[0].back() * sizeof(float)); - - int offset = 0; - for (uint32_t si = 0; si < sample_size; ++si) { - float *data_ptr = static_cast(lod_tensor.data.data()) + offset; - const CTRReqInstance &req_instance = req->instances(si); - int id_count = req_instance.dense_ids_size(); - memcpy(data_ptr, - req_instance.dense_ids().data(), - sizeof(float) * req_instance.dense_ids_size()); - offset += req_instance.dense_ids_size(); - } - - in->push_back(lod_tensor); - - TensorVector *out = butil::get_object(); - if (!out) { - LOG(ERROR) << "Failed get tls output object"; - fill_response_with_message(res, -1, "Failed get thread local resource"); - return 0; - } - - // call paddle fluid model for inferencing - if (predictor::InferManager::instance().infer( - CTR_PREDICTION_MODEL_NAME, in, out, sample_size)) { - LOG(ERROR) << "Failed do infer in fluid model: " - << CTR_PREDICTION_MODEL_NAME; - fill_response_with_message(res, -1, "Failed do infer in fluid model"); - return 0; - } - - if (out->size() != 1) { - LOG(ERROR) << "Model returned number of fetch tensor more than 1"; - fill_response_with_message( - res, -1, "Model returned number of fetch tensor more than 1"); - return 0; - } - - int output_shape_dim = out->at(0).shape.size(); - if (output_shape_dim != 2) { - LOG(ERROR) << "Fetch LoDTensor should be shape of [sample_size, 2]"; - fill_response_with_message( - res, -1, "Fetch LoDTensor should be shape of [sample_size, 2]"); - return 0; - } - - if (out->at(0).dtype != paddle::PaddleDType::FLOAT32) { - LOG(ERROR) << "Fetch LoDTensor data type should be FLOAT32"; - fill_response_with_message( - res, -1, "Fetch LoDTensor data type should be FLOAT32"); - return 0; - } - - int dim1 = out->at(0).shape[0]; - int dim2 = out->at(0).shape[1]; - - if (dim1 != sample_size) { - LOG(ERROR) << "Returned result count not equal to sample_size"; - fill_response_with_message( - res, -1, "Returned result count not equal to sample size"); - return 0; - } - - if (dim2 != 2) { - LOG(ERROR) << "Returned result is not expected, should be 2 floats for " - "each sample"; - fill_response_with_message( - res, -1, "Retunred result is not 2 floats for each sample"); - return 0; - } - - float *data = static_cast(out->at(0).data.data()); - for (int i = 0; i < dim1; ++i) { - CTRResInstance *res_instance = res->add_predictions(); - res_instance->set_prob0(data[i * dim2]); - res_instance->set_prob1(data[i * dim2 + 1]); - } - - for (size_t i = 0; i < in->size(); ++i) { - (*in)[i].shape.clear(); - } - in->clear(); - butil::return_object(in); - - for (size_t i = 0; i < out->size(); ++i) { - (*out)[i].shape.clear(); - } - out->clear(); - butil::return_object(out); - - res->set_err_code(0); - res->set_err_msg(std::string("")); - return 0; -} - -DEFINE_OP(CTRPredictionOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/ctr_prediction_op.h b/demo-serving/op/ctr_prediction_op.h deleted file mode 100644 index c135de3842d7b299c998e143fbccf200a780d451..0000000000000000000000000000000000000000 --- a/demo-serving/op/ctr_prediction_op.h +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "paddle_inference_api.h" // NOLINT -#include "demo-serving/ctr_prediction.pb.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -static const char* CTR_PREDICTION_MODEL_NAME = "ctr_prediction"; - -/** - * CTRPredictionOp: Serve CTR prediction requests. - * - * Original model can be found here: - * https://github.com/PaddlePaddle/models/tree/develop/PaddleRec/ctr - * - * NOTE: - * - * The main purpose of this OP is to demonstrate usage of large-scale sparse - * parameter service (RocksDB for local, mCube for distributed service). To - * achieve this, we modified the orginal model slightly: - * 1) Function ctr_dnn_model() returns feed_vars and fetch_vars - * 2) Use fluid.io.save_inference_model using feed_vars and fetch_vars - * returned from ctr_dnn_model(), instead of fluid.io.save_persistables - * 3) Further, feed_vars were specified to be inputs of concat layer. Then in - * the process of save_inference_model(), the generated inference program will - * have the inputs of concat layer as feed targets. - * 4) Weight values for the embedding layer will be fetched from sparse param - * server for each sample - * - * Please refer to doc/CTR_PREDICTION.md for details on the original model - * and modifications we made - * - */ - -class CTRPredictionOp - : public baidu::paddle_serving::predictor::OpWithChannel< - baidu::paddle_serving::predictor::ctr_prediction::Response> { - public: - typedef std::vector TensorVector; - - DECLARE_OP(CTRPredictionOp); - - int inference(); - - private: - static bthread::Mutex mutex_; - static int64_t cube_time_us_; - static int32_t cube_req_num_; - static int32_t cube_req_key_num_; -}; - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/dense_echo_op.cpp b/demo-serving/op/dense_echo_op.cpp deleted file mode 100644 index 80221d5c4afb6e8df09733144f32886344869e03..0000000000000000000000000000000000000000 --- a/demo-serving/op/dense_echo_op.cpp +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/dense_echo_op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using baidu::paddle_serving::predictor::format::DensePrediction; -using baidu::paddle_serving::predictor::dense_service::Request; -using baidu::paddle_serving::predictor::dense_service::Response; - -int DenseEchoOp::inference() { - const Request* req = dynamic_cast(get_request_message()); - Response* res = mutable_data(); - LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); - uint32_t sample_size = req->instances_size(); - for (uint32_t si = 0; si < sample_size; si++) { - DensePrediction* dense_res = res->mutable_predictions()->Add(); - dense_res->add_categories(100.0 + si * 0.1); - dense_res->add_categories(200.0 + si * 0.1); - } - return 0; -} - -DEFINE_OP(DenseEchoOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/dense_echo_op.h b/demo-serving/op/dense_echo_op.h deleted file mode 100644 index 9c17f119af5cd18f2cb30cd4b0607067da5f299b..0000000000000000000000000000000000000000 --- a/demo-serving/op/dense_echo_op.h +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/dense_service.pb.h" - -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class DenseEchoOp - : public OpWithChannel< - baidu::paddle_serving::predictor::dense_service::Response> { - public: - DECLARE_OP(DenseEchoOp); - - int inference(); -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/int64tensor_echo_op.cpp b/demo-serving/op/int64tensor_echo_op.cpp deleted file mode 100644 index 3ddb2f3c71cd41c1747bc263bde710bd998c8ece..0000000000000000000000000000000000000000 --- a/demo-serving/op/int64tensor_echo_op.cpp +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/int64tensor_echo_op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using baidu::paddle_serving::predictor::format::Float32TensorPredictor; -using baidu::paddle_serving::predictor::int64tensor_service::Request; -using baidu::paddle_serving::predictor::int64tensor_service::Response; - -int Int64TensorEchoOp::inference() { - const Request* req = dynamic_cast(get_request_message()); - Response* res = mutable_data(); - LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); - uint32_t sample_size = req->instances_size(); - for (uint32_t si = 0; si < sample_size; si++) { - Float32TensorPredictor* float32_tensor_res = - res->mutable_predictions()->Add(); - float32_tensor_res->add_data(1.0); - float32_tensor_res->add_data(2.0); - float32_tensor_res->add_shape(2); - float32_tensor_res->add_shape(1); - } - return 0; -} - -DEFINE_OP(Int64TensorEchoOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/int64tensor_echo_op.h b/demo-serving/op/int64tensor_echo_op.h deleted file mode 100644 index c391f370fb678d76d662ce727a5db30c9bba178f..0000000000000000000000000000000000000000 --- a/demo-serving/op/int64tensor_echo_op.h +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/int64tensor_service.pb.h" - -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class Int64TensorEchoOp - : public OpWithChannel< - baidu::paddle_serving::predictor::int64tensor_service::Response> { - public: - DECLARE_OP(Int64TensorEchoOp); - - int inference(); -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/kvdb_echo_op.cpp b/demo-serving/op/kvdb_echo_op.cpp deleted file mode 100644 index 844401012e3d25cab11197f10d2e8601c10c5a25..0000000000000000000000000000000000000000 --- a/demo-serving/op/kvdb_echo_op.cpp +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/kvdb_echo_op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using baidu::paddle_serving::predictor::format::KVDBReq; -using baidu::paddle_serving::predictor::format::KVDBRes; -using baidu::paddle_serving::predictor::echo_kvdb_service::Request; -using baidu::paddle_serving::predictor::echo_kvdb_service::Response; - -int KVDBEchoOp::inference() { debug(); } -int KVDBEchoOp::debug() { - // TODO: implement DEBUG mode - baidu::paddle_serving::predictor::Resource& resource = - baidu::paddle_serving::predictor::Resource::instance(); - std::shared_ptr db = resource.getDB(); - const Request* req = dynamic_cast(get_request_message()); - Response* res = mutable_data(); - LOG(INFO) << "Receive request in KVDB echo service: " - << req->ShortDebugString(); - for (size_t i = 0; i < req->reqs_size(); i++) { - auto kvdbreq = req->reqs(i); - std::string op = kvdbreq.op(); - std::string key = kvdbreq.key(); - std::string val = kvdbreq.value(); - if (op == "SET") { - db->Put(key, val); - KVDBRes* kvdb_value_res = res->mutable_ress()->Add(); - kvdb_value_res->set_value("OK"); - } else if (op == "GET") { - std::string getvalue = db->Get(key); - KVDBRes* kvdb_value_res = res->mutable_ress()->Add(); - kvdb_value_res->set_value(getvalue); - } - } - return 0; -} - -DEFINE_OP(KVDBEchoOp); -} -} -} diff --git a/demo-serving/op/kvdb_echo_op.h b/demo-serving/op/kvdb_echo_op.h deleted file mode 100644 index f78ce05857f5ed74a02210ba32feef73752f1580..0000000000000000000000000000000000000000 --- a/demo-serving/op/kvdb_echo_op.h +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/echo_kvdb_service.pb.h" -#include "kvdb/paddle_rocksdb.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/framework/resource.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class KVDBEchoOp - : public OpWithChannel< - baidu::paddle_serving::predictor::echo_kvdb_service::Response> { - public: - DECLARE_OP(KVDBEchoOp); - int inference(); - int debug(); -}; -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/reader_op.cpp b/demo-serving/op/reader_op.cpp deleted file mode 100644 index 85492b80603d00b65e195ba1e4d8249d2945fe9e..0000000000000000000000000000000000000000 --- a/demo-serving/op/reader_op.cpp +++ /dev/null @@ -1,159 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/reader_op.h" -#include -#include "predictor/framework/memory.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::MempoolWrapper; -using baidu::paddle_serving::predictor::format::XImageReqInstance; -using baidu::paddle_serving::predictor::image_classification::Request; - -int ReaderOp::inference() { - const Request* req = dynamic_cast(get_request_message()); - LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); - - ReaderOutput* res = mutable_data(); - if (!res) { - LOG(ERROR) << "Failed get op tls reader object output"; - return -1; - } - - TensorVector* in = &res->tensors; - uint32_t sample_size = req->instances_size(); - if (sample_size <= 0) { - LOG(WARNING) << "No instances need to inference!"; - return -1; - } - - // TODO(xxx) pmeans/scales/isize/enable_crop should be configurable. - float pmean[3] = {0.485 * 255, 0.456 * 255, 0.406 * 255}; - float scale[3] = {1 / (0.229 * 255), 1 / (0.224 * 255), 1 / (0.225 * 255)}; - size_t iresize[] = {244, 244}; // row, column - bool enable_crop = true; - - cv::Size resize; - resize.height = iresize[0]; - resize.width = iresize[1]; - - paddle::PaddleTensor in_tensor; - in_tensor.name = "tensor"; - in_tensor.dtype = paddle::FLOAT32; - // shape assignment - in_tensor.shape.push_back(sample_size); // batch_size - in_tensor.shape.push_back(3); - in_tensor.shape.push_back(resize.width); - in_tensor.shape.push_back(resize.height); - - // tls resource assignment - size_t dense_capacity = 3 * resize.width * resize.height; - size_t len = dense_capacity * sizeof(float) * sample_size; - - // Allocate buffer in PaddleTensor, so that buffer will be managed by the - // Tensor - in_tensor.data.Resize(len); - float* data = reinterpret_cast(in_tensor.data.data()); - if (in_tensor.data.data() == NULL) { - LOG(ERROR) << "Failed create temp float array, " - << "size=" << dense_capacity * sample_size * sizeof(float); - return -1; - } - - for (uint32_t si = 0; si < sample_size; si++) { - // parse image object from x-image - const XImageReqInstance& ins = req->instances(si); - // read dense image from request bytes - const char* binary = ins.image_binary().c_str(); - size_t length = ins.image_length(); - if (length == 0) { - LOG(ERROR) << "Empty image, length is 0"; - return -1; - } - - _image_vec_tmp.clear(); - _image_vec_tmp.assign(binary, binary + length); - _image_8u_tmp = cv::imdecode(cv::Mat(_image_vec_tmp), - CV_LOAD_IMAGE_COLOR /*1*/); // in B/G/R order. - if (_image_8u_tmp.data == NULL) { - LOG(ERROR) << "Image decode failed!"; - return -1; - } - - // accumulate length - const int HH = _image_8u_tmp.rows; - const int WW = _image_8u_tmp.cols; - const int CC = _image_8u_tmp.channels(); - - // resize/crop - if (_image_8u_tmp.cols != resize.width || - _image_8u_tmp.rows != resize.height) { - int short_egde = std::min(_image_8u_tmp.cols, _image_8u_tmp.rows); - int yy = static_cast((_image_8u_tmp.rows - short_egde) / 2); - int xx = static_cast((_image_8u_tmp.cols - short_egde) / 2); - _image_8u_tmp = - cv::Mat(_image_8u_tmp, cv::Rect(xx, yy, short_egde, short_egde)); - if (_image_8u_tmp.cols != resize.width || - _image_8u_tmp.rows != resize.height) { - cv::Mat resize_image; - cv::resize(_image_8u_tmp, resize_image, resize); - _image_8u_tmp = resize_image; - } - - LOG(INFO) << "Succ crop one image[CHW=" << _image_8u_tmp.channels() - << ", " << _image_8u_tmp.cols << ", " << _image_8u_tmp.rows - << "]" - << " from image[CHW=" << CC << ", " << HH << ", " << WW << "]"; - } - - // BGR->RGB transformer - cv::cvtColor(_image_8u_tmp, _image_8u_rgb, CV_BGR2RGB); - - const int H = _image_8u_rgb.rows; - const int W = _image_8u_rgb.cols; - const int C = _image_8u_rgb.channels(); - if (H != resize.height || W != resize.width || C != 3) { - LOG(ERROR) << "Image " << si << " has incompitable size"; - return -1; - } - - LOG(INFO) << "Succ read one image, C: " << C << ", W: " << W - << ", H: " << H; - - float* data_ptr = data + dense_capacity * si; - for (int h = 0; h < H; h++) { - // p points to a new line - unsigned char* p = _image_8u_rgb.ptr(h); - for (int w = 0; w < W; w++) { - for (int c = 0; c < C; c++) { - // HWC(row,column,channel) -> CWH - data_ptr[W * H * c + W * h + w] = - (p[C * w + c] - pmean[c]) * scale[c]; - } - } - } - } - in->push_back(in_tensor); - - return 0; -} - -DEFINE_OP(ReaderOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/reader_op.h b/demo-serving/op/reader_op.h deleted file mode 100644 index e3a63fcdc7b461c1f8a2925bfe22727ffade7f8c..0000000000000000000000000000000000000000 --- a/demo-serving/op/reader_op.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "demo-serving/image_class.pb.h" -#include "predictor/builtin_format.pb.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -// opencv -#include "opencv/cv.h" -#include "opencv/cv.hpp" -#include "opencv/cxcore.h" -#include "opencv/highgui.h" -#include "paddle_inference_api.h" // NOLINT - -namespace baidu { -namespace paddle_serving { -namespace serving { - -struct ReaderOutput { - std::vector tensors; - - void Clear() { - size_t tensor_count = tensors.size(); - for (size_t ti = 0; ti < tensor_count; ++ti) { - tensors[ti].shape.clear(); - } - tensors.clear(); - } - - std::string ShortDebugString() const { return "Not implemented!"; } -}; - -class ReaderOp - : public baidu::paddle_serving::predictor::OpWithChannel { - public: - typedef std::vector TensorVector; - - DECLARE_OP(ReaderOp); - - int inference(); - - private: - cv::Mat _image_8u_tmp; - cv::Mat _image_8u_rgb; - std::vector _image_vec_tmp; -}; - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/sparse_echo_op.cpp b/demo-serving/op/sparse_echo_op.cpp deleted file mode 100644 index 9a04b793c83bd58b022f7cee5d1df9d69eaeda7b..0000000000000000000000000000000000000000 --- a/demo-serving/op/sparse_echo_op.cpp +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/sparse_echo_op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -int SparseEchoOp::inference() { - // Every op can obtain request message by: - // get_request_message() - const Request* req = dynamic_cast(get_request_message()); - - // Each op can obtain self-writable-data by: - // mutable_data() - Response* res = mutable_data(); - - // You can get the channel/data of depended ops by: - // get/mutable_depend_argment() - // ... - - LOG(INFO) << "Receive request in sparse service:" << req->ShortDebugString(); - uint32_t sample_size = req->instances_size(); - for (uint32_t si = 0; si < sample_size; si++) { - SparsePrediction* sparse_res = res->mutable_predictions()->Add(); - sparse_res->add_categories(100.0 + si * 0.1); - sparse_res->add_categories(200.0 + si * 0.1); - } - return 0; -} - -DEFINE_OP(SparseEchoOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/sparse_echo_op.h b/demo-serving/op/sparse_echo_op.h deleted file mode 100644 index 1f1fef593c1384c22341f324b283daf1d8ad7643..0000000000000000000000000000000000000000 --- a/demo-serving/op/sparse_echo_op.h +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/sparse_service.pb.h" - -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class SparseEchoOp - : public OpWithChannel< - baidu::paddle_serving::predictor::sparse_service::Response> { - public: - DECLARE_OP(SparseEchoOp); - - typedef baidu::paddle_serving::predictor::sparse_service::Request Request; - typedef baidu::paddle_serving::predictor::sparse_service::Response Response; - typedef baidu::paddle_serving::predictor::format::SparsePrediction - SparsePrediction; - - int inference(); -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/text_classification_op.cpp b/demo-serving/op/text_classification_op.cpp deleted file mode 100644 index f57efc007ee7d733677aba97cb0e60d2bc68ccbf..0000000000000000000000000000000000000000 --- a/demo-serving/op/text_classification_op.cpp +++ /dev/null @@ -1,159 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "demo-serving/op/text_classification_op.h" -#include -#include "predictor/framework/infer.h" -#include "predictor/framework/memory.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::MempoolWrapper; -using baidu::paddle_serving::predictor::text_classification::TextResInstance; -using baidu::paddle_serving::predictor::text_classification::Response; -using baidu::paddle_serving::predictor::text_classification::TextReqInstance; -using baidu::paddle_serving::predictor::text_classification::Request; - -int inference_real(TextClassificationOp::TensorVector *in, - TextClassificationOp::TensorVector *out, - int sample_size) { - if (predictor::InferManager::instance().infer( - TEXT_CLASSIFICATION_MODEL_NAME, in, out, sample_size)) { - LOG(ERROR) << "Failed do infer in fluid model: " - << TEXT_CLASSIFICATION_MODEL_NAME; - return -1; - } - - return 0; -} - -int inference_fake(TextClassificationOp::TensorVector *in, - TextClassificationOp::TensorVector *out, - int sample_size) { - paddle::PaddleTensor lod_tensor; - lod_tensor.dtype = paddle::PaddleDType::FLOAT32; - lod_tensor.data.Resize(sample_size * sizeof(float) * 2); - - float *data_ptr = reinterpret_cast(lod_tensor.data.data()); - for (int i = 0; i < sample_size; ++i) { - *(data_ptr + i * 2) = 0.500; - *(data_ptr + i * 2 + 1) = 0.500; - } - - lod_tensor.lod.resize(1); - lod_tensor.lod[0].push_back(0); - lod_tensor.lod[0].push_back(sample_size); - - lod_tensor.shape.push_back(sample_size); - lod_tensor.shape.push_back(2); - - out->push_back(lod_tensor); - return 0; -} - -int TextClassificationOp::inference() { - const Request *req = dynamic_cast(get_request_message()); - - TensorVector *in = butil::get_object(); - uint32_t sample_size = req->instances_size(); - if (sample_size <= 0) { - LOG(WARNING) << "No instances need to inference!"; - return -1; - } - - paddle::PaddleTensor lod_tensor; - lod_tensor.dtype = paddle::PaddleDType::INT64; - std::vector> &lod = lod_tensor.lod; - lod.resize(1); - lod[0].push_back(0); - - for (uint32_t si = 0; si < sample_size; ++si) { - const TextReqInstance &req_instance = req->instances(si); - lod[0].push_back(lod[0].back() + req_instance.ids_size()); - } - - lod_tensor.shape = {lod[0].back(), 1}; - lod_tensor.data.Resize(lod[0].back() * sizeof(int64_t)); - - int offset = 0; - for (uint32_t si = 0; si < sample_size; ++si) { - // parse text sequence - int64_t *data_ptr = static_cast(lod_tensor.data.data()) + offset; - const TextReqInstance &req_instance = req->instances(si); - int id_count = req_instance.ids_size(); - memcpy(data_ptr, - req_instance.ids().data(), - sizeof(int64_t) * req_instance.ids_size()); - offset += req_instance.ids_size(); - } - - in->push_back(lod_tensor); - - TensorVector *out = butil::get_object(); - if (!out) { - LOG(ERROR) << "Failed get tls output object"; - return -1; - } - - // call paddle fluid model for inferencing - - if (inference_real(in, out, sample_size) != 0) { - return -1; - } - - if (out->size() != in->size()) { - LOG(ERROR) << "Output tensor size not equal that of input"; - return -1; - } - - Response *res = mutable_data(); - - for (size_t i = 0; i < out->size(); ++i) { - int dim1 = out->at(i).shape[0]; - int dim2 = out->at(i).shape[1]; - - if (out->at(i).dtype != paddle::PaddleDType::FLOAT32) { - LOG(ERROR) << "Expected data type float"; - return -1; - } - - float *data = static_cast(out->at(i).data.data()); - for (int j = 0; j < dim1; ++j) { - TextResInstance *res_instance = res->add_predictions(); - res_instance->set_class_0_prob(data[j * dim2]); - res_instance->set_class_1_prob(data[j * dim2 + 1]); - } - } - - for (size_t i = 0; i < in->size(); ++i) { - (*in)[i].shape.clear(); - } - in->clear(); - butil::return_object(in); - - for (size_t i = 0; i < out->size(); ++i) { - (*out)[i].shape.clear(); - } - out->clear(); - butil::return_object(out); - return 0; -} - -DEFINE_OP(TextClassificationOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/text_classification_op.h b/demo-serving/op/text_classification_op.h deleted file mode 100644 index 44c25931ed6c3e0c3d2b5b0dc75d8461e8a55bc9..0000000000000000000000000000000000000000 --- a/demo-serving/op/text_classification_op.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "paddle_inference_api.h" // NOLINT -#include "demo-serving/text_classification.pb.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -static const char* TEXT_CLASSIFICATION_MODEL_NAME = "text_classification_bow"; - -class TextClassificationOp - : public baidu::paddle_serving::predictor::OpWithChannel< - baidu::paddle_serving::predictor::text_classification::Response> { - public: - typedef std::vector TensorVector; - - DECLARE_OP(TextClassificationOp); - - int inference(); -}; - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/write_json_op.cpp b/demo-serving/op/write_json_op.cpp deleted file mode 100644 index e0b372d7c8fce86ced556ea397c9dcbb05111f66..0000000000000000000000000000000000000000 --- a/demo-serving/op/write_json_op.cpp +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include - -#ifdef BCLOUD -#include "pb_to_json.h" // NOLINT -#else -#include "json2pb/pb_to_json.h" -#endif - -#include "demo-serving/op/write_json_op.h" -#include "predictor/framework/memory.h" - -#ifndef BCLOUD -using json2pb::ProtoMessageToJson; -#endif - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using baidu::paddle_serving::predictor::format::XImageResInstance; -using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; -using baidu::paddle_serving::predictor::image_classification::Response; - -int WriteJsonOp::inference() { - const ClassifyResponse* classify_out = - get_depend_argument("image_classify_op"); - if (!classify_out) { - LOG(ERROR) << "Failed mutable depended argument, op:" - << "image_classify_op"; - return -1; - } - - Response* res = mutable_data(); - if (!res) { - LOG(ERROR) << "Failed mutable output response in op:" - << "WriteJsonOp"; - return -1; - } - - // transfer classify output message into json format - std::string err_string; - uint32_t sample_size = classify_out->predictions_size(); - for (uint32_t si = 0; si < sample_size; si++) { - XImageResInstance* ins = res->add_predictions(); - if (!ins) { - LOG(ERROR) << "Failed add one prediction ins"; - return -1; - } - std::string* text = ins->mutable_response_json(); - if (!ProtoMessageToJson(classify_out->predictions(si), text, &err_string)) { - LOG(ERROR) << "Failed convert message[" - << classify_out->predictions(si).ShortDebugString() - << "], err: " << err_string; - return -1; - } - } - - LOG(INFO) << "Succ write json"; - - return 0; -} - -DEFINE_OP(WriteJsonOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/write_json_op.h b/demo-serving/op/write_json_op.h deleted file mode 100644 index 3a43d3cd988685c31caa4f41a3bd91e23f7892ba..0000000000000000000000000000000000000000 --- a/demo-serving/op/write_json_op.h +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/image_class.pb.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class WriteJsonOp - : public OpWithChannel< - baidu::paddle_serving::predictor::image_classification::Response> { - public: - DECLARE_OP(WriteJsonOp); - - int inference(); -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/write_op.cpp b/demo-serving/op/write_op.cpp deleted file mode 100644 index a949b5edc5a673d0818e53c1f9f2fad4e5cc2353..0000000000000000000000000000000000000000 --- a/demo-serving/op/write_op.cpp +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include - -#ifdef BCLOUD -#include "pb_to_json.h" -#else -#include "json2pb/pb_to_json.h" -#endif - -#include "demo-serving/op/write_op.h" -#include "predictor/framework/memory.h" - -#ifndef BCLOUD -using json2pb::ProtoMessageToJson; -#endif - -namespace baidu { -namespace paddle_serving { -namespace serving { - -using baidu::paddle_serving::predictor::format::XImageResInstance; -using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; -using baidu::paddle_serving::predictor::image_classification::Response; - -int WriteOp::inference() { - const ClassifyResponse* classify_out = - get_depend_argument("image_classify_op"); - if (!classify_out) { - LOG(ERROR) << "Failed mutable depended argument, op:" - << "image_classify_op"; - return -1; - } - - Response* res = mutable_data(); - if (!res) { - LOG(ERROR) << "Failed mutable output response in op:" - << "WriteOp"; - return -1; - } - - // transfer classify output message into json format - std::string err_string; - uint32_t sample_size = classify_out->predictions_size(); - for (uint32_t si = 0; si < sample_size; si++) { - XImageResInstance* ins = res->add_predictions(); - if (!ins) { - LOG(ERROR) << "Failed add one prediction ins"; - return -1; - } - std::string* text = ins->mutable_response_json(); - if (!ProtoMessageToJson(classify_out->predictions(si), text, &err_string)) { - LOG(ERROR) << "Failed convert message[" - << classify_out->predictions(si).ShortDebugString() - << "], err: " << err_string; - return -1; - } - } - - LOG(INFO) << "Succ write json:" << classify_out->ShortDebugString(); - - return 0; -} - -DEFINE_OP(WriteOp); - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/op/write_op.h b/demo-serving/op/write_op.h deleted file mode 100644 index 5969610d2343550958b10559687b9f7b8cdf3afb..0000000000000000000000000000000000000000 --- a/demo-serving/op/write_op.h +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "demo-serving/image_class.pb.h" -#include "predictor/builtin_format.pb.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace serving { - -class WriteOp - : public baidu::paddle_serving::predictor::OpWithChannel< - baidu::paddle_serving::predictor::image_classification::Response> { - public: - DECLARE_OP(WriteOp); - - int inference(); -}; - -} // namespace serving -} // namespace paddle_serving -} // namespace baidu diff --git a/demo-serving/proto/CMakeLists.txt b/demo-serving/proto/CMakeLists.txt deleted file mode 100644 index e50a73d49ed90af77eec9b3b97c56a7d2a6bc7b3..0000000000000000000000000000000000000000 --- a/demo-serving/proto/CMakeLists.txt +++ /dev/null @@ -1,14 +0,0 @@ -LIST(APPEND protofiles - ${CMAKE_CURRENT_LIST_DIR}/image_class.proto - ${CMAKE_CURRENT_LIST_DIR}/dense_service.proto - ${CMAKE_CURRENT_LIST_DIR}/sparse_service.proto - ${CMAKE_CURRENT_LIST_DIR}/echo_service.proto - ${CMAKE_CURRENT_LIST_DIR}/echo_kvdb_service.proto - ${CMAKE_CURRENT_LIST_DIR}/int64tensor_service.proto - ${CMAKE_CURRENT_LIST_DIR}/text_classification.proto - ${CMAKE_CURRENT_LIST_DIR}/ctr_prediction.proto - ${CMAKE_CURRENT_LIST_DIR}/bert_service.proto -) - -PROTOBUF_GENERATE_SERVING_CPP(TRUE PROTO_SRCS PROTO_HDRS ${protofiles}) -LIST(APPEND serving_srcs ${PROTO_SRCS}) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..62f3faeae1b206e7b545cfe812a82076368a8099 --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,23 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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 + +add_subdirectory(demo-client) +if(NOT CLIENT_ONLY) +add_subdirectory(demo-serving) +endif() +if(NOT CLIENT_ONLY) +if (WITH_ELASTIC_CTR) +add_subdirectory(elastic-ctr) +endif() +endif() diff --git a/paddle-gpu-serving/client/bert_service/bert_service.py b/examples/bert-gpu-serving/client/bert_service/bert_service.py similarity index 100% rename from paddle-gpu-serving/client/bert_service/bert_service.py rename to examples/bert-gpu-serving/client/bert_service/bert_service.py diff --git a/paddle-gpu-serving/paddle-gpu-serving/README.md b/examples/bert-gpu-serving/paddle-gpu-serving/README.md similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/README.md rename to examples/bert-gpu-serving/paddle-gpu-serving/README.md diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/__init__.py b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/__init__.py similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/__init__.py rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/__init__.py diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/run/__init__.py b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/run/__init__.py similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/run/__init__.py rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/run/__init__.py diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/cube.conf b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/cube.conf similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/cube.conf rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/cube.conf diff --git a/demo-serving/conf/gflags.conf b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/gflags.conf similarity index 100% rename from demo-serving/conf/gflags.conf rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/gflags.conf diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.0 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.0 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.0 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.0 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.1 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.1 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.1 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.1 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.10 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.10 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.10 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.10 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.11 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.11 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.11 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.11 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.12 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.12 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.12 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.12 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.13 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.13 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.13 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.13 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.14 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.14 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.14 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.14 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.15 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.15 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.15 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.15 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.2 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.2 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.2 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.2 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.3 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.3 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.3 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.3 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.4 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.4 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.4 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.4 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.5 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.5 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.5 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.5 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.6 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.6 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.6 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.6 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.7 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.7 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.7 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.7 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.8 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.8 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.8 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.8 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.9 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.9 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.9 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/model_toolkit.prototxt.9 diff --git a/demo-serving/conf/resource.prototxt b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt similarity index 100% rename from demo-serving/conf/resource.prototxt rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.0 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.0 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.0 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.0 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.1 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.1 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.1 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.1 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.10 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.10 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.10 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.10 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.11 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.11 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.11 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.11 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.12 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.12 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.12 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.12 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.13 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.13 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.13 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.13 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.14 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.14 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.14 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.14 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.15 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.15 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.15 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.15 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.2 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.2 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.2 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.2 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.3 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.3 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.3 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.3 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.4 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.4 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.4 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.4 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.5 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.5 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.5 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.5 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.6 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.6 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.6 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.6 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.7 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.7 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.7 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.7 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.8 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.8 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.8 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.8 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.9 b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.9 similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.9 rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt.9 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/service.prototxt b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/service.prototxt similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/service.prototxt rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/service.prototxt diff --git a/demo-serving/conf/workflow.prototxt b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/workflow.prototxt similarity index 100% rename from demo-serving/conf/workflow.prototxt rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/workflow.prototxt diff --git a/demo-serving/data/model/paddle/fluid_reload_flag b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_reload_flag similarity index 100% rename from demo-serving/data/model/paddle/fluid_reload_flag rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_reload_flag diff --git a/demo-serving/data/model/paddle/fluid_time_file b/examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_time_file similarity index 100% rename from demo-serving/data/model/paddle/fluid_time_file rename to examples/bert-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_time_file diff --git a/paddle-gpu-serving/paddle-gpu-serving/setup.py b/examples/bert-gpu-serving/paddle-gpu-serving/setup.py similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/setup.py rename to examples/bert-gpu-serving/paddle-gpu-serving/setup.py diff --git a/examples/demo-client/CMakeLists.txt b/examples/demo-client/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..019d1ac3d2ffd150bd7637558ed7de350962ffca --- /dev/null +++ b/examples/demo-client/CMakeLists.txt @@ -0,0 +1,141 @@ +if (NOT EXISTS + ${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.txt) + execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory + ${CMAKE_CURRENT_LIST_DIR}/data/text_classification) + execute_process(COMMAND wget + --no-check-certificate + https://paddle-serving.bj.bcebos.com/data/text_classification/test_set.tar.gz + --output-document + ${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.tar.gz) + + execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf + "${CMAKE_CURRENT_LIST_DIR}/data/text_classification/test_set.tar.gz" + WORKING_DIRECTORY + ${CMAKE_CURRENT_LIST_DIR}/data/text_classification + ) +endif() + +add_executable(ximage ${CMAKE_CURRENT_LIST_DIR}/src/ximage.cpp) +target_link_libraries(ximage -Wl,--whole-archive sdk-cpp + -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(ximage_press ${CMAKE_CURRENT_LIST_DIR}/src/ximage_press.cpp) +target_link_libraries(ximage_press -Wl,--whole-archive sdk-cpp + -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(load_general_model ${CMAKE_CURRENT_LIST_DIR}/src/load_general_model.cpp) +target_link_libraries(load_general_model -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive + -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(echo ${CMAKE_CURRENT_LIST_DIR}/src/echo.cpp) +target_link_libraries(echo -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive + -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(echo_kvdb ${CMAKE_CURRENT_LIST_DIR}/src/echo_kvdb.cpp) +target_link_libraries(echo_kvdb -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive + -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(dense_format ${CMAKE_CURRENT_LIST_DIR}/src/dense_format.cpp) +target_link_libraries(dense_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(sparse_format ${CMAKE_CURRENT_LIST_DIR}/src/sparse_format.cpp) +target_link_libraries(sparse_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(int64tensor_format ${CMAKE_CURRENT_LIST_DIR}/src/int64tensor_format.cpp) +target_link_libraries(int64tensor_format -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(text_classification + ${CMAKE_CURRENT_LIST_DIR}/src/text_classification.cpp) +target_link_libraries(text_classification -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(text_classification_press + ${CMAKE_CURRENT_LIST_DIR}/src/text_classification_press.cpp) +target_link_libraries(text_classification_press -Wl,--whole-archive sdk-cpp -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl + -lz) + +add_executable(ctr_prediction + ${CMAKE_CURRENT_LIST_DIR}/src/ctr_prediction.cpp) +target_link_libraries(ctr_prediction -Wl,--whole-archive sdk-cpp + -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) + +add_executable(bert + ${CMAKE_CURRENT_LIST_DIR}/src/bert_service.cpp) +target_link_libraries(bert -Wl,--whole-archive sdk-cpp + -Wl,--no-whole-archive -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) + +# install +install(TARGETS ximage + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/bin) +install(TARGETS ximage_press + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/image_classification/) + +install(TARGETS echo + RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/) +install(FILES ${CMAKE_CURRENT_LIST_DIR}/python/echo.py + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/python) +install(FILES ${CMAKE_CURRENT_LIST_DIR}/php/echo.php + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo/php) + +install(TARGETS echo_kvdb + RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo_kvdb/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/echo_kvdb/) + +install(TARGETS dense_format + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/dense_format/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/dense_format/) + +install(TARGETS sparse_format + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/sparse_format/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/sparse_format/) + +install(TARGETS int64tensor_format + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/int64tensor_format/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/int64tensor_format/) + +install(TARGETS text_classification text_classification_press + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/) +install(FILES ${CMAKE_CURRENT_LIST_DIR}/python/text_classification.py + DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/python) +install(FILES ${CMAKE_CURRENT_LIST_DIR}/php/text_classification.php + DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/text_classification/php) + + + +install(TARGETS ctr_prediction + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/ctr_prediction/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/ctr_prediction/) + +install(TARGETS bert + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/bert/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/client/bert/) diff --git a/examples/demo-client/conf/predictors.prototxt b/examples/demo-client/conf/predictors.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..a818d4861fbfd01a7ca71769453cc44af65aef8b --- /dev/null +++ b/examples/demo-client/conf/predictors.prototxt @@ -0,0 +1,171 @@ +default_variant_conf { + tag: "default" + connection_conf { + connect_timeout_ms: 2000 + rpc_timeout_ms: 20000 + connect_retry_count: 2 + max_connection_per_host: 100 + hedge_request_timeout_ms: -1 + hedge_fetch_retry_count: 2 + connection_type: "pooled" + } + naming_conf { + cluster_filter_strategy: "Default" + load_balance_strategy: "la" + } + rpc_parameter { + compress_type: 0 + package_size: 20 + protocol: "baidu_std" + max_channel_per_request: 3 + } +} +predictors { + name: "ximage" + service_name: "baidu.paddle_serving.predictor.image_classification.ImageClassifyService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + + +predictors { + name: "echo_service" + service_name: "baidu.paddle_serving.predictor.echo_service.BuiltinTestEchoService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "dense_service" + service_name: "baidu.paddle_serving.predictor.dense_service.BuiltinDenseFormatService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "load_general_model_service" + service_name: "baidu.paddle_serving.predictor.load_general_model_service.LoadGeneralModelService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "sparse_service" + service_name: "baidu.paddle_serving.predictor.sparse_service.BuiltinSparseFormatService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "int64tensor_service" + service_name: "baidu.paddle_serving.predictor.int64tensor_service.BuiltinFluidService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "text_classification" + service_name: "baidu.paddle_serving.predictor.text_classification.TextClassificationService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "echo_kvdb_service" + service_name: "baidu.paddle_serving.predictor.echo_kvdb_service.EchoKVDBService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} + +predictors { + name: "ctr_prediction_service" + service_name: "baidu.paddle_serving.predictor.ctr_prediction.CTRPredictionService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} +predictors { + name: "bert_service" + service_name: "baidu.paddle_serving.predictor.bert_service.BertService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:8010" + } + } +} diff --git a/examples/demo-client/inference.conf b/examples/demo-client/inference.conf new file mode 100644 index 0000000000000000000000000000000000000000..fe6710ddad0d498b3d1aebfd7efd3368c874d353 --- /dev/null +++ b/examples/demo-client/inference.conf @@ -0,0 +1,6 @@ +2 3 +words 1 -1 +label 1 1 +cost mean_0.tmp_0 +acc accuracy_0.tmp_0 +prediction fc_1.tmp_2 diff --git a/examples/demo-client/paddle_serving_client.egg-info/PKG-INFO b/examples/demo-client/paddle_serving_client.egg-info/PKG-INFO new file mode 100644 index 0000000000000000000000000000000000000000..b2b1f51d91100a98e0a45da7aa284e19224cc905 --- /dev/null +++ b/examples/demo-client/paddle_serving_client.egg-info/PKG-INFO @@ -0,0 +1,10 @@ +Metadata-Version: 1.0 +Name: paddle-serving-client +Version: 0.0.1 +Summary: Paddle Serving Python Client API +Home-page: UNKNOWN +Author: PaddlePaddle Authors +Author-email: guru4elephant@gmail.com +License: UNKNOWN +Description: UNKNOWN +Platform: UNKNOWN diff --git a/examples/demo-client/paddle_serving_client.egg-info/SOURCES.txt b/examples/demo-client/paddle_serving_client.egg-info/SOURCES.txt new file mode 100644 index 0000000000000000000000000000000000000000..2f2ba80caa9e722f8c0a9c169db01e93b3315289 --- /dev/null +++ b/examples/demo-client/paddle_serving_client.egg-info/SOURCES.txt @@ -0,0 +1,6 @@ +setup.py +paddle_serving_client.egg-info/PKG-INFO +paddle_serving_client.egg-info/SOURCES.txt +paddle_serving_client.egg-info/dependency_links.txt +paddle_serving_client.egg-info/not-zip-safe +paddle_serving_client.egg-info/top_level.txt \ No newline at end of file diff --git a/examples/demo-client/paddle_serving_client.egg-info/dependency_links.txt b/examples/demo-client/paddle_serving_client.egg-info/dependency_links.txt new file mode 100644 index 0000000000000000000000000000000000000000..8b137891791fe96927ad78e64b0aad7bded08bdc --- /dev/null +++ b/examples/demo-client/paddle_serving_client.egg-info/dependency_links.txt @@ -0,0 +1 @@ + diff --git a/examples/demo-client/paddle_serving_client.egg-info/not-zip-safe b/examples/demo-client/paddle_serving_client.egg-info/not-zip-safe new file mode 100644 index 0000000000000000000000000000000000000000..8b137891791fe96927ad78e64b0aad7bded08bdc --- /dev/null +++ b/examples/demo-client/paddle_serving_client.egg-info/not-zip-safe @@ -0,0 +1 @@ + diff --git a/examples/demo-client/paddle_serving_client.egg-info/top_level.txt b/examples/demo-client/paddle_serving_client.egg-info/top_level.txt new file mode 100644 index 0000000000000000000000000000000000000000..271e3e7d2732b9000c24a42470b4dea8a24c7cdd --- /dev/null +++ b/examples/demo-client/paddle_serving_client.egg-info/top_level.txt @@ -0,0 +1 @@ +paddle_serving_client diff --git a/demo-client/php/echo.php b/examples/demo-client/php/echo.php similarity index 100% rename from demo-client/php/echo.php rename to examples/demo-client/php/echo.php diff --git a/demo-client/php/text_classification.php b/examples/demo-client/php/text_classification.php similarity index 100% rename from demo-client/php/text_classification.php rename to examples/demo-client/php/text_classification.php diff --git a/examples/demo-client/predictor.conf b/examples/demo-client/predictor.conf new file mode 100644 index 0000000000000000000000000000000000000000..33d0a84418b24b3ba590f4acfe7dab876c004694 --- /dev/null +++ b/examples/demo-client/predictor.conf @@ -0,0 +1,37 @@ +default_variant_conf { + tag: "default" + connection_conf { + connect_timeout_ms: 2000 + rpc_timeout_ms: 20000 + connect_retry_count: 2 + max_connection_per_host: 100 + hedge_request_timeout_ms: -1 + hedge_fetch_retry_count: 2 + connection_type: "pooled" + } + naming_conf { + cluster_filter_strategy: "Default" + load_balance_strategy: "la" + } + rpc_parameter { + compress_type: 0 + package_size: 20 + protocol: "baidu_std" + max_channel_per_request: 3 + } +} + +predictors { + name: "general_model" + service_name: "baidu.paddle_serving.predictor.general_model.GeneralModelService" + endpoint_router: "WeightedRandomRender" + weighted_random_render_conf { + variant_weight_list: "50" + } + variants { + tag: "var1" + naming_conf { + cluster: "list://127.0.0.1:9292" + } + } +} diff --git a/demo-client/python/echo.py b/examples/demo-client/python/echo.py similarity index 100% rename from demo-client/python/echo.py rename to examples/demo-client/python/echo.py diff --git a/demo-client/python/text_classification.py b/examples/demo-client/python/text_classification.py similarity index 100% rename from demo-client/python/text_classification.py rename to examples/demo-client/python/text_classification.py diff --git a/examples/demo-client/src/bert_service.cpp b/examples/demo-client/src/bert_service.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4b0f88fc0c28e8f1122e3ec2a39334a4b9909b3b --- /dev/null +++ b/examples/demo-client/src/bert_service.cpp @@ -0,0 +1,294 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include +#include +#include //NOLINT +#include +#include "core/sdk-cpp/bert_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::bert_service::Request; +using baidu::paddle_serving::predictor::bert_service::Response; +using baidu::paddle_serving::predictor::bert_service::BertResInstance; +using baidu::paddle_serving::predictor::bert_service::BertReqInstance; +using baidu::paddle_serving::predictor::bert_service::EmbeddingValues; + +extern int batch_size = 1; +extern int max_seq_len = 128; +extern int layer_num = 12; +extern int thread_num = 1; +extern int max_turn = 1000; + +std::atomic g_concurrency(0); +std::vector> response_time; +std::vector> infer_time; +char* data_filename = "./data/bert/demo_wiki_data"; + +std::vector split(const std::string& str, + const std::string& pattern) { + std::vector res; + if (str == "") return res; + std::string strs = str + pattern; + size_t pos = strs.find(pattern); + while (pos != strs.npos) { + std::string temp = strs.substr(0, pos); + res.push_back(temp); + strs = strs.substr(pos + 1, strs.size()); + pos = strs.find(pattern); + } + return res; +} + +int create_req(Request* req, + const std::vector& data_list, + int data_index, + int batch_size) { + for (int i = 0; i < batch_size; ++i) { + BertReqInstance* ins = req->add_instances(); + if (!ins) { + LOG(ERROR) << "Failed create req instance"; + return -1; + } + // add data + // avoid out of boundary + int cur_index = data_index + i; + if (cur_index >= data_list.size()) { + cur_index = cur_index % data_list.size(); + } + + std::vector feature_list = split(data_list[cur_index], ";"); + std::vector token_list = split(feature_list[0], " "); + std::vector seg_list = split(feature_list[1], " "); + std::vector pos_list = split(feature_list[2], " "); + for (int fi = 0; fi < max_seq_len; fi++) { + if (std::stoi(token_list[fi]) != 0) { + ins->add_token_ids(std::stoi(token_list[fi])); + ins->add_sentence_type_ids(std::stoi(seg_list[fi])); + ins->add_position_ids(std::stoi(pos_list[fi])); + ins->add_input_masks(1.0); + } else { + ins->add_token_ids(0); + ins->add_sentence_type_ids(0); + ins->add_position_ids(0); + ins->add_input_masks(0.0); + } + } + } + req->set_max_seq_len(max_seq_len); + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + for (uint32_t ri = 0; ri < res.instances_size(); ri++) { + const BertResInstance& res_ins = res.instances(ri); + std::ostringstream oss; + oss << "["; + for (uint32_t bi = 0; bi < res_ins.instances_size(); bi++) { + const EmbeddingValues& emb_ins = res_ins.instances(bi); + oss << "["; + for (uint32_t ei = 0; ei < emb_ins.values_size(); ei++) { + oss << emb_ins.values(ei) << " "; + } + oss << "],"; + } + oss << "]\n"; + LOG(INFO) << "Receive : " << oss.str(); + } + LOG(INFO) << "Succ call predictor[bert_service], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +void thread_worker(PredictorApi* api, + int thread_id, + int batch_size, + int server_concurrency, + const std::vector& data_list) { + Request req; + Response res; + api->thrd_initialize(); + std::string line; + int turns = 0; + while (turns < max_turn) { + timeval start; + gettimeofday(&start, NULL); + api->thrd_clear(); + Predictor* predictor = api->fetch_predictor("bert_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: bert_service"; + return; + } + req.Clear(); + res.Clear(); + while (g_concurrency.load() >= server_concurrency) { + } + g_concurrency++; + LOG(INFO) << "Current concurrency " << g_concurrency.load(); + int data_index = turns * batch_size; + if (create_req(&req, data_list, data_index, batch_size) != 0) { + return; + } + if (predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return; + } + timeval end; + gettimeofday(&end, NULL); + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + response_time[thread_id].push_back(elapse_ms); + print_res(req, res, predictor->tag(), elapse_ms); + g_concurrency--; + LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); + turns++; + } + api->thrd_finalize(); +} + +void calc_time(int server_concurrency, int batch_size) { + std::vector time_list; + for (auto a : response_time) { + time_list.insert(time_list.end(), a.begin(), a.end()); + } + LOG(INFO) << "Total request : " << (time_list.size()); + LOG(INFO) << "Batch size : " << batch_size; + LOG(INFO) << "Max concurrency : " << server_concurrency; + LOG(INFO) << "Max Seq Len : " << max_seq_len; + float total_time = 0; + float max_time = 0; + float min_time = 1000000; + for (int i = 0; i < time_list.size(); ++i) { + total_time += time_list[i]; + if (time_list[i] > max_time) max_time = time_list[i]; + if (time_list[i] < min_time) min_time = time_list[i]; + } + float mean_time = total_time / (time_list.size()); + float var_time; + for (int i = 0; i < time_list.size(); ++i) { + var_time += (time_list[i] - mean_time) * (time_list[i] - mean_time); + } + var_time = var_time / time_list.size(); + LOG(INFO) << "Total time : " << total_time / server_concurrency + << " Variance : " << var_time << " Max time : " << max_time + << " Min time : " << min_time; + float qps = 0.0; + if (total_time > 0) + qps = (time_list.size() * 1000) / (total_time / server_concurrency); + LOG(INFO) << "QPS: " << qps << "/s"; + LOG(INFO) << "Latency statistics: "; + sort(time_list.begin(), time_list.end()); + int percent_pos_50 = time_list.size() * 0.5; + int percent_pos_80 = time_list.size() * 0.8; + int percent_pos_90 = time_list.size() * 0.9; + int percent_pos_99 = time_list.size() * 0.99; + int percent_pos_999 = time_list.size() * 0.999; + if (time_list.size() != 0) { + LOG(INFO) << "Mean time : " << mean_time; + LOG(INFO) << "50 percent ms: " << time_list[percent_pos_50]; + LOG(INFO) << "80 percent ms: " << time_list[percent_pos_80]; + LOG(INFO) << "90 percent ms: " << time_list[percent_pos_90]; + LOG(INFO) << "99 percent ms: " << time_list[percent_pos_99]; + LOG(INFO) << "99.9 percent ms: " << time_list[percent_pos_999]; + } else { + LOG(INFO) << "N/A"; + LOG(INFO) << "N/A"; + LOG(INFO) << "N/A"; + LOG(INFO) << "N/A"; + LOG(INFO) << "N/A"; + LOG(INFO) << "N/A"; + } +} +int main(int argc, char** argv) { + PredictorApi api; + if (argc > 1) { + thread_num = std::stoi(argv[1]); + batch_size = std::stoi(argv[2]); + max_seq_len = std::stoi(argv[3]); + } + response_time.resize(thread_num); + int server_concurrency = thread_num; +// log set +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + std::string log_filename(argv[0]); + log_filename = log_filename.substr(log_filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + log_filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + logging::ComlogSinkOptions cso; + cso.process_name = log_filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + // predictor conf + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + // read data + std::ifstream data_file(data_filename); + if (!data_file) { + std::cout << "read file error \n" << std::endl; + return -1; + } + std::vector data_list; + std::string line; + while (getline(data_file, line)) { + data_list.push_back(line); + } + // create threads + std::vector thread_pool; + for (int i = 0; i < server_concurrency; ++i) { + thread_pool.push_back(new std::thread(thread_worker, + &api, + i, + batch_size, + server_concurrency, + std::ref(data_list))); + } + for (int i = 0; i < server_concurrency; ++i) { + thread_pool[i]->join(); + delete thread_pool[i]; + } + calc_time(server_concurrency, batch_size); + api.destroy(); + return 0; +} diff --git a/examples/demo-client/src/ctr_prediction.cpp b/examples/demo-client/src/ctr_prediction.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ac023d6b745995a231549881ba0a5a2b1ca0654d --- /dev/null +++ b/examples/demo-client/src/ctr_prediction.cpp @@ -0,0 +1,355 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include +#include +#include +#include +#include +#include // NOLINT +#include "core/sdk-cpp/ctr_prediction.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::ctr_prediction::Request; +using baidu::paddle_serving::predictor::ctr_prediction::Response; +using baidu::paddle_serving::predictor::ctr_prediction::CTRReqInstance; +using baidu::paddle_serving::predictor::ctr_prediction::CTRResInstance; + +int sparse_num = 26; +int dense_num = 13; +int hash_dim = 1000001; + +DEFINE_int32(batch_size, 50, "Set the batch size of test file."); +DEFINE_int32(concurrency, 1, "Set the max concurrency of requests"); +DEFINE_int32(repeat, 1, "Number of data samples iteration count. Default 1"); +DEFINE_bool(enable_profiling, + false, + "Enable profiling. Will supress a lot normal output"); + +std::vector cont_min = {0, -3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; +std::vector cont_diff = { + 20, 603, 100, 50, 64000, 500, 100, 50, 500, 10, 10, 10, 50}; +char* data_filename = "./data/ctr_prediction/data.txt"; +std::atomic g_concurrency(0); +std::vector> response_time; + +std::vector split(const std::string& str, + const std::string& pattern) { + std::vector res; + if (str == "") return res; + std::string strs = str + pattern; + size_t pos = strs.find(pattern); + while (pos != strs.npos) { + std::string temp = strs.substr(0, pos); + res.push_back(temp); + strs = strs.substr(pos + 1, strs.size()); + pos = strs.find(pattern); + } + return res; +} + +/** + * Simulate CPython hash function on string objects + * + * Our model training process use this function to convert string objects to + * unique ids. + * + * See string_hash() in + * https://svn.python.org/projects/python/trunk/Objects/stringobject.c + */ +int64_t hash(std::string str) { + int64_t len; + unsigned char* p; + int64_t x; + + len = str.size(); + p = (unsigned char*)str.c_str(); + x = *p << 7; + while (--len >= 0) { + x = (1000003 * x) ^ *p++; + } + x ^= str.size(); + if (x == -1) { + x = -2; + } + return x; +} + +int create_req(Request* req, + const std::vector& data_list, + int start_index, + int batch_size) { + for (int i = 0; i < batch_size; ++i) { + CTRReqInstance* ins = req->add_instances(); + if (!ins) { + LOG(ERROR) << "Failed create req instance"; + return -1; + } + + // add data + // avoid out of boundary + int cur_index = start_index + i; + if (cur_index >= data_list.size()) { + cur_index = cur_index % data_list.size(); + } + + std::vector feature_list = split(data_list[cur_index], "\t"); + for (int fi = 0; fi < dense_num; fi++) { + if (feature_list[fi] == "") { + ins->add_dense_ids(0.0); + } else { + float dense_id = std::stof(feature_list[fi]); + dense_id = (dense_id - cont_min[fi]) / cont_diff[fi]; + ins->add_dense_ids(dense_id); + } + } + for (int fi = dense_num; fi < (dense_num + sparse_num); fi++) { + int64_t sparse_id = + hash(std::to_string(fi) + feature_list[fi]) % hash_dim; + if (sparse_id < 0) { + // diff between c++ and python + sparse_id += hash_dim; + } + ins->add_sparse_ids(sparse_id); + } + } + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + if (res.err_code() != 0) { + LOG(ERROR) << "Get result fail :" << res.err_msg(); + return; + } + for (uint32_t i = 0; i < res.predictions_size(); ++i) { + const CTRResInstance& res_ins = res.predictions(i); + std::ostringstream oss; + oss << "[" << res_ins.prob0() << " " << res_ins.prob1() << "]"; + LOG(INFO) << "Receive result " << oss.str(); + } + LOG(INFO) << "Succ call predictor[ctr_prediction_service], the tag is: " + << route_tag << ", elapse_ms: " << elapse_ms; +} + +void thread_worker(PredictorApi* api, + int thread_id, + const std::vector& data_list) { + // init + Request req; + Response res; + std::string line; + + api->thrd_initialize(); + + for (int i = 0; i < FLAGS_repeat; ++i) { + int start_index = 0; + + while (true) { + if (start_index >= data_list.size()) { + break; + } + + api->thrd_clear(); + + Predictor* predictor = api->fetch_predictor("ctr_prediction_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: ctr_prediction_service"; + return; + } + + req.Clear(); + res.Clear(); + + // wait for other thread + while (g_concurrency.load() >= FLAGS_concurrency) { + } + g_concurrency++; + LOG(INFO) << "Current concurrency " << g_concurrency.load(); + + if (create_req(&req, data_list, start_index, FLAGS_batch_size) != 0) { + return; + } + start_index += FLAGS_batch_size; + LOG(INFO) << "start_index = " << start_index; + + timeval start; + gettimeofday(&start, NULL); + + if (predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req:" + << req.ShortDebugString(); + return; + } + g_concurrency--; + + timeval end; + gettimeofday(&end, NULL); + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + response_time[thread_id].push_back(elapse_ms); + + if (!FLAGS_enable_profiling) { + print_res(req, res, predictor->tag(), elapse_ms); + } + + LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); + } // end while + } // end for + + api->thrd_finalize(); +} + +void calc_time() { + std::vector time_list; + for (auto a : response_time) { + time_list.insert(time_list.end(), a.begin(), a.end()); + } + + LOG(INFO) << "Total request : " << (time_list.size()); + LOG(INFO) << "Batch size : " << FLAGS_batch_size; + LOG(INFO) << "Max concurrency : " << FLAGS_concurrency; + LOG(INFO) << "enable_profiling: " << FLAGS_enable_profiling; + LOG(INFO) << "repeat count: " << FLAGS_repeat; + + float total_time = 0; + float max_time = 0; + float min_time = 1000000; + for (int i = 0; i < time_list.size(); ++i) { + total_time += time_list[i]; + if (time_list[i] > max_time) max_time = time_list[i]; + if (time_list[i] < min_time) min_time = time_list[i]; + } + + float mean_time = total_time / (time_list.size()); + float var_time; + for (int i = 0; i < time_list.size(); ++i) { + var_time += (time_list[i] - mean_time) * (time_list[i] - mean_time); + } + var_time = var_time / time_list.size(); + + LOG(INFO) << "Total time : " << total_time / FLAGS_concurrency << "ms"; + LOG(INFO) << "Variance : " << var_time << "ms"; + LOG(INFO) << "Max time : " << max_time << "ms"; + LOG(INFO) << "Min time : " << min_time << "ms"; + + float qps = 0.0; + if (total_time > 0) { + qps = (time_list.size() * 1000) / (total_time / FLAGS_concurrency); + } + LOG(INFO) << "QPS: " << qps << "/s"; + + LOG(INFO) << "Latency statistics: "; + sort(time_list.begin(), time_list.end()); + + int percent_pos_50 = time_list.size() * 0.5; + int percent_pos_80 = time_list.size() * 0.8; + int percent_pos_90 = time_list.size() * 0.9; + int percent_pos_99 = time_list.size() * 0.99; + int percent_pos_999 = time_list.size() * 0.999; + if (time_list.size() != 0) { + LOG(INFO) << "Mean time : " << mean_time; + LOG(INFO) << "50 percent ms: " << time_list[percent_pos_50]; + LOG(INFO) << "80 percent ms: " << time_list[percent_pos_80]; + LOG(INFO) << "90 percent ms: " << time_list[percent_pos_90]; + LOG(INFO) << "99 percent ms: " << time_list[percent_pos_99]; + LOG(INFO) << "99.9 percent ms: " << time_list[percent_pos_999]; + } else { + LOG(INFO) << "N/A"; + } +} +int main(int argc, char** argv) { + google::ParseCommandLineFlags(&argc, &argv, true); + + // initialize + PredictorApi api; + response_time.resize(FLAGS_concurrency); + +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + std::string log_filename(argv[0]); + log_filename = log_filename.substr(log_filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + log_filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + logging::ComlogSinkOptions cso; + cso.process_name = log_filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + // predictor conf + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + LOG(INFO) << "data sample file: " << data_filename; + + if (FLAGS_enable_profiling) { + LOG(INFO) << "In profiling mode, lot of normal output will be supressed. " + << "Use --enable_profiling=false to turn off this mode"; + } + + // read data + std::ifstream data_file(data_filename); + if (!data_file) { + std::cout << "read file error \n" << std::endl; + return -1; + } + + std::vector data_list; + std::string line; + while (getline(data_file, line)) { + data_list.push_back(line); + } + + // create threads + std::vector thread_pool; + for (int i = 0; i < FLAGS_concurrency; ++i) { + thread_pool.push_back(new std::thread(thread_worker, &api, i, data_list)); + } + + for (int i = 0; i < FLAGS_concurrency; ++i) { + thread_pool[i]->join(); + delete thread_pool[i]; + } + + calc_time(); + + api.destroy(); + return 0; +} diff --git a/examples/demo-client/src/dense_format.cpp b/examples/demo-client/src/dense_format.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fdf025a7a09f8f158ca89dd400580a124f459b56 --- /dev/null +++ b/examples/demo-client/src/dense_format.cpp @@ -0,0 +1,155 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/dense_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::dense_service::Request; +using baidu::paddle_serving::predictor::dense_service::Response; +using baidu::paddle_serving::predictor::format::DensePrediction; +using baidu::paddle_serving::predictor::format::DenseInstance; + +int create_req(Request& req) { // NOLINT + DenseInstance* ins = req.mutable_instances()->Add(); + ins->add_features(1.5); + ins->add_features(16.0); + ins->add_features(14.0); + + ins = req.mutable_instances()->Add(); + ins->add_features(1.0); + ins->add_features(2.0); + ins->add_features(3.0); + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + for (uint32_t i = 0; i < res.predictions_size(); ++i) { + const DensePrediction& prediction = res.predictions(i); + std::ostringstream oss; + for (uint32_t j = 0; j < prediction.categories_size(); ++j) { + oss << prediction.categories(j) << " "; + } + LOG(INFO) << "Receive result " << oss.str(); + } + + LOG(INFO) << "Succ call predictor[dense_format], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + while (true) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("dense_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: dense_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/echo.cpp b/examples/demo-client/src/echo.cpp new file mode 100644 index 0000000000000000000000000000000000000000..cfb7354c8650eef775743f1b935c233408cc4071 --- /dev/null +++ b/examples/demo-client/src/echo.cpp @@ -0,0 +1,139 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/echo_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::echo_service::RequestAndResponse; + +int create_req(RequestAndResponse& req) { // NOLINT + req.set_a(1); + req.set_b(0.1); + return 0; +} + +void print_res(const RequestAndResponse& req, + const RequestAndResponse& res, + std::string route_tag, + uint64_t elapse_ms) { + LOG(INFO) << "Reqeive result: a = " << res.a() << ", b = " << res.b(); + + LOG(INFO) << "Succ call predictor[echo_service], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + RequestAndResponse req; + RequestAndResponse res; + + api.thrd_initialize(); + + while (true) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("echo_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: echo_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/echo_kvdb.cpp b/examples/demo-client/src/echo_kvdb.cpp new file mode 100644 index 0000000000000000000000000000000000000000..d3a159a05776cc96cd29cd11f29305417b0d80ee --- /dev/null +++ b/examples/demo-client/src/echo_kvdb.cpp @@ -0,0 +1,155 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/echo_kvdb_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::echo_kvdb_service::Request; +using baidu::paddle_serving::predictor::echo_kvdb_service::Response; +using baidu::paddle_serving::predictor::format::KVDBReq; +using baidu::paddle_serving::predictor::format::KVDBRes; +int global_key = 0; +int create_req(Request& req) { // NOLINT + KVDBReq* key = req.mutable_reqs()->Add(); + key->set_op("SET"); + key->set_key(std::to_string(global_key)); + key->set_value(std::to_string(global_key * 1)); + + key = req.mutable_reqs()->Add(); + key->set_op("GET"); + key->set_key(std::to_string(global_key)); + global_key++; + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + LOG(INFO) << "Receive Response size: " << res.ress_size(); + for (size_t i = 0; i < res.ress_size(); i++) { + KVDBRes val = res.ress(i); + LOG(INFO) << "Receive value from demo-server: " << val.value(); + } + LOG(INFO) << "Succ call predictor[echo_kvdb_service], the tag is: " + << route_tag << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + while (true) { + if (global_key > 10000) { + break; + } + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("echo_kvdb_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: echo_kvdb_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/general_model.cpp b/examples/demo-client/src/general_model.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c281c54f96eb7c92f2a221ad33b8840a210d9cac --- /dev/null +++ b/examples/demo-client/src/general_model.cpp @@ -0,0 +1,168 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include "general_model.h" +#include "sdk-cpp/builtin_format.pb.h" +#include "sdk-cpp/include/common.h" +#include "sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::predictor::general_model::Request; +using baidu::paddle_serving::predictor::general_model::Response; +using baidu::paddle_serving::predictor::general_model::Tensor; +using baidu::paddle_serving::predictor::general_model::FeedInst; +using baidu::paddle_serving::predictor::general_model::FetchInst; + +namespace baidu { +namespace paddle_serving { +namespace general_model { + +void PredictorClient::init(const std::string & conf_file) { + _conf_file = conf_file; + std::ifstream fin(conf_file); + if (!fin) { + LOG(ERROR) << "Your inference conf file can not be found"; + exit(-1); + } + _feed_name_to_idx.clear(); + _fetch_name_to_idx.clear(); + _shape.clear(); + int feed_var_num = 0; + int fetch_var_num = 0; + fin >> feed_var_num >> fetch_var_num; + std::string name; + std::string fetch_var_name; + int shape_num = 0; + int dim = 0; + for (int i = 0; i < feed_var_num; ++i) { + fin >> name; + _feed_name_to_idx[name] = i; + fin >> shape_num; + std::vector tmp_feed_shape; + for (int j = 0; j < shape_num; ++j) { + fin >> dim; + tmp_feed_shape.push_back(dim); + } + _shape.push_back(tmp_feed_shape); + } + + for (int i = 0; i < fetch_var_num; ++i) { + fin >> name; + fin >> fetch_var_name; + _fetch_name_to_idx[name] = i; + _fetch_name_to_var_name[name] = fetch_var_name; + } +} + +void PredictorClient::set_predictor_conf( + const std::string & conf_path, + const std::string & conf_file) { + _predictor_path = conf_path; + _predictor_conf = conf_file; +} + +int PredictorClient::create_predictor() { + if (_api.create(_predictor_path.c_str(), _predictor_conf.c_str()) != 0) { + LOG(ERROR) << "Predictor Creation Failed"; + return -1; + } + _api.thrd_initialize(); +} + +void PredictorClient::predict( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name, + FetchedMap * fetch_result) { + + _api.thrd_clear(); + _predictor = _api.fetch_predictor("general_model"); + Request req; + std::vector tensor_vec; + FeedInst * inst = req.add_insts(); + for (auto & name : float_feed_name) { + tensor_vec.push_back(inst->add_tensor_array()); + } + + for (auto & name : int_feed_name) { + tensor_vec.push_back(inst->add_tensor_array()); + } + + int vec_idx = 0; + for (auto & name : float_feed_name) { + int idx = _feed_name_to_idx[name]; + Tensor * tensor = tensor_vec[idx]; + for (int j = 0; j < _shape[idx].size(); ++j) { + tensor->add_shape(_shape[idx][j]); + } + tensor->set_elem_type(1); + for (int j = 0; j < float_feed[vec_idx].size(); ++j) { + tensor->add_data( + (char *)(&(float_feed[vec_idx][j])), sizeof(float)); + } + vec_idx++; + } + + vec_idx = 0; + for (auto & name : int_feed_name) { + int idx = _feed_name_to_idx[name]; + Tensor * tensor = tensor_vec[idx]; + for (int j = 0; j < _shape[idx].size(); ++j) { + tensor->add_shape(_shape[idx][j]); + } + tensor->set_elem_type(0); + for (int j = 0; j < int_feed[vec_idx].size(); ++j) { + tensor->add_data( + (char *)(&(int_feed[vec_idx][j])), sizeof(int64_t)); + } + vec_idx++; + } + + // std::map > result; + Response res; + + res.Clear(); + if (_predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req: " << req.ShortDebugString(); + exit(-1); + } else { + for (auto & name : fetch_name) { + int idx = _fetch_name_to_idx[name]; + int len = res.insts(0).tensor_array(idx).data_size(); + (*fetch_result)[name].resize(len); + for (int i = 0; i < len; ++i) { + (*fetch_result)[name][i] = *(const float *) + res.insts(0).tensor_array(idx).data(i).c_str(); + } + } + } + + return; +} + +void PredictorClient::predict_with_profile( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name, + FetchedMap * fetch_result) { + return; +} + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-client/src/general_model.h b/examples/demo-client/src/general_model.h new file mode 100644 index 0000000000000000000000000000000000000000..91084a61a95b678d45a9b40d9a4566031bd37260 --- /dev/null +++ b/examples/demo-client/src/general_model.h @@ -0,0 +1,84 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. +#pragma once + +#include +#include +#include + +#include +#include +#include +#include + +#include "sdk-cpp/builtin_format.pb.h" +#include "sdk-cpp/general_model_service.pb.h" +#include "sdk-cpp/include/common.h" +#include "sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; + +// given some input data, pack into pb, and send request +namespace baidu { +namespace paddle_serving { +namespace general_model { + +typedef std::map> FetchedMap; + + +class PredictorClient { + public: + PredictorClient() {} + ~PredictorClient() {} + + void init(const std::string & client_conf); + void set_predictor_conf( + const std::string& conf_path, + const std::string& conf_file); + int create_predictor(); + + void predict( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name, + FetchedMap * result_map); + + void predict_with_profile( + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name, + FetchedMap * result_map); + + private: + PredictorApi _api; + Predictor * _predictor; + std::string _predictor_conf; + std::string _predictor_path; + std::string _conf_file; + std::map _feed_name_to_idx; + std::map _fetch_name_to_idx; + std::map _fetch_name_to_var_name; + std::vector > _shape; +}; + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/general_model_main.cpp b/examples/demo-client/src/general_model_main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..8bf2e1793c3ac77ddff1fce5de1630b78be88318 --- /dev/null +++ b/examples/demo-client/src/general_model_main.cpp @@ -0,0 +1,71 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#include "general_model.h" + +using namespace std; + +using baidu::paddle_serving::general_model::PredictorClient; +using baidu::paddle_serving::general_model::FetchedMap; + +int main(int argc, char * argv[]) { + PredictorClient * client = new PredictorClient(); + client->init("inference.conf"); + client->set_predictor_conf("./", "predictor.conf"); + client->create_predictor(); + std::vector > float_feed; + std::vector > int_feed; + std::vector float_feed_name; + std::vector int_feed_name = {"words", "label"}; + std::vector fetch_name = {"cost", "acc", "prediction"}; + + std::string line; + int64_t text_id = 0; + int64_t label = 0; + int text_id_num = 0; + int label_num = 0; + int line_num = 0; + while (cin >> text_id_num) { + int_feed.clear(); + float_feed.clear(); + std::vector ids; + ids.reserve(text_id_num); + for (int i = 0; i < text_id_num; ++i) { + cin >> text_id; + ids.push_back(text_id); + } + int_feed.push_back(ids); + cin >> label_num; + cin >> label; + int_feed.push_back({label}); + + + FetchedMap result; + + client->predict( + float_feed, float_feed_name, + int_feed, int_feed_name, fetch_name, + &result); + + cout << label << "\t" << result["prediction"][1] << endl; + + line_num++; + if (line_num % 100 == 0) { + cerr << "line num: " << line_num << endl; + } + } +} diff --git a/examples/demo-client/src/int64tensor_format.cpp b/examples/demo-client/src/int64tensor_format.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ee0df1ec43391077bb39bc6293608d2e3973eea0 --- /dev/null +++ b/examples/demo-client/src/int64tensor_format.cpp @@ -0,0 +1,168 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +#include "core/sdk-cpp/int64tensor_service.pb.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::int64tensor_service::Request; +using baidu::paddle_serving::predictor::int64tensor_service::Response; +using baidu::paddle_serving::predictor::format::Float32TensorPredictor; +using baidu::paddle_serving::predictor::format::Int64TensorInstance; + +int create_req(Request& req) { // NOLINT + Int64TensorInstance* ins = req.mutable_instances()->Add(); + ins->add_data(1); + ins->add_data(2); + ins->add_data(3); + ins->add_data(4); + ins->add_shape(2); + ins->add_shape(2); + + ins = req.mutable_instances()->Add(); + ins->add_data(5); + ins->add_data(6); + ins->add_data(7); + ins->add_data(8); + ins->add_data(9); + ins->add_shape(5); + ins->add_shape(1); + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + for (uint32_t i = 0; i < res.predictions_size(); ++i) { + const Float32TensorPredictor& prediction = res.predictions(i); + std::ostringstream oss1; + for (uint32_t j = 0; j < prediction.data_size(); ++j) { + oss1 << prediction.data(j) << " "; + } + + std::ostringstream oss2; + for (uint32_t j = 0; j < prediction.shape_size(); ++j) { + oss2 << prediction.shape(j) << " "; + } + LOG(INFO) << "Receive result " << oss1.str() << ", shape " << oss2.str(); + } + + LOG(INFO) << "Succ call predictor[int64tensor_format], the tag is: " + << route_tag << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + while (true) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("int64tensor_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: int64tensor_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/load_general_model.cpp b/examples/demo-client/src/load_general_model.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c7d4ab193d825889e96773a026876aa4d4bb7742 --- /dev/null +++ b/examples/demo-client/src/load_general_model.cpp @@ -0,0 +1,140 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/load_general_model_service.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor:: +load_general_model_service::RequestAndResponse; + +int create_req(RequestAndResponse& req) { // NOLINT + req.set_a(1); + req.set_b(0.1); + return 0; +} + +void print_res(const RequestAndResponse& req, + const RequestAndResponse& res, + std::string route_tag, + uint64_t elapse_ms) { + LOG(INFO) << "Reqeive result: a = " << res.a() << ", b = " << res.b(); + + LOG(INFO) << "Succ call predictor[echo_service], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + RequestAndResponse req; + RequestAndResponse res; + + api.thrd_initialize(); + + while (true) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("load_general_model_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: load_general_model_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/pybind_general_model.cpp b/examples/demo-client/src/pybind_general_model.cpp new file mode 100644 index 0000000000000000000000000000000000000000..0ce939ebe0547089773ccdacaa707c1df048ffe5 --- /dev/null +++ b/examples/demo-client/src/pybind_general_model.cpp @@ -0,0 +1,48 @@ +#include +#include "general_model.h" + +#include + +namespace py = pybind11; + +using baidu::paddle_serving::general_model::FetchedMap; + +namespace baidu { +namespace paddle_serving { +namespace general_model { + +PYBIND11_MODULE(paddle_serving_client, m) { + m.doc() = R"pddoc(this is a practice + )pddoc"; + py::class_(m, "PredictorClient", py::buffer_protocol()) + .def(py::init()) + .def("init", + [](PredictorClient &self, const std::string & conf) { + self.init(conf); + }) + .def("set_predictor_conf", + [](PredictorClient &self, const std::string & conf_path, + const std::string & conf_file) { + self.set_predictor_conf(conf_path, conf_file); + }) + .def("create_predictor", + [](PredictorClient & self) { + self.create_predictor(); + }) + .def("predict", + [](PredictorClient &self, + const std::vector > & float_feed, + const std::vector & float_feed_name, + const std::vector > & int_feed, + const std::vector & int_feed_name, + const std::vector & fetch_name, + FetchedMap * fetch_result) { + return self.predict(float_feed, float_feed_name, + int_feed, int_feed_name, fetch_name, + fetch_result); + }); +} + +} // namespace general_model +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-client/src/sparse_format.cpp b/examples/demo-client/src/sparse_format.cpp new file mode 100644 index 0000000000000000000000000000000000000000..1e8842317e4ade2f029abc9aa47fac97d436e48c --- /dev/null +++ b/examples/demo-client/src/sparse_format.cpp @@ -0,0 +1,166 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +#include "core/sdk-cpp/sparse_service.pb.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::sparse_service::Request; +using baidu::paddle_serving::predictor::sparse_service::Response; +using baidu::paddle_serving::predictor::format::SparsePrediction; +using baidu::paddle_serving::predictor::format::SparseInstance; + +int create_req(Request& req) { // NOLINT + SparseInstance* ins = req.mutable_instances()->Add(); + ins->add_keys(26); + ins->add_keys(182); + ins->add_keys(232); + ins->add_shape(2000); + ins->add_values(1); + ins->add_values(1); + ins->add_values(1); + + ins = req.mutable_instances()->Add(); + ins->add_keys(0); + ins->add_keys(182); + ins->add_keys(232); + ins->add_keys(299); + ins->add_shape(2000); + ins->add_values(13); + ins->add_values(1); + ins->add_values(1); + ins->add_values(1); + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + for (uint32_t i = 0; i < res.predictions_size(); ++i) { + const SparsePrediction& prediction = res.predictions(i); + std::ostringstream oss; + for (uint32_t j = 0; j < prediction.categories_size(); ++j) { + oss << prediction.categories(j) << " "; + } + LOG(INFO) << "Receive result " << oss.str(); + } + + LOG(INFO) << "Succ call predictor[sparse_format], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + while (true) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("sparse_service"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: sparse_service"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + usleep(50); + } // while (true) + + api.thrd_finalize(); + api.destroy(); + +#ifndef BCLOUD + google::ShutdownGoogleLogging(); +#endif + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/text_classification.cpp b/examples/demo-client/src/text_classification.cpp new file mode 100644 index 0000000000000000000000000000000000000000..311e0e5303417795bb87f330832a87a67ae08035 --- /dev/null +++ b/examples/demo-client/src/text_classification.cpp @@ -0,0 +1,288 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +#include "core/sdk-cpp/text_classification.pb.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::text_classification::TextReqInstance; +using baidu::paddle_serving::predictor::text_classification::TextResInstance; +using baidu::paddle_serving::predictor::text_classification::Request; +using baidu::paddle_serving::predictor::text_classification::Response; + +const char *g_test_file = "./data/text_classification/test_set.txt"; +DEFINE_int32(batch_size, 50, "Set the batch size of test file."); + +// Text Classification Data Feed +// +// Input format: +// ([termid list], truth_label) +// Where 'termid list' is a variant length id list, `truth label` is a single +// number (0 or 1) +// +const int MAX_LINE_SIZE = 1024 * 1024; +std::vector g_pred_labels; +const float g_decision_boundary = 0.500; + +class DataFeed { + public: + virtual ~DataFeed() {} + virtual void init(); + virtual bool set_file(const char *filename); + std::vector> &get_test_input() { return _test_input; } + std::vector &get_labels() { return _test_label; } + uint32_t sample_id() { return _current_sample_id; } + void set_sample_id(uint32_t sample_id) { _current_sample_id = sample_id; } + + private: + std::vector> _test_input; + std::vector _test_label; + uint32_t _current_sample_id; + int _batch_size; + std::shared_ptr _batch_id_buffer; + std::shared_ptr _label_buffer; +}; + +void DataFeed::init() { + _batch_id_buffer.reset(new int[10240 * 1024], [](int *p) { delete[] p; }); + _label_buffer.reset(new int[10240 * 1024], [](int *p) { delete[] p; }); +} + +bool DataFeed::set_file(const char *filename) { + std::ifstream ifs(filename); + char *line = new char[MAX_LINE_SIZE]; + int len = 0; + char *sequence_begin_ptr = NULL; + char *sequence_end_ptr = NULL; + char *id_begin_ptr = NULL; + char *id_end_ptr = NULL; + char *label_ptr = NULL; + int label = -1; + int id = -1; + while (!ifs.eof()) { + std::vector vec; + ifs.getline(line, MAX_LINE_SIZE); + len = strlen(line); + if (line[0] != '(' || line[len - 1] != ')') { + continue; + } + line[len - 1] = '\0'; + + sequence_begin_ptr = strchr(line, '(') + 1; + if (*sequence_begin_ptr != '[') { + continue; + } + + sequence_end_ptr = strchr(sequence_begin_ptr, ']'); + if (sequence_end_ptr == NULL) { + continue; + } + *sequence_end_ptr = '\0'; + + id_begin_ptr = sequence_begin_ptr; + while (id_begin_ptr != NULL) { + id_begin_ptr++; + id_end_ptr = strchr(id_begin_ptr, ','); + if (id_end_ptr != NULL) { + *id_end_ptr = '\0'; + } + id = atoi(id_begin_ptr); + id_begin_ptr = id_end_ptr; + vec.push_back(id); + } + + label_ptr = strchr(sequence_end_ptr + 1, ','); + if (label_ptr == NULL) { + continue; + } + *label_ptr = '\0'; + + label_ptr++; + label = atoi(label_ptr); + + _test_input.push_back(vec); + _test_label.push_back(label); + } + + ifs.close(); + + std::cout << "read record" << _test_input.size() << std::endl; + + return 0; +} + +int create_req(std::shared_ptr data_feed, Request &req) { // NOLINT + std::vector> &inputs = data_feed->get_test_input(); + uint32_t current_sample_id = data_feed->sample_id(); + int idx = 0; + + for (idx = 0; + idx < FLAGS_batch_size && current_sample_id + idx < inputs.size(); + ++idx) { + TextReqInstance *req_instance = req.add_instances(); + std::vector &sample = inputs.at(current_sample_id + idx); + for (auto x : sample) { + req_instance->add_ids(x); + } + } + + if (idx < FLAGS_batch_size) { + return -1; + } + + data_feed->set_sample_id(current_sample_id + FLAGS_batch_size); + return 0; +} + +void extract_res(const Request &req, const Response &res) { + uint32_t sample_size = res.predictions_size(); + std::string err_string; + for (uint32_t si = 0; si < sample_size; ++si) { + const TextResInstance &res_instance = res.predictions(si); + + if (res_instance.class_1_prob() < g_decision_boundary) { + g_pred_labels.push_back(0); + } else if (res_instance.class_1_prob() >= g_decision_boundary) { + g_pred_labels.push_back(1); + } + } +} + +int main(int argc, char **argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + + g_pred_labels.clear(); + + std::shared_ptr local_feed(new DataFeed()); + local_feed->init(); + local_feed->set_file(g_test_file); + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + uint64_t elapse_ms = 0; + int batch_count = 0; + while (true) { + api.thrd_clear(); + + Predictor *predictor = api.fetch_predictor("text_classification"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: text_classification"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(local_feed, req) != 0) { + break; + } + + ++batch_count; + + timeval start; + gettimeofday(&start, NULL); + + if (predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + timeval end; + gettimeofday(&end, NULL); + + elapse_ms += (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + +#if 1 + LOG(INFO) << "single round elapse time " + << (end.tv_sec * 1000000 + end.tv_usec) - + (start.tv_sec * 1000000 + start.tv_usec); +#endif + extract_res(req, res); + res.Clear(); + } // while (true) + + int correct = 0; + std::vector &truth_label = local_feed->get_labels(); + for (int i = 0; i < g_pred_labels.size(); ++i) { + if (g_pred_labels[i] == truth_label[i]) { + ++correct; + } + } + + LOG(INFO) << "Elapse ms " << elapse_ms; + LOG(INFO) << "Exe ms per batch " << elapse_ms / batch_count; + double qps = (static_cast(g_pred_labels.size()) / elapse_ms) * 1000; + + LOG(INFO) << "QPS: " << qps / FLAGS_batch_size << "/s"; + LOG(INFO) << "Accuracy " + << static_cast(correct) / g_pred_labels.size(); + + LOG(INFO) << "correct " << correct; + LOG(INFO) << "g_pred_labels " << g_pred_labels.size(); + api.thrd_finalize(); + api.destroy(); + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/text_classification_press.cpp b/examples/demo-client/src/text_classification_press.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f3f02d477abffde8b7c703b639baf03ace1be8bd --- /dev/null +++ b/examples/demo-client/src/text_classification_press.cpp @@ -0,0 +1,369 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include +#include // NOLINT +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" +#include "core/sdk-cpp/text_classification.pb.h" + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::text_classification::TextReqInstance; +using baidu::paddle_serving::predictor::text_classification::TextResInstance; +using baidu::paddle_serving::predictor::text_classification::Request; +using baidu::paddle_serving::predictor::text_classification::Response; + +const char *g_test_file = "./data/text_classification/test_set.txt"; +DEFINE_int32(batch_size, 50, "Set the batch size of test file."); +DEFINE_int32(concurrency, 1, "Set the max concurrent number of requests"); + +std::vector> g_test_input; +std::vector g_test_label; +std::vector g_correct; +std::vector> g_round_time; + +std::atomic g_concurrency(0); + +// Text Classification Data Feed +// +// Input format: +// ([termid list], truth_label) +// Where 'termid list' is a variant length id list, `truth label` is a single +// number (0 or 1) +// +const int MAX_LINE_SIZE = 1024 * 1024; +std::vector> g_pred_labels; +const float g_decision_boundary = 0.500; + +class DataFeed { + public: + virtual ~DataFeed() {} + virtual void init(std::vector> *test_input, + std::vector *test_label); + std::vector> *get_test_input() { return _test_input; } + std::vector *get_labels() { return _test_label; } + uint32_t sample_id() { return _current_sample_id; } + void set_sample_id(uint32_t sample_id) { _current_sample_id = sample_id; } + + private: + std::vector> *_test_input; + std::vector *_test_label; + uint32_t _current_sample_id; + int _batch_size; +}; + +void DataFeed::init(std::vector> *test_input, + std::vector *test_label) { + _test_input = test_input; + _test_label = test_label; +} + +bool set_file(const char *filename) { + std::ifstream ifs(filename); + char *line = new char[MAX_LINE_SIZE]; + int len = 0; + char *sequence_begin_ptr = NULL; + char *sequence_end_ptr = NULL; + char *id_begin_ptr = NULL; + char *id_end_ptr = NULL; + char *label_ptr = NULL; + int label = -1; + int id = -1; + while (!ifs.eof()) { + std::vector vec; + ifs.getline(line, MAX_LINE_SIZE); + len = strlen(line); + if (line[0] != '(' || line[len - 1] != ')') { + continue; + } + line[len - 1] = '\0'; + + sequence_begin_ptr = strchr(line, '(') + 1; + if (*sequence_begin_ptr != '[') { + continue; + } + + sequence_end_ptr = strchr(sequence_begin_ptr, ']'); + if (sequence_end_ptr == NULL) { + continue; + } + *sequence_end_ptr = '\0'; + + id_begin_ptr = sequence_begin_ptr; + while (id_begin_ptr != NULL) { + id_begin_ptr++; + id_end_ptr = strchr(id_begin_ptr, ','); + if (id_end_ptr != NULL) { + *id_end_ptr = '\0'; + } + id = atoi(id_begin_ptr); + id_begin_ptr = id_end_ptr; + vec.push_back(id); + } + + label_ptr = strchr(sequence_end_ptr + 1, ','); + if (label_ptr == NULL) { + continue; + } + *label_ptr = '\0'; + + label_ptr++; + label = atoi(label_ptr); + + g_test_input.push_back(vec); + g_test_label.push_back(label); + } + + ifs.close(); + + std::cout << "read record" << g_test_input.size() << std::endl; + + return 0; +} + +int create_req(std::shared_ptr data_feed, Request *req) { // NOLINT + std::vector> *inputs = data_feed->get_test_input(); + uint32_t current_sample_id = data_feed->sample_id(); + int idx = 0; + + for (idx = 0; + idx < FLAGS_batch_size && current_sample_id + idx < inputs->size(); + ++idx) { + TextReqInstance *req_instance = req->add_instances(); + std::vector &sample = inputs->at(current_sample_id + idx); + for (auto x : sample) { + req_instance->add_ids(x); + } + } + + if (idx < FLAGS_batch_size) { + return -1; + } + + data_feed->set_sample_id(current_sample_id + FLAGS_batch_size); + return 0; +} + +void extract_res(const Request &req, const Response &res, int thread_id) { + uint32_t sample_size = res.predictions_size(); + std::string err_string; + for (uint32_t si = 0; si < sample_size; ++si) { + const TextResInstance &res_instance = res.predictions(si); + + if (res_instance.class_1_prob() < g_decision_boundary) { + g_pred_labels[thread_id].push_back(0); + } else if (res_instance.class_1_prob() >= g_decision_boundary) { + g_pred_labels[thread_id].push_back(1); + } + } +} + +void thread_worker(PredictorApi *api, int thread_id) { + std::shared_ptr local_feed(new DataFeed()); + local_feed->init(&g_test_input, &g_test_label); + + Request req; + Response res; + + api->thrd_initialize(); + + while (true) { + api->thrd_clear(); + + req.Clear(); + res.Clear(); + + Predictor *predictor = api->fetch_predictor("text_classification"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: text_classification"; + return; + } + + if (create_req(local_feed, &req) != 0) { + break; + } + + while (g_concurrency.load() >= FLAGS_concurrency) { + } + g_concurrency++; +#if 1 + LOG(INFO) << "Current concurrency " << g_concurrency.load(); +#endif + + timeval start; + timeval end; + + gettimeofday(&start, NULL); + if (predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return; + } + gettimeofday(&end, NULL); + + g_round_time[thread_id].push_back(end.tv_sec * 1000 + end.tv_usec / 1000 - + start.tv_sec * 1000 - + start.tv_usec / 1000); + + extract_res(req, res, thread_id); + + g_concurrency--; +#if 1 + LOG(INFO) << "Done. Current concurrency " << g_concurrency.load(); +#endif + } // while (true) + + std::vector *truth_label = local_feed->get_labels(); + for (int i = 0; i < g_pred_labels[thread_id].size(); ++i) { + if (g_pred_labels[thread_id][i] == truth_label->at(i)) { + ++g_correct[thread_id]; + } + } + + api->thrd_finalize(); +} + +int main(int argc, char **argv) { + google::ParseCommandLineFlags(&argc, &argv, true); + + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); + FLAGS_logbufsecs = 0; + FLAGS_logbuflevel = -1; +#endif + + g_pred_labels.resize(FLAGS_concurrency); + g_correct.resize(FLAGS_concurrency); + g_round_time.resize(FLAGS_concurrency); + + set_file(g_test_file); + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + uint64_t elapse_ms = 0; + + timeval start; + gettimeofday(&start, NULL); + + std::vector worker_threads; + int i = 0; + for (; i < FLAGS_concurrency; ++i) { + worker_threads.push_back(new std::thread(thread_worker, &api, i)); + } + + for (i = 0; i < FLAGS_concurrency; ++i) { + worker_threads[i]->join(); + delete worker_threads[i]; + } + + timeval end; + gettimeofday(&end, NULL); + + api.destroy(); + + elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + uint64_t count = 0; + uint64_t correct = 0; + + for (int i = 0; i < FLAGS_concurrency; ++i) { + count += g_pred_labels[i].size(); + correct += g_correct[i]; + } + + std::vector round_times; + for (auto x : g_round_time) { + round_times.insert(round_times.end(), x.begin(), x.end()); + } + + std::sort(round_times.begin(), round_times.end()); + + int percent_pos_50 = round_times.size() * 0.5; + int percent_pos_80 = round_times.size() * 0.8; + int percent_pos_90 = round_times.size() * 0.9; + int percent_pos_99 = round_times.size() * 0.99; + int percent_pos_999 = round_times.size() * 0.999; + + uint64_t total_ms = 0; + for (auto x : round_times) { + total_ms += x; + } + + LOG(INFO) << "Total requests: " << round_times.size(); + LOG(INFO) << "Max concurrency: " << FLAGS_concurrency; + LOG(INFO) << "Total ms (absolute time): " << total_ms / FLAGS_concurrency; + + double qps = 0.0; + if (elapse_ms != 0) { + qps = (static_cast(count) / (total_ms / FLAGS_concurrency)) * 1000; + } + + LOG(INFO) << "QPS: " << qps / FLAGS_batch_size << "/s"; + LOG(INFO) << "Accuracy " << static_cast(correct) / count; + + LOG(INFO) << "Latency statistics: "; + if (round_times.size() != 0) { + LOG(INFO) << "Average ms: " + << static_cast(total_ms) / round_times.size(); + LOG(INFO) << "50 percent ms: " << round_times[percent_pos_50]; + LOG(INFO) << "80 percent ms: " << round_times[percent_pos_80]; + LOG(INFO) << "90 percent ms: " << round_times[percent_pos_90]; + LOG(INFO) << "99 percent ms: " << round_times[percent_pos_99]; + LOG(INFO) << "99.9 percent ms: " << round_times[percent_pos_999]; + } else { + LOG(INFO) << "N/A"; + } + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/ximage.cpp b/examples/demo-client/src/ximage.cpp new file mode 100644 index 0000000000000000000000000000000000000000..492c483f8fb879edcdb9235b404fe330c7e613cf --- /dev/null +++ b/examples/demo-client/src/ximage.cpp @@ -0,0 +1,213 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/image_class.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +#ifndef BCLOUD +using json2pb::JsonToProtoMessage; +#endif + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::format::XImageReqInstance; +using baidu::paddle_serving::predictor::format::DensePrediction; +using baidu::paddle_serving::predictor::image_classification::Request; +using baidu::paddle_serving::predictor::image_classification::Response; + +int create_req(Request& req) { // NOLINT + static const char* TEST_IMAGE_PATH = "./data/images/what.jpg"; + + FILE* fp = fopen(TEST_IMAGE_PATH, "rb"); + if (!fp) { + LOG(ERROR) << "Failed open image: " << TEST_IMAGE_PATH; + return -1; + } + + fseek(fp, 0L, SEEK_END); + size_t isize = ftell(fp); + char* ibuf = new (std::nothrow) char[isize]; + if (!ibuf) { + LOG(ERROR) << "Failed malloc image buffer"; + fclose(fp); + return -1; + } + + fseek(fp, 0, SEEK_SET); + fread(ibuf, sizeof(ibuf[0]), isize, fp); + XImageReqInstance* ins = req.add_instances(); + if (!ins) { + LOG(ERROR) << "Failed create req instance"; + delete[] ibuf; + fclose(fp); + return -1; + } + + ins->set_image_binary(ibuf, isize); + ins->set_image_length(isize); + + delete[] ibuf; + fclose(fp); + + return 0; +} + +void print_res(const Request& req, + const Response& res, + std::string route_tag, + uint64_t elapse_ms) { + static const char* GT_TEXT_PATH = "./data/images/groundtruth.txt"; + std::vector gt_labels; + + std::ifstream file(GT_TEXT_PATH); + std::string temp_str; + while (std::getline(file, temp_str)) { + gt_labels.push_back(temp_str); + } + + DensePrediction json_msg; + uint32_t sample_size = res.predictions_size(); + std::string err_string; + for (uint32_t si = 0; si < sample_size; ++si) { + std::string json = res.predictions(si).response_json(); + butil::IOBuf buf; + buf.append(json); + butil::IOBufAsZeroCopyInputStream wrapper(buf); + if (!JsonToProtoMessage(&wrapper, &json_msg, &err_string)) { + LOG(ERROR) << "Failed parse json from str:" << json; + return; + } + + uint32_t csize = json_msg.categories_size(); + if (csize <= 0) { + LOG(ERROR) << "sample-" << si << "has no" + << "categories props"; + continue; + } + float max_prop = json_msg.categories(0); + uint32_t max_idx = 0; + for (uint32_t ci = 1; ci < csize; ++ci) { + if (json_msg.categories(ci) > max_prop) { + max_prop = json_msg.categories(ci); + max_idx = ci; + } + } + + LOG(INFO) << "sample-" << si << "'s classify result: " << gt_labels[max_idx] + << ", prop: " << max_prop; + } + + LOG(INFO) << "Succ call predictor[ximage], the tag is: " << route_tag + << ", elapse_ms: " << elapse_ms; +} + +int main(int argc, char** argv) { + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + Request req; + Response res; + + api.thrd_initialize(); + + int count = 0; + while (count < 10) { + timeval start; + gettimeofday(&start, NULL); + + api.thrd_clear(); + + Predictor* predictor = api.fetch_predictor("ximage"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: ximage"; + return -1; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return -1; + } + + butil::IOBufBuilder debug_os; + if (predictor->debug(&req, &res, &debug_os) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return -1; + } + + butil::IOBuf debug_buf; + debug_os.move_to(debug_buf); + LOG(INFO) << "Debug string: " << debug_buf; + + timeval end; + gettimeofday(&end, NULL); + + uint64_t elapse_ms = (end.tv_sec * 1000 + end.tv_usec / 1000) - + (start.tv_sec * 1000 + start.tv_usec / 1000); + + print_res(req, res, predictor->tag(), elapse_ms); + res.Clear(); + + ++count; + } // while (true) + + api.thrd_finalize(); + api.destroy(); + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-client/src/ximage_press.cpp b/examples/demo-client/src/ximage_press.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fe960318cd958f648837899d3bd1c5ba0de4b125 --- /dev/null +++ b/examples/demo-client/src/ximage_press.cpp @@ -0,0 +1,300 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include +#include + +#include +#include // NOLINT +#include "core/sdk-cpp/builtin_format.pb.h" +#include "core/sdk-cpp/image_class.pb.h" +#include "core/sdk-cpp/include/common.h" +#include "core/sdk-cpp/include/predictor_sdk.h" + +#ifndef BCLOUD +using json2pb::JsonToProtoMessage; +#endif + +using baidu::paddle_serving::sdk_cpp::Predictor; +using baidu::paddle_serving::sdk_cpp::PredictorApi; +using baidu::paddle_serving::predictor::format::XImageReqInstance; +using baidu::paddle_serving::predictor::format::DensePrediction; +using baidu::paddle_serving::predictor::image_classification::Request; +using baidu::paddle_serving::predictor::image_classification::Response; + +DEFINE_int32(concurrency, 1, "Set the max concurrent number of requests"); +DEFINE_int32(requests, 100, "Number of requests to send per thread"); +DEFINE_int32(batch_size, 1, "Batch size"); + +std::atomic g_concurrency(0); + +std::vector> g_round_time; +std::vector g_image_data; +std::vector g_image_lengths; + +const std::vector g_image_paths{ + "./data/images/ILSVRC2012_val_00000001.jpeg", + "./data/images/ILSVRC2012_val_00000002.jpeg", + "./data/images/ILSVRC2012_val_00000003.jpeg", + "./data/images/ILSVRC2012_val_00000004.jpeg", + "./data/images/ILSVRC2012_val_00000005.jpeg", + "./data/images/ILSVRC2012_val_00000006.jpeg", + "./data/images/ILSVRC2012_val_00000007.jpeg", + "./data/images/ILSVRC2012_val_00000008.jpeg", + "./data/images/ILSVRC2012_val_00000009.jpeg", + "./data/images/ILSVRC2012_val_00000010.jpeg"}; + +int prepare_data() { + for (auto x : g_image_paths) { + FILE* fp = fopen(x.c_str(), "rb"); + if (!fp) { + LOG(ERROR) << "Failed open image: " << x.c_str(); + continue; + } + + fseek(fp, 0L, SEEK_END); + size_t isize = ftell(fp); + char* ibuf = new (std::nothrow) char[isize]; + if (!ibuf) { + LOG(ERROR) << "Failed malloc image buffer"; + fclose(fp); + return -1; + } + + fseek(fp, 0, SEEK_SET); + fread(ibuf, sizeof(ibuf[0]), isize, fp); + g_image_data.push_back(ibuf); + g_image_lengths.push_back(isize); + + fclose(fp); + } + + return 0; +} + +int create_req(Request& req) { // NOLINT + for (int i = 0; i < FLAGS_batch_size; ++i) { + XImageReqInstance* ins = req.add_instances(); + if (!ins) { + LOG(ERROR) << "Failed create req instance"; + return -1; + } + + int id = i % g_image_data.size(); + ins->set_image_binary(g_image_data[id], g_image_lengths[id]); + ins->set_image_length(g_image_lengths[id]); + } + + return 0; +} + +void extract_res(const Request& req, const Response& res) { + uint32_t sample_size = res.predictions_size(); + std::string err_string; + for (uint32_t si = 0; si < sample_size; ++si) { + DensePrediction json_msg; + std::string json = res.predictions(si).response_json(); + butil::IOBuf buf; + buf.clear(); + buf.append(json); + butil::IOBufAsZeroCopyInputStream wrapper(buf); + if (!JsonToProtoMessage(&wrapper, &json_msg, &err_string)) { + LOG(ERROR) << "Failed parse json from str:" << json; + return; + } + + uint32_t csize = json_msg.categories_size(); + if (csize <= 0) { + LOG(ERROR) << "sample-" << si << "has no" + << "categories props"; + continue; + } + float max_prop = json_msg.categories(0); + uint32_t max_idx = 0; + for (uint32_t ci = 1; ci < csize; ++ci) { + if (json_msg.categories(ci) > max_prop) { + max_prop = json_msg.categories(ci); + max_idx = ci; + } + } + + LOG(INFO) << "instance " << si << "has class " << max_idx; + } // end for +} + +void thread_worker(PredictorApi* api, int thread_id) { + Request req; + Response res; + + api->thrd_initialize(); + + for (int i = 0; i < FLAGS_requests; ++i) { + api->thrd_clear(); + + Predictor* predictor = api->fetch_predictor("ximage"); + if (!predictor) { + LOG(ERROR) << "Failed fetch predictor: ximage"; + return; + } + + req.Clear(); + res.Clear(); + + if (create_req(req) != 0) { + return; + } + + while (g_concurrency.load() >= FLAGS_concurrency) { + } + g_concurrency++; +#if 1 + LOG(INFO) << "Current concurrency " << g_concurrency.load(); +#endif + + timeval start; + timeval end; + + gettimeofday(&start, NULL); + if (predictor->inference(&req, &res) != 0) { + LOG(ERROR) << "failed call predictor with req:" << req.ShortDebugString(); + return; + } + gettimeofday(&end, NULL); + + g_round_time[thread_id].push_back(end.tv_sec * 1000 + end.tv_usec / 1000 - + start.tv_sec * 1000 - + start.tv_usec / 1000); + + extract_res(req, res); + res.Clear(); + + g_concurrency--; +#if 1 + LOG(INFO) << "Done. Currenct concurrency " << g_concurrency.load(); +#endif + } // for (int i = 0; i < FLAGS_requests; ++i) + + api->thrd_finalize(); +} + +int main(int argc, char** argv) { + google::ParseCommandLineFlags(&argc, &argv, true); + + PredictorApi api; + +// initialize logger instance +#ifdef BCLOUD + logging::LoggingSettings settings; + settings.logging_dest = logging::LOG_TO_FILE; + + std::string filename(argv[0]); + filename = filename.substr(filename.find_last_of('/') + 1); + settings.log_file = (std::string("./log/") + filename + ".log").c_str(); + settings.delete_old = logging::DELETE_OLD_LOG_FILE; + logging::InitLogging(settings); + + logging::ComlogSinkOptions cso; + cso.process_name = filename; + cso.enable_wf_device = true; + logging::ComlogSink::GetInstance()->Setup(&cso); +#else + struct stat st_buf; + int ret = 0; + if ((ret = stat("./log", &st_buf)) != 0) { + mkdir("./log", 0777); + ret = stat("./log", &st_buf); + if (ret != 0) { + LOG(WARNING) << "Log path ./log not exist, and create fail"; + return -1; + } + } + FLAGS_log_dir = "./log"; + google::InitGoogleLogging(strdup(argv[0])); +#endif + + g_round_time.resize(FLAGS_concurrency); + + if (api.create("./conf", "predictors.prototxt") != 0) { + LOG(ERROR) << "Failed create predictors api!"; + return -1; + } + + if (prepare_data() != 0) { + LOG(ERROR) << "Prepare data fail"; + return -1; + } + + std::vector worker_threads; + int i = 0; + for (; i < FLAGS_concurrency; ++i) { + worker_threads.push_back(new std::thread(thread_worker, &api, i)); + } + + for (i = 0; i < FLAGS_concurrency; ++i) { + worker_threads[i]->join(); + delete worker_threads[i]; + } + + api.destroy(); + + std::vector round_times; + for (auto x : g_round_time) { + round_times.insert(round_times.end(), x.begin(), x.end()); + } + + std::sort(round_times.begin(), round_times.end()); + + int percent_pos_50 = round_times.size() * 0.5; + int percent_pos_80 = round_times.size() * 0.8; + int percent_pos_90 = round_times.size() * 0.9; + int percent_pos_99 = round_times.size() * 0.99; + int percent_pos_999 = round_times.size() * 0.999; + + uint64_t total_ms = 0; + for (auto x : round_times) { + total_ms += x; + } + + LOG(INFO) << "Batch size: " << FLAGS_batch_size; + LOG(INFO) << "Total requests: " << round_times.size(); + LOG(INFO) << "Max concurrency: " << FLAGS_concurrency; + LOG(INFO) << "Total ms (absolute time): " << total_ms / FLAGS_concurrency; + + double qps = 0.0; + if (total_ms != 0) { + qps = (static_cast(FLAGS_concurrency * FLAGS_requests) / + (total_ms / FLAGS_concurrency)) * + 1000; + } + + LOG(INFO) << "QPS: " << qps << "/s"; + + LOG(INFO) << "Latency statistics: "; + if (round_times.size() != 0) { + LOG(INFO) << "Average ms: " + << static_cast(total_ms) / round_times.size(); + LOG(INFO) << "50 percent ms: " << round_times[percent_pos_50]; + LOG(INFO) << "80 percent ms: " << round_times[percent_pos_80]; + LOG(INFO) << "90 percent ms: " << round_times[percent_pos_90]; + LOG(INFO) << "99 percent ms: " << round_times[percent_pos_99]; + LOG(INFO) << "99.9 percent ms: " << round_times[percent_pos_999]; + } else { + LOG(INFO) << "N/A"; + } + + return 0; +} + +/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/examples/demo-serving/CMakeLists.txt b/examples/demo-serving/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cbde33eadcb7de92ebf6541c1ee7bab0f39aa8a6 --- /dev/null +++ b/examples/demo-serving/CMakeLists.txt @@ -0,0 +1,94 @@ +if (NOT EXISTS + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm) + execute_process(COMMAND wget + --no-check-certificate https://paddle-serving.bj.bcebos.com/data/text_classification/text_classification_lstm.tar.gz + --output-document + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm.tar.gz) + + execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf + "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/text_classification_lstm.tar.gz" + WORKING_DIRECTORY + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid + ) +endif() + +if (NOT EXISTS + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction) + execute_process(COMMAND wget --no-check-certificate + https://paddle-serving.bj.bcebos.com/data/ctr_prediction/ctr_prediction.tar.gz + --output-document + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction.tar.gz) + execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf + "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/ctr_prediction.tar.gz" + WORKING_DIRECTORY + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid) +endif() + +if (NOT EXISTS + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12) + execute_process(COMMAND wget --no-check-certificate + https://paddle-serving.bj.bcebos.com/data/bert/bert_cased_L-12_H-768_A-12.tar.gz + --output-document + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12.tar.gz) + execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf + "${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid/bert_cased_L-12_H-768_A-12.tar.gz" + WORKING_DIRECTORY + ${CMAKE_CURRENT_LIST_DIR}/data/model/paddle/fluid) +endif() + +include_directories(SYSTEM ${CMAKE_CURRENT_LIST_DIR}/../kvdb/include) + +include(op/CMakeLists.txt) +include(proto/CMakeLists.txt) +add_executable(serving ${serving_srcs}) +add_dependencies(serving pdcodegen fluid_cpu_engine pdserving paddle_fluid + opencv_imgcodecs cube-api) +if (WITH_GPU) + add_dependencies(serving fluid_gpu_engine) +endif() +target_include_directories(serving PUBLIC + ${CMAKE_CURRENT_BINARY_DIR}/../../core/predictor + ) + +if(WITH_GPU) + target_link_libraries(serving -Wl,--whole-archive fluid_gpu_engine + -Wl,--no-whole-archive) +endif() + +target_link_libraries(serving -Wl,--whole-archive fluid_cpu_engine + -Wl,--no-whole-archive) + +target_link_libraries(serving paddle_fluid ${paddle_depend_libs}) + +target_link_libraries(serving opencv_imgcodecs + ${opencv_depend_libs}) + +target_link_libraries(serving pdserving) +target_link_libraries(serving cube-api) + +target_link_libraries(serving kvdb rocksdb) + +if(WITH_GPU) + target_link_libraries(serving ${CUDA_LIBRARIES}) +endif() +target_link_libraries(serving -liomp5 -lmklml_intel -lmkldnn -lpthread + -lcrypto -lm -lrt -lssl -ldl -lz -lbz2) + +install(TARGETS serving + RUNTIME DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/bin) +install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/conf DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/) + +FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) +install(FILES ${inc} + DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/serving) + +if (${WITH_MKL}) + install(FILES + ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mklml/lib/libmklml_intel.so + ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mklml/lib/libiomp5.so + ${CMAKE_BINARY_DIR}/third_party/install/Paddle/third_party/install/mkldnn/lib/libmkldnn.so.0 + DESTINATION + ${PADDLE_SERVING_INSTALL_DIR}/demo/serving/bin) +endif() diff --git a/demo-serving/conf/cube.conf b/examples/demo-serving/conf/cube.conf similarity index 100% rename from demo-serving/conf/cube.conf rename to examples/demo-serving/conf/cube.conf diff --git a/examples/demo-serving/conf/general_model.prototxt b/examples/demo-serving/conf/general_model.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..cf076117f3fe43f58290379cc1b0139bca327a3b --- /dev/null +++ b/examples/demo-serving/conf/general_model.prototxt @@ -0,0 +1,20 @@ +is_lod_feed: true +is_lod_feed: false +is_lod_feed: true +feed_type: 1 +feed_type: 0 +feed_type: 1 + +feed_shape { + shape: -1 +} + +feed_shape { + shape: 1 + shape: 2 + shape: 3 +} + +feed_shape { + shape: -1 +} diff --git a/examples/demo-serving/conf/gflags.conf b/examples/demo-serving/conf/gflags.conf new file mode 100644 index 0000000000000000000000000000000000000000..8a835933c38732844fd5a179512cb5e630fd8fd1 --- /dev/null +++ b/examples/demo-serving/conf/gflags.conf @@ -0,0 +1,5 @@ +--enable_model_toolkit +--enable_cube=false +--enable_general_model=true +--general_model_path=./conf +--general_model_file=general_model.prototxt diff --git a/examples/demo-serving/conf/model_toolkit.prototxt b/examples/demo-serving/conf/model_toolkit.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..efe316e07d31455d0d0e9caf41f208acbd8bed9e --- /dev/null +++ b/examples/demo-serving/conf/model_toolkit.prototxt @@ -0,0 +1,60 @@ +engines { + name: "image_classification_resnet" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/SE_ResNeXt50_32x4d" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 + enable_memory_optimization: true + static_optimization: false + force_update_static_cache: false +} + +engines { + name: "general_model" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/text_classification" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 +} + +engines { + name: "text_classification_bow" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/text_classification_lstm" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 +} + +engines { + name: "ctr_prediction" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/ctr_prediction" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 + sparse_param_service_type: REMOTE + sparse_param_service_table_name: "test_dict" +} + +engines { + name: "bert" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/bert_cased_L-12_H-768_A-12" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 + enable_memory_optimization: true +} diff --git a/elastic-ctr/serving/conf/resource.prototxt b/examples/demo-serving/conf/resource.prototxt similarity index 100% rename from elastic-ctr/serving/conf/resource.prototxt rename to examples/demo-serving/conf/resource.prototxt diff --git a/examples/demo-serving/conf/service.prototxt b/examples/demo-serving/conf/service.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..3e18b65bf460cd42f4b92a3586ce1cc9152c1b3b --- /dev/null +++ b/examples/demo-serving/conf/service.prototxt @@ -0,0 +1,45 @@ +services { + name: "BuiltinDenseFormatService" + workflows: "workflow1" +} +services { + name: "BuiltinSparseFormatService" + workflows: "workflow2" +} + +services { + name: "BuiltinTestEchoService" + workflows: "workflow3" +} + +services { + name: "ImageClassifyService" + workflows: "workflow4" +} + +services { + name: "BuiltinFluidService" + workflows: "workflow5" +} +services { + name: "TextClassificationService" + workflows: "workflow6" +} + +services { + name: "EchoKVDBService" + workflows: "workflow7" +} + +services { + name: "CTRPredictionService" + workflows: "workflow8" +} +services { + name: "BertService" + workflows: "workflow9" +} +services { + name: "LoadGeneralModelService" + workflows: "workflow10" +} \ No newline at end of file diff --git a/examples/demo-serving/conf/workflow.prototxt b/examples/demo-serving/conf/workflow.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..3d4ca8e37a16e183ad40ffc51f0b6fc6470e34d5 --- /dev/null +++ b/examples/demo-serving/conf/workflow.prototxt @@ -0,0 +1,101 @@ +workflows { + name: "workflow1" + workflow_type: "Sequence" + nodes { + name: "dense_echo_op" + type: "DenseEchoOp" + } +} + +workflows { + name: "workflow2" + workflow_type: "Sequence" + nodes { + name: "sparse_echo_op" + type: "SparseEchoOp" + dependencies { + name: "startup_op" + mode: "RO" + } + } +} +workflows { + name: "workflow3" + workflow_type: "Sequence" + nodes { + name: "echo_op" + type: "CommonEchoOp" + } +} +workflows { + name: "workflow4" + workflow_type: "Sequence" + nodes { + name: "image_reader_op" + type: "ReaderOp" + } + nodes { + name: "image_classify_op" + type: "ClassifyOp" + dependencies { + name: "image_reader_op" + mode: "RO" + } + } + nodes { + name: "write_json_op" + type: "WriteJsonOp" + dependencies { + name: "image_classify_op" + mode: "RO" + } + } +} +workflows { + name: "workflow5" + workflow_type: "Sequence" + nodes { + name: "int64tensor_echo_op" + type: "Int64TensorEchoOp" + } +} +workflows { + name: "workflow6" + workflow_type: "Sequence" + nodes { + name: "text_classify_op" + type: "TextClassificationOp" + } +} +workflows { + name: "workflow7" + workflow_type: "Sequence" + nodes { + name: "echo_kvdb_service_op" + type: "KVDBEchoOp" + } +} +workflows { + name: "workflow8" + workflow_type: "Sequence" + nodes { + name: "ctr_prediction_service_op" + type: "CTRPredictionOp" + } +} +workflows { + name: "workflow9" + workflow_type: "Sequence" + nodes { + name: "bert_service_op" + type: "BertServiceOp" + } +} +workflows { + name: "workflow10" + workflow_type: "Sequence" + nodes { + name: "load_general_model_conf_op" + type: "LoadGeneralModelConfOp" + } +} diff --git a/elastic-ctr/serving/conf/cube.conf b/examples/demo-serving/general_model_conf/cube.conf similarity index 100% rename from elastic-ctr/serving/conf/cube.conf rename to examples/demo-serving/general_model_conf/cube.conf diff --git a/examples/demo-serving/general_model_conf/general_model.prototxt b/examples/demo-serving/general_model_conf/general_model.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..cf076117f3fe43f58290379cc1b0139bca327a3b --- /dev/null +++ b/examples/demo-serving/general_model_conf/general_model.prototxt @@ -0,0 +1,20 @@ +is_lod_feed: true +is_lod_feed: false +is_lod_feed: true +feed_type: 1 +feed_type: 0 +feed_type: 1 + +feed_shape { + shape: -1 +} + +feed_shape { + shape: 1 + shape: 2 + shape: 3 +} + +feed_shape { + shape: -1 +} diff --git a/examples/demo-serving/general_model_conf/gflags.conf b/examples/demo-serving/general_model_conf/gflags.conf new file mode 100644 index 0000000000000000000000000000000000000000..8a835933c38732844fd5a179512cb5e630fd8fd1 --- /dev/null +++ b/examples/demo-serving/general_model_conf/gflags.conf @@ -0,0 +1,5 @@ +--enable_model_toolkit +--enable_cube=false +--enable_general_model=true +--general_model_path=./conf +--general_model_file=general_model.prototxt diff --git a/examples/demo-serving/general_model_conf/model_toolkit.prototxt b/examples/demo-serving/general_model_conf/model_toolkit.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..48af30516de81337b8a28c321002293400511925 --- /dev/null +++ b/examples/demo-serving/general_model_conf/model_toolkit.prototxt @@ -0,0 +1,10 @@ +engines { + name: "general_model" + type: "FLUID_CPU_ANALYSIS_DIR" + reloadable_meta: "./data/model/paddle/fluid_time_file" + reloadable_type: "timestamp_ne" + model_data_path: "./data/model/paddle/fluid/text_classification" + runtime_thread_num: 0 + batch_infer_size: 0 + enable_batch_align: 0 +} diff --git a/examples/demo-serving/general_model_conf/resource.prototxt b/examples/demo-serving/general_model_conf/resource.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..dcf959ec9d56a82ebb699702d0dc960971fde67f --- /dev/null +++ b/examples/demo-serving/general_model_conf/resource.prototxt @@ -0,0 +1,2 @@ +model_toolkit_path: "./conf/" +model_toolkit_file: "model_toolkit.prototxt" diff --git a/examples/demo-serving/general_model_conf/service.prototxt b/examples/demo-serving/general_model_conf/service.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..30969b8c5677371a2633d3c1fd9707bff600b9df --- /dev/null +++ b/examples/demo-serving/general_model_conf/service.prototxt @@ -0,0 +1,5 @@ +port: 9292 +services { + name: "GeneralModelService" + workflows: "workflow1" +} \ No newline at end of file diff --git a/examples/demo-serving/general_model_conf/workflow.prototxt b/examples/demo-serving/general_model_conf/workflow.prototxt new file mode 100644 index 0000000000000000000000000000000000000000..c8fa63a5425fbceb8a36dca0ae6b2adf2cae32df --- /dev/null +++ b/examples/demo-serving/general_model_conf/workflow.prototxt @@ -0,0 +1,8 @@ +workflows { + name: "workflow1" + workflow_type: "Sequence" + nodes { + name: "general_model_op" + type: "GeneralModelOp" + } +} \ No newline at end of file diff --git a/elastic-ctr/serving/data/model/paddle/fluid/.gitignore b/examples/demo-serving/kvdb/000021.log similarity index 100% rename from elastic-ctr/serving/data/model/paddle/fluid/.gitignore rename to examples/demo-serving/kvdb/000021.log diff --git a/examples/demo-serving/kvdb/CURRENT b/examples/demo-serving/kvdb/CURRENT new file mode 100644 index 0000000000000000000000000000000000000000..f180e9117c6695b986c08f64219e5b1ea6be9bba --- /dev/null +++ b/examples/demo-serving/kvdb/CURRENT @@ -0,0 +1 @@ +MANIFEST-000020 diff --git a/examples/demo-serving/kvdb/IDENTITY b/examples/demo-serving/kvdb/IDENTITY new file mode 100644 index 0000000000000000000000000000000000000000..e0f8310f53c4f6300a51fceb0623d3cbff9eb80c --- /dev/null +++ b/examples/demo-serving/kvdb/IDENTITY @@ -0,0 +1 @@ +13d73780-de4f-4b8c-9040-34e5adc9f9ae diff --git a/examples/demo-serving/kvdb/LOCK b/examples/demo-serving/kvdb/LOCK new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/examples/demo-serving/kvdb/LOG b/examples/demo-serving/kvdb/LOG new file mode 100644 index 0000000000000000000000000000000000000000..1369fa6da779ae9e80f3218c43c9127b597f5b3a --- /dev/null +++ b/examples/demo-serving/kvdb/LOG @@ -0,0 +1,22098 @@ +2020/01/11-12:37:24.164200 7fccfaceb440 RocksDB version: 6.2.4 +2020/01/11-12:37:24.164240 7fccfaceb440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-12:37:24.164243 7fccfaceb440 Compile date Dec 23 2019 +2020/01/11-12:37:24.164247 7fccfaceb440 DB SUMMARY +2020/01/11-12:37:24.164278 7fccfaceb440 CURRENT file: CURRENT +2020/01/11-12:37:24.164279 7fccfaceb440 IDENTITY file: IDENTITY +2020/01/11-12:37:24.164283 7fccfaceb440 MANIFEST file: MANIFEST-000017 size: 59 Bytes +2020/01/11-12:37:24.164286 7fccfaceb440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-12:37:24.164288 7fccfaceb440 Write Ahead Log file in kvdb: 000018.log size: 0 ; +2020/01/11-12:37:24.164290 7fccfaceb440 Options.error_if_exists: 0 +2020/01/11-12:37:24.164291 7fccfaceb440 Options.create_if_missing: 1 +2020/01/11-12:37:24.164293 7fccfaceb440 Options.paranoid_checks: 1 +2020/01/11-12:37:24.164294 7fccfaceb440 Options.env: 0x1bed2ac0 +2020/01/11-12:37:24.164295 7fccfaceb440 Options.info_log: 0x1e9ce9c0 +2020/01/11-12:37:24.164296 7fccfaceb440 Options.max_file_opening_threads: 16 +2020/01/11-12:37:24.164298 7fccfaceb440 Options.statistics: (nil) +2020/01/11-12:37:24.164299 7fccfaceb440 Options.use_fsync: 0 +2020/01/11-12:37:24.164300 7fccfaceb440 Options.max_log_file_size: 0 +2020/01/11-12:37:24.164302 7fccfaceb440 Options.max_manifest_file_size: 1073741824 +2020/01/11-12:37:24.164303 7fccfaceb440 Options.log_file_time_to_roll: 0 +2020/01/11-12:37:24.164304 7fccfaceb440 Options.keep_log_file_num: 1000 +2020/01/11-12:37:24.164305 7fccfaceb440 Options.recycle_log_file_num: 0 +2020/01/11-12:37:24.164306 7fccfaceb440 Options.allow_fallocate: 1 +2020/01/11-12:37:24.164308 7fccfaceb440 Options.allow_mmap_reads: 0 +2020/01/11-12:37:24.164309 7fccfaceb440 Options.allow_mmap_writes: 0 +2020/01/11-12:37:24.164310 7fccfaceb440 Options.use_direct_reads: 0 +2020/01/11-12:37:24.164311 7fccfaceb440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-12:37:24.164312 7fccfaceb440 Options.create_missing_column_families: 0 +2020/01/11-12:37:24.164315 7fccfaceb440 Options.db_log_dir: +2020/01/11-12:37:24.164316 7fccfaceb440 Options.wal_dir: kvdb +2020/01/11-12:37:24.164317 7fccfaceb440 Options.table_cache_numshardbits: 6 +2020/01/11-12:37:24.164319 7fccfaceb440 Options.max_subcompactions: 1 +2020/01/11-12:37:24.164320 7fccfaceb440 Options.max_background_flushes: -1 +2020/01/11-12:37:24.164321 7fccfaceb440 Options.WAL_ttl_seconds: 0 +2020/01/11-12:37:24.164323 7fccfaceb440 Options.WAL_size_limit_MB: 0 +2020/01/11-12:37:24.164324 7fccfaceb440 Options.manifest_preallocation_size: 4194304 +2020/01/11-12:37:24.164325 7fccfaceb440 Options.is_fd_close_on_exec: 1 +2020/01/11-12:37:24.164326 7fccfaceb440 Options.advise_random_on_open: 1 +2020/01/11-12:37:24.164327 7fccfaceb440 Options.db_write_buffer_size: 0 +2020/01/11-12:37:24.164329 7fccfaceb440 Options.write_buffer_manager: 0x1e9b18e0 +2020/01/11-12:37:24.164330 7fccfaceb440 Options.access_hint_on_compaction_start: 1 +2020/01/11-12:37:24.164331 7fccfaceb440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-12:37:24.164332 7fccfaceb440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-12:37:24.164333 7fccfaceb440 Options.use_adaptive_mutex: 0 +2020/01/11-12:37:24.164334 7fccfaceb440 Options.rate_limiter: (nil) +2020/01/11-12:37:24.164336 7fccfaceb440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-12:37:24.164337 7fccfaceb440 Options.wal_recovery_mode: 2 +2020/01/11-12:37:24.164345 7fccfaceb440 Options.enable_thread_tracking: 0 +2020/01/11-12:37:24.164346 7fccfaceb440 Options.enable_pipelined_write: 0 +2020/01/11-12:37:24.164347 7fccfaceb440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-12:37:24.164348 7fccfaceb440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-12:37:24.164349 7fccfaceb440 Options.write_thread_max_yield_usec: 100 +2020/01/11-12:37:24.164350 7fccfaceb440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-12:37:24.164351 7fccfaceb440 Options.row_cache: None +2020/01/11-12:37:24.164353 7fccfaceb440 Options.wal_filter: None +2020/01/11-12:37:24.164354 7fccfaceb440 Options.avoid_flush_during_recovery: 0 +2020/01/11-12:37:24.164355 7fccfaceb440 Options.allow_ingest_behind: 0 +2020/01/11-12:37:24.164356 7fccfaceb440 Options.preserve_deletes: 0 +2020/01/11-12:37:24.164357 7fccfaceb440 Options.two_write_queues: 0 +2020/01/11-12:37:24.164358 7fccfaceb440 Options.manual_wal_flush: 0 +2020/01/11-12:37:24.164359 7fccfaceb440 Options.atomic_flush: 0 +2020/01/11-12:37:24.164361 7fccfaceb440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-12:37:24.164362 7fccfaceb440 Options.max_background_jobs: 2 +2020/01/11-12:37:24.164363 7fccfaceb440 Options.max_background_compactions: -1 +2020/01/11-12:37:24.164364 7fccfaceb440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-12:37:24.164365 7fccfaceb440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-12:37:24.164366 7fccfaceb440 Options.delayed_write_rate : 16777216 +2020/01/11-12:37:24.164368 7fccfaceb440 Options.max_total_wal_size: 0 +2020/01/11-12:37:24.164369 7fccfaceb440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-12:37:24.164370 7fccfaceb440 Options.stats_dump_period_sec: 600 +2020/01/11-12:37:24.164371 7fccfaceb440 Options.stats_persist_period_sec: 600 +2020/01/11-12:37:24.164372 7fccfaceb440 Options.stats_history_buffer_size: 1048576 +2020/01/11-12:37:24.164374 7fccfaceb440 Options.max_open_files: -1 +2020/01/11-12:37:24.164375 7fccfaceb440 Options.bytes_per_sync: 0 +2020/01/11-12:37:24.164376 7fccfaceb440 Options.wal_bytes_per_sync: 0 +2020/01/11-12:37:24.164377 7fccfaceb440 Options.strict_bytes_per_sync: 0 +2020/01/11-12:37:24.164378 7fccfaceb440 Options.compaction_readahead_size: 0 +2020/01/11-12:37:24.164379 7fccfaceb440 Compression algorithms supported: +2020/01/11-12:37:24.164381 7fccfaceb440 kZSTDNotFinalCompression supported: 0 +2020/01/11-12:37:24.164383 7fccfaceb440 kZSTD supported: 0 +2020/01/11-12:37:24.164385 7fccfaceb440 kXpressCompression supported: 0 +2020/01/11-12:37:24.164386 7fccfaceb440 kLZ4HCCompression supported: 0 +2020/01/11-12:37:24.164388 7fccfaceb440 kLZ4Compression supported: 0 +2020/01/11-12:37:24.164390 7fccfaceb440 kBZip2Compression supported: 1 +2020/01/11-12:37:24.164391 7fccfaceb440 kZlibCompression supported: 1 +2020/01/11-12:37:24.164393 7fccfaceb440 kSnappyCompression supported: 0 +2020/01/11-12:37:24.164395 7fccfaceb440 Fast CRC32 supported: Supported on x86 +2020/01/11-12:37:24.164624 7fccfaceb440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000017 +2020/01/11-12:37:24.164687 7fccfaceb440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-12:37:24.164691 7fccfaceb440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-12:37:24.164692 7fccfaceb440 Options.merge_operator: None +2020/01/11-12:37:24.164694 7fccfaceb440 Options.compaction_filter: None +2020/01/11-12:37:24.164695 7fccfaceb440 Options.compaction_filter_factory: None +2020/01/11-12:37:24.164696 7fccfaceb440 Options.memtable_factory: SkipListFactory +2020/01/11-12:37:24.164703 7fccfaceb440 Options.table_factory: BlockBasedTable +2020/01/11-12:37:24.164738 7fccfaceb440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1e867fa0) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x1e8689b0 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-12:37:24.164743 7fccfaceb440 Options.write_buffer_size: 67108864 +2020/01/11-12:37:24.164744 7fccfaceb440 Options.max_write_buffer_number: 2 +2020/01/11-12:37:24.164746 7fccfaceb440 Options.compression: NoCompression +2020/01/11-12:37:24.164747 7fccfaceb440 Options.bottommost_compression: Disabled +2020/01/11-12:37:24.164749 7fccfaceb440 Options.prefix_extractor: nullptr +2020/01/11-12:37:24.164750 7fccfaceb440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-12:37:24.164752 7fccfaceb440 Options.num_levels: 7 +2020/01/11-12:37:24.164753 7fccfaceb440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-12:37:24.164754 7fccfaceb440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-12:37:24.164755 7fccfaceb440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-12:37:24.164757 7fccfaceb440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-12:37:24.164758 7fccfaceb440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-12:37:24.164759 7fccfaceb440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-12:37:24.164760 7fccfaceb440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:37:24.164761 7fccfaceb440 Options.bottommost_compression_opts.enabled: false +2020/01/11-12:37:24.164763 7fccfaceb440 Options.compression_opts.window_bits: -14 +2020/01/11-12:37:24.164764 7fccfaceb440 Options.compression_opts.level: 32767 +2020/01/11-12:37:24.164765 7fccfaceb440 Options.compression_opts.strategy: 0 +2020/01/11-12:37:24.164766 7fccfaceb440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-12:37:24.164768 7fccfaceb440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:37:24.164769 7fccfaceb440 Options.compression_opts.enabled: false +2020/01/11-12:37:24.164770 7fccfaceb440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-12:37:24.164771 7fccfaceb440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-12:37:24.164773 7fccfaceb440 Options.level0_stop_writes_trigger: 36 +2020/01/11-12:37:24.164774 7fccfaceb440 Options.target_file_size_base: 67108864 +2020/01/11-12:37:24.164775 7fccfaceb440 Options.target_file_size_multiplier: 1 +2020/01/11-12:37:24.164776 7fccfaceb440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-12:37:24.164777 7fccfaceb440 Options.snap_refresh_nanos: 0 +2020/01/11-12:37:24.164778 7fccfaceb440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-12:37:24.164780 7fccfaceb440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-12:37:24.164782 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-12:37:24.164789 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-12:37:24.164790 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-12:37:24.164791 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-12:37:24.164792 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-12:37:24.164793 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-12:37:24.164795 7fccfaceb440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-12:37:24.164796 7fccfaceb440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-12:37:24.164797 7fccfaceb440 Options.max_compaction_bytes: 1677721600 +2020/01/11-12:37:24.164798 7fccfaceb440 Options.arena_block_size: 8388608 +2020/01/11-12:37:24.164799 7fccfaceb440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-12:37:24.164800 7fccfaceb440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-12:37:24.164802 7fccfaceb440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-12:37:24.164803 7fccfaceb440 Options.disable_auto_compactions: 0 +2020/01/11-12:37:24.164805 7fccfaceb440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-12:37:24.164808 7fccfaceb440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-12:37:24.164809 7fccfaceb440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-12:37:24.164810 7fccfaceb440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-12:37:24.164811 7fccfaceb440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-12:37:24.164812 7fccfaceb440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-12:37:24.164813 7fccfaceb440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-12:37:24.164815 7fccfaceb440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-12:37:24.164817 7fccfaceb440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-12:37:24.164818 7fccfaceb440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-12:37:24.164819 7fccfaceb440 Options.table_properties_collectors: +2020/01/11-12:37:24.164820 7fccfaceb440 Options.inplace_update_support: 0 +2020/01/11-12:37:24.164821 7fccfaceb440 Options.inplace_update_num_locks: 10000 +2020/01/11-12:37:24.164823 7fccfaceb440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-12:37:24.164824 7fccfaceb440 Options.memtable_whole_key_filtering: 0 +2020/01/11-12:37:24.164825 7fccfaceb440 Options.memtable_huge_page_size: 0 +2020/01/11-12:37:24.164827 7fccfaceb440 Options.bloom_locality: 0 +2020/01/11-12:37:24.164828 7fccfaceb440 Options.max_successive_merges: 0 +2020/01/11-12:37:24.164829 7fccfaceb440 Options.optimize_filters_for_hits: 0 +2020/01/11-12:37:24.164830 7fccfaceb440 Options.paranoid_file_checks: 0 +2020/01/11-12:37:24.164831 7fccfaceb440 Options.force_consistency_checks: 0 +2020/01/11-12:37:24.164832 7fccfaceb440 Options.report_bg_io_stats: 0 +2020/01/11-12:37:24.164833 7fccfaceb440 Options.ttl: 0 +2020/01/11-12:37:24.164835 7fccfaceb440 Options.periodic_compaction_seconds: 0 +2020/01/11-12:37:24.165357 7fccfaceb440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000017 succeeded,manifest_file_number is 17, next_file_number is 19, last_sequence is 0, log_number is 16,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-12:37:24.165362 7fccfaceb440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 16 +2020/01/11-12:37:24.165434 7fccfaceb440 EVENT_LOG_v1 {"time_micros": 1578717444165428, "job": 1, "event": "recovery_started", "log_files": [18]} +2020/01/11-12:37:24.165450 7fccfaceb440 [/db_impl_open.cc:597] Recovering log #18 mode 2 +2020/01/11-12:37:24.165516 7fccfaceb440 [/version_set.cc:3546] Creating manifest 20 +2020/01/11-12:37:24.166431 7fccfaceb440 EVENT_LOG_v1 {"time_micros": 1578717444166427, "job": 1, "event": "recovery_finished"} +2020/01/11-12:37:24.168568 7fccfaceb440 DB pointer 0x1e8c59f0 +2020/01/11-12:37:24.168832 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:37:24.168868 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-12:47:24.169073 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:47:24.169126 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-12:57:24.169313 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:57:24.169360 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 1200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:07:24.169531 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:07:24.169581 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 1800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:17:24.169772 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:17:24.169823 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 2400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 2400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 2400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:27:24.170060 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:27:24.170109 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 3000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 3000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 3000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:37:24.170305 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:37:24.170362 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 3600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 3600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 3600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:47:24.170528 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:47:24.170581 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 4200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 4200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 4200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-13:57:24.170781 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-13:57:24.170833 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 4800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 4800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 4800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:07:24.171022 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:07:24.171072 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 5400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 5400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 5400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:17:24.171255 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:17:24.171309 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 6000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 6000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 6000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:27:24.171529 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:27:24.171582 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 6600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 6600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 6600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:37:24.171796 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:37:24.171848 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 7200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 7200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 7200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:47:24.172071 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:47:24.172130 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 7800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 7800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 7800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-14:57:24.172344 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-14:57:24.172396 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 8400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 8400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 8400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:07:24.172617 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:07:24.172669 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 9000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 9000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 9000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:17:24.172884 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:17:24.172935 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 9600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 9600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 9600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:27:24.173153 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:27:24.173209 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 10200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 10200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 10200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:37:24.173427 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:37:24.173483 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 10800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 10800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 10800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:47:24.173694 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:47:24.173749 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 11400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 11400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 11400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-15:57:24.173961 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-15:57:24.174015 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 12000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 12000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 12000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:07:24.174228 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:07:24.174282 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 12600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 12600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 12600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:17:24.174499 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:17:24.174560 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 13200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 13200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 13200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:27:24.174764 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:27:24.174817 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 13800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 13800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 13800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:37:24.175022 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:37:24.175075 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 14400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 14400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 14400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:47:24.175288 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:47:24.175341 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 15000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 15000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 15000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-16:57:24.175547 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-16:57:24.175598 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 15600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 15600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 15600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:07:24.175808 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:07:24.175864 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 16200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 16200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 16200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:17:24.176083 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:17:24.176137 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 16800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 16800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 16800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:27:24.176349 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:27:24.176404 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 17400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 17400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 17400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:37:24.176627 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:37:24.176683 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 18000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 18000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 18000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:47:24.176898 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:47:24.176954 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 18600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 18600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 18600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-17:57:24.177179 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-17:57:24.177252 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 19200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 19200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 19200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:07:24.177463 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:07:24.177520 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 19800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 19800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 19800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:17:24.177729 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:17:24.177784 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 20400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 20400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 20400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:27:24.177994 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:27:24.178045 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 21000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 21000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 21000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:37:24.178255 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:37:24.178306 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 21600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 21600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 21600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:47:24.178525 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:47:24.178580 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 22200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 22200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 22200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-18:57:24.178788 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-18:57:24.178842 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 22800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 22800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 22800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:07:24.179031 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:07:24.179084 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 23400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 23400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 23400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:17:24.179272 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:17:24.179323 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 24000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 24000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 24000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:27:24.179511 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:27:24.179562 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 24600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 24600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 24600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:37:24.179747 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:37:24.179798 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 25200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 25200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 25200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:47:24.179981 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:47:24.180028 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 25800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 25800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 25800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-19:57:24.180215 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-19:57:24.180270 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 26400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 26400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 26400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:07:24.180456 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:07:24.180506 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 27000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 27000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 27000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:17:24.180690 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:17:24.180740 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 27600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 27600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 27600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:27:24.180921 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:27:24.180972 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 28200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 28200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 28200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:37:24.181157 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:37:24.181208 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 28800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 28800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 28800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:47:24.181423 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:47:24.181477 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 29400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 29400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 29400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-20:57:24.181692 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-20:57:24.181750 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 30000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 30000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 30000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:07:24.181940 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:07:24.181991 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 30600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 30600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 30600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:17:24.182175 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:17:24.182225 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 31200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 31200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 31200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:27:24.182446 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:27:24.182502 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 31800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 31800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 31800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:37:24.182698 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:37:24.182752 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 32400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 32400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 32400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:47:24.182941 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:47:24.183014 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 33000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 33000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 33000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-21:57:24.183229 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-21:57:24.183286 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 33600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 33600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 33600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:07:24.183543 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:07:24.183601 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 34200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 34200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 34200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:17:24.183825 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:17:24.183882 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 34800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 34800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 34800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:27:24.184103 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:27:24.184163 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 35400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 35400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 35400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:37:24.184387 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:37:24.184446 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 36000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 36000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 36000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:47:24.184666 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:47:24.184722 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 36600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 36600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 36600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-22:57:24.184942 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-22:57:24.185000 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 37200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 37200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 37200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:07:24.185223 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:07:24.185279 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 37800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 37800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 37800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:17:24.185508 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:17:24.185565 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 38400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 38400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 38400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:27:24.185794 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:27:24.185853 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 39000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 39000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 39000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:37:24.186076 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:37:24.186131 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 39600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 39600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 39600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:47:24.186359 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:47:24.186423 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 40200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 40200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 40200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-23:57:24.186641 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-23:57:24.186695 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 40800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 40800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 40800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:07:24.186930 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:07:24.186988 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 41400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 41400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 41400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:17:24.187208 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:17:24.187261 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 42000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 42000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 42000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:27:24.187489 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:27:24.187549 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 42600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 42600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 42600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:37:24.187773 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:37:24.187834 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 43200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 43200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 43200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:47:24.188055 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:47:24.188112 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 43800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 43800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 43800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-00:57:24.188342 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-00:57:24.188400 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 44400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 44400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 44400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:07:24.188625 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:07:24.188682 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 45000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 45000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 45000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:17:24.188904 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:17:24.188956 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 45600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 45600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 45600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:27:24.189175 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:27:24.189227 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 46200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 46200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 46200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:37:24.189451 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:37:24.189510 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 46800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 46800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 46800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:47:24.189732 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:47:24.189789 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 47400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 47400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 47400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-01:57:24.190009 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-01:57:24.190063 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 48000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 48000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 48000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:07:24.190279 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:07:24.190333 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 48600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 48600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 48600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:17:24.190560 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:17:24.190617 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 49200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 49200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 49200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:27:24.190843 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:27:24.190901 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 49800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 49800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 49800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:37:24.191118 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:37:24.191170 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 50400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 50400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 50400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:47:24.191478 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:47:24.191534 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 51000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 51000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 51000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-02:57:24.191752 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-02:57:24.191806 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 51600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 51600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 51600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:07:24.192029 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:07:24.192082 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 52200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 52200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 52200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:17:24.192304 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:17:24.192361 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 52800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 52800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 52800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:27:24.192557 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:27:24.192615 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 53400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 53400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 53400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:37:24.192833 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:37:24.192890 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 54000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 54000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 54000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:47:24.193118 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:47:24.193175 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 54600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 54600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 54600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-03:57:24.193400 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-03:57:24.193461 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 55200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 55200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 55200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:07:24.193683 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:07:24.193738 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 55800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 55800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 55800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:17:24.193962 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:17:24.194017 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 56400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 56400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 56400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:27:24.194239 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:27:24.194295 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 57000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 57000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 57000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:37:24.194524 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:37:24.194584 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 57600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 57600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 57600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:47:24.194804 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:47:24.194856 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 58200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 58200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 58200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-04:57:24.195073 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-04:57:24.195127 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 58800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 58800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 58800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:07:24.195347 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:07:24.195401 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 59400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 59400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 59400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:17:24.195623 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:17:24.195680 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 60000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 60000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 60000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:27:24.195894 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:27:24.195949 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 60600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 60600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 60600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:37:24.196166 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:37:24.196218 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 61200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 61200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 61200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:47:24.196441 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:47:24.196494 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 61800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 61800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 61800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-05:57:24.196715 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-05:57:24.196774 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 62400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 62400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 62400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:07:24.196992 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:07:24.197048 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 63000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 63000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 63000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:17:24.197269 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:17:24.197325 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 63600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 63600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 63600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:27:24.197550 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:27:24.197607 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 64200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 64200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 64200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:37:24.197825 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:37:24.197880 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 64800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 64800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 64800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:47:24.198107 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:47:24.198164 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 65400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 65400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 65400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-06:57:24.198384 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-06:57:24.198448 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 66000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 66000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 66000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:07:24.198670 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:07:24.198726 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 66600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 66600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 66600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:17:24.198948 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:17:24.199008 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 67200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 67200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 67200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:27:24.199228 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:27:24.199287 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 67800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 67800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 67800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:37:24.199528 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:37:24.199584 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 68400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 68400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 68400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:47:24.199794 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:47:24.199845 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 69000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 69000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 69000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-07:57:24.200066 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-07:57:24.200125 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 69600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 69600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 69600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:07:24.200353 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:07:24.200414 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 70200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 70200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 70200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:17:24.200637 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:17:24.200691 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 70800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 70800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 70800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:27:24.200909 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:27:24.200962 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 71400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 71400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 71400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:37:24.201185 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:37:24.201240 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 72000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 72000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 72000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:47:24.201469 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:47:24.201524 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 72600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 72600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 72600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-08:57:24.201744 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-08:57:24.201794 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 73200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 73200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 73200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:07:24.202017 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:07:24.202079 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 73800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 73800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 73800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:17:24.202293 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:17:24.202348 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 74400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 74400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 74400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:27:24.202554 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:27:24.202608 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 75000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 75000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 75000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:37:24.202824 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:37:24.202880 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 75600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 75600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 75600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:47:24.203095 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:47:24.203148 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 76200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 76200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 76200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-09:57:24.203366 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-09:57:24.203423 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 76800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 76800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 76800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:07:24.203639 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:07:24.203692 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 77400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 77400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 77400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:17:24.203907 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:17:24.203963 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 78000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 78000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 78000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:27:24.204179 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:27:24.204231 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 78600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 78600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 78600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:37:24.204472 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:37:24.204536 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 79200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 79200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 79200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:47:24.204755 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:47:24.204809 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 79800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 79800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 79800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-10:57:24.205033 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-10:57:24.205093 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 80400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 80400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 80400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:07:24.205307 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:07:24.205368 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 81000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 81000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 81000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:17:24.205660 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:17:24.205716 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 81600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 81600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 81600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:27:24.205943 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:27:24.206000 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 82200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 82200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 82200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:37:24.206217 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:37:24.206269 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 82800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 82800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 82800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:47:24.206486 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:47:24.206539 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 83400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 83400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 83400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-11:57:24.206764 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-11:57:24.206826 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 84000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 84000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 84000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:07:24.207043 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:07:24.207096 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 84600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 84600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 84600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:17:24.207314 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:17:24.207368 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 85200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 85200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 85200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:27:24.207557 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:27:24.207607 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 85800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 85800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 85800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:37:24.207844 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:37:24.207896 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 86400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 86400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 86400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:47:24.208111 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:47:24.208165 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 87000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 87000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 87000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-12:57:24.208386 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-12:57:24.208448 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 87600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 87600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 87600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:07:24.208667 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:07:24.208720 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 88200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 88200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 88200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:17:24.208938 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:17:24.208990 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 88800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 88800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 88800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:27:24.209209 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:27:24.209262 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 89400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 89400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 89400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:37:24.209489 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:37:24.209540 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 90000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 90000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 90000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:47:24.209761 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:47:24.209816 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 90600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 90600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 90600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-13:57:24.210034 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-13:57:24.210086 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 91200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 91200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 91200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:07:24.210305 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:07:24.210359 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 91800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 91800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 91800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:17:24.210558 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:17:24.210616 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 92400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 92400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 92400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:27:24.210832 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:27:24.210886 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 93000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 93000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 93000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:37:24.211104 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:37:24.211157 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 93600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 93600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 93600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:47:24.211372 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:47:24.211437 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 94200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 94200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 94200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-14:57:24.211655 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-14:57:24.211712 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 94800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 94800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 94800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:07:24.211931 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:07:24.211986 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 95400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 95400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 95400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:17:24.212206 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:17:24.212262 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 96000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 96000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 96000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:27:24.212486 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:27:24.212545 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 96600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 96600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 96600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:37:24.212766 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:37:24.212822 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 97200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 97200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 97200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:47:24.213041 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:47:24.213095 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 97800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 97800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 97800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-15:57:24.213313 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-15:57:24.213367 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 98400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 98400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 98400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:07:24.213564 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:07:24.213622 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 99000.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 99000.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 99000.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:17:24.213841 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:17:24.213897 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 99600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 99600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 99600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:27:24.214117 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:27:24.214174 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 100200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 100200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 100200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:37:24.214395 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:37:24.214459 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 100800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 100800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 100800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:47:24.214677 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:47:24.214734 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 101400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 101400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 101400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-16:57:24.214950 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-16:57:24.214998 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 102000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 102000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 102000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:07:24.215222 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:07:24.215280 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 102600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 102600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 102600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:17:24.215508 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:17:24.215563 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 103200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 103200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 103200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:27:24.215805 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:27:24.215860 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 103800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 103800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 103800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:37:24.216079 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:37:24.216135 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 104400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 104400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 104400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:47:24.216364 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:47:24.216428 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 105000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 105000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 105000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-17:57:24.216650 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-17:57:24.216705 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 105600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 105600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 105600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:07:24.216916 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:07:24.216969 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 106200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 106200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 106200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:17:24.217193 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:17:24.217250 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 106800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 106800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 106800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:27:24.217469 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:27:24.217526 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 107400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 107400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 107400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:37:24.217742 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:37:24.217798 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 108000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 108000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 108000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:47:24.218024 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:47:24.218077 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 108600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 108600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 108600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-18:57:24.218296 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-18:57:24.218348 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 109200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 109200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 109200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:07:24.218570 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:07:24.218625 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 109800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 109800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 109800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:17:24.218841 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:17:24.218892 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 110400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 110400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 110400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:27:24.219111 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:27:24.219164 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 111000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 111000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 111000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:37:24.219389 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:37:24.219453 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 111600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 111600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 111600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:47:24.219678 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:47:24.219736 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 112200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 112200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 112200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-19:57:24.219954 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-19:57:24.220010 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 112800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 112800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 112800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:07:24.220229 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:07:24.220280 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 113400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 113400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 113400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:17:24.220510 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:17:24.220571 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 114000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 114000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 114000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:27:24.220782 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:27:24.220833 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 114600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 114600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 114600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:37:24.221057 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:37:24.221112 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 115200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 115200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 115200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:47:24.221334 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:47:24.221389 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 115800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 115800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 115800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-20:57:24.221617 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-20:57:24.221670 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 116400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 116400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 116400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:07:24.221887 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:07:24.221941 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 117000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 117000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 117000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:17:24.222161 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:17:24.222215 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 117600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 117600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 117600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:27:24.222439 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:27:24.222494 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 118200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 118200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 118200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:37:24.222716 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:37:24.222771 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 118800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 118800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 118800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:47:24.222991 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:47:24.223044 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 119400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 119400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 119400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-21:57:24.223266 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-21:57:24.223323 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 120000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 120000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 120000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:07:24.223546 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:07:24.223607 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 120600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 120600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 120600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:17:24.223858 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:17:24.223915 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 121200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 121200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 121200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:27:24.224135 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:27:24.224189 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 121800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 121800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 121800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:37:24.224416 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:37:24.224471 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 122400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 122400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 122400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:47:24.224689 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:47:24.224745 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 123000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 123000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 123000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-22:57:24.224964 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-22:57:24.225018 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 123600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 123600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 123600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:07:24.225235 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:07:24.225291 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 124200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 124200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 124200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:17:24.225516 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:17:24.225573 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 124800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 124800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 124800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:27:24.225791 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:27:24.225845 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 125400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 125400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 125400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:37:24.226063 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:37:24.226120 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 126000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 126000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 126000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:47:24.226341 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:47:24.226394 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 126600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 126600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 126600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/12-23:57:24.226623 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/12-23:57:24.226679 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 127200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 127200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 127200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:07:24.226897 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:07:24.226956 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 127800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 127800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 127800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:17:24.227171 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:17:24.227225 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 128400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 128400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 128400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:27:24.227448 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:27:24.227504 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 129000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 129000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 129000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:37:24.227723 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:37:24.227777 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 129600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 129600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 129600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:47:24.227990 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:47:24.228040 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 130200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 130200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 130200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-00:57:24.228255 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-00:57:24.228309 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 130800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 130800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 130800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:07:24.228530 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:07:24.228585 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 131400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 131400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 131400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:17:24.228800 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:17:24.228854 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 132000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 132000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 132000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:27:24.229074 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:27:24.229131 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 132600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 132600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 132600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:37:24.229348 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:37:24.229402 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 133200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 133200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 133200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:47:24.229632 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:47:24.229687 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 133800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 133800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 133800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-01:57:24.229905 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-01:57:24.229962 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 134400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 134400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 134400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:07:24.230179 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:07:24.230230 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 135000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 135000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 135000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:17:24.230456 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:17:24.230512 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 135600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 135600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 135600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:27:24.230758 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:27:24.230824 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 136200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 136200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 136200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:37:24.231042 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:37:24.231096 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 136800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 136800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 136800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:47:24.231326 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:47:24.231385 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 137400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 137400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 137400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-02:57:24.231608 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-02:57:24.231663 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 138000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 138000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 138000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:07:24.231882 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:07:24.231935 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 138600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 138600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 138600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:17:24.232174 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:17:24.232227 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 139200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 139200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 139200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:27:24.232448 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:27:24.232501 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 139800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 139800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 139800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:37:24.232710 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:37:24.232763 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 140400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 140400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 140400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:47:24.232976 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:47:24.233034 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 141000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 141000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 141000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-03:57:24.233242 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-03:57:24.233293 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 141600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 141600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 141600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:07:24.233508 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:07:24.233556 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 142200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 142200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 142200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:17:24.233767 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:17:24.233815 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 142800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 142800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 142800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:27:24.234025 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:27:24.234073 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 143400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 143400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 143400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:37:24.234283 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:37:24.234334 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 144000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 144000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 144000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:47:24.234550 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:47:24.234601 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 144600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 144600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 144600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-04:57:24.234813 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-04:57:24.234865 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 145200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 145200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 145200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:07:24.235084 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:07:24.235138 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 145800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 145800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 145800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:17:24.235355 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:17:24.235416 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 146400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 146400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 146400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:27:24.235634 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:27:24.235687 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 147000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 147000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 147000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:37:24.235903 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:37:24.235961 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 147600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 147600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 147600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:47:24.236173 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:47:24.236222 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 148200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 148200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 148200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-05:57:24.236443 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-05:57:24.236496 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 148800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 148800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 148800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:07:24.236713 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:07:24.236766 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 149400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 149400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 149400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:17:24.236985 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:17:24.237035 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 150000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 150000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 150000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:27:24.237255 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:27:24.237309 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 150600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 150600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 150600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:37:24.237530 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:37:24.237583 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 151200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 151200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 151200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:47:24.237798 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:47:24.237851 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 151800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 151800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 151800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-06:57:24.238063 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-06:57:24.238114 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 152400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 152400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 152400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:07:24.238334 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:07:24.238389 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 153000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 153000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 153000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:17:24.238607 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:17:24.238659 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 153600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 153600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 153600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:27:24.238876 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:27:24.238937 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 154200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 154200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 154200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:37:24.239148 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:37:24.239199 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 154800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 154800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 154800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:47:24.239420 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:47:24.239477 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 155400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 155400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 155400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-07:57:24.239695 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-07:57:24.239750 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 156000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 156000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 156000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:07:24.239993 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:07:24.240048 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 156600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 156600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 156600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:17:24.240275 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:17:24.240329 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 157200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 157200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 157200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:27:24.240547 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:27:24.240601 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 157800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 157800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 157800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:37:24.240816 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:37:24.240869 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 158400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 158400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 158400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:47:24.241083 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:47:24.241137 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 159000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 159000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 159000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-08:57:24.241358 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-08:57:24.241414 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 159600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 159600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 159600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:07:24.241634 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:07:24.241688 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 160200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 160200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 160200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:17:24.241902 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:17:24.241962 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 160800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 160800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 160800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:27:24.242175 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:27:24.242231 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 161400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 161400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 161400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:37:24.242452 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:37:24.242504 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 162000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 162000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 162000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:47:24.242725 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:47:24.242779 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 162600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 162600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 162600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-09:57:24.242997 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-09:57:24.243051 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 163200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 163200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 163200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:07:24.243282 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:07:24.243337 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 163800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 163800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 163800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:17:24.243558 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:17:24.243613 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 164400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 164400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 164400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:27:24.243829 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:27:24.243884 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 165000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 165000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 165000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:37:24.244098 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:37:24.244152 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 165600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 165600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 165600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:47:24.244371 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:47:24.244433 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 166200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 166200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 166200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-10:57:24.244649 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-10:57:24.244701 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 166800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 166800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 166800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:07:24.244917 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:07:24.244972 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 167400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 167400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 167400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:17:24.245191 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:17:24.245249 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 168000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 168000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 168000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:27:24.245468 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:27:24.245519 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 168600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 168600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 168600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:37:24.245736 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:37:24.245788 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 169200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 169200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 169200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:47:24.246003 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:47:24.246055 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 169800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 169800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 169800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-11:57:24.246271 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-11:57:24.246323 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 170400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 170400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 170400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:07:24.246544 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:07:24.246597 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 171000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 171000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 171000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:17:24.246814 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:17:24.246866 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 171600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 171600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 171600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:27:24.247086 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:27:24.247140 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 172200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 172200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 172200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:37:24.247357 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:37:24.247417 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 172800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 172800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 172800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:47:24.247637 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:47:24.247688 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 173400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 173400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 173400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-12:57:24.247906 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-12:57:24.247959 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 174000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 174000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 174000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:07:24.248202 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:07:24.248262 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 174600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 174600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 174600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:17:24.248482 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:17:24.248536 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 175200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 175200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 175200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:27:24.248754 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:27:24.248808 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 175800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 175800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 175800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:37:24.249030 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:37:24.249087 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 176400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 176400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 176400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:47:24.249305 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:47:24.249360 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 177000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 177000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 177000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-13:57:24.249557 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-13:57:24.249612 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 177600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 177600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 177600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:07:24.249842 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:07:24.249908 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 178200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 178200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 178200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:17:24.250135 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:17:24.250192 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 178800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 178800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 178800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:27:24.250416 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:27:24.250471 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 179400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 179400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 179400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:37:24.250692 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:37:24.250744 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 180000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 180000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 180000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:47:24.250967 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:47:24.251018 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 180600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 180600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 180600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-14:57:24.251232 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-14:57:24.251295 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 181200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 181200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 181200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:07:24.251533 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:07:24.251592 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 181800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 181800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 181800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:17:24.251808 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:17:24.251859 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 182400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 182400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 182400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:27:24.252080 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:27:24.252131 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 183000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 183000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 183000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:37:24.252355 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:37:24.252417 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 183600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 183600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 183600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:47:24.252638 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:47:24.252692 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 184200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 184200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 184200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-15:57:24.252910 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-15:57:24.252962 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 184800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 184800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 184800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:07:24.253184 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:07:24.253238 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 185400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 185400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 185400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:17:24.253459 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:17:24.253512 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 186000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 186000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 186000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:27:24.253728 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:27:24.253781 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 186600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 186600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 186600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:37:24.253993 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:37:24.254045 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 187200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 187200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 187200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:47:24.254263 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:47:24.254324 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 187800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 187800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 187800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-16:57:24.254562 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-16:57:24.254623 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 188400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 188400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 188400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:07:24.254845 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:07:24.254899 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 189000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 189000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 189000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:17:24.255156 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:17:24.255224 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 189600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 189600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 189600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:27:24.255450 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:27:24.255504 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 190200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 190200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 190200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:37:24.255732 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:37:24.255792 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 190800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 190800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 190800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:47:24.256012 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:47:24.256068 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 191400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 191400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 191400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-17:57:24.256311 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-17:57:24.256365 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 192000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 192000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 192000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:07:24.256555 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:07:24.256610 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 192600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 192600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 192600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:17:24.256827 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:17:24.256882 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 193200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 193200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 193200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:27:24.257101 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:27:24.257156 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 193800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 193800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 193800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:37:24.257378 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:37:24.257445 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 194400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 194400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 194400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:47:24.257660 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:47:24.257716 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 195000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 195000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 195000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-18:57:24.257938 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-18:57:24.258001 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 195600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 195600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 195600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:07:24.258224 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:07:24.258278 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 196200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 196200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 196200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:17:24.258499 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:17:24.258552 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 196800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 196800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 196800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:27:24.258770 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:27:24.258825 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 197400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 197400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 197400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:37:24.259044 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:37:24.259100 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 198000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 198000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 198000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:47:24.259337 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:47:24.259391 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 198600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 198600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 198600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-19:57:24.259623 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-19:57:24.259682 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 199200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 199200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 199200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:07:24.259901 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:07:24.259955 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 199800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 199800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 199800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:17:24.260170 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:17:24.260223 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 200400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 200400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 200400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:27:24.260447 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:27:24.260506 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 201000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 201000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 201000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:37:24.260717 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:37:24.260771 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 201600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 201600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 201600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:47:24.260988 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:47:24.261042 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 202200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 202200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 202200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-20:57:24.261260 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-20:57:24.261310 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 202800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 202800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 202800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:07:24.261527 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:07:24.261580 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 203400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 203400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 203400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:17:24.261800 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:17:24.261852 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 204000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 204000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 204000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:27:24.262067 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:27:24.262120 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 204600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 204600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 204600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:37:24.262338 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:37:24.262391 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 205200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 205200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 205200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:47:24.262621 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:47:24.262677 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 205800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 205800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 205800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-21:57:24.262895 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-21:57:24.262945 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 206400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 206400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 206400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:07:24.263171 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:07:24.263228 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 207000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 207000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 207000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:17:24.263451 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:17:24.263511 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 207600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 207600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 207600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:27:24.263729 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:27:24.263783 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 208200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 208200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 208200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:37:24.264001 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:37:24.264054 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 208800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 208800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 208800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:47:24.264302 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:47:24.264356 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 209400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 209400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 209400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-22:57:24.264556 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-22:57:24.264609 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 210000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 210000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 210000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:07:24.264828 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:07:24.264882 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 210600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 210600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 210600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:17:24.265109 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:17:24.265169 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 211200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 211200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 211200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:27:24.265391 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:27:24.265452 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 211800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 211800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 211800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:37:24.265668 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:37:24.265719 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 212400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 212400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 212400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:47:24.265942 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:47:24.265998 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 213000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 213000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 213000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/13-23:57:24.266224 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/13-23:57:24.266280 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 213600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 213600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 213600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:07:24.266509 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:07:24.266562 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 214200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 214200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 214200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:17:24.266778 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:17:24.266832 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 214800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 214800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 214800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:27:24.267050 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:27:24.267103 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 215400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 215400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 215400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:37:24.267335 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:37:24.267396 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 216000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 216000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 216000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:47:24.267619 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:47:24.267674 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 216600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 216600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 216600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-00:57:24.267894 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-00:57:24.267947 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 217200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 217200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 217200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:07:24.268164 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:07:24.268215 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 217800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 217800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 217800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:17:24.268453 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:17:24.268509 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 218400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 218400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 218400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:27:24.268729 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:27:24.268782 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 219000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 219000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 219000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:37:24.269001 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:37:24.269056 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 219600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 219600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 219600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:47:24.269276 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:47:24.269336 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 220200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 220200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 220200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-01:57:24.269561 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-01:57:24.269615 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 220800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 220800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 220800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:07:24.269835 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:07:24.269896 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 221400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 221400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 221400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:17:24.270112 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:17:24.270167 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 222000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 222000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 222000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:27:24.270388 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:27:24.270442 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 222600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 222600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 222600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:37:24.270659 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:37:24.270711 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 223200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 223200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 223200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:47:24.270931 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:47:24.270986 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 223800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 223800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 223800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-02:57:24.271204 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-02:57:24.271261 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 224400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 224400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 224400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:07:24.271483 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:07:24.271534 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 225000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 225000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 225000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:17:24.271752 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:17:24.271805 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 225600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 225600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 225600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:27:24.272023 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:27:24.272077 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 226200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 226200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 226200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:37:24.272299 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:37:24.272353 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 226800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 226800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 226800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:47:24.272558 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:47:24.272612 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 227400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 227400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 227400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-03:57:24.272832 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-03:57:24.272891 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 228000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 228000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 228000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:07:24.273102 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:07:24.273154 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 228600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 228600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 228600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:17:24.273373 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:17:24.273429 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 229200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 229200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 229200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:27:24.273647 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:27:24.273700 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 229800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 229800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 229800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:37:24.273922 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:37:24.273975 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 230400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 230400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 230400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:47:24.274199 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:47:24.274255 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 231000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 231000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 231000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-04:57:24.274479 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-04:57:24.274534 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 231600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 231600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 231600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:07:24.274751 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:07:24.274807 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 232200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 232200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 232200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:17:24.275034 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:17:24.275089 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 232800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 232800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 232800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:27:24.275311 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:27:24.275366 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 233400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 233400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 233400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:37:24.275557 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:37:24.275611 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 234000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 234000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 234000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:47:24.275829 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:47:24.275889 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 234600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 234600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 234600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-05:57:24.276106 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-05:57:24.276161 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 235200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 235200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 235200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:07:24.276388 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:07:24.276453 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 235800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 235800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 235800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:17:24.276676 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:17:24.276730 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 236400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 236400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 236400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:27:24.276954 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:27:24.277008 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 237000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 237000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 237000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:37:24.277232 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:37:24.277285 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 237600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 237600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 237600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:47:24.277510 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:47:24.277564 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 238200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 238200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 238200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-06:57:24.277780 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-06:57:24.277833 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 238800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 238800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 238800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:07:24.278064 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:07:24.278120 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 239400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 239400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 239400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:17:24.278337 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:17:24.278389 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 240000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 240000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 240000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:27:24.278613 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:27:24.278663 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 240600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 240600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 240600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:37:24.278884 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:37:24.278943 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 241200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 241200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 241200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:47:24.279155 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:47:24.279205 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 241800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 241800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 241800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-07:57:24.279450 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-07:57:24.279512 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 242400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 242400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 242400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:07:24.279736 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:07:24.279789 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 243000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 243000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 243000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:17:24.280008 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:17:24.280061 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 243600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 243600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 243600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:27:24.280282 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:27:24.280333 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 244200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 244200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 244200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:37:24.280555 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:37:24.280604 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 244800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 244800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 244800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:47:24.280819 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:47:24.280873 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 245400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 245400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 245400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-08:57:24.281089 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-08:57:24.281137 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 246000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 246000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 246000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:07:24.281354 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:07:24.281410 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 246600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 246600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 246600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:17:24.281635 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:17:24.281690 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 247200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 247200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 247200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:27:24.281907 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:27:24.281967 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 247800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 247800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 247800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:37:24.282177 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:37:24.282227 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 248400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 248400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 248400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:47:24.282448 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:47:24.282502 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 249000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 249000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 249000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-09:57:24.282719 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-09:57:24.282773 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 249600.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 249600.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 249600.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-10:07:24.282991 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-10:07:24.283046 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 250200.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 250200.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 250200.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-10:17:24.283266 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-10:17:24.283322 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 250800.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 250800.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 250800.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-10:27:24.283551 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-10:27:24.283602 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 251400.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 251400.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 251400.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/14-10:37:24.283818 7fcc9bdf2700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/14-10:37:24.283872 7fcc9bdf2700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 252000.1 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 252000.1 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 252000.1 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578712592954203 b/examples/demo-serving/kvdb/LOG.old.1578712592954203 new file mode 100644 index 0000000000000000000000000000000000000000..9ff47c3082e7312480c1698e9494e46de645268c --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578712592954203 @@ -0,0 +1,252 @@ +2020/01/10-09:39:03.152794 7f45d8eaa440 RocksDB version: 6.2.4 +2020/01/10-09:39:03.152835 7f45d8eaa440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/10-09:39:03.152838 7f45d8eaa440 Compile date Dec 23 2019 +2020/01/10-09:39:03.152842 7f45d8eaa440 DB SUMMARY +2020/01/10-09:39:03.152858 7f45d8eaa440 SST files in kvdb dir, Total Num: 0, files: +2020/01/10-09:39:03.152861 7f45d8eaa440 Write Ahead Log file in kvdb: +2020/01/10-09:39:03.152864 7f45d8eaa440 Options.error_if_exists: 0 +2020/01/10-09:39:03.152866 7f45d8eaa440 Options.create_if_missing: 1 +2020/01/10-09:39:03.152867 7f45d8eaa440 Options.paranoid_checks: 1 +2020/01/10-09:39:03.152868 7f45d8eaa440 Options.env: 0x1bed2ac0 +2020/01/10-09:39:03.152870 7f45d8eaa440 Options.info_log: 0x206faac0 +2020/01/10-09:39:03.152871 7f45d8eaa440 Options.max_file_opening_threads: 16 +2020/01/10-09:39:03.152872 7f45d8eaa440 Options.statistics: (nil) +2020/01/10-09:39:03.152874 7f45d8eaa440 Options.use_fsync: 0 +2020/01/10-09:39:03.152875 7f45d8eaa440 Options.max_log_file_size: 0 +2020/01/10-09:39:03.152876 7f45d8eaa440 Options.max_manifest_file_size: 1073741824 +2020/01/10-09:39:03.152877 7f45d8eaa440 Options.log_file_time_to_roll: 0 +2020/01/10-09:39:03.152879 7f45d8eaa440 Options.keep_log_file_num: 1000 +2020/01/10-09:39:03.152880 7f45d8eaa440 Options.recycle_log_file_num: 0 +2020/01/10-09:39:03.152881 7f45d8eaa440 Options.allow_fallocate: 1 +2020/01/10-09:39:03.152882 7f45d8eaa440 Options.allow_mmap_reads: 0 +2020/01/10-09:39:03.152883 7f45d8eaa440 Options.allow_mmap_writes: 0 +2020/01/10-09:39:03.152884 7f45d8eaa440 Options.use_direct_reads: 0 +2020/01/10-09:39:03.152886 7f45d8eaa440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/10-09:39:03.152887 7f45d8eaa440 Options.create_missing_column_families: 0 +2020/01/10-09:39:03.152890 7f45d8eaa440 Options.db_log_dir: +2020/01/10-09:39:03.152891 7f45d8eaa440 Options.wal_dir: kvdb +2020/01/10-09:39:03.152892 7f45d8eaa440 Options.table_cache_numshardbits: 6 +2020/01/10-09:39:03.152893 7f45d8eaa440 Options.max_subcompactions: 1 +2020/01/10-09:39:03.152894 7f45d8eaa440 Options.max_background_flushes: -1 +2020/01/10-09:39:03.152896 7f45d8eaa440 Options.WAL_ttl_seconds: 0 +2020/01/10-09:39:03.152897 7f45d8eaa440 Options.WAL_size_limit_MB: 0 +2020/01/10-09:39:03.152898 7f45d8eaa440 Options.manifest_preallocation_size: 4194304 +2020/01/10-09:39:03.152900 7f45d8eaa440 Options.is_fd_close_on_exec: 1 +2020/01/10-09:39:03.152901 7f45d8eaa440 Options.advise_random_on_open: 1 +2020/01/10-09:39:03.152902 7f45d8eaa440 Options.db_write_buffer_size: 0 +2020/01/10-09:39:03.152903 7f45d8eaa440 Options.write_buffer_manager: 0x206fab20 +2020/01/10-09:39:03.152905 7f45d8eaa440 Options.access_hint_on_compaction_start: 1 +2020/01/10-09:39:03.152906 7f45d8eaa440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/10-09:39:03.152907 7f45d8eaa440 Options.random_access_max_buffer_size: 1048576 +2020/01/10-09:39:03.152908 7f45d8eaa440 Options.use_adaptive_mutex: 0 +2020/01/10-09:39:03.152909 7f45d8eaa440 Options.rate_limiter: (nil) +2020/01/10-09:39:03.152911 7f45d8eaa440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/10-09:39:03.152912 7f45d8eaa440 Options.wal_recovery_mode: 2 +2020/01/10-09:39:03.152913 7f45d8eaa440 Options.enable_thread_tracking: 0 +2020/01/10-09:39:03.152914 7f45d8eaa440 Options.enable_pipelined_write: 0 +2020/01/10-09:39:03.152922 7f45d8eaa440 Options.allow_concurrent_memtable_write: 1 +2020/01/10-09:39:03.152924 7f45d8eaa440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/10-09:39:03.152925 7f45d8eaa440 Options.write_thread_max_yield_usec: 100 +2020/01/10-09:39:03.152926 7f45d8eaa440 Options.write_thread_slow_yield_usec: 3 +2020/01/10-09:39:03.152927 7f45d8eaa440 Options.row_cache: None +2020/01/10-09:39:03.152928 7f45d8eaa440 Options.wal_filter: None +2020/01/10-09:39:03.152930 7f45d8eaa440 Options.avoid_flush_during_recovery: 0 +2020/01/10-09:39:03.152931 7f45d8eaa440 Options.allow_ingest_behind: 0 +2020/01/10-09:39:03.152932 7f45d8eaa440 Options.preserve_deletes: 0 +2020/01/10-09:39:03.152934 7f45d8eaa440 Options.two_write_queues: 0 +2020/01/10-09:39:03.152935 7f45d8eaa440 Options.manual_wal_flush: 0 +2020/01/10-09:39:03.152936 7f45d8eaa440 Options.atomic_flush: 0 +2020/01/10-09:39:03.152937 7f45d8eaa440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/10-09:39:03.152938 7f45d8eaa440 Options.max_background_jobs: 2 +2020/01/10-09:39:03.152939 7f45d8eaa440 Options.max_background_compactions: -1 +2020/01/10-09:39:03.152941 7f45d8eaa440 Options.avoid_flush_during_shutdown: 0 +2020/01/10-09:39:03.152942 7f45d8eaa440 Options.writable_file_max_buffer_size: 1048576 +2020/01/10-09:39:03.152943 7f45d8eaa440 Options.delayed_write_rate : 16777216 +2020/01/10-09:39:03.152944 7f45d8eaa440 Options.max_total_wal_size: 0 +2020/01/10-09:39:03.152945 7f45d8eaa440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/10-09:39:03.152947 7f45d8eaa440 Options.stats_dump_period_sec: 600 +2020/01/10-09:39:03.152948 7f45d8eaa440 Options.stats_persist_period_sec: 600 +2020/01/10-09:39:03.152949 7f45d8eaa440 Options.stats_history_buffer_size: 1048576 +2020/01/10-09:39:03.152950 7f45d8eaa440 Options.max_open_files: -1 +2020/01/10-09:39:03.152952 7f45d8eaa440 Options.bytes_per_sync: 0 +2020/01/10-09:39:03.152953 7f45d8eaa440 Options.wal_bytes_per_sync: 0 +2020/01/10-09:39:03.152954 7f45d8eaa440 Options.strict_bytes_per_sync: 0 +2020/01/10-09:39:03.152955 7f45d8eaa440 Options.compaction_readahead_size: 0 +2020/01/10-09:39:03.152956 7f45d8eaa440 Compression algorithms supported: +2020/01/10-09:39:03.152975 7f45d8eaa440 kZSTDNotFinalCompression supported: 0 +2020/01/10-09:39:03.152981 7f45d8eaa440 kZSTD supported: 0 +2020/01/10-09:39:03.152982 7f45d8eaa440 kXpressCompression supported: 0 +2020/01/10-09:39:03.152983 7f45d8eaa440 kLZ4HCCompression supported: 0 +2020/01/10-09:39:03.152984 7f45d8eaa440 kLZ4Compression supported: 0 +2020/01/10-09:39:03.152986 7f45d8eaa440 kBZip2Compression supported: 1 +2020/01/10-09:39:03.152987 7f45d8eaa440 kZlibCompression supported: 1 +2020/01/10-09:39:03.152988 7f45d8eaa440 kSnappyCompression supported: 0 +2020/01/10-09:39:03.152991 7f45d8eaa440 Fast CRC32 supported: Supported on x86 +2020/01/10-09:39:03.153040 7f45d8eaa440 [/db_impl_open.cc:242] Creating manifest 1 +2020/01/10-09:39:03.155451 7f45d8eaa440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000001 +2020/01/10-09:39:03.155527 7f45d8eaa440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/10-09:39:03.155531 7f45d8eaa440 Options.comparator: leveldb.BytewiseComparator +2020/01/10-09:39:03.155533 7f45d8eaa440 Options.merge_operator: None +2020/01/10-09:39:03.155535 7f45d8eaa440 Options.compaction_filter: None +2020/01/10-09:39:03.155536 7f45d8eaa440 Options.compaction_filter_factory: None +2020/01/10-09:39:03.155537 7f45d8eaa440 Options.memtable_factory: SkipListFactory +2020/01/10-09:39:03.155539 7f45d8eaa440 Options.table_factory: BlockBasedTable +2020/01/10-09:39:03.155577 7f45d8eaa440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1e67c230) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x206f8040 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/10-09:39:03.155593 7f45d8eaa440 Options.write_buffer_size: 67108864 +2020/01/10-09:39:03.155594 7f45d8eaa440 Options.max_write_buffer_number: 2 +2020/01/10-09:39:03.155596 7f45d8eaa440 Options.compression: NoCompression +2020/01/10-09:39:03.155598 7f45d8eaa440 Options.bottommost_compression: Disabled +2020/01/10-09:39:03.155599 7f45d8eaa440 Options.prefix_extractor: nullptr +2020/01/10-09:39:03.155600 7f45d8eaa440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/10-09:39:03.155602 7f45d8eaa440 Options.num_levels: 7 +2020/01/10-09:39:03.155603 7f45d8eaa440 Options.min_write_buffer_number_to_merge: 1 +2020/01/10-09:39:03.155604 7f45d8eaa440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/10-09:39:03.155606 7f45d8eaa440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/10-09:39:03.155607 7f45d8eaa440 Options.bottommost_compression_opts.level: 32767 +2020/01/10-09:39:03.155608 7f45d8eaa440 Options.bottommost_compression_opts.strategy: 0 +2020/01/10-09:39:03.155610 7f45d8eaa440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/10-09:39:03.155611 7f45d8eaa440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/10-09:39:03.155612 7f45d8eaa440 Options.bottommost_compression_opts.enabled: false +2020/01/10-09:39:03.155614 7f45d8eaa440 Options.compression_opts.window_bits: -14 +2020/01/10-09:39:03.155615 7f45d8eaa440 Options.compression_opts.level: 32767 +2020/01/10-09:39:03.155616 7f45d8eaa440 Options.compression_opts.strategy: 0 +2020/01/10-09:39:03.155617 7f45d8eaa440 Options.compression_opts.max_dict_bytes: 0 +2020/01/10-09:39:03.155619 7f45d8eaa440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/10-09:39:03.155620 7f45d8eaa440 Options.compression_opts.enabled: false +2020/01/10-09:39:03.155621 7f45d8eaa440 Options.level0_file_num_compaction_trigger: 4 +2020/01/10-09:39:03.155622 7f45d8eaa440 Options.level0_slowdown_writes_trigger: 20 +2020/01/10-09:39:03.155624 7f45d8eaa440 Options.level0_stop_writes_trigger: 36 +2020/01/10-09:39:03.155625 7f45d8eaa440 Options.target_file_size_base: 67108864 +2020/01/10-09:39:03.155626 7f45d8eaa440 Options.target_file_size_multiplier: 1 +2020/01/10-09:39:03.155627 7f45d8eaa440 Options.max_bytes_for_level_base: 268435456 +2020/01/10-09:39:03.155629 7f45d8eaa440 Options.snap_refresh_nanos: 0 +2020/01/10-09:39:03.155630 7f45d8eaa440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/10-09:39:03.155631 7f45d8eaa440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/10-09:39:03.155633 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/10-09:39:03.155635 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/10-09:39:03.155641 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/10-09:39:03.155642 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/10-09:39:03.155644 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/10-09:39:03.155645 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/10-09:39:03.155646 7f45d8eaa440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/10-09:39:03.155647 7f45d8eaa440 Options.max_sequential_skip_in_iterations: 8 +2020/01/10-09:39:03.155648 7f45d8eaa440 Options.max_compaction_bytes: 1677721600 +2020/01/10-09:39:03.155650 7f45d8eaa440 Options.arena_block_size: 8388608 +2020/01/10-09:39:03.155651 7f45d8eaa440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/10-09:39:03.155652 7f45d8eaa440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/10-09:39:03.155653 7f45d8eaa440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/10-09:39:03.155655 7f45d8eaa440 Options.disable_auto_compactions: 0 +2020/01/10-09:39:03.155656 7f45d8eaa440 Options.compaction_style: kCompactionStyleLevel +2020/01/10-09:39:03.155658 7f45d8eaa440 Options.compaction_pri: kMinOverlappingRatio +2020/01/10-09:39:03.155659 7f45d8eaa440 Options.compaction_options_universal.size_ratio: 1 +2020/01/10-09:39:03.155661 7f45d8eaa440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/10-09:39:03.155662 7f45d8eaa440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/10-09:39:03.155663 7f45d8eaa440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/10-09:39:03.155664 7f45d8eaa440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/10-09:39:03.155666 7f45d8eaa440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/10-09:39:03.155667 7f45d8eaa440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/10-09:39:03.155668 7f45d8eaa440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/10-09:39:03.155670 7f45d8eaa440 Options.table_properties_collectors: +2020/01/10-09:39:03.155671 7f45d8eaa440 Options.inplace_update_support: 0 +2020/01/10-09:39:03.155672 7f45d8eaa440 Options.inplace_update_num_locks: 10000 +2020/01/10-09:39:03.155673 7f45d8eaa440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/10-09:39:03.155675 7f45d8eaa440 Options.memtable_whole_key_filtering: 0 +2020/01/10-09:39:03.155676 7f45d8eaa440 Options.memtable_huge_page_size: 0 +2020/01/10-09:39:03.155677 7f45d8eaa440 Options.bloom_locality: 0 +2020/01/10-09:39:03.155678 7f45d8eaa440 Options.max_successive_merges: 0 +2020/01/10-09:39:03.155679 7f45d8eaa440 Options.optimize_filters_for_hits: 0 +2020/01/10-09:39:03.155681 7f45d8eaa440 Options.paranoid_file_checks: 0 +2020/01/10-09:39:03.155682 7f45d8eaa440 Options.force_consistency_checks: 0 +2020/01/10-09:39:03.155683 7f45d8eaa440 Options.report_bg_io_stats: 0 +2020/01/10-09:39:03.155684 7f45d8eaa440 Options.ttl: 0 +2020/01/10-09:39:03.155685 7f45d8eaa440 Options.periodic_compaction_seconds: 0 +2020/01/10-09:39:03.156268 7f45d8eaa440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000001 succeeded,manifest_file_number is 1, next_file_number is 3, last_sequence is 0, log_number is 0,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/10-09:39:03.156273 7f45d8eaa440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 0 +2020/01/10-09:39:03.158204 7f45d8eaa440 DB pointer 0x206f97b0 +2020/01/10-09:39:03.158523 7f455a5f6700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/10-09:39:03.158563 7f455a5f6700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578715678727481 b/examples/demo-serving/kvdb/LOG.old.1578715678727481 new file mode 100644 index 0000000000000000000000000000000000000000..4843058e3b24b195248d0a39684e37d01bfaa224 --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578715678727481 @@ -0,0 +1,466 @@ +2020/01/11-11:16:32.954673 7f422a851440 RocksDB version: 6.2.4 +2020/01/11-11:16:32.954711 7f422a851440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-11:16:32.954714 7f422a851440 Compile date Dec 23 2019 +2020/01/11-11:16:32.954717 7f422a851440 DB SUMMARY +2020/01/11-11:16:32.954744 7f422a851440 CURRENT file: CURRENT +2020/01/11-11:16:32.954746 7f422a851440 IDENTITY file: IDENTITY +2020/01/11-11:16:32.954750 7f422a851440 MANIFEST file: MANIFEST-000001 size: 13 Bytes +2020/01/11-11:16:32.954752 7f422a851440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-11:16:32.954754 7f422a851440 Write Ahead Log file in kvdb: 000003.log size: 0 ; +2020/01/11-11:16:32.954756 7f422a851440 Options.error_if_exists: 0 +2020/01/11-11:16:32.954757 7f422a851440 Options.create_if_missing: 1 +2020/01/11-11:16:32.954758 7f422a851440 Options.paranoid_checks: 1 +2020/01/11-11:16:32.954760 7f422a851440 Options.env: 0x1bed2ac0 +2020/01/11-11:16:32.954761 7f422a851440 Options.info_log: 0x1f4720f0 +2020/01/11-11:16:32.954762 7f422a851440 Options.max_file_opening_threads: 16 +2020/01/11-11:16:32.954764 7f422a851440 Options.statistics: (nil) +2020/01/11-11:16:32.954765 7f422a851440 Options.use_fsync: 0 +2020/01/11-11:16:32.954766 7f422a851440 Options.max_log_file_size: 0 +2020/01/11-11:16:32.954768 7f422a851440 Options.max_manifest_file_size: 1073741824 +2020/01/11-11:16:32.954769 7f422a851440 Options.log_file_time_to_roll: 0 +2020/01/11-11:16:32.954770 7f422a851440 Options.keep_log_file_num: 1000 +2020/01/11-11:16:32.954771 7f422a851440 Options.recycle_log_file_num: 0 +2020/01/11-11:16:32.954772 7f422a851440 Options.allow_fallocate: 1 +2020/01/11-11:16:32.954774 7f422a851440 Options.allow_mmap_reads: 0 +2020/01/11-11:16:32.954775 7f422a851440 Options.allow_mmap_writes: 0 +2020/01/11-11:16:32.954776 7f422a851440 Options.use_direct_reads: 0 +2020/01/11-11:16:32.954777 7f422a851440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-11:16:32.954778 7f422a851440 Options.create_missing_column_families: 0 +2020/01/11-11:16:32.954780 7f422a851440 Options.db_log_dir: +2020/01/11-11:16:32.954782 7f422a851440 Options.wal_dir: kvdb +2020/01/11-11:16:32.954783 7f422a851440 Options.table_cache_numshardbits: 6 +2020/01/11-11:16:32.954784 7f422a851440 Options.max_subcompactions: 1 +2020/01/11-11:16:32.954785 7f422a851440 Options.max_background_flushes: -1 +2020/01/11-11:16:32.954787 7f422a851440 Options.WAL_ttl_seconds: 0 +2020/01/11-11:16:32.954788 7f422a851440 Options.WAL_size_limit_MB: 0 +2020/01/11-11:16:32.954789 7f422a851440 Options.manifest_preallocation_size: 4194304 +2020/01/11-11:16:32.954790 7f422a851440 Options.is_fd_close_on_exec: 1 +2020/01/11-11:16:32.954791 7f422a851440 Options.advise_random_on_open: 1 +2020/01/11-11:16:32.954793 7f422a851440 Options.db_write_buffer_size: 0 +2020/01/11-11:16:32.954794 7f422a851440 Options.write_buffer_manager: 0x1f472150 +2020/01/11-11:16:32.954795 7f422a851440 Options.access_hint_on_compaction_start: 1 +2020/01/11-11:16:32.954796 7f422a851440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-11:16:32.954797 7f422a851440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-11:16:32.954798 7f422a851440 Options.use_adaptive_mutex: 0 +2020/01/11-11:16:32.954799 7f422a851440 Options.rate_limiter: (nil) +2020/01/11-11:16:32.954801 7f422a851440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-11:16:32.954802 7f422a851440 Options.wal_recovery_mode: 2 +2020/01/11-11:16:32.954809 7f422a851440 Options.enable_thread_tracking: 0 +2020/01/11-11:16:32.954810 7f422a851440 Options.enable_pipelined_write: 0 +2020/01/11-11:16:32.954811 7f422a851440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-11:16:32.954812 7f422a851440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-11:16:32.954813 7f422a851440 Options.write_thread_max_yield_usec: 100 +2020/01/11-11:16:32.954815 7f422a851440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-11:16:32.954816 7f422a851440 Options.row_cache: None +2020/01/11-11:16:32.954817 7f422a851440 Options.wal_filter: None +2020/01/11-11:16:32.954818 7f422a851440 Options.avoid_flush_during_recovery: 0 +2020/01/11-11:16:32.954819 7f422a851440 Options.allow_ingest_behind: 0 +2020/01/11-11:16:32.954820 7f422a851440 Options.preserve_deletes: 0 +2020/01/11-11:16:32.954822 7f422a851440 Options.two_write_queues: 0 +2020/01/11-11:16:32.954823 7f422a851440 Options.manual_wal_flush: 0 +2020/01/11-11:16:32.954824 7f422a851440 Options.atomic_flush: 0 +2020/01/11-11:16:32.954825 7f422a851440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-11:16:32.954826 7f422a851440 Options.max_background_jobs: 2 +2020/01/11-11:16:32.954827 7f422a851440 Options.max_background_compactions: -1 +2020/01/11-11:16:32.954828 7f422a851440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-11:16:32.954830 7f422a851440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-11:16:32.954831 7f422a851440 Options.delayed_write_rate : 16777216 +2020/01/11-11:16:32.954832 7f422a851440 Options.max_total_wal_size: 0 +2020/01/11-11:16:32.954833 7f422a851440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-11:16:32.954834 7f422a851440 Options.stats_dump_period_sec: 600 +2020/01/11-11:16:32.954836 7f422a851440 Options.stats_persist_period_sec: 600 +2020/01/11-11:16:32.954837 7f422a851440 Options.stats_history_buffer_size: 1048576 +2020/01/11-11:16:32.954838 7f422a851440 Options.max_open_files: -1 +2020/01/11-11:16:32.954839 7f422a851440 Options.bytes_per_sync: 0 +2020/01/11-11:16:32.954841 7f422a851440 Options.wal_bytes_per_sync: 0 +2020/01/11-11:16:32.954842 7f422a851440 Options.strict_bytes_per_sync: 0 +2020/01/11-11:16:32.954843 7f422a851440 Options.compaction_readahead_size: 0 +2020/01/11-11:16:32.954844 7f422a851440 Compression algorithms supported: +2020/01/11-11:16:32.954856 7f422a851440 kZSTDNotFinalCompression supported: 0 +2020/01/11-11:16:32.954862 7f422a851440 kZSTD supported: 0 +2020/01/11-11:16:32.954863 7f422a851440 kXpressCompression supported: 0 +2020/01/11-11:16:32.954864 7f422a851440 kLZ4HCCompression supported: 0 +2020/01/11-11:16:32.954866 7f422a851440 kLZ4Compression supported: 0 +2020/01/11-11:16:32.954867 7f422a851440 kBZip2Compression supported: 1 +2020/01/11-11:16:32.954868 7f422a851440 kZlibCompression supported: 1 +2020/01/11-11:16:32.954869 7f422a851440 kSnappyCompression supported: 0 +2020/01/11-11:16:32.954871 7f422a851440 Fast CRC32 supported: Supported on x86 +2020/01/11-11:16:32.955074 7f422a851440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000001 +2020/01/11-11:16:32.955134 7f422a851440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-11:16:32.955138 7f422a851440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-11:16:32.955139 7f422a851440 Options.merge_operator: None +2020/01/11-11:16:32.955141 7f422a851440 Options.compaction_filter: None +2020/01/11-11:16:32.955142 7f422a851440 Options.compaction_filter_factory: None +2020/01/11-11:16:32.955143 7f422a851440 Options.memtable_factory: SkipListFactory +2020/01/11-11:16:32.955155 7f422a851440 Options.table_factory: BlockBasedTable +2020/01/11-11:16:32.955188 7f422a851440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1df01130) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x1d62c180 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-11:16:32.955193 7f422a851440 Options.write_buffer_size: 67108864 +2020/01/11-11:16:32.955194 7f422a851440 Options.max_write_buffer_number: 2 +2020/01/11-11:16:32.955196 7f422a851440 Options.compression: NoCompression +2020/01/11-11:16:32.955198 7f422a851440 Options.bottommost_compression: Disabled +2020/01/11-11:16:32.955199 7f422a851440 Options.prefix_extractor: nullptr +2020/01/11-11:16:32.955200 7f422a851440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-11:16:32.955202 7f422a851440 Options.num_levels: 7 +2020/01/11-11:16:32.955203 7f422a851440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-11:16:32.955204 7f422a851440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-11:16:32.955205 7f422a851440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-11:16:32.955207 7f422a851440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-11:16:32.955208 7f422a851440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-11:16:32.955209 7f422a851440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-11:16:32.955210 7f422a851440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-11:16:32.955211 7f422a851440 Options.bottommost_compression_opts.enabled: false +2020/01/11-11:16:32.955213 7f422a851440 Options.compression_opts.window_bits: -14 +2020/01/11-11:16:32.955214 7f422a851440 Options.compression_opts.level: 32767 +2020/01/11-11:16:32.955215 7f422a851440 Options.compression_opts.strategy: 0 +2020/01/11-11:16:32.955216 7f422a851440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-11:16:32.955218 7f422a851440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-11:16:32.955219 7f422a851440 Options.compression_opts.enabled: false +2020/01/11-11:16:32.955220 7f422a851440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-11:16:32.955221 7f422a851440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-11:16:32.955223 7f422a851440 Options.level0_stop_writes_trigger: 36 +2020/01/11-11:16:32.955224 7f422a851440 Options.target_file_size_base: 67108864 +2020/01/11-11:16:32.955225 7f422a851440 Options.target_file_size_multiplier: 1 +2020/01/11-11:16:32.955226 7f422a851440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-11:16:32.955228 7f422a851440 Options.snap_refresh_nanos: 0 +2020/01/11-11:16:32.955229 7f422a851440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-11:16:32.955230 7f422a851440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-11:16:32.955232 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-11:16:32.955238 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-11:16:32.955240 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-11:16:32.955241 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-11:16:32.955242 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-11:16:32.955243 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-11:16:32.955244 7f422a851440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-11:16:32.955245 7f422a851440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-11:16:32.955246 7f422a851440 Options.max_compaction_bytes: 1677721600 +2020/01/11-11:16:32.955248 7f422a851440 Options.arena_block_size: 8388608 +2020/01/11-11:16:32.955249 7f422a851440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-11:16:32.955250 7f422a851440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-11:16:32.955251 7f422a851440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-11:16:32.955252 7f422a851440 Options.disable_auto_compactions: 0 +2020/01/11-11:16:32.955254 7f422a851440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-11:16:32.955256 7f422a851440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-11:16:32.955257 7f422a851440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-11:16:32.955258 7f422a851440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-11:16:32.955259 7f422a851440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-11:16:32.955260 7f422a851440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-11:16:32.955262 7f422a851440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-11:16:32.955263 7f422a851440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-11:16:32.955264 7f422a851440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-11:16:32.955265 7f422a851440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-11:16:32.955267 7f422a851440 Options.table_properties_collectors: +2020/01/11-11:16:32.955268 7f422a851440 Options.inplace_update_support: 0 +2020/01/11-11:16:32.955269 7f422a851440 Options.inplace_update_num_locks: 10000 +2020/01/11-11:16:32.955270 7f422a851440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-11:16:32.955272 7f422a851440 Options.memtable_whole_key_filtering: 0 +2020/01/11-11:16:32.955273 7f422a851440 Options.memtable_huge_page_size: 0 +2020/01/11-11:16:32.955274 7f422a851440 Options.bloom_locality: 0 +2020/01/11-11:16:32.955275 7f422a851440 Options.max_successive_merges: 0 +2020/01/11-11:16:32.955276 7f422a851440 Options.optimize_filters_for_hits: 0 +2020/01/11-11:16:32.955277 7f422a851440 Options.paranoid_file_checks: 0 +2020/01/11-11:16:32.955278 7f422a851440 Options.force_consistency_checks: 0 +2020/01/11-11:16:32.955280 7f422a851440 Options.report_bg_io_stats: 0 +2020/01/11-11:16:32.955281 7f422a851440 Options.ttl: 0 +2020/01/11-11:16:32.955282 7f422a851440 Options.periodic_compaction_seconds: 0 +2020/01/11-11:16:32.955848 7f422a851440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000001 succeeded,manifest_file_number is 1, next_file_number is 3, last_sequence is 0, log_number is 0,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-11:16:32.955853 7f422a851440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 0 +2020/01/11-11:16:32.955918 7f422a851440 EVENT_LOG_v1 {"time_micros": 1578712592955905, "job": 1, "event": "recovery_started", "log_files": [3]} +2020/01/11-11:16:32.955931 7f422a851440 [/db_impl_open.cc:597] Recovering log #3 mode 2 +2020/01/11-11:16:32.955994 7f422a851440 [/version_set.cc:3546] Creating manifest 5 +2020/01/11-11:16:32.957004 7f422a851440 EVENT_LOG_v1 {"time_micros": 1578712592956998, "job": 1, "event": "recovery_finished"} +2020/01/11-11:16:32.958911 7f422a851440 DB pointer 0x1f470de0 +2020/01/11-11:16:32.959218 7f41ac7f3700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-11:16:32.959255 7f41ac7f3700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-11:26:32.959466 7f41ac7f3700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-11:26:32.959522 7f41ac7f3700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-11:36:32.959737 7f41ac7f3700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-11:36:32.959786 7f41ac7f3700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 1200.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1200.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1200.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-11:46:32.960005 7f41ac7f3700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-11:46:32.960058 7f41ac7f3700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 1800.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1800.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 1800.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-11:56:32.960277 7f41ac7f3700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-11:56:32.960328 7f41ac7f3700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 2400.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 2400.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 2400.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578716053197010 b/examples/demo-serving/kvdb/LOG.old.1578716053197010 new file mode 100644 index 0000000000000000000000000000000000000000..971152ba58d33016ba55dcbc6018af9aa9e52bb0 --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578716053197010 @@ -0,0 +1,258 @@ +2020/01/11-12:07:58.727896 7effc50af440 RocksDB version: 6.2.4 +2020/01/11-12:07:58.727932 7effc50af440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-12:07:58.727935 7effc50af440 Compile date Dec 23 2019 +2020/01/11-12:07:58.727938 7effc50af440 DB SUMMARY +2020/01/11-12:07:58.727964 7effc50af440 CURRENT file: CURRENT +2020/01/11-12:07:58.727966 7effc50af440 IDENTITY file: IDENTITY +2020/01/11-12:07:58.727969 7effc50af440 MANIFEST file: MANIFEST-000005 size: 59 Bytes +2020/01/11-12:07:58.727971 7effc50af440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-12:07:58.727973 7effc50af440 Write Ahead Log file in kvdb: 000006.log size: 0 ; +2020/01/11-12:07:58.727975 7effc50af440 Options.error_if_exists: 0 +2020/01/11-12:07:58.727977 7effc50af440 Options.create_if_missing: 1 +2020/01/11-12:07:58.727978 7effc50af440 Options.paranoid_checks: 1 +2020/01/11-12:07:58.727979 7effc50af440 Options.env: 0x1bed2ac0 +2020/01/11-12:07:58.727981 7effc50af440 Options.info_log: 0x20e963c0 +2020/01/11-12:07:58.727982 7effc50af440 Options.max_file_opening_threads: 16 +2020/01/11-12:07:58.727983 7effc50af440 Options.statistics: (nil) +2020/01/11-12:07:58.727984 7effc50af440 Options.use_fsync: 0 +2020/01/11-12:07:58.727986 7effc50af440 Options.max_log_file_size: 0 +2020/01/11-12:07:58.727987 7effc50af440 Options.max_manifest_file_size: 1073741824 +2020/01/11-12:07:58.727988 7effc50af440 Options.log_file_time_to_roll: 0 +2020/01/11-12:07:58.727989 7effc50af440 Options.keep_log_file_num: 1000 +2020/01/11-12:07:58.727990 7effc50af440 Options.recycle_log_file_num: 0 +2020/01/11-12:07:58.727992 7effc50af440 Options.allow_fallocate: 1 +2020/01/11-12:07:58.727993 7effc50af440 Options.allow_mmap_reads: 0 +2020/01/11-12:07:58.727994 7effc50af440 Options.allow_mmap_writes: 0 +2020/01/11-12:07:58.727995 7effc50af440 Options.use_direct_reads: 0 +2020/01/11-12:07:58.727996 7effc50af440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-12:07:58.727997 7effc50af440 Options.create_missing_column_families: 0 +2020/01/11-12:07:58.728000 7effc50af440 Options.db_log_dir: +2020/01/11-12:07:58.728001 7effc50af440 Options.wal_dir: kvdb +2020/01/11-12:07:58.728002 7effc50af440 Options.table_cache_numshardbits: 6 +2020/01/11-12:07:58.728003 7effc50af440 Options.max_subcompactions: 1 +2020/01/11-12:07:58.728004 7effc50af440 Options.max_background_flushes: -1 +2020/01/11-12:07:58.728006 7effc50af440 Options.WAL_ttl_seconds: 0 +2020/01/11-12:07:58.728007 7effc50af440 Options.WAL_size_limit_MB: 0 +2020/01/11-12:07:58.728008 7effc50af440 Options.manifest_preallocation_size: 4194304 +2020/01/11-12:07:58.728009 7effc50af440 Options.is_fd_close_on_exec: 1 +2020/01/11-12:07:58.728010 7effc50af440 Options.advise_random_on_open: 1 +2020/01/11-12:07:58.728011 7effc50af440 Options.db_write_buffer_size: 0 +2020/01/11-12:07:58.728012 7effc50af440 Options.write_buffer_manager: 0x20e96420 +2020/01/11-12:07:58.728014 7effc50af440 Options.access_hint_on_compaction_start: 1 +2020/01/11-12:07:58.728015 7effc50af440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-12:07:58.728016 7effc50af440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-12:07:58.728017 7effc50af440 Options.use_adaptive_mutex: 0 +2020/01/11-12:07:58.728018 7effc50af440 Options.rate_limiter: (nil) +2020/01/11-12:07:58.728020 7effc50af440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-12:07:58.728021 7effc50af440 Options.wal_recovery_mode: 2 +2020/01/11-12:07:58.728028 7effc50af440 Options.enable_thread_tracking: 0 +2020/01/11-12:07:58.728029 7effc50af440 Options.enable_pipelined_write: 0 +2020/01/11-12:07:58.728030 7effc50af440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-12:07:58.728031 7effc50af440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-12:07:58.728032 7effc50af440 Options.write_thread_max_yield_usec: 100 +2020/01/11-12:07:58.728034 7effc50af440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-12:07:58.728035 7effc50af440 Options.row_cache: None +2020/01/11-12:07:58.728036 7effc50af440 Options.wal_filter: None +2020/01/11-12:07:58.728038 7effc50af440 Options.avoid_flush_during_recovery: 0 +2020/01/11-12:07:58.728039 7effc50af440 Options.allow_ingest_behind: 0 +2020/01/11-12:07:58.728040 7effc50af440 Options.preserve_deletes: 0 +2020/01/11-12:07:58.728041 7effc50af440 Options.two_write_queues: 0 +2020/01/11-12:07:58.728042 7effc50af440 Options.manual_wal_flush: 0 +2020/01/11-12:07:58.728043 7effc50af440 Options.atomic_flush: 0 +2020/01/11-12:07:58.728044 7effc50af440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-12:07:58.728046 7effc50af440 Options.max_background_jobs: 2 +2020/01/11-12:07:58.728047 7effc50af440 Options.max_background_compactions: -1 +2020/01/11-12:07:58.728048 7effc50af440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-12:07:58.728049 7effc50af440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-12:07:58.728050 7effc50af440 Options.delayed_write_rate : 16777216 +2020/01/11-12:07:58.728051 7effc50af440 Options.max_total_wal_size: 0 +2020/01/11-12:07:58.728052 7effc50af440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-12:07:58.728054 7effc50af440 Options.stats_dump_period_sec: 600 +2020/01/11-12:07:58.728055 7effc50af440 Options.stats_persist_period_sec: 600 +2020/01/11-12:07:58.728056 7effc50af440 Options.stats_history_buffer_size: 1048576 +2020/01/11-12:07:58.728057 7effc50af440 Options.max_open_files: -1 +2020/01/11-12:07:58.728058 7effc50af440 Options.bytes_per_sync: 0 +2020/01/11-12:07:58.728060 7effc50af440 Options.wal_bytes_per_sync: 0 +2020/01/11-12:07:58.728061 7effc50af440 Options.strict_bytes_per_sync: 0 +2020/01/11-12:07:58.728062 7effc50af440 Options.compaction_readahead_size: 0 +2020/01/11-12:07:58.728063 7effc50af440 Compression algorithms supported: +2020/01/11-12:07:58.728066 7effc50af440 kZSTDNotFinalCompression supported: 0 +2020/01/11-12:07:58.728069 7effc50af440 kZSTD supported: 0 +2020/01/11-12:07:58.728070 7effc50af440 kXpressCompression supported: 0 +2020/01/11-12:07:58.728071 7effc50af440 kLZ4HCCompression supported: 0 +2020/01/11-12:07:58.728073 7effc50af440 kLZ4Compression supported: 0 +2020/01/11-12:07:58.728074 7effc50af440 kBZip2Compression supported: 1 +2020/01/11-12:07:58.728076 7effc50af440 kZlibCompression supported: 1 +2020/01/11-12:07:58.728077 7effc50af440 kSnappyCompression supported: 0 +2020/01/11-12:07:58.728079 7effc50af440 Fast CRC32 supported: Supported on x86 +2020/01/11-12:07:58.728282 7effc50af440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000005 +2020/01/11-12:07:58.728341 7effc50af440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-12:07:58.728344 7effc50af440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-12:07:58.728345 7effc50af440 Options.merge_operator: None +2020/01/11-12:07:58.728347 7effc50af440 Options.compaction_filter: None +2020/01/11-12:07:58.728348 7effc50af440 Options.compaction_filter_factory: None +2020/01/11-12:07:58.728349 7effc50af440 Options.memtable_factory: SkipListFactory +2020/01/11-12:07:58.728357 7effc50af440 Options.table_factory: BlockBasedTable +2020/01/11-12:07:58.728388 7effc50af440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1eca3230) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x20e93940 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-12:07:58.728392 7effc50af440 Options.write_buffer_size: 67108864 +2020/01/11-12:07:58.728393 7effc50af440 Options.max_write_buffer_number: 2 +2020/01/11-12:07:58.728395 7effc50af440 Options.compression: NoCompression +2020/01/11-12:07:58.728396 7effc50af440 Options.bottommost_compression: Disabled +2020/01/11-12:07:58.728398 7effc50af440 Options.prefix_extractor: nullptr +2020/01/11-12:07:58.728399 7effc50af440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-12:07:58.728400 7effc50af440 Options.num_levels: 7 +2020/01/11-12:07:58.728401 7effc50af440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-12:07:58.728403 7effc50af440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-12:07:58.728404 7effc50af440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-12:07:58.728413 7effc50af440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-12:07:58.728415 7effc50af440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-12:07:58.728416 7effc50af440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-12:07:58.728417 7effc50af440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:07:58.728418 7effc50af440 Options.bottommost_compression_opts.enabled: false +2020/01/11-12:07:58.728420 7effc50af440 Options.compression_opts.window_bits: -14 +2020/01/11-12:07:58.728421 7effc50af440 Options.compression_opts.level: 32767 +2020/01/11-12:07:58.728422 7effc50af440 Options.compression_opts.strategy: 0 +2020/01/11-12:07:58.728423 7effc50af440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-12:07:58.728424 7effc50af440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:07:58.728425 7effc50af440 Options.compression_opts.enabled: false +2020/01/11-12:07:58.728427 7effc50af440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-12:07:58.728428 7effc50af440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-12:07:58.728429 7effc50af440 Options.level0_stop_writes_trigger: 36 +2020/01/11-12:07:58.728430 7effc50af440 Options.target_file_size_base: 67108864 +2020/01/11-12:07:58.728431 7effc50af440 Options.target_file_size_multiplier: 1 +2020/01/11-12:07:58.728432 7effc50af440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-12:07:58.728434 7effc50af440 Options.snap_refresh_nanos: 0 +2020/01/11-12:07:58.728435 7effc50af440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-12:07:58.728436 7effc50af440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-12:07:58.728438 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-12:07:58.728445 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-12:07:58.728447 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-12:07:58.728448 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-12:07:58.728449 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-12:07:58.728450 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-12:07:58.728451 7effc50af440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-12:07:58.728452 7effc50af440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-12:07:58.728453 7effc50af440 Options.max_compaction_bytes: 1677721600 +2020/01/11-12:07:58.728455 7effc50af440 Options.arena_block_size: 8388608 +2020/01/11-12:07:58.728456 7effc50af440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-12:07:58.728457 7effc50af440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-12:07:58.728458 7effc50af440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-12:07:58.728459 7effc50af440 Options.disable_auto_compactions: 0 +2020/01/11-12:07:58.728461 7effc50af440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-12:07:58.728463 7effc50af440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-12:07:58.728464 7effc50af440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-12:07:58.728466 7effc50af440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-12:07:58.728467 7effc50af440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-12:07:58.728468 7effc50af440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-12:07:58.728469 7effc50af440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-12:07:58.728471 7effc50af440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-12:07:58.728472 7effc50af440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-12:07:58.728473 7effc50af440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-12:07:58.728475 7effc50af440 Options.table_properties_collectors: +2020/01/11-12:07:58.728476 7effc50af440 Options.inplace_update_support: 0 +2020/01/11-12:07:58.728477 7effc50af440 Options.inplace_update_num_locks: 10000 +2020/01/11-12:07:58.728478 7effc50af440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-12:07:58.728479 7effc50af440 Options.memtable_whole_key_filtering: 0 +2020/01/11-12:07:58.728481 7effc50af440 Options.memtable_huge_page_size: 0 +2020/01/11-12:07:58.728482 7effc50af440 Options.bloom_locality: 0 +2020/01/11-12:07:58.728483 7effc50af440 Options.max_successive_merges: 0 +2020/01/11-12:07:58.728484 7effc50af440 Options.optimize_filters_for_hits: 0 +2020/01/11-12:07:58.728485 7effc50af440 Options.paranoid_file_checks: 0 +2020/01/11-12:07:58.728486 7effc50af440 Options.force_consistency_checks: 0 +2020/01/11-12:07:58.728487 7effc50af440 Options.report_bg_io_stats: 0 +2020/01/11-12:07:58.728489 7effc50af440 Options.ttl: 0 +2020/01/11-12:07:58.728490 7effc50af440 Options.periodic_compaction_seconds: 0 +2020/01/11-12:07:58.729011 7effc50af440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000005 succeeded,manifest_file_number is 5, next_file_number is 7, last_sequence is 0, log_number is 4,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-12:07:58.729015 7effc50af440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 4 +2020/01/11-12:07:58.729081 7effc50af440 EVENT_LOG_v1 {"time_micros": 1578715678729069, "job": 1, "event": "recovery_started", "log_files": [6]} +2020/01/11-12:07:58.729092 7effc50af440 [/db_impl_open.cc:597] Recovering log #6 mode 2 +2020/01/11-12:07:58.729153 7effc50af440 [/version_set.cc:3546] Creating manifest 8 +2020/01/11-12:07:58.730101 7effc50af440 EVENT_LOG_v1 {"time_micros": 1578715678730097, "job": 1, "event": "recovery_finished"} +2020/01/11-12:07:58.732193 7effc50af440 DB pointer 0x20e950b0 +2020/01/11-12:07:58.732503 7eff4a1fc700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:07:58.732538 7eff4a1fc700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578716645179721 b/examples/demo-serving/kvdb/LOG.old.1578716645179721 new file mode 100644 index 0000000000000000000000000000000000000000..dc0c0a43036041ea2631265817c19d3f227d9fe4 --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578716645179721 @@ -0,0 +1,258 @@ +2020/01/11-12:14:13.197446 7fd2bb712440 RocksDB version: 6.2.4 +2020/01/11-12:14:13.197484 7fd2bb712440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-12:14:13.197486 7fd2bb712440 Compile date Dec 23 2019 +2020/01/11-12:14:13.197489 7fd2bb712440 DB SUMMARY +2020/01/11-12:14:13.197519 7fd2bb712440 CURRENT file: CURRENT +2020/01/11-12:14:13.197521 7fd2bb712440 IDENTITY file: IDENTITY +2020/01/11-12:14:13.197524 7fd2bb712440 MANIFEST file: MANIFEST-000008 size: 59 Bytes +2020/01/11-12:14:13.197527 7fd2bb712440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-12:14:13.197528 7fd2bb712440 Write Ahead Log file in kvdb: 000009.log size: 0 ; +2020/01/11-12:14:13.197531 7fd2bb712440 Options.error_if_exists: 0 +2020/01/11-12:14:13.197532 7fd2bb712440 Options.create_if_missing: 1 +2020/01/11-12:14:13.197533 7fd2bb712440 Options.paranoid_checks: 1 +2020/01/11-12:14:13.197535 7fd2bb712440 Options.env: 0x1bed2ac0 +2020/01/11-12:14:13.197536 7fd2bb712440 Options.info_log: 0x1fd86b00 +2020/01/11-12:14:13.197537 7fd2bb712440 Options.max_file_opening_threads: 16 +2020/01/11-12:14:13.197538 7fd2bb712440 Options.statistics: (nil) +2020/01/11-12:14:13.197540 7fd2bb712440 Options.use_fsync: 0 +2020/01/11-12:14:13.197541 7fd2bb712440 Options.max_log_file_size: 0 +2020/01/11-12:14:13.197542 7fd2bb712440 Options.max_manifest_file_size: 1073741824 +2020/01/11-12:14:13.197543 7fd2bb712440 Options.log_file_time_to_roll: 0 +2020/01/11-12:14:13.197545 7fd2bb712440 Options.keep_log_file_num: 1000 +2020/01/11-12:14:13.197546 7fd2bb712440 Options.recycle_log_file_num: 0 +2020/01/11-12:14:13.197547 7fd2bb712440 Options.allow_fallocate: 1 +2020/01/11-12:14:13.197548 7fd2bb712440 Options.allow_mmap_reads: 0 +2020/01/11-12:14:13.197549 7fd2bb712440 Options.allow_mmap_writes: 0 +2020/01/11-12:14:13.197550 7fd2bb712440 Options.use_direct_reads: 0 +2020/01/11-12:14:13.197551 7fd2bb712440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-12:14:13.197553 7fd2bb712440 Options.create_missing_column_families: 0 +2020/01/11-12:14:13.197555 7fd2bb712440 Options.db_log_dir: +2020/01/11-12:14:13.197556 7fd2bb712440 Options.wal_dir: kvdb +2020/01/11-12:14:13.197558 7fd2bb712440 Options.table_cache_numshardbits: 6 +2020/01/11-12:14:13.197559 7fd2bb712440 Options.max_subcompactions: 1 +2020/01/11-12:14:13.197560 7fd2bb712440 Options.max_background_flushes: -1 +2020/01/11-12:14:13.197561 7fd2bb712440 Options.WAL_ttl_seconds: 0 +2020/01/11-12:14:13.197563 7fd2bb712440 Options.WAL_size_limit_MB: 0 +2020/01/11-12:14:13.197564 7fd2bb712440 Options.manifest_preallocation_size: 4194304 +2020/01/11-12:14:13.197565 7fd2bb712440 Options.is_fd_close_on_exec: 1 +2020/01/11-12:14:13.197566 7fd2bb712440 Options.advise_random_on_open: 1 +2020/01/11-12:14:13.197567 7fd2bb712440 Options.db_write_buffer_size: 0 +2020/01/11-12:14:13.197568 7fd2bb712440 Options.write_buffer_manager: 0x1dd0b160 +2020/01/11-12:14:13.197570 7fd2bb712440 Options.access_hint_on_compaction_start: 1 +2020/01/11-12:14:13.197571 7fd2bb712440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-12:14:13.197572 7fd2bb712440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-12:14:13.197573 7fd2bb712440 Options.use_adaptive_mutex: 0 +2020/01/11-12:14:13.197574 7fd2bb712440 Options.rate_limiter: (nil) +2020/01/11-12:14:13.197576 7fd2bb712440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-12:14:13.197577 7fd2bb712440 Options.wal_recovery_mode: 2 +2020/01/11-12:14:13.197584 7fd2bb712440 Options.enable_thread_tracking: 0 +2020/01/11-12:14:13.197585 7fd2bb712440 Options.enable_pipelined_write: 0 +2020/01/11-12:14:13.197586 7fd2bb712440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-12:14:13.197587 7fd2bb712440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-12:14:13.197589 7fd2bb712440 Options.write_thread_max_yield_usec: 100 +2020/01/11-12:14:13.197590 7fd2bb712440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-12:14:13.197591 7fd2bb712440 Options.row_cache: None +2020/01/11-12:14:13.197592 7fd2bb712440 Options.wal_filter: None +2020/01/11-12:14:13.197594 7fd2bb712440 Options.avoid_flush_during_recovery: 0 +2020/01/11-12:14:13.197595 7fd2bb712440 Options.allow_ingest_behind: 0 +2020/01/11-12:14:13.197596 7fd2bb712440 Options.preserve_deletes: 0 +2020/01/11-12:14:13.197597 7fd2bb712440 Options.two_write_queues: 0 +2020/01/11-12:14:13.197598 7fd2bb712440 Options.manual_wal_flush: 0 +2020/01/11-12:14:13.197599 7fd2bb712440 Options.atomic_flush: 0 +2020/01/11-12:14:13.197600 7fd2bb712440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-12:14:13.197602 7fd2bb712440 Options.max_background_jobs: 2 +2020/01/11-12:14:13.197603 7fd2bb712440 Options.max_background_compactions: -1 +2020/01/11-12:14:13.197604 7fd2bb712440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-12:14:13.197605 7fd2bb712440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-12:14:13.197606 7fd2bb712440 Options.delayed_write_rate : 16777216 +2020/01/11-12:14:13.197607 7fd2bb712440 Options.max_total_wal_size: 0 +2020/01/11-12:14:13.197609 7fd2bb712440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-12:14:13.197610 7fd2bb712440 Options.stats_dump_period_sec: 600 +2020/01/11-12:14:13.197611 7fd2bb712440 Options.stats_persist_period_sec: 600 +2020/01/11-12:14:13.197612 7fd2bb712440 Options.stats_history_buffer_size: 1048576 +2020/01/11-12:14:13.197614 7fd2bb712440 Options.max_open_files: -1 +2020/01/11-12:14:13.197615 7fd2bb712440 Options.bytes_per_sync: 0 +2020/01/11-12:14:13.197616 7fd2bb712440 Options.wal_bytes_per_sync: 0 +2020/01/11-12:14:13.197617 7fd2bb712440 Options.strict_bytes_per_sync: 0 +2020/01/11-12:14:13.197618 7fd2bb712440 Options.compaction_readahead_size: 0 +2020/01/11-12:14:13.197619 7fd2bb712440 Compression algorithms supported: +2020/01/11-12:14:13.197632 7fd2bb712440 kZSTDNotFinalCompression supported: 0 +2020/01/11-12:14:13.197642 7fd2bb712440 kZSTD supported: 0 +2020/01/11-12:14:13.197644 7fd2bb712440 kXpressCompression supported: 0 +2020/01/11-12:14:13.197645 7fd2bb712440 kLZ4HCCompression supported: 0 +2020/01/11-12:14:13.197646 7fd2bb712440 kLZ4Compression supported: 0 +2020/01/11-12:14:13.197647 7fd2bb712440 kBZip2Compression supported: 1 +2020/01/11-12:14:13.197649 7fd2bb712440 kZlibCompression supported: 1 +2020/01/11-12:14:13.197650 7fd2bb712440 kSnappyCompression supported: 0 +2020/01/11-12:14:13.197652 7fd2bb712440 Fast CRC32 supported: Supported on x86 +2020/01/11-12:14:13.197844 7fd2bb712440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000008 +2020/01/11-12:14:13.197902 7fd2bb712440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-12:14:13.197906 7fd2bb712440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-12:14:13.197907 7fd2bb712440 Options.merge_operator: None +2020/01/11-12:14:13.197909 7fd2bb712440 Options.compaction_filter: None +2020/01/11-12:14:13.197910 7fd2bb712440 Options.compaction_filter_factory: None +2020/01/11-12:14:13.197911 7fd2bb712440 Options.memtable_factory: SkipListFactory +2020/01/11-12:14:13.197922 7fd2bb712440 Options.table_factory: BlockBasedTable +2020/01/11-12:14:13.197955 7fd2bb712440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1e99cbf0) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x1e9cf0f0 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-12:14:13.197959 7fd2bb712440 Options.write_buffer_size: 67108864 +2020/01/11-12:14:13.197960 7fd2bb712440 Options.max_write_buffer_number: 2 +2020/01/11-12:14:13.197962 7fd2bb712440 Options.compression: NoCompression +2020/01/11-12:14:13.197963 7fd2bb712440 Options.bottommost_compression: Disabled +2020/01/11-12:14:13.197965 7fd2bb712440 Options.prefix_extractor: nullptr +2020/01/11-12:14:13.197966 7fd2bb712440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-12:14:13.197967 7fd2bb712440 Options.num_levels: 7 +2020/01/11-12:14:13.197968 7fd2bb712440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-12:14:13.197970 7fd2bb712440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-12:14:13.197971 7fd2bb712440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-12:14:13.197972 7fd2bb712440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-12:14:13.197973 7fd2bb712440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-12:14:13.197975 7fd2bb712440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-12:14:13.197976 7fd2bb712440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:14:13.197977 7fd2bb712440 Options.bottommost_compression_opts.enabled: false +2020/01/11-12:14:13.197978 7fd2bb712440 Options.compression_opts.window_bits: -14 +2020/01/11-12:14:13.197980 7fd2bb712440 Options.compression_opts.level: 32767 +2020/01/11-12:14:13.197981 7fd2bb712440 Options.compression_opts.strategy: 0 +2020/01/11-12:14:13.197982 7fd2bb712440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-12:14:13.197983 7fd2bb712440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:14:13.197984 7fd2bb712440 Options.compression_opts.enabled: false +2020/01/11-12:14:13.197985 7fd2bb712440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-12:14:13.197987 7fd2bb712440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-12:14:13.197988 7fd2bb712440 Options.level0_stop_writes_trigger: 36 +2020/01/11-12:14:13.197989 7fd2bb712440 Options.target_file_size_base: 67108864 +2020/01/11-12:14:13.197990 7fd2bb712440 Options.target_file_size_multiplier: 1 +2020/01/11-12:14:13.197991 7fd2bb712440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-12:14:13.197992 7fd2bb712440 Options.snap_refresh_nanos: 0 +2020/01/11-12:14:13.197994 7fd2bb712440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-12:14:13.197995 7fd2bb712440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-12:14:13.197997 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-12:14:13.198004 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-12:14:13.198005 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-12:14:13.198006 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-12:14:13.198007 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-12:14:13.198009 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-12:14:13.198010 7fd2bb712440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-12:14:13.198011 7fd2bb712440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-12:14:13.198012 7fd2bb712440 Options.max_compaction_bytes: 1677721600 +2020/01/11-12:14:13.198013 7fd2bb712440 Options.arena_block_size: 8388608 +2020/01/11-12:14:13.198014 7fd2bb712440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-12:14:13.198016 7fd2bb712440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-12:14:13.198017 7fd2bb712440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-12:14:13.198018 7fd2bb712440 Options.disable_auto_compactions: 0 +2020/01/11-12:14:13.198020 7fd2bb712440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-12:14:13.198021 7fd2bb712440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-12:14:13.198022 7fd2bb712440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-12:14:13.198024 7fd2bb712440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-12:14:13.198025 7fd2bb712440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-12:14:13.198026 7fd2bb712440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-12:14:13.198027 7fd2bb712440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-12:14:13.198028 7fd2bb712440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-12:14:13.198030 7fd2bb712440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-12:14:13.198031 7fd2bb712440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-12:14:13.198032 7fd2bb712440 Options.table_properties_collectors: +2020/01/11-12:14:13.198033 7fd2bb712440 Options.inplace_update_support: 0 +2020/01/11-12:14:13.198034 7fd2bb712440 Options.inplace_update_num_locks: 10000 +2020/01/11-12:14:13.198035 7fd2bb712440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-12:14:13.198037 7fd2bb712440 Options.memtable_whole_key_filtering: 0 +2020/01/11-12:14:13.198038 7fd2bb712440 Options.memtable_huge_page_size: 0 +2020/01/11-12:14:13.198039 7fd2bb712440 Options.bloom_locality: 0 +2020/01/11-12:14:13.198040 7fd2bb712440 Options.max_successive_merges: 0 +2020/01/11-12:14:13.198042 7fd2bb712440 Options.optimize_filters_for_hits: 0 +2020/01/11-12:14:13.198043 7fd2bb712440 Options.paranoid_file_checks: 0 +2020/01/11-12:14:13.198044 7fd2bb712440 Options.force_consistency_checks: 0 +2020/01/11-12:14:13.198045 7fd2bb712440 Options.report_bg_io_stats: 0 +2020/01/11-12:14:13.198046 7fd2bb712440 Options.ttl: 0 +2020/01/11-12:14:13.198047 7fd2bb712440 Options.periodic_compaction_seconds: 0 +2020/01/11-12:14:13.198592 7fd2bb712440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000008 succeeded,manifest_file_number is 8, next_file_number is 10, last_sequence is 0, log_number is 7,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-12:14:13.198596 7fd2bb712440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 7 +2020/01/11-12:14:13.198655 7fd2bb712440 EVENT_LOG_v1 {"time_micros": 1578716053198645, "job": 1, "event": "recovery_started", "log_files": [9]} +2020/01/11-12:14:13.198669 7fd2bb712440 [/db_impl_open.cc:597] Recovering log #9 mode 2 +2020/01/11-12:14:13.198730 7fd2bb712440 [/version_set.cc:3546] Creating manifest 11 +2020/01/11-12:14:13.199526 7fd2bb712440 EVENT_LOG_v1 {"time_micros": 1578716053199520, "job": 1, "event": "recovery_finished"} +2020/01/11-12:14:13.201585 7fd2bb712440 DB pointer 0x1fd857f0 +2020/01/11-12:14:13.201860 7fd23d1f4700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:14:13.201894 7fd23d1f4700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578717332758385 b/examples/demo-serving/kvdb/LOG.old.1578717332758385 new file mode 100644 index 0000000000000000000000000000000000000000..c986688396a37e80bcc3f0695b1621a4942f8281 --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578717332758385 @@ -0,0 +1,310 @@ +2020/01/11-12:24:05.180155 7fcf91393440 RocksDB version: 6.2.4 +2020/01/11-12:24:05.180191 7fcf91393440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-12:24:05.180194 7fcf91393440 Compile date Dec 23 2019 +2020/01/11-12:24:05.180197 7fcf91393440 DB SUMMARY +2020/01/11-12:24:05.180227 7fcf91393440 CURRENT file: CURRENT +2020/01/11-12:24:05.180229 7fcf91393440 IDENTITY file: IDENTITY +2020/01/11-12:24:05.180232 7fcf91393440 MANIFEST file: MANIFEST-000011 size: 59 Bytes +2020/01/11-12:24:05.180235 7fcf91393440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-12:24:05.180237 7fcf91393440 Write Ahead Log file in kvdb: 000012.log size: 0 ; +2020/01/11-12:24:05.180239 7fcf91393440 Options.error_if_exists: 0 +2020/01/11-12:24:05.180241 7fcf91393440 Options.create_if_missing: 1 +2020/01/11-12:24:05.180242 7fcf91393440 Options.paranoid_checks: 1 +2020/01/11-12:24:05.180243 7fcf91393440 Options.env: 0x1bed2ac0 +2020/01/11-12:24:05.180245 7fcf91393440 Options.info_log: 0x1f6774a0 +2020/01/11-12:24:05.180246 7fcf91393440 Options.max_file_opening_threads: 16 +2020/01/11-12:24:05.180247 7fcf91393440 Options.statistics: (nil) +2020/01/11-12:24:05.180248 7fcf91393440 Options.use_fsync: 0 +2020/01/11-12:24:05.180250 7fcf91393440 Options.max_log_file_size: 0 +2020/01/11-12:24:05.180251 7fcf91393440 Options.max_manifest_file_size: 1073741824 +2020/01/11-12:24:05.180252 7fcf91393440 Options.log_file_time_to_roll: 0 +2020/01/11-12:24:05.180254 7fcf91393440 Options.keep_log_file_num: 1000 +2020/01/11-12:24:05.180255 7fcf91393440 Options.recycle_log_file_num: 0 +2020/01/11-12:24:05.180256 7fcf91393440 Options.allow_fallocate: 1 +2020/01/11-12:24:05.180258 7fcf91393440 Options.allow_mmap_reads: 0 +2020/01/11-12:24:05.180259 7fcf91393440 Options.allow_mmap_writes: 0 +2020/01/11-12:24:05.180260 7fcf91393440 Options.use_direct_reads: 0 +2020/01/11-12:24:05.180261 7fcf91393440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-12:24:05.180262 7fcf91393440 Options.create_missing_column_families: 0 +2020/01/11-12:24:05.180265 7fcf91393440 Options.db_log_dir: +2020/01/11-12:24:05.180266 7fcf91393440 Options.wal_dir: kvdb +2020/01/11-12:24:05.180268 7fcf91393440 Options.table_cache_numshardbits: 6 +2020/01/11-12:24:05.180269 7fcf91393440 Options.max_subcompactions: 1 +2020/01/11-12:24:05.180270 7fcf91393440 Options.max_background_flushes: -1 +2020/01/11-12:24:05.180272 7fcf91393440 Options.WAL_ttl_seconds: 0 +2020/01/11-12:24:05.180273 7fcf91393440 Options.WAL_size_limit_MB: 0 +2020/01/11-12:24:05.180274 7fcf91393440 Options.manifest_preallocation_size: 4194304 +2020/01/11-12:24:05.180275 7fcf91393440 Options.is_fd_close_on_exec: 1 +2020/01/11-12:24:05.180277 7fcf91393440 Options.advise_random_on_open: 1 +2020/01/11-12:24:05.180278 7fcf91393440 Options.db_write_buffer_size: 0 +2020/01/11-12:24:05.180279 7fcf91393440 Options.write_buffer_manager: 0x1f677500 +2020/01/11-12:24:05.180280 7fcf91393440 Options.access_hint_on_compaction_start: 1 +2020/01/11-12:24:05.180281 7fcf91393440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-12:24:05.180282 7fcf91393440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-12:24:05.180283 7fcf91393440 Options.use_adaptive_mutex: 0 +2020/01/11-12:24:05.180285 7fcf91393440 Options.rate_limiter: (nil) +2020/01/11-12:24:05.180286 7fcf91393440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-12:24:05.180288 7fcf91393440 Options.wal_recovery_mode: 2 +2020/01/11-12:24:05.180297 7fcf91393440 Options.enable_thread_tracking: 0 +2020/01/11-12:24:05.180299 7fcf91393440 Options.enable_pipelined_write: 0 +2020/01/11-12:24:05.180300 7fcf91393440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-12:24:05.180301 7fcf91393440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-12:24:05.180302 7fcf91393440 Options.write_thread_max_yield_usec: 100 +2020/01/11-12:24:05.180303 7fcf91393440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-12:24:05.180304 7fcf91393440 Options.row_cache: None +2020/01/11-12:24:05.180306 7fcf91393440 Options.wal_filter: None +2020/01/11-12:24:05.180307 7fcf91393440 Options.avoid_flush_during_recovery: 0 +2020/01/11-12:24:05.180308 7fcf91393440 Options.allow_ingest_behind: 0 +2020/01/11-12:24:05.180309 7fcf91393440 Options.preserve_deletes: 0 +2020/01/11-12:24:05.180310 7fcf91393440 Options.two_write_queues: 0 +2020/01/11-12:24:05.180312 7fcf91393440 Options.manual_wal_flush: 0 +2020/01/11-12:24:05.180313 7fcf91393440 Options.atomic_flush: 0 +2020/01/11-12:24:05.180314 7fcf91393440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-12:24:05.180315 7fcf91393440 Options.max_background_jobs: 2 +2020/01/11-12:24:05.180316 7fcf91393440 Options.max_background_compactions: -1 +2020/01/11-12:24:05.180318 7fcf91393440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-12:24:05.180319 7fcf91393440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-12:24:05.180320 7fcf91393440 Options.delayed_write_rate : 16777216 +2020/01/11-12:24:05.180322 7fcf91393440 Options.max_total_wal_size: 0 +2020/01/11-12:24:05.180323 7fcf91393440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-12:24:05.180324 7fcf91393440 Options.stats_dump_period_sec: 600 +2020/01/11-12:24:05.180326 7fcf91393440 Options.stats_persist_period_sec: 600 +2020/01/11-12:24:05.180327 7fcf91393440 Options.stats_history_buffer_size: 1048576 +2020/01/11-12:24:05.180328 7fcf91393440 Options.max_open_files: -1 +2020/01/11-12:24:05.180329 7fcf91393440 Options.bytes_per_sync: 0 +2020/01/11-12:24:05.180330 7fcf91393440 Options.wal_bytes_per_sync: 0 +2020/01/11-12:24:05.180331 7fcf91393440 Options.strict_bytes_per_sync: 0 +2020/01/11-12:24:05.180333 7fcf91393440 Options.compaction_readahead_size: 0 +2020/01/11-12:24:05.180334 7fcf91393440 Compression algorithms supported: +2020/01/11-12:24:05.180344 7fcf91393440 kZSTDNotFinalCompression supported: 0 +2020/01/11-12:24:05.180350 7fcf91393440 kZSTD supported: 0 +2020/01/11-12:24:05.180351 7fcf91393440 kXpressCompression supported: 0 +2020/01/11-12:24:05.180352 7fcf91393440 kLZ4HCCompression supported: 0 +2020/01/11-12:24:05.180354 7fcf91393440 kLZ4Compression supported: 0 +2020/01/11-12:24:05.180355 7fcf91393440 kBZip2Compression supported: 1 +2020/01/11-12:24:05.180356 7fcf91393440 kZlibCompression supported: 1 +2020/01/11-12:24:05.180357 7fcf91393440 kSnappyCompression supported: 0 +2020/01/11-12:24:05.180360 7fcf91393440 Fast CRC32 supported: Supported on x86 +2020/01/11-12:24:05.180560 7fcf91393440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000011 +2020/01/11-12:24:05.180623 7fcf91393440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-12:24:05.180627 7fcf91393440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-12:24:05.180629 7fcf91393440 Options.merge_operator: None +2020/01/11-12:24:05.180630 7fcf91393440 Options.compaction_filter: None +2020/01/11-12:24:05.180631 7fcf91393440 Options.compaction_filter_factory: None +2020/01/11-12:24:05.180632 7fcf91393440 Options.memtable_factory: SkipListFactory +2020/01/11-12:24:05.180645 7fcf91393440 Options.table_factory: BlockBasedTable +2020/01/11-12:24:05.180680 7fcf91393440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1e2afd50) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x1e2bdf80 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-12:24:05.180684 7fcf91393440 Options.write_buffer_size: 67108864 +2020/01/11-12:24:05.180686 7fcf91393440 Options.max_write_buffer_number: 2 +2020/01/11-12:24:05.180687 7fcf91393440 Options.compression: NoCompression +2020/01/11-12:24:05.180689 7fcf91393440 Options.bottommost_compression: Disabled +2020/01/11-12:24:05.180690 7fcf91393440 Options.prefix_extractor: nullptr +2020/01/11-12:24:05.180692 7fcf91393440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-12:24:05.180693 7fcf91393440 Options.num_levels: 7 +2020/01/11-12:24:05.180694 7fcf91393440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-12:24:05.180696 7fcf91393440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-12:24:05.180697 7fcf91393440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-12:24:05.180698 7fcf91393440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-12:24:05.180699 7fcf91393440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-12:24:05.180701 7fcf91393440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-12:24:05.180702 7fcf91393440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:24:05.180703 7fcf91393440 Options.bottommost_compression_opts.enabled: false +2020/01/11-12:24:05.180705 7fcf91393440 Options.compression_opts.window_bits: -14 +2020/01/11-12:24:05.180706 7fcf91393440 Options.compression_opts.level: 32767 +2020/01/11-12:24:05.180707 7fcf91393440 Options.compression_opts.strategy: 0 +2020/01/11-12:24:05.180708 7fcf91393440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-12:24:05.180710 7fcf91393440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:24:05.180711 7fcf91393440 Options.compression_opts.enabled: false +2020/01/11-12:24:05.180712 7fcf91393440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-12:24:05.180713 7fcf91393440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-12:24:05.180715 7fcf91393440 Options.level0_stop_writes_trigger: 36 +2020/01/11-12:24:05.180716 7fcf91393440 Options.target_file_size_base: 67108864 +2020/01/11-12:24:05.180717 7fcf91393440 Options.target_file_size_multiplier: 1 +2020/01/11-12:24:05.180718 7fcf91393440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-12:24:05.180720 7fcf91393440 Options.snap_refresh_nanos: 0 +2020/01/11-12:24:05.180721 7fcf91393440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-12:24:05.180722 7fcf91393440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-12:24:05.180724 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-12:24:05.180731 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-12:24:05.180732 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-12:24:05.180733 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-12:24:05.180734 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-12:24:05.180735 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-12:24:05.180737 7fcf91393440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-12:24:05.180738 7fcf91393440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-12:24:05.180739 7fcf91393440 Options.max_compaction_bytes: 1677721600 +2020/01/11-12:24:05.180740 7fcf91393440 Options.arena_block_size: 8388608 +2020/01/11-12:24:05.180741 7fcf91393440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-12:24:05.180743 7fcf91393440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-12:24:05.180744 7fcf91393440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-12:24:05.180745 7fcf91393440 Options.disable_auto_compactions: 0 +2020/01/11-12:24:05.180747 7fcf91393440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-12:24:05.180748 7fcf91393440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-12:24:05.180749 7fcf91393440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-12:24:05.180751 7fcf91393440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-12:24:05.180752 7fcf91393440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-12:24:05.180753 7fcf91393440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-12:24:05.180754 7fcf91393440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-12:24:05.180756 7fcf91393440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-12:24:05.180757 7fcf91393440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-12:24:05.180758 7fcf91393440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-12:24:05.180759 7fcf91393440 Options.table_properties_collectors: +2020/01/11-12:24:05.180761 7fcf91393440 Options.inplace_update_support: 0 +2020/01/11-12:24:05.180762 7fcf91393440 Options.inplace_update_num_locks: 10000 +2020/01/11-12:24:05.180763 7fcf91393440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-12:24:05.180765 7fcf91393440 Options.memtable_whole_key_filtering: 0 +2020/01/11-12:24:05.180766 7fcf91393440 Options.memtable_huge_page_size: 0 +2020/01/11-12:24:05.180767 7fcf91393440 Options.bloom_locality: 0 +2020/01/11-12:24:05.180768 7fcf91393440 Options.max_successive_merges: 0 +2020/01/11-12:24:05.180769 7fcf91393440 Options.optimize_filters_for_hits: 0 +2020/01/11-12:24:05.180770 7fcf91393440 Options.paranoid_file_checks: 0 +2020/01/11-12:24:05.180771 7fcf91393440 Options.force_consistency_checks: 0 +2020/01/11-12:24:05.180773 7fcf91393440 Options.report_bg_io_stats: 0 +2020/01/11-12:24:05.180774 7fcf91393440 Options.ttl: 0 +2020/01/11-12:24:05.180775 7fcf91393440 Options.periodic_compaction_seconds: 0 +2020/01/11-12:24:05.181303 7fcf91393440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000011 succeeded,manifest_file_number is 11, next_file_number is 13, last_sequence is 0, log_number is 10,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-12:24:05.181308 7fcf91393440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 10 +2020/01/11-12:24:05.181374 7fcf91393440 EVENT_LOG_v1 {"time_micros": 1578716645181364, "job": 1, "event": "recovery_started", "log_files": [12]} +2020/01/11-12:24:05.181387 7fcf91393440 [/db_impl_open.cc:597] Recovering log #12 mode 2 +2020/01/11-12:24:05.181461 7fcf91393440 [/version_set.cc:3546] Creating manifest 14 +2020/01/11-12:24:05.182388 7fcf91393440 EVENT_LOG_v1 {"time_micros": 1578716645182384, "job": 1, "event": "recovery_finished"} +2020/01/11-12:24:05.184452 7fcf91393440 DB pointer 0x1f676190 +2020/01/11-12:24:05.184787 7fcf12bfd700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:24:05.184823 7fcf12bfd700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** +2020/01/11-12:34:05.185022 7fcf12bfd700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:34:05.185072 7fcf12bfd700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 600.0 total, 600.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 600.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 600.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/LOG.old.1578717444163782 b/examples/demo-serving/kvdb/LOG.old.1578717444163782 new file mode 100644 index 0000000000000000000000000000000000000000..998e7222e7ec47fbe4ac64418cf29b0f7a3243c8 --- /dev/null +++ b/examples/demo-serving/kvdb/LOG.old.1578717444163782 @@ -0,0 +1,258 @@ +2020/01/11-12:35:32.758840 7f43e73ec440 RocksDB version: 6.2.4 +2020/01/11-12:35:32.758875 7f43e73ec440 Git sha rocksdb_build_git_sha:3513d4e93f8530ac44cc0c1efea04be4259c6938 +2020/01/11-12:35:32.758878 7f43e73ec440 Compile date Dec 23 2019 +2020/01/11-12:35:32.758882 7f43e73ec440 DB SUMMARY +2020/01/11-12:35:32.758911 7f43e73ec440 CURRENT file: CURRENT +2020/01/11-12:35:32.758913 7f43e73ec440 IDENTITY file: IDENTITY +2020/01/11-12:35:32.758916 7f43e73ec440 MANIFEST file: MANIFEST-000014 size: 59 Bytes +2020/01/11-12:35:32.758919 7f43e73ec440 SST files in kvdb dir, Total Num: 0, files: +2020/01/11-12:35:32.758921 7f43e73ec440 Write Ahead Log file in kvdb: 000015.log size: 0 ; +2020/01/11-12:35:32.758923 7f43e73ec440 Options.error_if_exists: 0 +2020/01/11-12:35:32.758924 7f43e73ec440 Options.create_if_missing: 1 +2020/01/11-12:35:32.758926 7f43e73ec440 Options.paranoid_checks: 1 +2020/01/11-12:35:32.758927 7f43e73ec440 Options.env: 0x1bed2ac0 +2020/01/11-12:35:32.758928 7f43e73ec440 Options.info_log: 0x207818b0 +2020/01/11-12:35:32.758930 7f43e73ec440 Options.max_file_opening_threads: 16 +2020/01/11-12:35:32.758931 7f43e73ec440 Options.statistics: (nil) +2020/01/11-12:35:32.758932 7f43e73ec440 Options.use_fsync: 0 +2020/01/11-12:35:32.758934 7f43e73ec440 Options.max_log_file_size: 0 +2020/01/11-12:35:32.758935 7f43e73ec440 Options.max_manifest_file_size: 1073741824 +2020/01/11-12:35:32.758936 7f43e73ec440 Options.log_file_time_to_roll: 0 +2020/01/11-12:35:32.758937 7f43e73ec440 Options.keep_log_file_num: 1000 +2020/01/11-12:35:32.758938 7f43e73ec440 Options.recycle_log_file_num: 0 +2020/01/11-12:35:32.758940 7f43e73ec440 Options.allow_fallocate: 1 +2020/01/11-12:35:32.758941 7f43e73ec440 Options.allow_mmap_reads: 0 +2020/01/11-12:35:32.758942 7f43e73ec440 Options.allow_mmap_writes: 0 +2020/01/11-12:35:32.758943 7f43e73ec440 Options.use_direct_reads: 0 +2020/01/11-12:35:32.758944 7f43e73ec440 Options.use_direct_io_for_flush_and_compaction: 0 +2020/01/11-12:35:32.758945 7f43e73ec440 Options.create_missing_column_families: 0 +2020/01/11-12:35:32.758948 7f43e73ec440 Options.db_log_dir: +2020/01/11-12:35:32.758949 7f43e73ec440 Options.wal_dir: kvdb +2020/01/11-12:35:32.758951 7f43e73ec440 Options.table_cache_numshardbits: 6 +2020/01/11-12:35:32.758952 7f43e73ec440 Options.max_subcompactions: 1 +2020/01/11-12:35:32.758953 7f43e73ec440 Options.max_background_flushes: -1 +2020/01/11-12:35:32.758954 7f43e73ec440 Options.WAL_ttl_seconds: 0 +2020/01/11-12:35:32.758955 7f43e73ec440 Options.WAL_size_limit_MB: 0 +2020/01/11-12:35:32.758957 7f43e73ec440 Options.manifest_preallocation_size: 4194304 +2020/01/11-12:35:32.758958 7f43e73ec440 Options.is_fd_close_on_exec: 1 +2020/01/11-12:35:32.758960 7f43e73ec440 Options.advise_random_on_open: 1 +2020/01/11-12:35:32.758961 7f43e73ec440 Options.db_write_buffer_size: 0 +2020/01/11-12:35:32.758962 7f43e73ec440 Options.write_buffer_manager: 0x1e591160 +2020/01/11-12:35:32.758963 7f43e73ec440 Options.access_hint_on_compaction_start: 1 +2020/01/11-12:35:32.758964 7f43e73ec440 Options.new_table_reader_for_compaction_inputs: 0 +2020/01/11-12:35:32.758965 7f43e73ec440 Options.random_access_max_buffer_size: 1048576 +2020/01/11-12:35:32.758966 7f43e73ec440 Options.use_adaptive_mutex: 0 +2020/01/11-12:35:32.758967 7f43e73ec440 Options.rate_limiter: (nil) +2020/01/11-12:35:32.758969 7f43e73ec440 Options.sst_file_manager.rate_bytes_per_sec: 0 +2020/01/11-12:35:32.758970 7f43e73ec440 Options.wal_recovery_mode: 2 +2020/01/11-12:35:32.758977 7f43e73ec440 Options.enable_thread_tracking: 0 +2020/01/11-12:35:32.758979 7f43e73ec440 Options.enable_pipelined_write: 0 +2020/01/11-12:35:32.758980 7f43e73ec440 Options.allow_concurrent_memtable_write: 1 +2020/01/11-12:35:32.758981 7f43e73ec440 Options.enable_write_thread_adaptive_yield: 1 +2020/01/11-12:35:32.758982 7f43e73ec440 Options.write_thread_max_yield_usec: 100 +2020/01/11-12:35:32.758983 7f43e73ec440 Options.write_thread_slow_yield_usec: 3 +2020/01/11-12:35:32.758984 7f43e73ec440 Options.row_cache: None +2020/01/11-12:35:32.758985 7f43e73ec440 Options.wal_filter: None +2020/01/11-12:35:32.758987 7f43e73ec440 Options.avoid_flush_during_recovery: 0 +2020/01/11-12:35:32.758988 7f43e73ec440 Options.allow_ingest_behind: 0 +2020/01/11-12:35:32.758989 7f43e73ec440 Options.preserve_deletes: 0 +2020/01/11-12:35:32.758990 7f43e73ec440 Options.two_write_queues: 0 +2020/01/11-12:35:32.758991 7f43e73ec440 Options.manual_wal_flush: 0 +2020/01/11-12:35:32.758993 7f43e73ec440 Options.atomic_flush: 0 +2020/01/11-12:35:32.758994 7f43e73ec440 Options.avoid_unnecessary_blocking_io: 0 +2020/01/11-12:35:32.758995 7f43e73ec440 Options.max_background_jobs: 2 +2020/01/11-12:35:32.758996 7f43e73ec440 Options.max_background_compactions: -1 +2020/01/11-12:35:32.758997 7f43e73ec440 Options.avoid_flush_during_shutdown: 0 +2020/01/11-12:35:32.758998 7f43e73ec440 Options.writable_file_max_buffer_size: 1048576 +2020/01/11-12:35:32.758999 7f43e73ec440 Options.delayed_write_rate : 16777216 +2020/01/11-12:35:32.759001 7f43e73ec440 Options.max_total_wal_size: 0 +2020/01/11-12:35:32.759002 7f43e73ec440 Options.delete_obsolete_files_period_micros: 21600000000 +2020/01/11-12:35:32.759003 7f43e73ec440 Options.stats_dump_period_sec: 600 +2020/01/11-12:35:32.759004 7f43e73ec440 Options.stats_persist_period_sec: 600 +2020/01/11-12:35:32.759005 7f43e73ec440 Options.stats_history_buffer_size: 1048576 +2020/01/11-12:35:32.759007 7f43e73ec440 Options.max_open_files: -1 +2020/01/11-12:35:32.759008 7f43e73ec440 Options.bytes_per_sync: 0 +2020/01/11-12:35:32.759009 7f43e73ec440 Options.wal_bytes_per_sync: 0 +2020/01/11-12:35:32.759010 7f43e73ec440 Options.strict_bytes_per_sync: 0 +2020/01/11-12:35:32.759011 7f43e73ec440 Options.compaction_readahead_size: 0 +2020/01/11-12:35:32.759012 7f43e73ec440 Compression algorithms supported: +2020/01/11-12:35:32.759026 7f43e73ec440 kZSTDNotFinalCompression supported: 0 +2020/01/11-12:35:32.759031 7f43e73ec440 kZSTD supported: 0 +2020/01/11-12:35:32.759033 7f43e73ec440 kXpressCompression supported: 0 +2020/01/11-12:35:32.759034 7f43e73ec440 kLZ4HCCompression supported: 0 +2020/01/11-12:35:32.759035 7f43e73ec440 kLZ4Compression supported: 0 +2020/01/11-12:35:32.759036 7f43e73ec440 kBZip2Compression supported: 1 +2020/01/11-12:35:32.759038 7f43e73ec440 kZlibCompression supported: 1 +2020/01/11-12:35:32.759039 7f43e73ec440 kSnappyCompression supported: 0 +2020/01/11-12:35:32.759041 7f43e73ec440 Fast CRC32 supported: Supported on x86 +2020/01/11-12:35:32.759237 7f43e73ec440 [/version_set.cc:4053] Recovering from manifest file: kvdb/MANIFEST-000014 +2020/01/11-12:35:32.759300 7f43e73ec440 [/column_family.cc:482] --------------- Options for column family [default]: +2020/01/11-12:35:32.759304 7f43e73ec440 Options.comparator: leveldb.BytewiseComparator +2020/01/11-12:35:32.759305 7f43e73ec440 Options.merge_operator: None +2020/01/11-12:35:32.759306 7f43e73ec440 Options.compaction_filter: None +2020/01/11-12:35:32.759307 7f43e73ec440 Options.compaction_filter_factory: None +2020/01/11-12:35:32.759309 7f43e73ec440 Options.memtable_factory: SkipListFactory +2020/01/11-12:35:32.759320 7f43e73ec440 Options.table_factory: BlockBasedTable +2020/01/11-12:35:32.759356 7f43e73ec440 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0x1f223340) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 0 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 0 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + hash_index_allow_collision: 1 + checksum: 1 + no_block_cache: 0 + block_cache: 0x1f24b760 + block_cache_name: LRUCache + block_cache_options: + capacity : 8388608 + num_shard_bits : 4 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.000 + block_cache_compressed: (nil) + persistent_cache: (nil) + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: nullptr + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 2 + enable_index_compression: 1 + block_align: 0 +2020/01/11-12:35:32.759360 7f43e73ec440 Options.write_buffer_size: 67108864 +2020/01/11-12:35:32.759361 7f43e73ec440 Options.max_write_buffer_number: 2 +2020/01/11-12:35:32.759363 7f43e73ec440 Options.compression: NoCompression +2020/01/11-12:35:32.759364 7f43e73ec440 Options.bottommost_compression: Disabled +2020/01/11-12:35:32.759366 7f43e73ec440 Options.prefix_extractor: nullptr +2020/01/11-12:35:32.759367 7f43e73ec440 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2020/01/11-12:35:32.759368 7f43e73ec440 Options.num_levels: 7 +2020/01/11-12:35:32.759370 7f43e73ec440 Options.min_write_buffer_number_to_merge: 1 +2020/01/11-12:35:32.759371 7f43e73ec440 Options.max_write_buffer_number_to_maintain: 0 +2020/01/11-12:35:32.759372 7f43e73ec440 Options.bottommost_compression_opts.window_bits: -14 +2020/01/11-12:35:32.759373 7f43e73ec440 Options.bottommost_compression_opts.level: 32767 +2020/01/11-12:35:32.759374 7f43e73ec440 Options.bottommost_compression_opts.strategy: 0 +2020/01/11-12:35:32.759376 7f43e73ec440 Options.bottommost_compression_opts.max_dict_bytes: 0 +2020/01/11-12:35:32.759377 7f43e73ec440 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:35:32.759378 7f43e73ec440 Options.bottommost_compression_opts.enabled: false +2020/01/11-12:35:32.759379 7f43e73ec440 Options.compression_opts.window_bits: -14 +2020/01/11-12:35:32.759380 7f43e73ec440 Options.compression_opts.level: 32767 +2020/01/11-12:35:32.759382 7f43e73ec440 Options.compression_opts.strategy: 0 +2020/01/11-12:35:32.759383 7f43e73ec440 Options.compression_opts.max_dict_bytes: 0 +2020/01/11-12:35:32.759384 7f43e73ec440 Options.compression_opts.zstd_max_train_bytes: 0 +2020/01/11-12:35:32.759386 7f43e73ec440 Options.compression_opts.enabled: false +2020/01/11-12:35:32.759387 7f43e73ec440 Options.level0_file_num_compaction_trigger: 4 +2020/01/11-12:35:32.759388 7f43e73ec440 Options.level0_slowdown_writes_trigger: 20 +2020/01/11-12:35:32.759389 7f43e73ec440 Options.level0_stop_writes_trigger: 36 +2020/01/11-12:35:32.759391 7f43e73ec440 Options.target_file_size_base: 67108864 +2020/01/11-12:35:32.759392 7f43e73ec440 Options.target_file_size_multiplier: 1 +2020/01/11-12:35:32.759393 7f43e73ec440 Options.max_bytes_for_level_base: 268435456 +2020/01/11-12:35:32.759395 7f43e73ec440 Options.snap_refresh_nanos: 0 +2020/01/11-12:35:32.759396 7f43e73ec440 Options.level_compaction_dynamic_level_bytes: 0 +2020/01/11-12:35:32.759397 7f43e73ec440 Options.max_bytes_for_level_multiplier: 10.000000 +2020/01/11-12:35:32.759399 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2020/01/11-12:35:32.759415 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2020/01/11-12:35:32.759416 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2020/01/11-12:35:32.759417 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2020/01/11-12:35:32.759418 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2020/01/11-12:35:32.759420 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2020/01/11-12:35:32.759421 7f43e73ec440 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2020/01/11-12:35:32.759422 7f43e73ec440 Options.max_sequential_skip_in_iterations: 8 +2020/01/11-12:35:32.759423 7f43e73ec440 Options.max_compaction_bytes: 1677721600 +2020/01/11-12:35:32.759424 7f43e73ec440 Options.arena_block_size: 8388608 +2020/01/11-12:35:32.759425 7f43e73ec440 Options.soft_pending_compaction_bytes_limit: 68719476736 +2020/01/11-12:35:32.759427 7f43e73ec440 Options.hard_pending_compaction_bytes_limit: 274877906944 +2020/01/11-12:35:32.759428 7f43e73ec440 Options.rate_limit_delay_max_milliseconds: 100 +2020/01/11-12:35:32.759429 7f43e73ec440 Options.disable_auto_compactions: 0 +2020/01/11-12:35:32.759431 7f43e73ec440 Options.compaction_style: kCompactionStyleLevel +2020/01/11-12:35:32.759432 7f43e73ec440 Options.compaction_pri: kMinOverlappingRatio +2020/01/11-12:35:32.759433 7f43e73ec440 Options.compaction_options_universal.size_ratio: 1 +2020/01/11-12:35:32.759435 7f43e73ec440 Options.compaction_options_universal.min_merge_width: 2 +2020/01/11-12:35:32.759436 7f43e73ec440 Options.compaction_options_universal.max_merge_width: 4294967295 +2020/01/11-12:35:32.759437 7f43e73ec440 Options.compaction_options_universal.max_size_amplification_percent: 200 +2020/01/11-12:35:32.759438 7f43e73ec440 Options.compaction_options_universal.compression_size_percent: -1 +2020/01/11-12:35:32.759440 7f43e73ec440 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2020/01/11-12:35:32.759441 7f43e73ec440 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2020/01/11-12:35:32.759442 7f43e73ec440 Options.compaction_options_fifo.allow_compaction: 0 +2020/01/11-12:35:32.759443 7f43e73ec440 Options.table_properties_collectors: +2020/01/11-12:35:32.759445 7f43e73ec440 Options.inplace_update_support: 0 +2020/01/11-12:35:32.759446 7f43e73ec440 Options.inplace_update_num_locks: 10000 +2020/01/11-12:35:32.759447 7f43e73ec440 Options.memtable_prefix_bloom_size_ratio: 0.000000 +2020/01/11-12:35:32.759449 7f43e73ec440 Options.memtable_whole_key_filtering: 0 +2020/01/11-12:35:32.759450 7f43e73ec440 Options.memtable_huge_page_size: 0 +2020/01/11-12:35:32.759451 7f43e73ec440 Options.bloom_locality: 0 +2020/01/11-12:35:32.759453 7f43e73ec440 Options.max_successive_merges: 0 +2020/01/11-12:35:32.759454 7f43e73ec440 Options.optimize_filters_for_hits: 0 +2020/01/11-12:35:32.759455 7f43e73ec440 Options.paranoid_file_checks: 0 +2020/01/11-12:35:32.759456 7f43e73ec440 Options.force_consistency_checks: 0 +2020/01/11-12:35:32.759457 7f43e73ec440 Options.report_bg_io_stats: 0 +2020/01/11-12:35:32.759458 7f43e73ec440 Options.ttl: 0 +2020/01/11-12:35:32.759459 7f43e73ec440 Options.periodic_compaction_seconds: 0 +2020/01/11-12:35:32.759987 7f43e73ec440 [/version_set.cc:4267] Recovered from manifest file:kvdb/MANIFEST-000014 succeeded,manifest_file_number is 14, next_file_number is 16, last_sequence is 0, log_number is 13,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2020/01/11-12:35:32.759991 7f43e73ec440 [/version_set.cc:4276] Column family [default] (ID 0), log number is 13 +2020/01/11-12:35:32.760049 7f43e73ec440 EVENT_LOG_v1 {"time_micros": 1578717332760044, "job": 1, "event": "recovery_started", "log_files": [15]} +2020/01/11-12:35:32.760062 7f43e73ec440 [/db_impl_open.cc:597] Recovering log #15 mode 2 +2020/01/11-12:35:32.760123 7f43e73ec440 [/version_set.cc:3546] Creating manifest 17 +2020/01/11-12:35:32.760790 7f43e73ec440 EVENT_LOG_v1 {"time_micros": 1578717332760786, "job": 1, "event": "recovery_finished"} +2020/01/11-12:35:32.762750 7f43e73ec440 DB pointer 0x20780540 +2020/01/11-12:35:32.763037 7f43695ee700 [/db_impl.cc:779] ------- DUMPING STATS ------- +2020/01/11-12:35:32.763073 7f43695ee700 [/db_impl.cc:780] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 MB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Stalls(count): 0 level0_slowdown, 0 level0_slowdown_with_compaction, 0 level0_numfiles, 0 level0_numfiles_with_compaction, 0 stop for pending_compaction_bytes, 0 slowdown for pending_compaction_bytes, 0 memtable_compaction, 0 memtable_slowdown, interval 0 total count + +** File Read Latency Histogram By Level [default] ** diff --git a/examples/demo-serving/kvdb/MANIFEST-000020 b/examples/demo-serving/kvdb/MANIFEST-000020 new file mode 100644 index 0000000000000000000000000000000000000000..3f229aabfc56304beedff97904be103098548ff4 Binary files /dev/null and b/examples/demo-serving/kvdb/MANIFEST-000020 differ diff --git a/examples/demo-serving/kvdb/OPTIONS-000020 b/examples/demo-serving/kvdb/OPTIONS-000020 new file mode 100644 index 0000000000000000000000000000000000000000..c48b76ce57bae15bc74179238cd0bab244c183a3 --- /dev/null +++ b/examples/demo-serving/kvdb/OPTIONS-000020 @@ -0,0 +1,159 @@ +# This is a RocksDB option file. +# +# For detailed file format spec, please refer to the example file +# in examples/rocksdb_option_file_example.ini +# + +[Version] + rocksdb_version=6.2.4 + options_file_version=1.1 + +[DBOptions] + avoid_unnecessary_blocking_io=false + allow_mmap_reads=false + allow_fallocate=true + WAL_size_limit_MB=0 + writable_file_max_buffer_size=1048576 + allow_mmap_writes=false + allow_concurrent_memtable_write=true + use_direct_reads=false + max_open_files=-1 + strict_bytes_per_sync=false + db_write_buffer_size=0 + max_background_jobs=2 + WAL_ttl_seconds=0 + enable_thread_tracking=false + error_if_exists=false + is_fd_close_on_exec=true + recycle_log_file_num=0 + max_manifest_file_size=1073741824 + skip_log_error_on_recovery=false + skip_stats_update_on_db_open=false + max_total_wal_size=0 + new_table_reader_for_compaction_inputs=false + manual_wal_flush=false + compaction_readahead_size=0 + atomic_flush=false + random_access_max_buffer_size=1048576 + create_missing_column_families=false + wal_bytes_per_sync=0 + use_adaptive_mutex=false + use_direct_io_for_flush_and_compaction=false + max_background_compactions=-1 + advise_random_on_open=true + base_background_compactions=-1 + max_background_flushes=-1 + two_write_queues=false + table_cache_numshardbits=6 + keep_log_file_num=1000 + write_thread_slow_yield_usec=3 + stats_dump_period_sec=600 + avoid_flush_during_recovery=false + log_file_time_to_roll=0 + delayed_write_rate=16777216 + manifest_preallocation_size=4194304 + paranoid_checks=true + max_log_file_size=0 + allow_2pc=false + wal_dir=kvdb + db_log_dir= + max_subcompactions=1 + create_if_missing=true + enable_pipelined_write=false + bytes_per_sync=0 + stats_persist_period_sec=600 + stats_history_buffer_size=1048576 + fail_if_options_file_error=false + use_fsync=false + wal_recovery_mode=kPointInTimeRecovery + delete_obsolete_files_period_micros=21600000000 + enable_write_thread_adaptive_yield=true + avoid_flush_during_shutdown=false + write_thread_max_yield_usec=100 + info_log_level=INFO_LEVEL + max_file_opening_threads=16 + dump_malloc_stats=false + allow_ingest_behind=false + access_hint_on_compaction_start=NORMAL + preserve_deletes=false + + +[CFOptions "default"] + sample_for_compression=0 + compaction_pri=kMinOverlappingRatio + merge_operator=nullptr + compaction_filter_factory=nullptr + memtable_factory=SkipListFactory + memtable_insert_with_hint_prefix_extractor=nullptr + comparator=leveldb.BytewiseComparator + target_file_size_base=67108864 + max_sequential_skip_in_iterations=8 + compaction_style=kCompactionStyleLevel + max_bytes_for_level_base=268435456 + bloom_locality=0 + write_buffer_size=67108864 + compression_per_level= + memtable_huge_page_size=0 + max_successive_merges=0 + arena_block_size=8388608 + memtable_whole_key_filtering=false + target_file_size_multiplier=1 + max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1 + snap_refresh_nanos=0 + num_levels=7 + min_write_buffer_number_to_merge=1 + max_write_buffer_number_to_maintain=0 + max_write_buffer_number=2 + compression=kNoCompression + level0_stop_writes_trigger=36 + level0_slowdown_writes_trigger=20 + compaction_filter=nullptr + level0_file_num_compaction_trigger=4 + max_compaction_bytes=1677721600 + compaction_options_universal={allow_trivial_move=false;size_ratio=1;min_merge_width=2;max_size_amplification_percent=200;max_merge_width=4294967295;compression_size_percent=-1;stop_style=kCompactionStopStyleTotalSize;} + memtable_prefix_bloom_size_ratio=0.000000 + hard_pending_compaction_bytes_limit=274877906944 + ttl=0 + table_factory=BlockBasedTable + soft_pending_compaction_bytes_limit=68719476736 + prefix_extractor=nullptr + bottommost_compression=kDisableCompressionOption + force_consistency_checks=false + paranoid_file_checks=false + compaction_options_fifo={allow_compaction=false;max_table_files_size=1073741824;} + max_bytes_for_level_multiplier=10.000000 + optimize_filters_for_hits=false + level_compaction_dynamic_level_bytes=false + inplace_update_num_locks=10000 + inplace_update_support=false + periodic_compaction_seconds=0 + disable_auto_compactions=false + report_bg_io_stats=false + +[TableOptions/BlockBasedTable "default"] + pin_top_level_index_and_filter=true + enable_index_compression=true + read_amp_bytes_per_bit=8589934592 + format_version=2 + block_align=false + metadata_block_size=4096 + block_size_deviation=10 + partition_filters=false + block_size=4096 + index_block_restart_interval=1 + no_block_cache=false + checksum=kCRC32c + whole_key_filtering=true + index_shortening=kShortenSeparators + data_block_index_type=kDataBlockBinarySearch + index_type=kBinarySearch + verify_compression=false + filter_policy=nullptr + data_block_hash_table_util_ratio=0.750000 + pin_l0_filter_and_index_blocks_in_cache=false + block_restart_interval=16 + cache_index_and_filter_blocks_with_high_priority=false + cache_index_and_filter_blocks=false + hash_index_allow_collision=true + flush_block_policy_factory=FlushBlockBySizePolicyFactory + diff --git a/examples/demo-serving/kvdb/OPTIONS-000023 b/examples/demo-serving/kvdb/OPTIONS-000023 new file mode 100644 index 0000000000000000000000000000000000000000..c48b76ce57bae15bc74179238cd0bab244c183a3 --- /dev/null +++ b/examples/demo-serving/kvdb/OPTIONS-000023 @@ -0,0 +1,159 @@ +# This is a RocksDB option file. +# +# For detailed file format spec, please refer to the example file +# in examples/rocksdb_option_file_example.ini +# + +[Version] + rocksdb_version=6.2.4 + options_file_version=1.1 + +[DBOptions] + avoid_unnecessary_blocking_io=false + allow_mmap_reads=false + allow_fallocate=true + WAL_size_limit_MB=0 + writable_file_max_buffer_size=1048576 + allow_mmap_writes=false + allow_concurrent_memtable_write=true + use_direct_reads=false + max_open_files=-1 + strict_bytes_per_sync=false + db_write_buffer_size=0 + max_background_jobs=2 + WAL_ttl_seconds=0 + enable_thread_tracking=false + error_if_exists=false + is_fd_close_on_exec=true + recycle_log_file_num=0 + max_manifest_file_size=1073741824 + skip_log_error_on_recovery=false + skip_stats_update_on_db_open=false + max_total_wal_size=0 + new_table_reader_for_compaction_inputs=false + manual_wal_flush=false + compaction_readahead_size=0 + atomic_flush=false + random_access_max_buffer_size=1048576 + create_missing_column_families=false + wal_bytes_per_sync=0 + use_adaptive_mutex=false + use_direct_io_for_flush_and_compaction=false + max_background_compactions=-1 + advise_random_on_open=true + base_background_compactions=-1 + max_background_flushes=-1 + two_write_queues=false + table_cache_numshardbits=6 + keep_log_file_num=1000 + write_thread_slow_yield_usec=3 + stats_dump_period_sec=600 + avoid_flush_during_recovery=false + log_file_time_to_roll=0 + delayed_write_rate=16777216 + manifest_preallocation_size=4194304 + paranoid_checks=true + max_log_file_size=0 + allow_2pc=false + wal_dir=kvdb + db_log_dir= + max_subcompactions=1 + create_if_missing=true + enable_pipelined_write=false + bytes_per_sync=0 + stats_persist_period_sec=600 + stats_history_buffer_size=1048576 + fail_if_options_file_error=false + use_fsync=false + wal_recovery_mode=kPointInTimeRecovery + delete_obsolete_files_period_micros=21600000000 + enable_write_thread_adaptive_yield=true + avoid_flush_during_shutdown=false + write_thread_max_yield_usec=100 + info_log_level=INFO_LEVEL + max_file_opening_threads=16 + dump_malloc_stats=false + allow_ingest_behind=false + access_hint_on_compaction_start=NORMAL + preserve_deletes=false + + +[CFOptions "default"] + sample_for_compression=0 + compaction_pri=kMinOverlappingRatio + merge_operator=nullptr + compaction_filter_factory=nullptr + memtable_factory=SkipListFactory + memtable_insert_with_hint_prefix_extractor=nullptr + comparator=leveldb.BytewiseComparator + target_file_size_base=67108864 + max_sequential_skip_in_iterations=8 + compaction_style=kCompactionStyleLevel + max_bytes_for_level_base=268435456 + bloom_locality=0 + write_buffer_size=67108864 + compression_per_level= + memtable_huge_page_size=0 + max_successive_merges=0 + arena_block_size=8388608 + memtable_whole_key_filtering=false + target_file_size_multiplier=1 + max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1 + snap_refresh_nanos=0 + num_levels=7 + min_write_buffer_number_to_merge=1 + max_write_buffer_number_to_maintain=0 + max_write_buffer_number=2 + compression=kNoCompression + level0_stop_writes_trigger=36 + level0_slowdown_writes_trigger=20 + compaction_filter=nullptr + level0_file_num_compaction_trigger=4 + max_compaction_bytes=1677721600 + compaction_options_universal={allow_trivial_move=false;size_ratio=1;min_merge_width=2;max_size_amplification_percent=200;max_merge_width=4294967295;compression_size_percent=-1;stop_style=kCompactionStopStyleTotalSize;} + memtable_prefix_bloom_size_ratio=0.000000 + hard_pending_compaction_bytes_limit=274877906944 + ttl=0 + table_factory=BlockBasedTable + soft_pending_compaction_bytes_limit=68719476736 + prefix_extractor=nullptr + bottommost_compression=kDisableCompressionOption + force_consistency_checks=false + paranoid_file_checks=false + compaction_options_fifo={allow_compaction=false;max_table_files_size=1073741824;} + max_bytes_for_level_multiplier=10.000000 + optimize_filters_for_hits=false + level_compaction_dynamic_level_bytes=false + inplace_update_num_locks=10000 + inplace_update_support=false + periodic_compaction_seconds=0 + disable_auto_compactions=false + report_bg_io_stats=false + +[TableOptions/BlockBasedTable "default"] + pin_top_level_index_and_filter=true + enable_index_compression=true + read_amp_bytes_per_bit=8589934592 + format_version=2 + block_align=false + metadata_block_size=4096 + block_size_deviation=10 + partition_filters=false + block_size=4096 + index_block_restart_interval=1 + no_block_cache=false + checksum=kCRC32c + whole_key_filtering=true + index_shortening=kShortenSeparators + data_block_index_type=kDataBlockBinarySearch + index_type=kBinarySearch + verify_compression=false + filter_policy=nullptr + data_block_hash_table_util_ratio=0.750000 + pin_l0_filter_and_index_blocks_in_cache=false + block_restart_interval=16 + cache_index_and_filter_blocks_with_high_priority=false + cache_index_and_filter_blocks=false + hash_index_allow_collision=true + flush_block_policy_factory=FlushBlockBySizePolicyFactory + diff --git a/demo-serving/op/CMakeLists.txt b/examples/demo-serving/op/CMakeLists.txt similarity index 100% rename from demo-serving/op/CMakeLists.txt rename to examples/demo-serving/op/CMakeLists.txt diff --git a/examples/demo-serving/op/bert_service_op.cpp b/examples/demo-serving/op/bert_service_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..d95897a935d2e4da679b280b24369075a180f4e8 --- /dev/null +++ b/examples/demo-serving/op/bert_service_op.cpp @@ -0,0 +1,215 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/bert_service_op.h" +#include +#include +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/memory.h" +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::MempoolWrapper; +using baidu::paddle_serving::predictor::bert_service::BertResInstance; +using baidu::paddle_serving::predictor::bert_service::Response; +using baidu::paddle_serving::predictor::bert_service::BertReqInstance; +using baidu::paddle_serving::predictor::bert_service::Request; +using baidu::paddle_serving::predictor::bert_service::EmbeddingValues; + +std::vector split(const std::string &str, + const std::string &pattern) { + std::vector res; + if (str == "") return res; + std::string strs = str + pattern; + size_t pos = strs.find(pattern); + while (pos != strs.npos) { + std::string temp = strs.substr(0, pos); + res.push_back(temp); + strs = strs.substr(pos + 1, strs.size()); + pos = strs.find(pattern); + } + return res; +} + +int BertServiceOp::inference() { + timeval op_start; + gettimeofday(&op_start, NULL); + + const Request *req = dynamic_cast(get_request_message()); + + TensorVector *in = butil::get_object(); + Response *res = mutable_data(); + + uint32_t batch_size = req->instances_size(); + if (batch_size <= 0) { + LOG(WARNING) << "No instances need to inference!"; + return 0; + } + + const int64_t MAX_SEQ_LEN = req->max_seq_len(); + // const int64_t EMB_SIZE = req->emb_size(); + + paddle::PaddleTensor src_ids; + paddle::PaddleTensor pos_ids; + paddle::PaddleTensor seg_ids; + paddle::PaddleTensor input_masks; + + if (req->has_feed_var_names()) { + // support paddlehub model + std::vector feed_list = split(req->feed_var_names(), ";"); + src_ids.name = feed_list[0]; + pos_ids.name = feed_list[1]; + seg_ids.name = feed_list[2]; + input_masks.name = feed_list[3]; + } else { + src_ids.name = std::string("src_ids"); + pos_ids.name = std::string("pos_ids"); + seg_ids.name = std::string("sent_ids"); + input_masks.name = std::string("input_mask"); + } + + src_ids.dtype = paddle::PaddleDType::INT64; + src_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; + src_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); + + pos_ids.dtype = paddle::PaddleDType::INT64; + pos_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; + pos_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); + + seg_ids.dtype = paddle::PaddleDType::INT64; + seg_ids.shape = {batch_size, MAX_SEQ_LEN, 1}; + seg_ids.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(int64_t)); + + input_masks.dtype = paddle::PaddleDType::FLOAT32; + input_masks.shape = {batch_size, MAX_SEQ_LEN, 1}; + input_masks.data.Resize(batch_size * MAX_SEQ_LEN * sizeof(float)); + + std::vector> lod_set; + lod_set.resize(1); + for (uint32_t i = 0; i < batch_size; i++) { + lod_set[0].push_back(i * MAX_SEQ_LEN); + } + // src_ids.lod = lod_set; + // pos_ids.lod = lod_set; + // seg_ids.lod = lod_set; + // input_masks.lod = lod_set; + + uint32_t index = 0; + for (uint32_t i = 0; i < batch_size; i++) { + int64_t *src_data = static_cast(src_ids.data.data()) + index; + int64_t *pos_data = static_cast(pos_ids.data.data()) + index; + int64_t *seg_data = static_cast(seg_ids.data.data()) + index; + float *input_masks_data = + static_cast(input_masks.data.data()) + index; + + const BertReqInstance &req_instance = req->instances(i); + + memcpy(src_data, + req_instance.token_ids().data(), + sizeof(int64_t) * MAX_SEQ_LEN); + memcpy(pos_data, + req_instance.position_ids().data(), + sizeof(int64_t) * MAX_SEQ_LEN); + memcpy(seg_data, + req_instance.sentence_type_ids().data(), + sizeof(int64_t) * MAX_SEQ_LEN); + memcpy(input_masks_data, + req_instance.input_masks().data(), + sizeof(float) * MAX_SEQ_LEN); + index += MAX_SEQ_LEN; + } + + in->push_back(src_ids); + in->push_back(pos_ids); + in->push_back(seg_ids); + in->push_back(input_masks); + + TensorVector *out = butil::get_object(); + if (!out) { + LOG(ERROR) << "Failed get tls output object"; + return -1; + } + +#if 0 // print request + std::ostringstream oss; + for (int j = 0; j < 3; j++) { + int64_t* example = reinterpret_cast((*in)[j].data.data()); + for (uint32_t i = 0; i < MAX_SEQ_LEN; i++) { + oss << *(example + i) << " "; + } + oss << ";"; + } + float* example = reinterpret_cast((*in)[3].data.data()); + for (int i = 0; i < MAX_SEQ_LEN; i++) { + oss << *(example + i) << " "; + } + LOG(INFO) << "msg: " << oss.str(); +#endif + timeval infer_start; + gettimeofday(&infer_start, NULL); + if (predictor::InferManager::instance().infer( + BERT_MODEL_NAME, in, out, batch_size)) { + LOG(ERROR) << "Failed do infer in fluid model: " << BERT_MODEL_NAME; + return -1; + } + timeval infer_end; + gettimeofday(&infer_end, NULL); + uint64_t infer_time = + (infer_end.tv_sec * 1000 + infer_end.tv_usec / 1000 - + (infer_start.tv_sec * 1000 + infer_start.tv_usec / 1000)); + + LOG(INFO) << "batch_size : " << out->at(0).shape[0] + << " emb_size : " << out->at(0).shape[1]; + uint32_t emb_size = out->at(0).shape[1]; + float *out_data = reinterpret_cast(out->at(0).data.data()); + for (uint32_t bi = 0; bi < batch_size; bi++) { + BertResInstance *res_instance = res->add_instances(); + for (uint32_t si = 0; si < 1; si++) { + EmbeddingValues *emb_instance = res_instance->add_instances(); + for (uint32_t ei = 0; ei < emb_size; ei++) { + uint32_t index = bi * emb_size + ei; + emb_instance->add_values(out_data[index]); + } + } + } + + timeval op_end; + gettimeofday(&op_end, NULL); + uint64_t op_time = (op_end.tv_sec * 1000 + op_end.tv_usec / 1000 - + (op_start.tv_sec * 1000 + op_start.tv_usec / 1000)); + + res->set_op_time(op_time); + res->set_infer_time(infer_time); + + for (size_t i = 0; i < in->size(); ++i) { + (*in)[i].shape.clear(); + } + in->clear(); + butil::return_object(in); + + for (size_t i = 0; i < out->size(); ++i) { + (*out)[i].shape.clear(); + } + out->clear(); + butil::return_object(out); + + return 0; +} + +DEFINE_OP(BertServiceOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/bert_service_op.h b/examples/demo-serving/op/bert_service_op.h new file mode 100644 index 0000000000000000000000000000000000000000..3787501114a76c7ef35e2db54922e43399271a63 --- /dev/null +++ b/examples/demo-serving/op/bert_service_op.h @@ -0,0 +1,39 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "paddle_inference_api.h" // NOLINT +#include "examples/demo-serving/bert_service.pb.h" + +#include + +namespace baidu { +namespace paddle_serving { +namespace serving { + +static const char* BERT_MODEL_NAME = "bert"; + +class BertServiceOp + : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::bert_service::Response> { + public: + typedef std::vector TensorVector; + + DECLARE_OP(BertServiceOp); + int inference(); +}; +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/classify_op.cpp b/examples/demo-serving/op/classify_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..76370e2cf82e6b8996072e902e9f79192ebd67ad --- /dev/null +++ b/examples/demo-serving/op/classify_op.cpp @@ -0,0 +1,116 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/classify_op.h" +#include "examples/demo-serving/op/reader_op.h" +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/memory.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::format::DensePrediction; +using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; +using baidu::paddle_serving::predictor::InferManager; + +int ClassifyOp::inference() { + const ReaderOutput* reader_out = + get_depend_argument("image_reader_op"); + if (!reader_out) { + LOG(ERROR) << "Failed mutable depended argument, op:" + << "reader_op"; + return -1; + } + + const TensorVector* in = &reader_out->tensors; + + TensorVector* out = butil::get_object(); + if (!out) { + LOG(ERROR) << "Failed get tls output object failed"; + return -1; + } + + if (in->size() != 1) { + LOG(ERROR) << "Samples should have been packed into a single tensor"; + return -1; + } + + int batch_size = in->at(0).shape[0]; + // call paddle fluid model for inferencing + if (InferManager::instance().infer( + IMAGE_CLASSIFICATION_MODEL_NAME, in, out, batch_size)) { + LOG(ERROR) << "Failed do infer in fluid model: " + << IMAGE_CLASSIFICATION_MODEL_NAME; + return -1; + } + + if (out->size() != in->size()) { + LOG(ERROR) << "Output size not eq input size: " << in->size() + << out->size(); + return -1; + } + + // copy output tensor into response + ClassifyResponse* res = mutable_data(); + const paddle::PaddleTensor& out_tensor = (*out)[0]; + +#if 0 + int out_shape_size = out_tensor.shape.size(); + LOG(ERROR) << "out_tensor.shpae"; + for (int i = 0; i < out_shape_size; ++i) { + LOG(ERROR) << out_tensor.shape[i] << ":"; + } + + if (out_shape_size != 2) { + return -1; + } +#endif + + int sample_size = out_tensor.shape[0]; +#if 0 + LOG(ERROR) << "Output sample size " << sample_size; +#endif + for (uint32_t si = 0; si < sample_size; si++) { + DensePrediction* ins = res->add_predictions(); + if (!ins) { + LOG(ERROR) << "Failed append new out tensor"; + return -1; + } + + // assign output data + uint32_t data_size = out_tensor.shape[1]; + float* data = reinterpret_cast(out_tensor.data.data() + + si * sizeof(float) * data_size); + for (uint32_t di = 0; di < data_size; ++di) { + ins->add_categories(data[di]); + } + } + + // release out tensor object resource + size_t out_size = out->size(); + for (size_t oi = 0; oi < out_size; ++oi) { + (*out)[oi].shape.clear(); + } + out->clear(); + butil::return_object(out); + + return 0; +} + +DEFINE_OP(ClassifyOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/classify_op.h b/examples/demo-serving/op/classify_op.h new file mode 100644 index 0000000000000000000000000000000000000000..be72bad6f088c4fd7cf0c479756baea6847eed3d --- /dev/null +++ b/examples/demo-serving/op/classify_op.h @@ -0,0 +1,40 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "paddle_inference_api.h" // NOLINT +#include "examples/demo-serving/image_class.pb.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +static const char* IMAGE_CLASSIFICATION_MODEL_NAME = + "image_classification_resnet"; + +class ClassifyOp : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::image_classification:: + ClassifyResponse> { + public: + typedef std::vector TensorVector; + + DECLARE_OP(ClassifyOp); + + int inference(); +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/common_echo_op.cpp b/examples/demo-serving/op/common_echo_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..82e8f383115096cb1a04b6245e505ca5543f9933 --- /dev/null +++ b/examples/demo-serving/op/common_echo_op.cpp @@ -0,0 +1,25 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/common_echo_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +DEFINE_OP(CommonEchoOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/common_echo_op.h b/examples/demo-serving/op/common_echo_op.h new file mode 100644 index 0000000000000000000000000000000000000000..0d78d427bb47a93a738c43ddd5337001200fdbf8 --- /dev/null +++ b/examples/demo-serving/op/common_echo_op.h @@ -0,0 +1,50 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/echo_service.pb.h" + +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class CommonEchoOp + : public OpWithChannel< + baidu::paddle_serving::predictor::echo_service::RequestAndResponse> { + public: + typedef baidu::paddle_serving::predictor::echo_service::RequestAndResponse + RequestAndResponse; + + DECLARE_OP(CommonEchoOp); + + int inference() { + const RequestAndResponse* req = + dynamic_cast(get_request_message()); + + RequestAndResponse* data = mutable_data(); + + data->CopyFrom(*req); + + return 0; + } +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/ctr_prediction_op.cpp b/examples/demo-serving/op/ctr_prediction_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c05cf8ffc248ed476211abfb91c38da89bb5b2c9 --- /dev/null +++ b/examples/demo-serving/op/ctr_prediction_op.cpp @@ -0,0 +1,376 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/ctr_prediction_op.h" +#include +#include +#if 0 +#include +#endif +#include "core/cube/cube-api/include/cube_api.h" +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/kv_manager.h" +#include "core/predictor/framework/memory.h" + +// Flag where enable profiling mode +DECLARE_bool(enable_ctr_profiling); + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::MempoolWrapper; +using baidu::paddle_serving::predictor::ctr_prediction::CTRResInstance; +using baidu::paddle_serving::predictor::ctr_prediction::Response; +using baidu::paddle_serving::predictor::ctr_prediction::CTRReqInstance; +using baidu::paddle_serving::predictor::ctr_prediction::Request; + +const int VARIABLE_NAME_LEN = 256; + +// Total 26 sparse input + 1 dense input +const int CTR_PREDICTION_INPUT_SLOTS = 27; + +// First 26: sparse input +const int CTR_PREDICTION_SPARSE_SLOTS = 26; + +// Last 1: dense input +const int CTR_PREDICTION_DENSE_SLOT_ID = 26; +const int CTR_PREDICTION_DENSE_DIM = 13; +const int CTR_PREDICTION_EMBEDDING_SIZE = 10; + +bthread::Mutex CTRPredictionOp::mutex_; +int64_t CTRPredictionOp::cube_time_us_ = 0; +int32_t CTRPredictionOp::cube_req_num_ = 0; +int32_t CTRPredictionOp::cube_req_key_num_ = 0; + +void fill_response_with_message(Response *response, + int err_code, + std::string err_msg) { + if (response == NULL) { + LOG(ERROR) << "response is NULL"; + return; + } + + response->set_err_code(err_code); + response->set_err_msg(err_msg); + return; +} + +int CTRPredictionOp::inference() { + const Request *req = dynamic_cast(get_request_message()); + + TensorVector *in = butil::get_object(); + Response *res = mutable_data(); + + uint32_t sample_size = req->instances_size(); + if (sample_size <= 0) { + LOG(WARNING) << "No instances need to inference!"; + fill_response_with_message(res, -1, "Sample size invalid"); + return 0; + } + + paddle::PaddleTensor lod_tensors[CTR_PREDICTION_INPUT_SLOTS]; + for (int i = 0; i < CTR_PREDICTION_INPUT_SLOTS; ++i) { + lod_tensors[i].dtype = paddle::PaddleDType::FLOAT32; + std::vector> &lod = lod_tensors[i].lod; + lod.resize(1); + lod[0].push_back(0); + } + + // Query cube API for sparse embeddings + std::vector keys; + std::vector values; + + for (uint32_t si = 0; si < sample_size; ++si) { + const CTRReqInstance &req_instance = req->instances(si); + if (req_instance.sparse_ids_size() != CTR_PREDICTION_SPARSE_SLOTS) { + std::ostringstream iss; + iss << "Sparse input size != " << CTR_PREDICTION_SPARSE_SLOTS; + fill_response_with_message(res, -1, iss.str()); + return 0; + } + + for (int i = 0; i < req_instance.sparse_ids_size(); ++i) { + keys.push_back(req_instance.sparse_ids(i)); + } + } + + rec::mcube::CubeAPI *cube = rec::mcube::CubeAPI::instance(); + predictor::KVManager &kv_manager = predictor::KVManager::instance(); + const predictor::KVInfo *kvinfo = + kv_manager.get_kv_info(CTR_PREDICTION_MODEL_NAME); + if (kvinfo == NULL) { + LOG(ERROR) << "Sparse param service info not found for model " + << CTR_PREDICTION_MODEL_NAME + << ". Maybe forgot to specify sparse_param_service_type and " + << "sparse_param_service_table_name in " + << "conf/model_toolkit.prototxt"; + fill_response_with_message(res, -1, "Sparse param service info not found"); + return 0; + } + + std::string table_name; + if (kvinfo->sparse_param_service_type != configure::EngineDesc::NONE) { + table_name = kvinfo->sparse_param_service_table_name; + if (table_name.empty()) { + LOG(ERROR) << "sparse_param_service_table_name not specified. " + << "Please specify it in conf/model_toolkit.protxt for model " + << CTR_PREDICTION_MODEL_NAME; + fill_response_with_message( + res, -1, "sparse_param_service_table_name not specified"); + return 0; + } + } + + if (kvinfo->sparse_param_service_type == configure::EngineDesc::LOCAL) { + // Query local KV service + LOG(ERROR) << "Local kv service not supported for model " + << CTR_PREDICTION_MODEL_NAME; + + fill_response_with_message( + res, -1, "Local kv service not supported for this model"); + return 0; + } else if (kvinfo->sparse_param_service_type == + configure::EngineDesc::REMOTE) { + struct timeval start; + struct timeval end; + + int ret; + + gettimeofday(&start, NULL); + ret = cube->seek(table_name, keys, &values); + gettimeofday(&end, NULL); + uint64_t usec = + end.tv_sec * 1e6 + end.tv_usec - start.tv_sec * 1e6 - start.tv_usec; + + // Statistics + mutex_.lock(); + cube_time_us_ += usec; + ++cube_req_num_; + cube_req_key_num_ += keys.size(); + + if (cube_req_num_ >= 1000) { + LOG(INFO) << "Cube request count: " << cube_req_num_; + LOG(INFO) << "Cube request key count: " << cube_req_key_num_; + LOG(INFO) << "Cube request total time: " << cube_time_us_ << "us"; + LOG(INFO) << "Average " + << static_cast(cube_time_us_) / cube_req_num_ + << "us/req"; + LOG(INFO) << "Average " + << static_cast(cube_time_us_) / cube_req_key_num_ + << "us/key"; + + cube_time_us_ = 0; + cube_req_num_ = 0; + cube_req_key_num_ = 0; + } + mutex_.unlock(); + // Statistics end + + if (ret != 0) { + fill_response_with_message(res, -1, "Query cube for embeddings error"); + LOG(ERROR) << "Query cube for embeddings error"; + return 0; + } + } + + if (values.size() != keys.size()) { + LOG(ERROR) << "Sparse embeddings not ready; " + << "maybe forgot to set sparse_param_service_type and " + << "sparse_param_sevice_table_name for " + << CTR_PREDICTION_MODEL_NAME + << " in conf/model_toolkit.prototxt"; + fill_response_with_message( + res, -1, "Sparse param service not configured properly"); + return 0; + } + + for (int i = 0; i < keys.size(); ++i) { + std::ostringstream oss; + oss << keys[i] << ": "; + const char *value = (values[i].buff.data()); + if (values[i].buff.size() != + sizeof(float) * CTR_PREDICTION_EMBEDDING_SIZE) { + LOG(WARNING) << "Key " << keys[i] << " has values less than " + << CTR_PREDICTION_EMBEDDING_SIZE; + } + +#if 0 + for (int j = 0; j < values[i].buff.size(); ++j) { + oss << std::hex << std::uppercase << std::setw(2) << std::setfill('0') + << (static_cast(value[j]) & 0xff); + } + + LOG(INFO) << oss.str().c_str(); +#endif + } + + // Sparse embeddings + for (int i = 0; i < CTR_PREDICTION_SPARSE_SLOTS; ++i) { + paddle::PaddleTensor &lod_tensor = lod_tensors[i]; + std::vector> &lod = lod_tensor.lod; + + char name[VARIABLE_NAME_LEN]; + snprintf(name, VARIABLE_NAME_LEN, "embedding_%d.tmp_0", i); + lod_tensor.name = std::string(name); + + for (uint32_t si = 0; si < sample_size; ++si) { + const CTRReqInstance &req_instance = req->instances(si); + lod[0].push_back(lod[0].back() + 1); + } + + lod_tensor.shape = {lod[0].back(), CTR_PREDICTION_EMBEDDING_SIZE}; + lod_tensor.data.Resize(lod[0].back() * sizeof(float) * + CTR_PREDICTION_EMBEDDING_SIZE); + + int offset = 0; + for (uint32_t si = 0; si < sample_size; ++si) { + float *data_ptr = static_cast(lod_tensor.data.data()) + offset; + const CTRReqInstance &req_instance = req->instances(si); + + int idx = si * CTR_PREDICTION_SPARSE_SLOTS + i; + if (values[idx].buff.size() != + sizeof(float) * CTR_PREDICTION_EMBEDDING_SIZE) { + LOG(ERROR) << "Embedding vector size not expected"; + fill_response_with_message( + res, -1, "Embedding vector size not expected"); + return 0; + } + + memcpy(data_ptr, values[idx].buff.data(), values[idx].buff.size()); + offset += CTR_PREDICTION_EMBEDDING_SIZE; + } + + in->push_back(lod_tensor); + } + + // Dense features + paddle::PaddleTensor &lod_tensor = lod_tensors[CTR_PREDICTION_DENSE_SLOT_ID]; + lod_tensor.dtype = paddle::PaddleDType::FLOAT32; + std::vector> &lod = lod_tensor.lod; + lod_tensor.name = std::string("dense_input"); + + for (uint32_t si = 0; si < sample_size; ++si) { + const CTRReqInstance &req_instance = req->instances(si); + if (req_instance.dense_ids_size() != CTR_PREDICTION_DENSE_DIM) { + std::ostringstream iss; + iss << "dense input size != " << CTR_PREDICTION_DENSE_DIM; + fill_response_with_message(res, -1, iss.str()); + return 0; + } + lod[0].push_back(lod[0].back() + req_instance.dense_ids_size()); + } + + lod_tensor.shape = {lod[0].back() / CTR_PREDICTION_DENSE_DIM, + CTR_PREDICTION_DENSE_DIM}; + lod_tensor.data.Resize(lod[0].back() * sizeof(float)); + + int offset = 0; + for (uint32_t si = 0; si < sample_size; ++si) { + float *data_ptr = static_cast(lod_tensor.data.data()) + offset; + const CTRReqInstance &req_instance = req->instances(si); + int id_count = req_instance.dense_ids_size(); + memcpy(data_ptr, + req_instance.dense_ids().data(), + sizeof(float) * req_instance.dense_ids_size()); + offset += req_instance.dense_ids_size(); + } + + in->push_back(lod_tensor); + + TensorVector *out = butil::get_object(); + if (!out) { + LOG(ERROR) << "Failed get tls output object"; + fill_response_with_message(res, -1, "Failed get thread local resource"); + return 0; + } + + // call paddle fluid model for inferencing + if (predictor::InferManager::instance().infer( + CTR_PREDICTION_MODEL_NAME, in, out, sample_size)) { + LOG(ERROR) << "Failed do infer in fluid model: " + << CTR_PREDICTION_MODEL_NAME; + fill_response_with_message(res, -1, "Failed do infer in fluid model"); + return 0; + } + + if (out->size() != 1) { + LOG(ERROR) << "Model returned number of fetch tensor more than 1"; + fill_response_with_message( + res, -1, "Model returned number of fetch tensor more than 1"); + return 0; + } + + int output_shape_dim = out->at(0).shape.size(); + if (output_shape_dim != 2) { + LOG(ERROR) << "Fetch LoDTensor should be shape of [sample_size, 2]"; + fill_response_with_message( + res, -1, "Fetch LoDTensor should be shape of [sample_size, 2]"); + return 0; + } + + if (out->at(0).dtype != paddle::PaddleDType::FLOAT32) { + LOG(ERROR) << "Fetch LoDTensor data type should be FLOAT32"; + fill_response_with_message( + res, -1, "Fetch LoDTensor data type should be FLOAT32"); + return 0; + } + + int dim1 = out->at(0).shape[0]; + int dim2 = out->at(0).shape[1]; + + if (dim1 != sample_size) { + LOG(ERROR) << "Returned result count not equal to sample_size"; + fill_response_with_message( + res, -1, "Returned result count not equal to sample size"); + return 0; + } + + if (dim2 != 2) { + LOG(ERROR) << "Returned result is not expected, should be 2 floats for " + "each sample"; + fill_response_with_message( + res, -1, "Retunred result is not 2 floats for each sample"); + return 0; + } + + float *data = static_cast(out->at(0).data.data()); + for (int i = 0; i < dim1; ++i) { + CTRResInstance *res_instance = res->add_predictions(); + res_instance->set_prob0(data[i * dim2]); + res_instance->set_prob1(data[i * dim2 + 1]); + } + + for (size_t i = 0; i < in->size(); ++i) { + (*in)[i].shape.clear(); + } + in->clear(); + butil::return_object(in); + + for (size_t i = 0; i < out->size(); ++i) { + (*out)[i].shape.clear(); + } + out->clear(); + butil::return_object(out); + + res->set_err_code(0); + res->set_err_msg(std::string("")); + return 0; +} + +DEFINE_OP(CTRPredictionOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/ctr_prediction_op.h b/examples/demo-serving/op/ctr_prediction_op.h new file mode 100644 index 0000000000000000000000000000000000000000..fbcfc2048cd5296dfe436a9981d6575f1678a536 --- /dev/null +++ b/examples/demo-serving/op/ctr_prediction_op.h @@ -0,0 +1,70 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "paddle_inference_api.h" // NOLINT +#include "examples/demo-serving/ctr_prediction.pb.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +static const char* CTR_PREDICTION_MODEL_NAME = "ctr_prediction"; + +/** + * CTRPredictionOp: Serve CTR prediction requests. + * + * Original model can be found here: + * https://github.com/PaddlePaddle/models/tree/develop/PaddleRec/ctr + * + * NOTE: + * + * The main purpose of this OP is to demonstrate usage of large-scale sparse + * parameter service (RocksDB for local, mCube for distributed service). To + * achieve this, we modified the orginal model slightly: + * 1) Function ctr_dnn_model() returns feed_vars and fetch_vars + * 2) Use fluid.io.save_inference_model using feed_vars and fetch_vars + * returned from ctr_dnn_model(), instead of fluid.io.save_persistables + * 3) Further, feed_vars were specified to be inputs of concat layer. Then in + * the process of save_inference_model(), the generated inference program will + * have the inputs of concat layer as feed targets. + * 4) Weight values for the embedding layer will be fetched from sparse param + * server for each sample + * + * Please refer to doc/CTR_PREDICTION.md for details on the original model + * and modifications we made + * + */ + +class CTRPredictionOp + : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::ctr_prediction::Response> { + public: + typedef std::vector TensorVector; + + DECLARE_OP(CTRPredictionOp); + + int inference(); + + private: + static bthread::Mutex mutex_; + static int64_t cube_time_us_; + static int32_t cube_req_num_; + static int32_t cube_req_key_num_; +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/dense_echo_op.cpp b/examples/demo-serving/op/dense_echo_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..0a4f0df8d8a8052fff0ca70b1f239a8620e13b83 --- /dev/null +++ b/examples/demo-serving/op/dense_echo_op.cpp @@ -0,0 +1,42 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/dense_echo_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using baidu::paddle_serving::predictor::format::DensePrediction; +using baidu::paddle_serving::predictor::dense_service::Request; +using baidu::paddle_serving::predictor::dense_service::Response; + +int DenseEchoOp::inference() { + const Request* req = dynamic_cast(get_request_message()); + Response* res = mutable_data(); + LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); + uint32_t sample_size = req->instances_size(); + for (uint32_t si = 0; si < sample_size; si++) { + DensePrediction* dense_res = res->mutable_predictions()->Add(); + dense_res->add_categories(100.0 + si * 0.1); + dense_res->add_categories(200.0 + si * 0.1); + } + return 0; +} + +DEFINE_OP(DenseEchoOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/dense_echo_op.h b/examples/demo-serving/op/dense_echo_op.h new file mode 100644 index 0000000000000000000000000000000000000000..418da33a0de5789cc31a61db77938b289bc05239 --- /dev/null +++ b/examples/demo-serving/op/dense_echo_op.h @@ -0,0 +1,38 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/dense_service.pb.h" + +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class DenseEchoOp + : public OpWithChannel< + baidu::paddle_serving::predictor::dense_service::Response> { + public: + DECLARE_OP(DenseEchoOp); + + int inference(); +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/general_model_op.cpp b/examples/demo-serving/op/general_model_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..4992dcef5a416cf08969bd791c70058f5f865c6b --- /dev/null +++ b/examples/demo-serving/op/general_model_op.cpp @@ -0,0 +1,221 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/general_model_op.h" +#include +#include +#include +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/memory.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::MempoolWrapper; +using baidu::paddle_serving::predictor::general_model::Tensor; +using baidu::paddle_serving::predictor::general_model::Request; +using baidu::paddle_serving::predictor::general_model::FeedInst; +using baidu::paddle_serving::predictor::general_model::Response; +using baidu::paddle_serving::predictor::general_model::FetchInst; + +static std::once_flag g_proto_init_flag; + +int GeneralModelOp::inference() { + const Request *req = dynamic_cast(get_request_message()); + + TensorVector *in = butil::get_object(); + + int batch_size = req->insts_size(); + int input_var_num = 0; + + std::vector elem_type; + std::vector elem_size; + std::vector capacity; + + if (batch_size > 0) { + int var_num = req->insts(0).tensor_array_size(); + VLOG(3) << "var num: " << var_num; + elem_type.resize(var_num); + elem_size.resize(var_num); + capacity.resize(var_num); + paddle::PaddleTensor lod_tensor; + for (int i = 0; i < var_num; ++i) { + elem_type[i] = req->insts(0).tensor_array(i).elem_type(); + VLOG(3) << "var[" << i << "] has elem type: " << elem_type[i]; + if (elem_type[i] == 0) { // int64 + elem_size[i] = sizeof(int64_t); + lod_tensor.dtype = paddle::PaddleDType::INT64; + } else { + elem_size[i] = sizeof(float); + lod_tensor.dtype = paddle::PaddleDType::FLOAT32; + } + + if (req->insts(0).tensor_array(i).shape(0) == -1) { + lod_tensor.lod.resize(1); + lod_tensor.lod[0].push_back(0); + VLOG(3) << "var[" << i << "] is lod_tensor"; + } else { + lod_tensor.shape.push_back(batch_size); + capacity[i] = 1; + for (int k = 0; + k < req->insts(0).tensor_array(i).shape_size(); + ++k) { + int dim = req->insts(0).tensor_array(i).shape(k); + VLOG(3) << "shape for var[" << i << "]: " << dim; + capacity[i] *= dim; + lod_tensor.shape.push_back(dim); + } + VLOG(3) << "var[" << i << "] is tensor, capacity: " << capacity[i]; + } + if (i == 0) { + lod_tensor.name = "words"; + } else { + lod_tensor.name = "label"; + } + in->push_back(lod_tensor); + } + + for (int i = 0; i < var_num; ++i) { + if (in->at(i).lod.size() == 1) { + for (int j = 0; j < batch_size; ++j) { + const Tensor & tensor = req->insts(j).tensor_array(i); + int data_len = tensor.data_size(); + VLOG(3) << "tensor size for var[" << i << "]: " + << tensor.data_size(); + int cur_len = in->at(i).lod[0].back(); + VLOG(3) << "current len: " << cur_len; + in->at(i).lod[0].push_back(cur_len + data_len); + VLOG(3) << "new len: " << cur_len + data_len; + } + in->at(i).data.Resize(in->at(i).lod[0].back() * elem_size[i]); + in->at(i).shape = {in->at(i).lod[0].back(), 1}; + VLOG(3) << "var[" << i << "] is lod_tensor and len=" + << in->at(i).lod[0].back(); + } else { + in->at(i).data.Resize(batch_size * capacity[i] * elem_size[i]); + VLOG(3) << "var[" << i << "] is tensor and capacity=" + << batch_size * capacity[i]; + } + } + + for (int i = 0; i < var_num; ++i) { + if (elem_type[i] == 0) { + int64_t * dst_ptr = static_cast(in->at(i).data.data()); + int offset = 0; + for (int j = 0; j < batch_size; ++j) { + for (int k = 0; k < req->insts(j).tensor_array(i).data_size(); ++k) { + dst_ptr[offset + k] = + *(const int64_t *)req->insts(j).tensor_array(i).data(k).c_str(); + } + if (in->at(i).lod.size() == 1) { + offset = in->at(i).lod[0][j + 1]; + } else { + offset += capacity[i]; + } + } + } else { + float * dst_ptr = static_cast(in->at(i).data.data()); + int offset = 0; + for (int j = 0; j < batch_size; ++j) { + for (int k = 0; k < req->insts(j).tensor_array(i).data_size(); ++k) { + dst_ptr[offset + k] = + *(const float *)req->insts(j).tensor_array(i).data(k).c_str(); + } + if (in->at(i).lod.size() == 1) { + offset = in->at(i).lod[0][j + 1]; + } else { + offset += capacity[i]; + } + } + } + } + + VLOG(3) << "going to infer"; + TensorVector *out = butil::get_object(); + if (!out) { + LOG(ERROR) << "Failed get tls output object"; + return -1; + } + + if (predictor::InferManager::instance().infer( + GENERAL_MODEL_NAME, in, out, batch_size)) { + LOG(ERROR) << "Failed do infer in fluid model: " + << GENERAL_MODEL_NAME; + return -1; + } + + Response * res = mutable_data(); + + for (int i = 0; i < batch_size; ++i) { + FetchInst * fetch_inst = res->add_insts(); + for (int j = 0; j < out->size(); ++j) { + Tensor * tensor = fetch_inst->add_tensor_array(); + tensor->set_elem_type(1); + if (out->at(j).lod.size() == 1) { + tensor->add_shape(-1); + } else { + for (int k = 1; k < out->at(j).shape.size(); ++k) { + tensor->add_shape(out->at(j).shape[k]); + } + } + } + } + + for (int i = 0; i < out->size(); ++i) { + float * data_ptr = static_cast(out->at(i).data.data()); + int cap = 1; + for (int j = 0; j < out->at(i).shape.size(); ++j) { + cap *= out->at(i).shape[j]; + } + if (out->at(i).lod.size() == 1) { + for (int j = 0; j < batch_size; ++j) { + for (int k = out->at(i).lod[0][j]; + k < out->at(i).lod[0][j + 1]; + k++) { + res->mutable_insts(j)->mutable_tensor_array(i)->add_data( + (char *)(&(data_ptr[k])), sizeof(float)); + } + } + } else { + for (int j = 0; j < batch_size; ++j) { + for (int k = j * cap; k < (j + 1) * cap; ++k) { + res->mutable_insts(j)->mutable_tensor_array(i)->add_data( + (char *)(&(data_ptr[k])), sizeof(float)); + } + } + } + } + + for (size_t i = 0; i < in->size(); ++i) { + (*in)[i].shape.clear(); + } + in->clear(); + butil::return_object(in); + + for (size_t i = 0; i < out->size(); ++i) { + (*out)[i].shape.clear(); + } + out->clear(); + butil::return_object(out); + } + + return 0; +} + +DEFINE_OP(GeneralModelOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/general_model_op.h b/examples/demo-serving/op/general_model_op.h new file mode 100644 index 0000000000000000000000000000000000000000..12a59497423d66c503f4185633cf48c2c68930ee --- /dev/null +++ b/examples/demo-serving/op/general_model_op.h @@ -0,0 +1,48 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#ifdef BCLOUD +#ifdef WITH_GPU +#include "paddle/paddle_inference_api.h" +#else +#include "paddle/fluid/inference/api/paddle_inference_api.h" +#endif +#else +#include "paddle_inference_api.h" // NOLINT +#endif +#include "examples/demo-serving/general_model_service.pb.h" + + +namespace baidu { +namespace paddle_serving { +namespace serving { + +static const char* GENERAL_MODEL_NAME = "general_model"; + +class GeneralModelOp + : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::general_model::Response> { + public: + typedef std::vector TensorVector; + + DECLARE_OP(GeneralModelOp); + + int inference(); +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/int64tensor_echo_op.cpp b/examples/demo-serving/op/int64tensor_echo_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ebb25b3fd8457b05807d2a0be8cf21a3e98d57d8 --- /dev/null +++ b/examples/demo-serving/op/int64tensor_echo_op.cpp @@ -0,0 +1,45 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/int64tensor_echo_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using baidu::paddle_serving::predictor::format::Float32TensorPredictor; +using baidu::paddle_serving::predictor::int64tensor_service::Request; +using baidu::paddle_serving::predictor::int64tensor_service::Response; + +int Int64TensorEchoOp::inference() { + const Request* req = dynamic_cast(get_request_message()); + Response* res = mutable_data(); + LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); + uint32_t sample_size = req->instances_size(); + for (uint32_t si = 0; si < sample_size; si++) { + Float32TensorPredictor* float32_tensor_res = + res->mutable_predictions()->Add(); + float32_tensor_res->add_data(1.0); + float32_tensor_res->add_data(2.0); + float32_tensor_res->add_shape(2); + float32_tensor_res->add_shape(1); + } + return 0; +} + +DEFINE_OP(Int64TensorEchoOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/int64tensor_echo_op.h b/examples/demo-serving/op/int64tensor_echo_op.h new file mode 100644 index 0000000000000000000000000000000000000000..0402f500b96d6dd409616d27b4b3590890129c8e --- /dev/null +++ b/examples/demo-serving/op/int64tensor_echo_op.h @@ -0,0 +1,38 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/int64tensor_service.pb.h" + +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class Int64TensorEchoOp + : public OpWithChannel< + baidu::paddle_serving::predictor::int64tensor_service::Response> { + public: + DECLARE_OP(Int64TensorEchoOp); + + int inference(); +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/kvdb_echo_op.cpp b/examples/demo-serving/op/kvdb_echo_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f3b3d97e81dd1b360096a418694ceb9e56a741e2 --- /dev/null +++ b/examples/demo-serving/op/kvdb_echo_op.cpp @@ -0,0 +1,57 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/kvdb_echo_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using baidu::paddle_serving::predictor::format::KVDBReq; +using baidu::paddle_serving::predictor::format::KVDBRes; +using baidu::paddle_serving::predictor::echo_kvdb_service::Request; +using baidu::paddle_serving::predictor::echo_kvdb_service::Response; + +int KVDBEchoOp::inference() { debug(); } +int KVDBEchoOp::debug() { + // TODO: implement DEBUG mode + baidu::paddle_serving::predictor::Resource& resource = + baidu::paddle_serving::predictor::Resource::instance(); + std::shared_ptr db = resource.getDB(); + const Request* req = dynamic_cast(get_request_message()); + Response* res = mutable_data(); + LOG(INFO) << "Receive request in KVDB echo service: " + << req->ShortDebugString(); + for (size_t i = 0; i < req->reqs_size(); i++) { + auto kvdbreq = req->reqs(i); + std::string op = kvdbreq.op(); + std::string key = kvdbreq.key(); + std::string val = kvdbreq.value(); + if (op == "SET") { + db->Put(key, val); + KVDBRes* kvdb_value_res = res->mutable_ress()->Add(); + kvdb_value_res->set_value("OK"); + } else if (op == "GET") { + std::string getvalue = db->Get(key); + KVDBRes* kvdb_value_res = res->mutable_ress()->Add(); + kvdb_value_res->set_value(getvalue); + } + } + return 0; +} + +DEFINE_OP(KVDBEchoOp); +} +} +} diff --git a/examples/demo-serving/op/kvdb_echo_op.h b/examples/demo-serving/op/kvdb_echo_op.h new file mode 100644 index 0000000000000000000000000000000000000000..1a3dd81cf551e4916e5e78418feb45f6604fa3a3 --- /dev/null +++ b/examples/demo-serving/op/kvdb_echo_op.h @@ -0,0 +1,38 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/echo_kvdb_service.pb.h" +#include "core/kvdb/include/kvdb/paddle_rocksdb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/framework/resource.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class KVDBEchoOp + : public OpWithChannel< + baidu::paddle_serving::predictor::echo_kvdb_service::Response> { + public: + DECLARE_OP(KVDBEchoOp); + int inference(); + int debug(); +}; +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/load_general_model_conf_op.cpp b/examples/demo-serving/op/load_general_model_conf_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..411e89d200d84b5f31960130af10778ada523bc8 --- /dev/null +++ b/examples/demo-serving/op/load_general_model_conf_op.cpp @@ -0,0 +1,25 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/load_general_model_conf_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +DEFINE_OP(LoadGeneralModelConfOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/load_general_model_conf_op.h b/examples/demo-serving/op/load_general_model_conf_op.h new file mode 100644 index 0000000000000000000000000000000000000000..461d14ef6c4e235e41c234848479b195e4066ade --- /dev/null +++ b/examples/demo-serving/op/load_general_model_conf_op.h @@ -0,0 +1,66 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include + +#include "examples/demo-serving/load_general_model_service.pb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" +#include "core/predictor/framework/resource.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class LoadGeneralModelConfOp + : public OpWithChannel< + baidu::paddle_serving::predictor:: + load_general_model_service::RequestAndResponse> { + public: + typedef baidu::paddle_serving::predictor:: + load_general_model_service::RequestAndResponse + RequestAndResponse; + + DECLARE_OP(LoadGeneralModelConfOp); + + int inference() { + LOG(INFO) << "start to call load general model_conf op"; + baidu::paddle_serving::predictor::Resource& resource = + baidu::paddle_serving::predictor::Resource::instance(); + + LOG(INFO) << "get resource pointer done."; + std::shared_ptr model_config = + resource.get_general_model_config(); + + LOG(INFO) << "get general model config pointer done."; + resource.print_general_model_config(model_config); + + LOG(INFO) << "print general model config done."; + const RequestAndResponse* req = + dynamic_cast(get_request_message()); + + RequestAndResponse* data = mutable_data(); + + data->CopyFrom(*req); + + return 0; + } +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/reader_op.cpp b/examples/demo-serving/op/reader_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..d63406afed99c1918f99d5385f94f815eebaae2f --- /dev/null +++ b/examples/demo-serving/op/reader_op.cpp @@ -0,0 +1,159 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/reader_op.h" +#include +#include "core/predictor/framework/memory.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::MempoolWrapper; +using baidu::paddle_serving::predictor::format::XImageReqInstance; +using baidu::paddle_serving::predictor::image_classification::Request; + +int ReaderOp::inference() { + const Request* req = dynamic_cast(get_request_message()); + LOG(INFO) << "Receive request in dense service:" << req->ShortDebugString(); + + ReaderOutput* res = mutable_data(); + if (!res) { + LOG(ERROR) << "Failed get op tls reader object output"; + return -1; + } + + TensorVector* in = &res->tensors; + uint32_t sample_size = req->instances_size(); + if (sample_size <= 0) { + LOG(WARNING) << "No instances need to inference!"; + return -1; + } + + // TODO(xxx) pmeans/scales/isize/enable_crop should be configurable. + float pmean[3] = {0.485 * 255, 0.456 * 255, 0.406 * 255}; + float scale[3] = {1 / (0.229 * 255), 1 / (0.224 * 255), 1 / (0.225 * 255)}; + size_t iresize[] = {244, 244}; // row, column + bool enable_crop = true; + + cv::Size resize; + resize.height = iresize[0]; + resize.width = iresize[1]; + + paddle::PaddleTensor in_tensor; + in_tensor.name = "tensor"; + in_tensor.dtype = paddle::FLOAT32; + // shape assignment + in_tensor.shape.push_back(sample_size); // batch_size + in_tensor.shape.push_back(3); + in_tensor.shape.push_back(resize.width); + in_tensor.shape.push_back(resize.height); + + // tls resource assignment + size_t dense_capacity = 3 * resize.width * resize.height; + size_t len = dense_capacity * sizeof(float) * sample_size; + + // Allocate buffer in PaddleTensor, so that buffer will be managed by the + // Tensor + in_tensor.data.Resize(len); + float* data = reinterpret_cast(in_tensor.data.data()); + if (in_tensor.data.data() == NULL) { + LOG(ERROR) << "Failed create temp float array, " + << "size=" << dense_capacity * sample_size * sizeof(float); + return -1; + } + + for (uint32_t si = 0; si < sample_size; si++) { + // parse image object from x-image + const XImageReqInstance& ins = req->instances(si); + // read dense image from request bytes + const char* binary = ins.image_binary().c_str(); + size_t length = ins.image_length(); + if (length == 0) { + LOG(ERROR) << "Empty image, length is 0"; + return -1; + } + + _image_vec_tmp.clear(); + _image_vec_tmp.assign(binary, binary + length); + _image_8u_tmp = cv::imdecode(cv::Mat(_image_vec_tmp), + CV_LOAD_IMAGE_COLOR /*1*/); // in B/G/R order. + if (_image_8u_tmp.data == NULL) { + LOG(ERROR) << "Image decode failed!"; + return -1; + } + + // accumulate length + const int HH = _image_8u_tmp.rows; + const int WW = _image_8u_tmp.cols; + const int CC = _image_8u_tmp.channels(); + + // resize/crop + if (_image_8u_tmp.cols != resize.width || + _image_8u_tmp.rows != resize.height) { + int short_egde = std::min(_image_8u_tmp.cols, _image_8u_tmp.rows); + int yy = static_cast((_image_8u_tmp.rows - short_egde) / 2); + int xx = static_cast((_image_8u_tmp.cols - short_egde) / 2); + _image_8u_tmp = + cv::Mat(_image_8u_tmp, cv::Rect(xx, yy, short_egde, short_egde)); + if (_image_8u_tmp.cols != resize.width || + _image_8u_tmp.rows != resize.height) { + cv::Mat resize_image; + cv::resize(_image_8u_tmp, resize_image, resize); + _image_8u_tmp = resize_image; + } + + LOG(INFO) << "Succ crop one image[CHW=" << _image_8u_tmp.channels() + << ", " << _image_8u_tmp.cols << ", " << _image_8u_tmp.rows + << "]" + << " from image[CHW=" << CC << ", " << HH << ", " << WW << "]"; + } + + // BGR->RGB transformer + cv::cvtColor(_image_8u_tmp, _image_8u_rgb, CV_BGR2RGB); + + const int H = _image_8u_rgb.rows; + const int W = _image_8u_rgb.cols; + const int C = _image_8u_rgb.channels(); + if (H != resize.height || W != resize.width || C != 3) { + LOG(ERROR) << "Image " << si << " has incompitable size"; + return -1; + } + + LOG(INFO) << "Succ read one image, C: " << C << ", W: " << W + << ", H: " << H; + + float* data_ptr = data + dense_capacity * si; + for (int h = 0; h < H; h++) { + // p points to a new line + unsigned char* p = _image_8u_rgb.ptr(h); + for (int w = 0; w < W; w++) { + for (int c = 0; c < C; c++) { + // HWC(row,column,channel) -> CWH + data_ptr[W * H * c + W * h + w] = + (p[C * w + c] - pmean[c]) * scale[c]; + } + } + } + } + in->push_back(in_tensor); + + return 0; +} + +DEFINE_OP(ReaderOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/reader_op.h b/examples/demo-serving/op/reader_op.h new file mode 100644 index 0000000000000000000000000000000000000000..6cdb2399faf14fd92fcccc2b3027d97ee31ac5c1 --- /dev/null +++ b/examples/demo-serving/op/reader_op.h @@ -0,0 +1,67 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include +#include "examples/demo-serving/image_class.pb.h" +#include "core/predictor/builtin_format.pb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +// opencv +#include "opencv/cv.h" +#include "opencv/cv.hpp" +#include "opencv/cxcore.h" +#include "opencv/highgui.h" +#include "paddle_inference_api.h" // NOLINT + +namespace baidu { +namespace paddle_serving { +namespace serving { + +struct ReaderOutput { + std::vector tensors; + + void Clear() { + size_t tensor_count = tensors.size(); + for (size_t ti = 0; ti < tensor_count; ++ti) { + tensors[ti].shape.clear(); + } + tensors.clear(); + } + + std::string ShortDebugString() const { return "Not implemented!"; } +}; + +class ReaderOp + : public baidu::paddle_serving::predictor::OpWithChannel { + public: + typedef std::vector TensorVector; + + DECLARE_OP(ReaderOp); + + int inference(); + + private: + cv::Mat _image_8u_tmp; + cv::Mat _image_8u_rgb; + std::vector _image_vec_tmp; +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/sparse_echo_op.cpp b/examples/demo-serving/op/sparse_echo_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c34f40dc7a6c7719a4ee8a8e5585cb48b99fec38 --- /dev/null +++ b/examples/demo-serving/op/sparse_echo_op.cpp @@ -0,0 +1,48 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/sparse_echo_op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +int SparseEchoOp::inference() { + // Every op can obtain request message by: + // get_request_message() + const Request* req = dynamic_cast(get_request_message()); + + // Each op can obtain self-writable-data by: + // mutable_data() + Response* res = mutable_data(); + + // You can get the channel/data of depended ops by: + // get/mutable_depend_argment() + // ... + + LOG(INFO) << "Receive request in sparse service:" << req->ShortDebugString(); + uint32_t sample_size = req->instances_size(); + for (uint32_t si = 0; si < sample_size; si++) { + SparsePrediction* sparse_res = res->mutable_predictions()->Add(); + sparse_res->add_categories(100.0 + si * 0.1); + sparse_res->add_categories(200.0 + si * 0.1); + } + return 0; +} + +DEFINE_OP(SparseEchoOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/sparse_echo_op.h b/examples/demo-serving/op/sparse_echo_op.h new file mode 100644 index 0000000000000000000000000000000000000000..6276108e35d10ad888254c183ec2f98e837b1951 --- /dev/null +++ b/examples/demo-serving/op/sparse_echo_op.h @@ -0,0 +1,43 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/sparse_service.pb.h" + +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class SparseEchoOp + : public OpWithChannel< + baidu::paddle_serving::predictor::sparse_service::Response> { + public: + DECLARE_OP(SparseEchoOp); + + typedef baidu::paddle_serving::predictor::sparse_service::Request Request; + typedef baidu::paddle_serving::predictor::sparse_service::Response Response; + typedef baidu::paddle_serving::predictor::format::SparsePrediction + SparsePrediction; + + int inference(); +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/text_classification_op.cpp b/examples/demo-serving/op/text_classification_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..5310eb0200ee86a968d10aec3f3bf1798dba8c2e --- /dev/null +++ b/examples/demo-serving/op/text_classification_op.cpp @@ -0,0 +1,159 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "examples/demo-serving/op/text_classification_op.h" +#include +#include "core/predictor/framework/infer.h" +#include "core/predictor/framework/memory.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::MempoolWrapper; +using baidu::paddle_serving::predictor::text_classification::TextResInstance; +using baidu::paddle_serving::predictor::text_classification::Response; +using baidu::paddle_serving::predictor::text_classification::TextReqInstance; +using baidu::paddle_serving::predictor::text_classification::Request; + +int inference_real(TextClassificationOp::TensorVector *in, + TextClassificationOp::TensorVector *out, + int sample_size) { + if (predictor::InferManager::instance().infer( + TEXT_CLASSIFICATION_MODEL_NAME, in, out, sample_size)) { + LOG(ERROR) << "Failed do infer in fluid model: " + << TEXT_CLASSIFICATION_MODEL_NAME; + return -1; + } + + return 0; +} + +int inference_fake(TextClassificationOp::TensorVector *in, + TextClassificationOp::TensorVector *out, + int sample_size) { + paddle::PaddleTensor lod_tensor; + lod_tensor.dtype = paddle::PaddleDType::FLOAT32; + lod_tensor.data.Resize(sample_size * sizeof(float) * 2); + + float *data_ptr = reinterpret_cast(lod_tensor.data.data()); + for (int i = 0; i < sample_size; ++i) { + *(data_ptr + i * 2) = 0.500; + *(data_ptr + i * 2 + 1) = 0.500; + } + + lod_tensor.lod.resize(1); + lod_tensor.lod[0].push_back(0); + lod_tensor.lod[0].push_back(sample_size); + + lod_tensor.shape.push_back(sample_size); + lod_tensor.shape.push_back(2); + + out->push_back(lod_tensor); + return 0; +} + +int TextClassificationOp::inference() { + const Request *req = dynamic_cast(get_request_message()); + + TensorVector *in = butil::get_object(); + uint32_t sample_size = req->instances_size(); + if (sample_size <= 0) { + LOG(WARNING) << "No instances need to inference!"; + return -1; + } + + paddle::PaddleTensor lod_tensor; + lod_tensor.dtype = paddle::PaddleDType::INT64; + std::vector> &lod = lod_tensor.lod; + lod.resize(1); + lod[0].push_back(0); + + for (uint32_t si = 0; si < sample_size; ++si) { + const TextReqInstance &req_instance = req->instances(si); + lod[0].push_back(lod[0].back() + req_instance.ids_size()); + } + + lod_tensor.shape = {lod[0].back(), 1}; + lod_tensor.data.Resize(lod[0].back() * sizeof(int64_t)); + + int offset = 0; + for (uint32_t si = 0; si < sample_size; ++si) { + // parse text sequence + int64_t *data_ptr = static_cast(lod_tensor.data.data()) + offset; + const TextReqInstance &req_instance = req->instances(si); + int id_count = req_instance.ids_size(); + memcpy(data_ptr, + req_instance.ids().data(), + sizeof(int64_t) * req_instance.ids_size()); + offset += req_instance.ids_size(); + } + + in->push_back(lod_tensor); + + TensorVector *out = butil::get_object(); + if (!out) { + LOG(ERROR) << "Failed get tls output object"; + return -1; + } + + // call paddle fluid model for inferencing + + if (inference_real(in, out, sample_size) != 0) { + return -1; + } + + if (out->size() != in->size()) { + LOG(ERROR) << "Output tensor size not equal that of input"; + return -1; + } + + Response *res = mutable_data(); + + for (size_t i = 0; i < out->size(); ++i) { + int dim1 = out->at(i).shape[0]; + int dim2 = out->at(i).shape[1]; + + if (out->at(i).dtype != paddle::PaddleDType::FLOAT32) { + LOG(ERROR) << "Expected data type float"; + return -1; + } + + float *data = static_cast(out->at(i).data.data()); + for (int j = 0; j < dim1; ++j) { + TextResInstance *res_instance = res->add_predictions(); + res_instance->set_class_0_prob(data[j * dim2]); + res_instance->set_class_1_prob(data[j * dim2 + 1]); + } + } + + for (size_t i = 0; i < in->size(); ++i) { + (*in)[i].shape.clear(); + } + in->clear(); + butil::return_object(in); + + for (size_t i = 0; i < out->size(); ++i) { + (*out)[i].shape.clear(); + } + out->clear(); + butil::return_object(out); + return 0; +} + +DEFINE_OP(TextClassificationOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/text_classification_op.h b/examples/demo-serving/op/text_classification_op.h new file mode 100644 index 0000000000000000000000000000000000000000..ab462ee54051abd8519813e256b2004c0d8a7b7f --- /dev/null +++ b/examples/demo-serving/op/text_classification_op.h @@ -0,0 +1,39 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include +#include "paddle_inference_api.h" // NOLINT +#include "examples/demo-serving/text_classification.pb.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +static const char* TEXT_CLASSIFICATION_MODEL_NAME = "text_classification_bow"; + +class TextClassificationOp + : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::text_classification::Response> { + public: + typedef std::vector TensorVector; + + DECLARE_OP(TextClassificationOp); + + int inference(); +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/write_json_op.cpp b/examples/demo-serving/op/write_json_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..1b65290deeae2d19962faa4b48e43fd6c94f6483 --- /dev/null +++ b/examples/demo-serving/op/write_json_op.cpp @@ -0,0 +1,82 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#ifdef BCLOUD +#include "pb_to_json.h" // NOLINT +#else +#include "json2pb/pb_to_json.h" +#endif + +#include "examples/demo-serving/op/write_json_op.h" +#include "core/predictor/framework/memory.h" + +#ifndef BCLOUD +using json2pb::ProtoMessageToJson; +#endif + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +using baidu::paddle_serving::predictor::format::XImageResInstance; +using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; +using baidu::paddle_serving::predictor::image_classification::Response; + +int WriteJsonOp::inference() { + const ClassifyResponse* classify_out = + get_depend_argument("image_classify_op"); + if (!classify_out) { + LOG(ERROR) << "Failed mutable depended argument, op:" + << "image_classify_op"; + return -1; + } + + Response* res = mutable_data(); + if (!res) { + LOG(ERROR) << "Failed mutable output response in op:" + << "WriteJsonOp"; + return -1; + } + + // transfer classify output message into json format + std::string err_string; + uint32_t sample_size = classify_out->predictions_size(); + for (uint32_t si = 0; si < sample_size; si++) { + XImageResInstance* ins = res->add_predictions(); + if (!ins) { + LOG(ERROR) << "Failed add one prediction ins"; + return -1; + } + std::string* text = ins->mutable_response_json(); + if (!ProtoMessageToJson(classify_out->predictions(si), text, &err_string)) { + LOG(ERROR) << "Failed convert message[" + << classify_out->predictions(si).ShortDebugString() + << "], err: " << err_string; + return -1; + } + } + + LOG(INFO) << "Succ write json"; + + return 0; +} + +DEFINE_OP(WriteJsonOp); + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/write_json_op.h b/examples/demo-serving/op/write_json_op.h new file mode 100644 index 0000000000000000000000000000000000000000..e292af3d9a051c4bd7b2dcc347bdf17db6e9cb06 --- /dev/null +++ b/examples/demo-serving/op/write_json_op.h @@ -0,0 +1,37 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/image_class.pb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace predictor { + +class WriteJsonOp + : public OpWithChannel< + baidu::paddle_serving::predictor::image_classification::Response> { + public: + DECLARE_OP(WriteJsonOp); + + int inference(); +}; + +} // namespace predictor +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/write_op.cpp b/examples/demo-serving/op/write_op.cpp new file mode 100644 index 0000000000000000000000000000000000000000..3107145a8162bc79fe845e6af98f3516ed694460 --- /dev/null +++ b/examples/demo-serving/op/write_op.cpp @@ -0,0 +1,82 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include +#include + +#ifdef BCLOUD +#include "pb_to_json.h" +#else +#include "json2pb/pb_to_json.h" +#endif + +#include "examples/demo-serving/op/write_op.h" +#include "core/predictor/framework/memory.h" + +#ifndef BCLOUD +using json2pb::ProtoMessageToJson; +#endif + +namespace baidu { +namespace paddle_serving { +namespace serving { + +using baidu::paddle_serving::predictor::format::XImageResInstance; +using baidu::paddle_serving::predictor::image_classification::ClassifyResponse; +using baidu::paddle_serving::predictor::image_classification::Response; + +int WriteOp::inference() { + const ClassifyResponse* classify_out = + get_depend_argument("image_classify_op"); + if (!classify_out) { + LOG(ERROR) << "Failed mutable depended argument, op:" + << "image_classify_op"; + return -1; + } + + Response* res = mutable_data(); + if (!res) { + LOG(ERROR) << "Failed mutable output response in op:" + << "WriteOp"; + return -1; + } + + // transfer classify output message into json format + std::string err_string; + uint32_t sample_size = classify_out->predictions_size(); + for (uint32_t si = 0; si < sample_size; si++) { + XImageResInstance* ins = res->add_predictions(); + if (!ins) { + LOG(ERROR) << "Failed add one prediction ins"; + return -1; + } + std::string* text = ins->mutable_response_json(); + if (!ProtoMessageToJson(classify_out->predictions(si), text, &err_string)) { + LOG(ERROR) << "Failed convert message[" + << classify_out->predictions(si).ShortDebugString() + << "], err: " << err_string; + return -1; + } + } + + LOG(INFO) << "Succ write json:" << classify_out->ShortDebugString(); + + return 0; +} + +DEFINE_OP(WriteOp); + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/op/write_op.h b/examples/demo-serving/op/write_op.h new file mode 100644 index 0000000000000000000000000000000000000000..d953f80c718089a81600b031dfd8fb3954d1ec43 --- /dev/null +++ b/examples/demo-serving/op/write_op.h @@ -0,0 +1,38 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once +#include "examples/demo-serving/image_class.pb.h" +#include "core/predictor/builtin_format.pb.h" +#include "core/predictor/common/inner_common.h" +#include "core/predictor/framework/channel.h" +#include "core/predictor/framework/op_repository.h" +#include "core/predictor/op/op.h" + +namespace baidu { +namespace paddle_serving { +namespace serving { + +class WriteOp + : public baidu::paddle_serving::predictor::OpWithChannel< + baidu::paddle_serving::predictor::image_classification::Response> { + public: + DECLARE_OP(WriteOp); + + int inference(); +}; + +} // namespace serving +} // namespace paddle_serving +} // namespace baidu diff --git a/examples/demo-serving/proto/CMakeLists.txt b/examples/demo-serving/proto/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cc53b44dbccc02791520b02759995b229e060f69 --- /dev/null +++ b/examples/demo-serving/proto/CMakeLists.txt @@ -0,0 +1,16 @@ +LIST(APPEND protofiles + ${CMAKE_CURRENT_LIST_DIR}/image_class.proto + ${CMAKE_CURRENT_LIST_DIR}/dense_service.proto + ${CMAKE_CURRENT_LIST_DIR}/sparse_service.proto + ${CMAKE_CURRENT_LIST_DIR}/echo_service.proto + ${CMAKE_CURRENT_LIST_DIR}/echo_kvdb_service.proto + ${CMAKE_CURRENT_LIST_DIR}/int64tensor_service.proto + ${CMAKE_CURRENT_LIST_DIR}/text_classification.proto + ${CMAKE_CURRENT_LIST_DIR}/ctr_prediction.proto + ${CMAKE_CURRENT_LIST_DIR}/bert_service.proto + ${CMAKE_CURRENT_LIST_DIR}/load_general_model_service.proto + ${CMAKE_CURRENT_LIST_DIR}/general_model_service.proto +) + +PROTOBUF_GENERATE_SERVING_CPP(TRUE PROTO_SRCS PROTO_HDRS ${protofiles}) +LIST(APPEND serving_srcs ${PROTO_SRCS}) diff --git a/demo-serving/proto/bert_service.proto b/examples/demo-serving/proto/bert_service.proto similarity index 100% rename from demo-serving/proto/bert_service.proto rename to examples/demo-serving/proto/bert_service.proto diff --git a/demo-serving/proto/ctr_prediction.proto b/examples/demo-serving/proto/ctr_prediction.proto similarity index 100% rename from demo-serving/proto/ctr_prediction.proto rename to examples/demo-serving/proto/ctr_prediction.proto diff --git a/demo-serving/proto/dense_service.proto b/examples/demo-serving/proto/dense_service.proto similarity index 100% rename from demo-serving/proto/dense_service.proto rename to examples/demo-serving/proto/dense_service.proto diff --git a/demo-serving/proto/echo_kvdb_service.proto b/examples/demo-serving/proto/echo_kvdb_service.proto similarity index 100% rename from demo-serving/proto/echo_kvdb_service.proto rename to examples/demo-serving/proto/echo_kvdb_service.proto diff --git a/demo-serving/proto/echo_service.proto b/examples/demo-serving/proto/echo_service.proto similarity index 100% rename from demo-serving/proto/echo_service.proto rename to examples/demo-serving/proto/echo_service.proto diff --git a/examples/demo-serving/proto/general_model_service.proto b/examples/demo-serving/proto/general_model_service.proto new file mode 100644 index 0000000000000000000000000000000000000000..1b9bfe380134eb494dbc104e0d241ffbf3f98c58 --- /dev/null +++ b/examples/demo-serving/proto/general_model_service.proto @@ -0,0 +1,48 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +import "pds_option.proto"; +import "builtin_format.proto"; +package baidu.paddle_serving.predictor.general_model; + +option cc_generic_services = true; + +message Tensor { + repeated bytes data = 1; + optional int32 elem_type = 2; + repeated int32 shape = 3; +}; + +message FeedInst { + repeated Tensor tensor_array = 1; +}; + +message FetchInst { + repeated Tensor tensor_array = 1; +}; + +message Request { + repeated FeedInst insts = 1; +}; + +message Response { + repeated FetchInst insts = 1; +}; + +service GeneralModelService { + rpc inference(Request) returns (Response); + rpc debug(Request) returns (Response); + option (pds.options).generate_impl = true; +}; diff --git a/demo-serving/proto/image_class.proto b/examples/demo-serving/proto/image_class.proto similarity index 100% rename from demo-serving/proto/image_class.proto rename to examples/demo-serving/proto/image_class.proto diff --git a/demo-serving/proto/int64tensor_service.proto b/examples/demo-serving/proto/int64tensor_service.proto similarity index 100% rename from demo-serving/proto/int64tensor_service.proto rename to examples/demo-serving/proto/int64tensor_service.proto diff --git a/examples/demo-serving/proto/load_general_model_service.proto b/examples/demo-serving/proto/load_general_model_service.proto new file mode 100644 index 0000000000000000000000000000000000000000..b8a86497f8c0b683f4e95f4517d83f576e79baad --- /dev/null +++ b/examples/demo-serving/proto/load_general_model_service.proto @@ -0,0 +1,30 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +syntax = "proto2"; +import "pds_option.proto"; +package baidu.paddle_serving.predictor.load_general_model_service; + +option cc_generic_services = true; + +message RequestAndResponse { + required int32 a = 1; + required float b = 2; +}; + +service LoadGeneralModelService { + rpc inference(RequestAndResponse) returns (RequestAndResponse); + rpc debug(RequestAndResponse) returns (RequestAndResponse); + option (pds.options).generate_impl = true; +}; diff --git a/demo-serving/proto/sparse_service.proto b/examples/demo-serving/proto/sparse_service.proto similarity index 100% rename from demo-serving/proto/sparse_service.proto rename to examples/demo-serving/proto/sparse_service.proto diff --git a/demo-serving/proto/text_classification.proto b/examples/demo-serving/proto/text_classification.proto similarity index 100% rename from demo-serving/proto/text_classification.proto rename to examples/demo-serving/proto/text_classification.proto diff --git a/elastic-ctr/CMakeLists.txt b/examples/elastic-ctr/CMakeLists.txt similarity index 100% rename from elastic-ctr/CMakeLists.txt rename to examples/elastic-ctr/CMakeLists.txt diff --git a/elastic-ctr/client/CMakeLists.txt b/examples/elastic-ctr/client/CMakeLists.txt similarity index 100% rename from elastic-ctr/client/CMakeLists.txt rename to examples/elastic-ctr/client/CMakeLists.txt diff --git a/elastic-ctr/client/api/elastic_ctr_api.cpp b/examples/elastic-ctr/client/api/elastic_ctr_api.cpp similarity index 100% rename from elastic-ctr/client/api/elastic_ctr_api.cpp rename to examples/elastic-ctr/client/api/elastic_ctr_api.cpp diff --git a/elastic-ctr/client/api/elastic_ctr_api.h b/examples/elastic-ctr/client/api/elastic_ctr_api.h similarity index 100% rename from elastic-ctr/client/api/elastic_ctr_api.h rename to examples/elastic-ctr/client/api/elastic_ctr_api.h diff --git a/elastic-ctr/client/api/python/elasticctr/elastic_ctr_api.py b/examples/elastic-ctr/client/api/python/elasticctr/elastic_ctr_api.py similarity index 100% rename from elastic-ctr/client/api/python/elasticctr/elastic_ctr_api.py rename to examples/elastic-ctr/client/api/python/elasticctr/elastic_ctr_api.py diff --git a/elastic-ctr/client/demo/conf/predictors.prototxt b/examples/elastic-ctr/client/demo/conf/predictors.prototxt similarity index 100% rename from elastic-ctr/client/demo/conf/predictors.prototxt rename to examples/elastic-ctr/client/demo/conf/predictors.prototxt diff --git a/elastic-ctr/client/demo/conf/slot.conf b/examples/elastic-ctr/client/demo/conf/slot.conf similarity index 100% rename from elastic-ctr/client/demo/conf/slot.conf rename to examples/elastic-ctr/client/demo/conf/slot.conf diff --git a/elastic-ctr/client/demo/data/ctr_prediction/data.txt b/examples/elastic-ctr/client/demo/data/ctr_prediction/data.txt similarity index 100% rename from elastic-ctr/client/demo/data/ctr_prediction/data.txt rename to examples/elastic-ctr/client/demo/data/ctr_prediction/data.txt diff --git a/elastic-ctr/client/demo/demo.cpp b/examples/elastic-ctr/client/demo/demo.cpp similarity index 100% rename from elastic-ctr/client/demo/demo.cpp rename to examples/elastic-ctr/client/demo/demo.cpp diff --git a/elastic-ctr/client/demo/elastic_ctr.py b/examples/elastic-ctr/client/demo/elastic_ctr.py similarity index 100% rename from elastic-ctr/client/demo/elastic_ctr.py rename to examples/elastic-ctr/client/demo/elastic_ctr.py diff --git a/elastic-ctr/client/proto/CMakeLists.txt b/examples/elastic-ctr/client/proto/CMakeLists.txt similarity index 100% rename from elastic-ctr/client/proto/CMakeLists.txt rename to examples/elastic-ctr/client/proto/CMakeLists.txt diff --git a/elastic-ctr/client/proto/elastic_ctr_prediction.proto b/examples/elastic-ctr/client/proto/elastic_ctr_prediction.proto similarity index 100% rename from elastic-ctr/client/proto/elastic_ctr_prediction.proto rename to examples/elastic-ctr/client/proto/elastic_ctr_prediction.proto diff --git a/elastic-ctr/serving/CMakeLists.txt b/examples/elastic-ctr/serving/CMakeLists.txt similarity index 100% rename from elastic-ctr/serving/CMakeLists.txt rename to examples/elastic-ctr/serving/CMakeLists.txt diff --git a/examples/elastic-ctr/serving/conf/cube.conf b/examples/elastic-ctr/serving/conf/cube.conf new file mode 100644 index 0000000000000000000000000000000000000000..a462dd23376308a4e3f2f62b4b87d4a1a7acb9e4 --- /dev/null +++ b/examples/elastic-ctr/serving/conf/cube.conf @@ -0,0 +1,15 @@ +[{ + "dict_name": "test_dict", + "shard": 2, + "dup": 1, + "timeout": 200, + "retry": 3, + "backup_request": 100, + "type": "ipport_list", + "load_balancer": "rr", + "nodes": [{ + "ipport_list": "list://xxx.xxx.xxx.xxx:8000" + },{ + "ipport_list": "list://xxx.xxx.xxx.xxx:8000" + }] +}] diff --git a/elastic-ctr/serving/conf/gflags.conf b/examples/elastic-ctr/serving/conf/gflags.conf similarity index 100% rename from elastic-ctr/serving/conf/gflags.conf rename to examples/elastic-ctr/serving/conf/gflags.conf diff --git a/elastic-ctr/serving/conf/model_toolkit.prototxt b/examples/elastic-ctr/serving/conf/model_toolkit.prototxt similarity index 100% rename from elastic-ctr/serving/conf/model_toolkit.prototxt rename to examples/elastic-ctr/serving/conf/model_toolkit.prototxt diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt b/examples/elastic-ctr/serving/conf/resource.prototxt similarity index 100% rename from paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/resource.prototxt rename to examples/elastic-ctr/serving/conf/resource.prototxt diff --git a/elastic-ctr/serving/conf/service.prototxt b/examples/elastic-ctr/serving/conf/service.prototxt similarity index 100% rename from elastic-ctr/serving/conf/service.prototxt rename to examples/elastic-ctr/serving/conf/service.prototxt diff --git a/elastic-ctr/serving/conf/workflow.prototxt b/examples/elastic-ctr/serving/conf/workflow.prototxt similarity index 100% rename from elastic-ctr/serving/conf/workflow.prototxt rename to examples/elastic-ctr/serving/conf/workflow.prototxt diff --git a/examples/elastic-ctr/serving/data/model/paddle/fluid/.gitignore b/examples/elastic-ctr/serving/data/model/paddle/fluid/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/elastic-ctr/serving/data/model/paddle/fluid_reload_flag b/examples/elastic-ctr/serving/data/model/paddle/fluid_reload_flag similarity index 100% rename from elastic-ctr/serving/data/model/paddle/fluid_reload_flag rename to examples/elastic-ctr/serving/data/model/paddle/fluid_reload_flag diff --git a/elastic-ctr/serving/data/model/paddle/fluid_time_file b/examples/elastic-ctr/serving/data/model/paddle/fluid_time_file similarity index 100% rename from elastic-ctr/serving/data/model/paddle/fluid_time_file rename to examples/elastic-ctr/serving/data/model/paddle/fluid_time_file diff --git a/elastic-ctr/serving/op/CMakeLists.txt b/examples/elastic-ctr/serving/op/CMakeLists.txt similarity index 100% rename from elastic-ctr/serving/op/CMakeLists.txt rename to examples/elastic-ctr/serving/op/CMakeLists.txt diff --git a/elastic-ctr/serving/op/elastic_ctr_prediction_op.cpp b/examples/elastic-ctr/serving/op/elastic_ctr_prediction_op.cpp similarity index 100% rename from elastic-ctr/serving/op/elastic_ctr_prediction_op.cpp rename to examples/elastic-ctr/serving/op/elastic_ctr_prediction_op.cpp diff --git a/elastic-ctr/serving/op/elastic_ctr_prediction_op.h b/examples/elastic-ctr/serving/op/elastic_ctr_prediction_op.h similarity index 100% rename from elastic-ctr/serving/op/elastic_ctr_prediction_op.h rename to examples/elastic-ctr/serving/op/elastic_ctr_prediction_op.h diff --git a/elastic-ctr/serving/proto/CMakeLists.txt b/examples/elastic-ctr/serving/proto/CMakeLists.txt similarity index 100% rename from elastic-ctr/serving/proto/CMakeLists.txt rename to examples/elastic-ctr/serving/proto/CMakeLists.txt diff --git a/elastic-ctr/serving/proto/elastic_ctr_prediction.proto b/examples/elastic-ctr/serving/proto/elastic_ctr_prediction.proto similarity index 100% rename from elastic-ctr/serving/proto/elastic_ctr_prediction.proto rename to examples/elastic-ctr/serving/proto/elastic_ctr_prediction.proto diff --git a/inferencer-fluid-cpu/include/fluid_cpu_engine.h b/inferencer-fluid-cpu/include/fluid_cpu_engine.h deleted file mode 100644 index 114710e3db73ff6be31a81e266179ba942971093..0000000000000000000000000000000000000000 --- a/inferencer-fluid-cpu/include/fluid_cpu_engine.h +++ /dev/null @@ -1,530 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include -#include -#include -#include "configure/include/configure_parser.h" -#include "configure/inferencer_configure.pb.h" -#include "paddle_inference_api.h" // NOLINT -#include "predictor/framework/infer.h" - -namespace baidu { -namespace paddle_serving { -namespace fluid_cpu { - -using configure::SigmoidConf; - -class AutoLock { - public: - explicit AutoLock(pthread_mutex_t& mutex) : _mut(mutex) { - pthread_mutex_lock(&mutex); - } - - ~AutoLock() { pthread_mutex_unlock(&_mut); } - - private: - pthread_mutex_t& _mut; -}; - -class GlobalPaddleCreateMutex { - public: - pthread_mutex_t& mutex() { return _mut; } - - static pthread_mutex_t& instance() { - static GlobalPaddleCreateMutex gmutex; - return gmutex.mutex(); - } - - private: - GlobalPaddleCreateMutex() { pthread_mutex_init(&_mut, NULL); } - - pthread_mutex_t _mut; -}; - -class GlobalSigmoidCreateMutex { - public: - pthread_mutex_t& mutex() { return _mut; } - static pthread_mutex_t& instance() { - static GlobalSigmoidCreateMutex gmutex; - return gmutex.mutex(); - } - - private: - GlobalSigmoidCreateMutex() { pthread_mutex_init(&_mut, NULL); } - - pthread_mutex_t _mut; -}; - -// data interface -class FluidFamilyCore { - public: - virtual ~FluidFamilyCore() {} - virtual bool Run(const void* in_data, void* out_data) { - if (!_core->Run(*(std::vector*)in_data, - (std::vector*)out_data)) { - LOG(ERROR) << "Failed call Run with paddle predictor"; - return false; - } - - return true; - } - - virtual int create(const predictor::InferEngineCreationParams& params) = 0; - - virtual int clone(void* origin_core) { - if (origin_core == NULL) { - LOG(ERROR) << "origin paddle Predictor is null."; - return -1; - } - paddle::PaddlePredictor* p_predictor = - (paddle::PaddlePredictor*)origin_core; - _core = p_predictor->Clone(); - if (_core.get() == NULL) { - LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; - return -1; - } - return 0; - } - - virtual void* get() { return _core.get(); } - - protected: - std::unique_ptr _core; -}; - -// infer interface -class FluidCpuAnalysisCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetParamsFile(data_path + "/__params__"); - analysis_config.SetProgFile(data_path + "/__model__"); - analysis_config.DisableGpu(); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - analysis_config.SwitchSpecifyInputNames(true); - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidCpuNativeCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.param_file = data_path + "/__params__"; - native_config.prog_file = data_path + "/__model__"; - native_config.use_gpu = false; - native_config.device = 0; - native_config.fraction_of_gpu_memory = 0; - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidCpuAnalysisDirCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetModel(data_path); - analysis_config.DisableGpu(); - analysis_config.SwitchSpecifyInputNames(true); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidCpuNativeDirCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.model_dir = data_path; - native_config.use_gpu = false; - native_config.device = 0; - native_config.fraction_of_gpu_memory = 0; - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class Parameter { - public: - Parameter() : _row(0), _col(0), _params(NULL) {} - ~Parameter() { - LOG(INFO) << "before destroy Parameter, file_name[" << _file_name << "]"; - destroy(); - } - - int init(int row, int col, const char* file_name) { - destroy(); - _file_name = file_name; - _row = row; - _col = col; - _params = reinterpret_cast(malloc(_row * _col * sizeof(float))); - if (_params == NULL) { - LOG(ERROR) << "Load " << _file_name << " malloc error."; - return -1; - } - LOG(WARNING) << "Load parameter file[" << _file_name << "] success."; - return 0; - } - - void destroy() { - _row = 0; - _col = 0; - if (_params != NULL) { - free(_params); - _params = NULL; - } - } - - int load() { - if (_params == NULL || _row <= 0 || _col <= 0) { - LOG(ERROR) << "load parameter error [not inited]."; - return -1; - } - - FILE* fs = fopen(_file_name.c_str(), "rb"); - if (fs == NULL) { - LOG(ERROR) << "load " << _file_name << " fopen error."; - return -1; - } - static const uint32_t MODEL_FILE_HEAD_LEN = 16; - char head[MODEL_FILE_HEAD_LEN] = {0}; - if (fread(head, 1, MODEL_FILE_HEAD_LEN, fs) != MODEL_FILE_HEAD_LEN) { - destroy(); - LOG(ERROR) << "Load " << _file_name << " read head error."; - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - return -1; - } - - uint32_t matrix_size = _row * _col; - if (matrix_size == fread(_params, sizeof(float), matrix_size, fs)) { - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - LOG(INFO) << "load " << _file_name << " read ok."; - return 0; - } else { - LOG(ERROR) << "load " << _file_name << " read error."; - destroy(); - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - return -1; - } - return 0; - } - - public: - std::string _file_name; - int _row; - int _col; - float* _params; -}; - -class SigmoidModel { - public: - ~SigmoidModel() {} - int load(const char* sigmoid_w_file, - const char* sigmoid_b_file, - float exp_max, - float exp_min) { - AutoLock lock(GlobalSigmoidCreateMutex::instance()); - if (0 != _sigmoid_w.init(2, 1, sigmoid_w_file) || 0 != _sigmoid_w.load()) { - LOG(ERROR) << "load params sigmoid_w failed."; - return -1; - } - LOG(WARNING) << "load sigmoid_w [" << _sigmoid_w._params[0] << "] [" - << _sigmoid_w._params[1] << "]."; - if (0 != _sigmoid_b.init(2, 1, sigmoid_b_file) || 0 != _sigmoid_b.load()) { - LOG(ERROR) << "load params sigmoid_b failed."; - return -1; - } - LOG(WARNING) << "load sigmoid_b [" << _sigmoid_b._params[0] << "] [" - << _sigmoid_b._params[1] << "]."; - _exp_max_input = exp_max; - _exp_min_input = exp_min; - return 0; - } - - int softmax(float x, double& o) { // NOLINT - float _y0 = x * _sigmoid_w._params[0] + _sigmoid_b._params[0]; - float _y1 = x * _sigmoid_w._params[1] + _sigmoid_b._params[1]; - _y0 = (_y0 > _exp_max_input) - ? _exp_max_input - : ((_y0 < _exp_min_input) ? _exp_min_input : _y0); - _y1 = (_y1 > _exp_max_input) - ? _exp_max_input - : ((_y1 < _exp_min_input) ? _exp_min_input : _y1); - o = 1.0f / (1.0f + exp(_y0 - _y1)); - return 0; - } - - public: - Parameter _sigmoid_w; - Parameter _sigmoid_b; - float _exp_max_input; - float _exp_min_input; -}; - -class SigmoidFluidModel { - public: - int softmax(float x, double& o) { // NOLINT - return _sigmoid_core->softmax(x, o); - } // NOLINT - - std::unique_ptr Clone() { - std::unique_ptr clone_model; - clone_model.reset(new SigmoidFluidModel()); - clone_model->_sigmoid_core = _sigmoid_core; - clone_model->_fluid_core = _fluid_core->Clone(); - return std::move(clone_model); - } - - public: - std::unique_ptr _fluid_core; - std::shared_ptr _sigmoid_core; -}; - -class FluidCpuWithSigmoidCore : public FluidFamilyCore { - public: - virtual ~FluidCpuWithSigmoidCore() {} - - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string model_path = params.get_path(); - size_t pos = model_path.find_last_of("/\\"); - std::string conf_path = model_path.substr(0, pos); - std::string conf_file = model_path.substr(pos); - configure::SigmoidConf conf; - if (configure::read_proto_conf(conf_path, conf_file, &conf) != 0) { - LOG(ERROR) << "failed load model path: " << model_path; - return -1; - } - - _core.reset(new SigmoidFluidModel); - - std::string fluid_model_data_path = conf.dnn_model_path(); - predictor::InferEngineCreationParams new_params(params); - new_params.set_path(fluid_model_data_path); - int ret = load_fluid_model(new_params); - if (ret < 0) { - LOG(ERROR) << "fail to load fluid model."; - return -1; - } - const char* sigmoid_w_file = conf.sigmoid_w_file().c_str(); - const char* sigmoid_b_file = conf.sigmoid_b_file().c_str(); - float exp_max = conf.exp_max_input(); - float exp_min = conf.exp_min_input(); - _core->_sigmoid_core.reset(new SigmoidModel); - LOG(INFO) << "create sigmoid core[" << _core->_sigmoid_core.get() - << "], use count[" << _core->_sigmoid_core.use_count() << "]."; - ret = _core->_sigmoid_core->load( - sigmoid_w_file, sigmoid_b_file, exp_max, exp_min); - if (ret < 0) { - LOG(ERROR) << "fail to load sigmoid model."; - return -1; - } - return 0; - } - - virtual bool Run(const void* in_data, void* out_data) { - if (!_core->_fluid_core->Run( - *(std::vector*)in_data, - (std::vector*)out_data)) { - LOG(ERROR) << "Failed call Run with paddle predictor"; - return false; - } - - return true; - } - - virtual int clone(SigmoidFluidModel* origin_core) { - if (origin_core == NULL) { - LOG(ERROR) << "origin paddle Predictor is null."; - return -1; - } - _core = origin_core->Clone(); - if (_core.get() == NULL) { - LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; - return -1; - } - LOG(INFO) << "clone sigmoid core[" << _core->_sigmoid_core.get() - << "] use count[" << _core->_sigmoid_core.use_count() << "]."; - return 0; - } - - virtual SigmoidFluidModel* get() { return _core.get(); } - - virtual int load_fluid_model( - const predictor::InferEngineCreationParams& params) = 0; - - int softmax(float x, double& o) { // NOLINT - return _core->_sigmoid_core->softmax(x, o); - } - - protected: - std::unique_ptr _core; -}; - -class FluidCpuNativeDirWithSigmoidCore : public FluidCpuWithSigmoidCore { - public: - int load_fluid_model(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.model_dir = data_path; - native_config.use_gpu = false; - native_config.device = 0; - native_config.fraction_of_gpu_memory = 0; - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core->_fluid_core = - paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidCpuAnalysisDirWithSigmoidCore : public FluidCpuWithSigmoidCore { - public: - int load_fluid_model(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetModel(data_path); - analysis_config.DisableGpu(); - analysis_config.SwitchSpecifyInputNames(true); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core->_fluid_core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -} // namespace fluid_cpu -} // namespace paddle_serving -} // namespace baidu diff --git a/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp b/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp deleted file mode 100644 index 9326f7e4421747c10eb4e92cc618ba777a431364..0000000000000000000000000000000000000000 --- a/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "inferencer-fluid-cpu/include/fluid_cpu_engine.h" -#include "predictor/framework/factory.h" - -namespace baidu { -namespace paddle_serving { -namespace fluid_cpu { - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_ANALYSIS"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidCpuAnalysisDirCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_ANALYSIS_DIR"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidCpuAnalysisDirWithSigmoidCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_ANALYSIS_DIR_SIGMOID"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_NATIVE"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_NATIVE_DIR"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidCpuNativeDirWithSigmoidCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_CPU_NATIVE_DIR_SIGMOID"); - -} // namespace fluid_cpu -} // namespace paddle_serving -} // namespace baidu diff --git a/inferencer-fluid-gpu/include/fluid_gpu_engine.h b/inferencer-fluid-gpu/include/fluid_gpu_engine.h deleted file mode 100644 index 2b61c89d1bace63abbad2c299b9f97ba40e6a93d..0000000000000000000000000000000000000000 --- a/inferencer-fluid-gpu/include/fluid_gpu_engine.h +++ /dev/null @@ -1,534 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include -#include -#include -#include -#include -#include "configure/include/configure_parser.h" -#include "configure/inferencer_configure.pb.h" -#include "paddle_inference_api.h" // NOLINT -#include "predictor/framework/infer.h" - -DECLARE_int32(gpuid); - -namespace baidu { -namespace paddle_serving { -namespace fluid_gpu { - -using configure::SigmoidConf; - -class AutoLock { - public: - explicit AutoLock(pthread_mutex_t& mutex) : _mut(mutex) { - pthread_mutex_lock(&mutex); - } - - ~AutoLock() { pthread_mutex_unlock(&_mut); } - - private: - pthread_mutex_t& _mut; -}; - -class GlobalPaddleCreateMutex { - public: - pthread_mutex_t& mutex() { return _mut; } - - static pthread_mutex_t& instance() { - static GlobalPaddleCreateMutex gmutex; - return gmutex.mutex(); - } - - private: - GlobalPaddleCreateMutex() { pthread_mutex_init(&_mut, NULL); } - - pthread_mutex_t _mut; -}; - -class GlobalSigmoidCreateMutex { - public: - pthread_mutex_t& mutex() { return _mut; } - static pthread_mutex_t& instance() { - static GlobalSigmoidCreateMutex gmutex; - return gmutex.mutex(); - } - - private: - GlobalSigmoidCreateMutex() { pthread_mutex_init(&_mut, NULL); } - - pthread_mutex_t _mut; -}; - -// data interface -class FluidFamilyCore { - public: - virtual ~FluidFamilyCore() {} - virtual bool Run(const void* in_data, void* out_data) { - if (!_core->Run(*(std::vector*)in_data, - (std::vector*)out_data)) { - LOG(ERROR) << "Failed call Run with paddle predictor"; - return false; - } - - return true; - } - - virtual int create(const predictor::InferEngineCreationParams& params) = 0; - - virtual int clone(void* origin_core) { - if (origin_core == NULL) { - LOG(ERROR) << "origin paddle Predictor is null."; - return -1; - } - paddle::PaddlePredictor* p_predictor = - (paddle::PaddlePredictor*)origin_core; - _core = p_predictor->Clone(); - if (_core.get() == NULL) { - LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; - return -1; - } - return 0; - } - - virtual void* get() { return _core.get(); } - - protected: - std::unique_ptr _core; -}; - -// infer interface -class FluidGpuAnalysisCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetParamsFile(data_path + "/__params__"); - analysis_config.SetProgFile(data_path + "/__model__"); - analysis_config.EnableUseGpu(100, FLAGS_gpuid); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - analysis_config.SwitchSpecifyInputNames(true); - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidGpuNativeCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.param_file = data_path + "/__params__"; - native_config.prog_file = data_path + "/__model__"; - native_config.use_gpu = true; - native_config.fraction_of_gpu_memory = 0.01; - native_config.device = FLAGS_gpuid; - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidGpuAnalysisDirCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetModel(data_path); - analysis_config.EnableUseGpu(100, FLAGS_gpuid); - analysis_config.SwitchSpecifyInputNames(true); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidGpuNativeDirCore : public FluidFamilyCore { - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.model_dir = data_path; - native_config.use_gpu = true; - native_config.fraction_of_gpu_memory = 0.01; - native_config.device = FLAGS_gpuid; - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core = paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class Parameter { - public: - Parameter() : _row(0), _col(0), _params(NULL) {} - ~Parameter() { - LOG(INFO) << "before destroy Parameter, file_name[" << _file_name << "]"; - destroy(); - } - - int init(int row, int col, const char* file_name) { - destroy(); - _file_name = file_name; - _row = row; - _col = col; - _params = reinterpret_cast(malloc(_row * _col * sizeof(float))); - if (_params == NULL) { - LOG(ERROR) << "Load " << _file_name << " malloc error."; - return -1; - } - LOG(WARNING) << "Load parameter file[" << _file_name << "] success."; - return 0; - } - - void destroy() { - _row = 0; - _col = 0; - if (_params != NULL) { - free(_params); - _params = NULL; - } - } - - int load() { - if (_params == NULL || _row <= 0 || _col <= 0) { - LOG(ERROR) << "load parameter error [not inited]."; - return -1; - } - - FILE* fs = fopen(_file_name.c_str(), "rb"); - if (fs == NULL) { - LOG(ERROR) << "load " << _file_name << " fopen error."; - return -1; - } - static const uint32_t MODEL_FILE_HEAD_LEN = 16; - char head[MODEL_FILE_HEAD_LEN] = {0}; - if (fread(head, 1, MODEL_FILE_HEAD_LEN, fs) != MODEL_FILE_HEAD_LEN) { - destroy(); - LOG(ERROR) << "Load " << _file_name << " read head error."; - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - return -1; - } - - uint32_t matrix_size = _row * _col; - if (matrix_size == fread(_params, sizeof(float), matrix_size, fs)) { - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - LOG(INFO) << "load " << _file_name << " read ok."; - return 0; - } else { - LOG(ERROR) << "load " << _file_name << " read error."; - destroy(); - if (fs != NULL) { - fclose(fs); - fs = NULL; - } - return -1; - } - return 0; - } - - public: - std::string _file_name; - int _row; - int _col; - float* _params; -}; - -class SigmoidModel { - public: - ~SigmoidModel() {} - int load(const char* sigmoid_w_file, - const char* sigmoid_b_file, - float exp_max, - float exp_min) { - AutoLock lock(GlobalSigmoidCreateMutex::instance()); - if (0 != _sigmoid_w.init(2, 1, sigmoid_w_file) || 0 != _sigmoid_w.load()) { - LOG(ERROR) << "load params sigmoid_w failed."; - return -1; - } - LOG(WARNING) << "load sigmoid_w [" << _sigmoid_w._params[0] << "] [" - << _sigmoid_w._params[1] << "]."; - if (0 != _sigmoid_b.init(2, 1, sigmoid_b_file) || 0 != _sigmoid_b.load()) { - LOG(ERROR) << "load params sigmoid_b failed."; - return -1; - } - LOG(WARNING) << "load sigmoid_b [" << _sigmoid_b._params[0] << "] [" - << _sigmoid_b._params[1] << "]."; - _exp_max_input = exp_max; - _exp_min_input = exp_min; - return 0; - } - - int softmax(float x, double& o) { // NOLINT - float _y0 = x * _sigmoid_w._params[0] + _sigmoid_b._params[0]; - float _y1 = x * _sigmoid_w._params[1] + _sigmoid_b._params[1]; - _y0 = (_y0 > _exp_max_input) - ? _exp_max_input - : ((_y0 < _exp_min_input) ? _exp_min_input : _y0); - _y1 = (_y1 > _exp_max_input) - ? _exp_max_input - : ((_y1 < _exp_min_input) ? _exp_min_input : _y1); - o = 1.0f / (1.0f + exp(_y0 - _y1)); - return 0; - } - - public: - Parameter _sigmoid_w; - Parameter _sigmoid_b; - float _exp_max_input; - float _exp_min_input; -}; - -class SigmoidFluidModel { - public: - int softmax(float x, double& o) { // NOLINT - return _sigmoid_core->softmax(x, o); - } // NOLINT - - std::unique_ptr Clone() { - std::unique_ptr clone_model; - clone_model.reset(new SigmoidFluidModel()); - clone_model->_sigmoid_core = _sigmoid_core; - clone_model->_fluid_core = _fluid_core->Clone(); - return std::move(clone_model); - } - - public: - std::unique_ptr _fluid_core; - std::shared_ptr _sigmoid_core; -}; - -class FluidGpuWithSigmoidCore : public FluidFamilyCore { - public: - virtual ~FluidGpuWithSigmoidCore() {} - - public: - int create(const predictor::InferEngineCreationParams& params) { - std::string model_path = params.get_path(); - size_t pos = model_path.find_last_of("/\\"); - std::string conf_path = model_path.substr(0, pos); - std::string conf_file = model_path.substr(pos); - configure::SigmoidConf conf; - if (configure::read_proto_conf(conf_path, conf_file, &conf) != 0) { - LOG(ERROR) << "failed load model path: " << model_path; - return -1; - } - - _core.reset(new SigmoidFluidModel); - - std::string fluid_model_data_path = conf.dnn_model_path(); - predictor::InferEngineCreationParams new_params(params); - new_params.set_path(fluid_model_data_path); - int ret = load_fluid_model(new_params); - if (ret < 0) { - LOG(ERROR) << "fail to load fluid model."; - return -1; - } - const char* sigmoid_w_file = conf.sigmoid_w_file().c_str(); - const char* sigmoid_b_file = conf.sigmoid_b_file().c_str(); - float exp_max = conf.exp_max_input(); - float exp_min = conf.exp_min_input(); - _core->_sigmoid_core.reset(new SigmoidModel); - LOG(INFO) << "create sigmoid core[" << _core->_sigmoid_core.get() - << "], use count[" << _core->_sigmoid_core.use_count() << "]."; - ret = _core->_sigmoid_core->load( - sigmoid_w_file, sigmoid_b_file, exp_max, exp_min); - if (ret < 0) { - LOG(ERROR) << "fail to load sigmoid model."; - return -1; - } - return 0; - } - - virtual bool Run(const void* in_data, void* out_data) { - if (!_core->_fluid_core->Run( - *(std::vector*)in_data, - (std::vector*)out_data)) { - LOG(ERROR) << "Failed call Run with paddle predictor"; - return false; - } - - return true; - } - - virtual int clone(SigmoidFluidModel* origin_core) { - if (origin_core == NULL) { - LOG(ERROR) << "origin paddle Predictor is null."; - return -1; - } - _core = origin_core->Clone(); - if (_core.get() == NULL) { - LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; - return -1; - } - LOG(INFO) << "clone sigmoid core[" << _core->_sigmoid_core.get() - << "] use count[" << _core->_sigmoid_core.use_count() << "]."; - return 0; - } - - virtual SigmoidFluidModel* get() { return _core.get(); } - - virtual int load_fluid_model( - const predictor::InferEngineCreationParams& params) = 0; - - int softmax(float x, double& o) { // NOLINT - return _core->_sigmoid_core->softmax(x, o); - } - - protected: - std::unique_ptr _core; -}; - -class FluidGpuNativeDirWithSigmoidCore : public FluidGpuWithSigmoidCore { - public: - int load_fluid_model(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::NativeConfig native_config; - native_config.model_dir = data_path; - native_config.use_gpu = true; - native_config.fraction_of_gpu_memory = 0.01; - native_config.device = FLAGS_gpuid; - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core->_fluid_core = - paddle::CreatePaddlePredictor( - native_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -class FluidGpuAnalysisDirWithSigmoidCore : public FluidGpuWithSigmoidCore { - public: - int load_fluid_model(const predictor::InferEngineCreationParams& params) { - std::string data_path = params.get_path(); - if (access(data_path.c_str(), F_OK) == -1) { - LOG(ERROR) << "create paddle predictor failed, path not exits: " - << data_path; - return -1; - } - - paddle::AnalysisConfig analysis_config; - analysis_config.SetModel(data_path); - analysis_config.EnableUseGpu(100, FLAGS_gpuid); - analysis_config.SwitchSpecifyInputNames(true); - analysis_config.SetCpuMathLibraryNumThreads(1); - - if (params.enable_memory_optimization()) { - analysis_config.EnableMemoryOptim(); - } - - AutoLock lock(GlobalPaddleCreateMutex::instance()); - _core->_fluid_core = - paddle::CreatePaddlePredictor(analysis_config); - if (NULL == _core.get()) { - LOG(ERROR) << "create paddle predictor failed, path: " << data_path; - return -1; - } - - LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; - return 0; - } -}; - -} // namespace fluid_gpu -} // namespace paddle_serving -} // namespace baidu diff --git a/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp b/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp deleted file mode 100644 index 70e89b3127724756eae82651a5ac2a9007f00e90..0000000000000000000000000000000000000000 --- a/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp +++ /dev/null @@ -1,59 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "inferencer-fluid-gpu/include/fluid_gpu_engine.h" -#include "predictor/framework/factory.h" - -DEFINE_int32(gpuid, 0, "GPU device id to use"); - -namespace baidu { -namespace paddle_serving { -namespace fluid_gpu { - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_ANALYSIS"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidGpuAnalysisDirCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_ANALYSIS_DIR"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidGpuAnalysisDirWithSigmoidCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_ANALYSIS_DIR_SIGMOID"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_NATIVE"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_NATIVE_DIR"); - -REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( - ::baidu::paddle_serving::predictor::FluidInferEngine< - FluidGpuNativeDirWithSigmoidCore>, - ::baidu::paddle_serving::predictor::InferEngine, - "FLUID_GPU_NATIVE_DIR_SIGMOID"); - -} // namespace fluid_gpu -} // namespace paddle_serving -} // namespace baidu diff --git a/kvdb/include/kvdb/rocksdb_impl.h b/kvdb/include/kvdb/rocksdb_impl.h deleted file mode 100644 index 84aa1313511d382952d9cfaa36dec18fc7adc06d..0000000000000000000000000000000000000000 --- a/kvdb/include/kvdb/rocksdb_impl.h +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "kvdb/kvdb_impl.h" -#include "kvdb/paddle_rocksdb.h" -class RocksKVDB : public AbstractKVDB { - public: - void CreateDB(); - void SetDBName(std::string); - void Set(std::string key, std::string value); - std::string Get(std::string key); - void Close(); - ~RocksKVDB(); - - private: - std::shared_ptr db_; - - public: - static int db_count; -}; diff --git a/kvdb/src/gtest_db_func.cpp b/kvdb/src/gtest_db_func.cpp deleted file mode 100644 index aaf679bfa72a83646a8abae98e4068a26331a487..0000000000000000000000000000000000000000 --- a/kvdb/src/gtest_db_func.cpp +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include -#include "kvdb/kvdb_impl.h" -#include "kvdb/paddle_rocksdb.h" -#include "kvdb/rocksdb_impl.h" -class KVDBTest : public ::testing::Test { - protected: - void SetUp() override {} - - static void SetUpTestCase() {} -}; -int my_argc; -char** my_argv; - -std::vector StringSplit(std::string str, char split) { - std::vector strs; - std::istringstream f(str); - std::string s; - while (getline(f, s, split)) { - strs.push_back(s); - } - return strs; -} - -TEST_F(KVDBTest, AbstractKVDB_Func_Test) { - AbsKVDBPtr kvdb = std::make_shared(); - kvdb->CreateDB(); - std::string set_list = "setlist.txt"; - std::string get_list = "getlist.txt"; - std::ifstream set_file(set_list); - std::ifstream get_file(get_list); - for (std::string line; getline(set_file, line);) { - std::vector strs = StringSplit(line, ' '); - kvdb->Set(strs[0], strs[1]); - } - - for (std::string line; getline(get_file, line);) { - std::vector strs = StringSplit(line, ' '); - std::string val = kvdb->Get(strs[0]); - ASSERT_EQ(val, strs[1]); - } -} - -int main(int argc, char** argv) { - my_argc = argc; - my_argv = argv; - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/kvdb/src/gtest_db_thread.cpp b/kvdb/src/gtest_db_thread.cpp deleted file mode 100644 index cfc5807726c10c36760b04a92883cc97937c66ba..0000000000000000000000000000000000000000 --- a/kvdb/src/gtest_db_thread.cpp +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include "kvdb/kvdb_impl.h" -#include "kvdb/paddle_rocksdb.h" -#include "kvdb/rocksdb_impl.h" -class KVDBTest : public ::testing::Test { - protected: - void SetUp() override {} - - static void SetUpTestCase() {} -}; - -int my_argc; -char** my_argv; - -void db_thread_test(AbsKVDBPtr kvdb, int size) { - for (int i = 0; i < size; i++) { - kvdb->Set(std::to_string(i), std::to_string(i)); - kvdb->Get(std::to_string(i)); - } -} - -TEST_F(KVDBTest, AbstractKVDB_Thread_Test) { - if (my_argc != 3) { - std::cerr << "illegal input! should be db_thread ${num_of_thread} " - "${num_of_ops_each_thread}" - << std::endl; - return; - } - int num_of_thread = atoi(my_argv[1]); - int nums_of_ops_each_thread = atoi(my_argv[2]); - std::vector kvdbptrs; - for (int i = 0; i < num_of_thread; i++) { - kvdbptrs.push_back(std::make_shared()); - kvdbptrs[i]->CreateDB(); - } - std::vector tarr; - for (int i = 0; i < num_of_thread; i++) { - tarr.push_back( - std::thread(db_thread_test, kvdbptrs[i], nums_of_ops_each_thread)); - } - for (int i = 0; i < num_of_thread; i++) { - tarr[i].join(); - } - return; -} - -int main(int argc, char** argv) { - my_argc = argc; - my_argv = argv; - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/kvdb/src/gtest_kvdb.cpp b/kvdb/src/gtest_kvdb.cpp deleted file mode 100644 index a13bbd1bfb2ff4719a5f5f60431005a7beed1f5b..0000000000000000000000000000000000000000 --- a/kvdb/src/gtest_kvdb.cpp +++ /dev/null @@ -1,125 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include -#include "kvdb/kvdb_impl.h" -#include "kvdb/paddle_rocksdb.h" -#include "kvdb/rocksdb_impl.h" -class KVDBTest : public ::testing::Test { - protected: - void SetUp() override {} - - static void SetUpTestCase() { - kvdb = std::make_shared(); - dict_reader = std::make_shared(); - param_dict = std::make_shared(); - } - - static AbsKVDBPtr kvdb; - static FileReaderPtr dict_reader; - static ParamDictPtr param_dict; - static ParamDictMgr dict_mgr; -}; -AbsKVDBPtr KVDBTest::kvdb; -FileReaderPtr KVDBTest::dict_reader; -ParamDictPtr KVDBTest::param_dict; -ParamDictMgr KVDBTest::dict_mgr; - -void GenerateTestIn(std::string); -void UpdateTestIn(std::string); - -TEST_F(KVDBTest, AbstractKVDB_Unit_Test) { - kvdb->CreateDB(); - kvdb->SetDBName("test_kvdb"); - for (int i = 0; i < 100; i++) { - kvdb->Set(std::to_string(i), std::to_string(i * 2)); - } - for (int i = 0; i < 100; i++) { - std::string val = kvdb->Get(std::to_string(i)); - ASSERT_EQ(val, std::to_string(i * 2)); - } - kvdb->Close(); -} - -TEST_F(KVDBTest, FileReader_Unit_Test) { - std::string test_in_filename = "abs_dict_reader_test_in.txt"; - GenerateTestIn(test_in_filename); - dict_reader->SetFileName(test_in_filename); - - std::string md5_1 = dict_reader->GetMD5(); - std::chrono::system_clock::time_point timestamp_1 = - dict_reader->GetTimeStamp(); - - std::string md5_2 = dict_reader->GetMD5(); - std::chrono::system_clock::time_point timestamp_2 = - dict_reader->GetTimeStamp(); - - ASSERT_EQ(md5_1, md5_2); - ASSERT_EQ(timestamp_1, timestamp_2); - - UpdateTestIn(test_in_filename); - - std::string md5_3 = dict_reader->GetMD5(); - std::chrono::system_clock::time_point timestamp_3 = - dict_reader->GetTimeStamp(); - - ASSERT_NE(md5_2, md5_3); - ASSERT_NE(timestamp_2, timestamp_3); -} -#include -void GenerateTestIn(std::string filename) { - std::ifstream in_file(filename); - if (in_file.good()) { - in_file.close(); - std::string cmd = "rm -rf " + filename; - system(cmd.c_str()); - } - std::ofstream out_file(filename); - for (size_t i = 0; i < 100000; i++) { - out_file << i << " " << i << " "; - for (size_t j = 0; j < 3; j++) { - out_file << i << " "; - } - out_file << std::endl; - } - out_file.close(); -} - -void UpdateTestIn(std::string filename) { - std::ifstream in_file(filename); - if (in_file.good()) { - in_file.close(); - std::string cmd = "rm -rf " + filename; - system(cmd.c_str()); - } - std::ofstream out_file(filename); - for (size_t i = 0; i < 10000; i++) { - out_file << i << " " << i << " "; - for (size_t j = 0; j < 3; j++) { - out_file << i + 1 << " "; - } - out_file << std::endl; - } - out_file.close(); -} - -int main(int argc, char** argv) { - ::testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/kvdb/src/mock_param_dict_impl.cpp b/kvdb/src/mock_param_dict_impl.cpp deleted file mode 100644 index efb28bab90df796610258762d13e15c044b448d8..0000000000000000000000000000000000000000 --- a/kvdb/src/mock_param_dict_impl.cpp +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include -#include -#include "kvdb/rocksdb_impl.h" - -std::vector ParamDict::GetDictReaderLst() { - return this->file_reader_lst_; -} - -void ParamDict::SetFileReaderLst(std::vector lst) { - for (size_t i = 0; i < lst.size(); i++) { - FileReaderPtr fr = std::make_shared(); - fr->SetFileName(lst[i]); - this->file_reader_lst_.push_back(fr); - } -} - -std::vector ParamDict::GetSparseValue(std::string feasign, - std::string slot) { - auto BytesToFloat = [](uint8_t* byte_array) { return *((float*)byte_array); }; - // TODO: the concatation of feasign and slot is TBD. - std::string result = front_db->Get(feasign + slot); - std::vector value; - if (result == "NOT_FOUND") return value; - uint8_t* raw_values_ptr = reinterpret_cast(&result[0]); - for (size_t i = 0; i < result.size(); i += sizeof(float)) { - float temp = BytesToFloat(raw_values_ptr + i); - value.push_back(temp); - } - return value; -} - -void ParamDict::SetReader( - std::function(std::string)> func) { - read_func_ = func; -} - -std::vector ParamDict::GetSparseValue(int64_t feasign, int64_t slot) { - return this->GetSparseValue(std::to_string(feasign), std::to_string(slot)); -} - -bool ParamDict::InsertSparseValue(int64_t feasign, - int64_t slot, - const std::vector& values) { - return this->InsertSparseValue( - std::to_string(feasign), std::to_string(slot), values); -} - -bool ParamDict::InsertSparseValue(std::string feasign, - std::string slot, - const std::vector& values) { - auto FloatToBytes = [](float fvalue, uint8_t* arr) { - unsigned char* pf = nullptr; - unsigned char* px = nullptr; - unsigned char i = 0; - pf = (unsigned char*)&fvalue; - px = arr; - for (i = 0; i < sizeof(float); i++) { - *(px + i) = *(pf + i); - } - }; - - std::string key = feasign + slot; - uint8_t* values_ptr = new uint8_t[values.size() * sizeof(float)]; - std::string value; - for (size_t i = 0; i < values.size(); i++) { - FloatToBytes(values[i], values_ptr + sizeof(float) * i); - } - char* raw_values_ptr = reinterpret_cast(values_ptr); - for (size_t i = 0; i < values.size() * sizeof(float); i++) { - value.push_back(raw_values_ptr[i]); - } - back_db->Set(key, value); - // TODO: change stateless to stateful - return true; -} - -void ParamDict::UpdateBaseModel() { - auto is_number = [](const std::string& s) { - return !s.empty() && std::find_if(s.begin(), s.end(), [](char c) { - return !std::isdigit(c); - }) == s.end(); - }; - std::thread t([&]() { - for (FileReaderPtr file_reader : this->file_reader_lst_) { - std::string line; - std::ifstream infile(file_reader->GetFileName()); - if (infile.is_open()) { - while (getline(infile, line)) { - std::pair kvpair = read_func_(line); - std::vector nums; - for (size_t i = 0; i < kvpair.second.size(); i++) { - if (is_number(kvpair.second[i])) { - nums.push_back(std::stof(kvpair.second[i])); - } - } - this->InsertSparseValue(kvpair.first, "", nums); - } - } - infile.close(); - } - AbsKVDBPtr temp = front_db; - front_db = back_db; - back_db = temp; - }); - t.detach(); -} - -void ParamDict::UpdateDeltaModel() { UpdateBaseModel(); } - -std::pair ParamDict::GetKVDB() { - return {front_db, back_db}; -} - -void ParamDict::SetKVDB(std::pair kvdbs) { - this->front_db = kvdbs.first; - this->back_db = kvdbs.second; -} - -void ParamDict::CreateKVDB() { - this->front_db = std::make_shared(); - this->back_db = std::make_shared(); - this->front_db->CreateDB(); - this->back_db->CreateDB(); -} - -ParamDict::~ParamDict() { -} diff --git a/kvdb/src/paddle_rocksdb.cpp b/kvdb/src/paddle_rocksdb.cpp deleted file mode 100644 index cea91a98ee2dd691874ff18cc0841b180a5059cc..0000000000000000000000000000000000000000 --- a/kvdb/src/paddle_rocksdb.cpp +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "kvdb/paddle_rocksdb.h" - -RocksDBWrapper::RocksDBWrapper(std::string db_name) { - rocksdb::Options options; - options.create_if_missing = true; - db_name_ = db_name; - db_ = nullptr; - rocksdb::Status s = rocksdb::DB::Open(options, db_name, &db_); - return; -} - -std::string RocksDBWrapper::Get(std::string key) { - rocksdb::ReadOptions options; - options.verify_checksums = true; - std::string result; - rocksdb::Status s = db_->Get(options, key, &result); - if (s.IsNotFound()) { - result = "NOT_FOUND"; - } - return result; -} - -bool RocksDBWrapper::Put(std::string key, std::string value) { - rocksdb::WriteOptions options; - rocksdb::Status s = db_->Put(options, key, value); - if (s.ok()) { - return true; - } else { - return false; - } -} - -void RocksDBWrapper::SetDBName(std::string db_name) { - this->db_name_ = db_name; -} - -void RocksDBWrapper::Close() { - if (db_ != nullptr) { - db_->Close(); - delete(db_); - db_ = nullptr; - } -} - -std::shared_ptr RocksDBWrapper::RocksDBWrapperFactory( - std::string db_name) { - return std::make_shared(db_name); -} diff --git a/kvdb/src/param_dict_mgr_impl.cpp b/kvdb/src/param_dict_mgr_impl.cpp deleted file mode 100644 index 37dbd99e3a3d83ec37957c95f5fa5351dfe1205b..0000000000000000000000000000000000000000 --- a/kvdb/src/param_dict_mgr_impl.cpp +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "kvdb/kvdb_impl.h" - -void ParamDictMgr::UpdateAll() { - for (auto it = this->ParamDictMap.begin(); it != this->ParamDictMap.end(); - ++it) { - it->second->UpdateBaseModel(); - } -} - -void ParamDictMgr::InsertParamDict(std::string key, ParamDictPtr value) { - this->ParamDictMap.insert(std::make_pair(key, value)); -} - -AbstractKVDB::~AbstractKVDB() {} diff --git a/kvdb/src/rockskvdb_impl.cpp b/kvdb/src/rockskvdb_impl.cpp deleted file mode 100644 index 7fb3a9d252622ac71f7a6389086a5f6426575193..0000000000000000000000000000000000000000 --- a/kvdb/src/rockskvdb_impl.cpp +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "kvdb/rocksdb_impl.h" - -int RocksKVDB::db_count; -void RocksKVDB::CreateDB() { - this->db_ = RocksDBWrapper::RocksDBWrapperFactory( - "RocksDB_" + std::to_string(RocksKVDB::db_count)); - RocksKVDB::db_count++; - return; -} - -void RocksKVDB::SetDBName(std::string db_name) { - this->db_->SetDBName(db_name); - return; -} - -void RocksKVDB::Set(std::string key, std::string value) { - this->db_->Put(key, value); - return; -} - -void RocksKVDB::Close() { - this->db_->Close(); -} - -std::string RocksKVDB::Get(std::string key) { return this->db_->Get(key); } - -RocksKVDB::~RocksKVDB() { - this->db_->Close(); -} diff --git a/kvdb/src/test_rocksdb.cpp b/kvdb/src/test_rocksdb.cpp deleted file mode 100644 index 300c8a9deac3b08d2a3b2cabf0ee8056dd0d6767..0000000000000000000000000000000000000000 --- a/kvdb/src/test_rocksdb.cpp +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include "kvdb/paddle_rocksdb.h" -#include "kvdb/rocksdb_impl.h" -void test_rockskvdb() { - RocksKVDB db; - db.CreateDB(); - db.SetDBName("Sparse Matrix"); - db.Set("1", "One"); - std::cout << db.Get("1") << std::endl; - return; -} - -void test_rocksdbwrapper() { - std::shared_ptr db = - RocksDBWrapper::RocksDBWrapperFactory("TEST"); - for (size_t i = 0; i < 1000; i++) { - db->Put(std::to_string(i), std::to_string(i * 2)); - } - for (size_t i = 0; i < 1000; i++) { - std::string res = db->Get(std::to_string(i)); - std::cout << res << " "; - } - std::cout << std::endl; -} - -#ifdef RAW_TEST -int main() { - test_rockskvdb(); - test_rocksdbwrapper(); -} -#endif diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/gflags.conf b/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/gflags.conf deleted file mode 100644 index b4eedcc8d9d554b4ce159456b0614b139aa979c2..0000000000000000000000000000000000000000 --- a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/gflags.conf +++ /dev/null @@ -1,2 +0,0 @@ ---enable_model_toolkit ---enable_cube=true diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/workflow.prototxt b/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/workflow.prototxt deleted file mode 100644 index 06f3ac40b1a4c80e125dbdd42e861176a6742753..0000000000000000000000000000000000000000 --- a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/conf/workflow.prototxt +++ /dev/null @@ -1,94 +0,0 @@ -workflows { - name: "workflow1" - workflow_type: "Sequence" - nodes { - name: "dense_echo_op" - type: "DenseEchoOp" - } -} - -workflows { - name: "workflow2" - workflow_type: "Sequence" - nodes { - name: "sparse_echo_op" - type: "SparseEchoOp" - dependencies { - name: "startup_op" - mode: "RO" - } - } -} -workflows { - name: "workflow3" - workflow_type: "Sequence" - nodes { - name: "echo_op" - type: "CommonEchoOp" - } -} -workflows { - name: "workflow4" - workflow_type: "Sequence" - nodes { - name: "image_reader_op" - type: "ReaderOp" - } - nodes { - name: "image_classify_op" - type: "ClassifyOp" - dependencies { - name: "image_reader_op" - mode: "RO" - } - } - nodes { - name: "write_json_op" - type: "WriteJsonOp" - dependencies { - name: "image_classify_op" - mode: "RO" - } - } -} -workflows { - name: "workflow5" - workflow_type: "Sequence" - nodes { - name: "int64tensor_echo_op" - type: "Int64TensorEchoOp" - } -} -workflows { - name: "workflow6" - workflow_type: "Sequence" - nodes { - name: "text_classify_op" - type: "TextClassificationOp" - } -} -workflows { - name: "workflow7" - workflow_type: "Sequence" - nodes { - name: "echo_kvdb_service_op" - type: "KVDBEchoOp" - } -} -workflows { - name: "workflow8" - workflow_type: "Sequence" - nodes { - name: "ctr_prediction_service_op" - type: "CTRPredictionOp" - } -} -workflows { - name: "workflow9" - workflow_type: "Sequence" - nodes { - name: "bert_service_op" - type: "BertServiceOp" - } -} - diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_reload_flag b/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_reload_flag deleted file mode 100644 index a1866984b04a26a09bbfc4ef4f08dec5e38f818d..0000000000000000000000000000000000000000 --- a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_reload_flag +++ /dev/null @@ -1,2 +0,0 @@ -paddle fluid model -time:20180531 diff --git a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_time_file b/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_time_file deleted file mode 100644 index 4d9422cd37f6c51800055f1b1dc625e2c455fc6d..0000000000000000000000000000000000000000 --- a/paddle-gpu-serving/paddle-gpu-serving/paddle_gpu_serving/server/data/model/paddle/fluid_time_file +++ /dev/null @@ -1,2 +0,0 @@ -201805311000 -model paddle fluid diff --git a/paddle_inference/CMakeLists.txt b/paddle_inference/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..dcc49b0c21ce97411a17f645f1de5bcad5f5dc73 --- /dev/null +++ b/paddle_inference/CMakeLists.txt @@ -0,0 +1,20 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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 + +if (NOT CLIENT_ONLY) +add_subdirectory(inferencer-fluid-cpu) +if (WITH_GPU) +add_subdirectory(inferencer-fluid-gpu) +endif() +endif() diff --git a/inferencer-fluid-cpu/CMakeLists.txt b/paddle_inference/inferencer-fluid-cpu/CMakeLists.txt similarity index 100% rename from inferencer-fluid-cpu/CMakeLists.txt rename to paddle_inference/inferencer-fluid-cpu/CMakeLists.txt diff --git a/paddle_inference/inferencer-fluid-cpu/include/fluid_cpu_engine.h b/paddle_inference/inferencer-fluid-cpu/include/fluid_cpu_engine.h new file mode 100644 index 0000000000000000000000000000000000000000..639dbc580247d1f3ff44ea75c6080630c0298161 --- /dev/null +++ b/paddle_inference/inferencer-fluid-cpu/include/fluid_cpu_engine.h @@ -0,0 +1,530 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include +#include +#include +#include "core/configure/include/configure_parser.h" +#include "core/configure/inferencer_configure.pb.h" +#include "paddle_inference_api.h" // NOLINT +#include "core/predictor/framework/infer.h" + +namespace baidu { +namespace paddle_serving { +namespace fluid_cpu { + +using configure::SigmoidConf; + +class AutoLock { + public: + explicit AutoLock(pthread_mutex_t& mutex) : _mut(mutex) { + pthread_mutex_lock(&mutex); + } + + ~AutoLock() { pthread_mutex_unlock(&_mut); } + + private: + pthread_mutex_t& _mut; +}; + +class GlobalPaddleCreateMutex { + public: + pthread_mutex_t& mutex() { return _mut; } + + static pthread_mutex_t& instance() { + static GlobalPaddleCreateMutex gmutex; + return gmutex.mutex(); + } + + private: + GlobalPaddleCreateMutex() { pthread_mutex_init(&_mut, NULL); } + + pthread_mutex_t _mut; +}; + +class GlobalSigmoidCreateMutex { + public: + pthread_mutex_t& mutex() { return _mut; } + static pthread_mutex_t& instance() { + static GlobalSigmoidCreateMutex gmutex; + return gmutex.mutex(); + } + + private: + GlobalSigmoidCreateMutex() { pthread_mutex_init(&_mut, NULL); } + + pthread_mutex_t _mut; +}; + +// data interface +class FluidFamilyCore { + public: + virtual ~FluidFamilyCore() {} + virtual bool Run(const void* in_data, void* out_data) { + if (!_core->Run(*(std::vector*)in_data, + (std::vector*)out_data)) { + LOG(ERROR) << "Failed call Run with paddle predictor"; + return false; + } + + return true; + } + + virtual int create(const predictor::InferEngineCreationParams& params) = 0; + + virtual int clone(void* origin_core) { + if (origin_core == NULL) { + LOG(ERROR) << "origin paddle Predictor is null."; + return -1; + } + paddle::PaddlePredictor* p_predictor = + (paddle::PaddlePredictor*)origin_core; + _core = p_predictor->Clone(); + if (_core.get() == NULL) { + LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; + return -1; + } + return 0; + } + + virtual void* get() { return _core.get(); } + + protected: + std::unique_ptr _core; +}; + +// infer interface +class FluidCpuAnalysisCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetParamsFile(data_path + "/__params__"); + analysis_config.SetProgFile(data_path + "/__model__"); + analysis_config.DisableGpu(); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + analysis_config.SwitchSpecifyInputNames(true); + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidCpuNativeCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.param_file = data_path + "/__params__"; + native_config.prog_file = data_path + "/__model__"; + native_config.use_gpu = false; + native_config.device = 0; + native_config.fraction_of_gpu_memory = 0; + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidCpuAnalysisDirCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetModel(data_path); + analysis_config.DisableGpu(); + analysis_config.SwitchSpecifyInputNames(true); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidCpuNativeDirCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.model_dir = data_path; + native_config.use_gpu = false; + native_config.device = 0; + native_config.fraction_of_gpu_memory = 0; + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class Parameter { + public: + Parameter() : _row(0), _col(0), _params(NULL) {} + ~Parameter() { + LOG(INFO) << "before destroy Parameter, file_name[" << _file_name << "]"; + destroy(); + } + + int init(int row, int col, const char* file_name) { + destroy(); + _file_name = file_name; + _row = row; + _col = col; + _params = reinterpret_cast(malloc(_row * _col * sizeof(float))); + if (_params == NULL) { + LOG(ERROR) << "Load " << _file_name << " malloc error."; + return -1; + } + LOG(WARNING) << "Load parameter file[" << _file_name << "] success."; + return 0; + } + + void destroy() { + _row = 0; + _col = 0; + if (_params != NULL) { + free(_params); + _params = NULL; + } + } + + int load() { + if (_params == NULL || _row <= 0 || _col <= 0) { + LOG(ERROR) << "load parameter error [not inited]."; + return -1; + } + + FILE* fs = fopen(_file_name.c_str(), "rb"); + if (fs == NULL) { + LOG(ERROR) << "load " << _file_name << " fopen error."; + return -1; + } + static const uint32_t MODEL_FILE_HEAD_LEN = 16; + char head[MODEL_FILE_HEAD_LEN] = {0}; + if (fread(head, 1, MODEL_FILE_HEAD_LEN, fs) != MODEL_FILE_HEAD_LEN) { + destroy(); + LOG(ERROR) << "Load " << _file_name << " read head error."; + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + return -1; + } + + uint32_t matrix_size = _row * _col; + if (matrix_size == fread(_params, sizeof(float), matrix_size, fs)) { + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + LOG(INFO) << "load " << _file_name << " read ok."; + return 0; + } else { + LOG(ERROR) << "load " << _file_name << " read error."; + destroy(); + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + return -1; + } + return 0; + } + + public: + std::string _file_name; + int _row; + int _col; + float* _params; +}; + +class SigmoidModel { + public: + ~SigmoidModel() {} + int load(const char* sigmoid_w_file, + const char* sigmoid_b_file, + float exp_max, + float exp_min) { + AutoLock lock(GlobalSigmoidCreateMutex::instance()); + if (0 != _sigmoid_w.init(2, 1, sigmoid_w_file) || 0 != _sigmoid_w.load()) { + LOG(ERROR) << "load params sigmoid_w failed."; + return -1; + } + LOG(WARNING) << "load sigmoid_w [" << _sigmoid_w._params[0] << "] [" + << _sigmoid_w._params[1] << "]."; + if (0 != _sigmoid_b.init(2, 1, sigmoid_b_file) || 0 != _sigmoid_b.load()) { + LOG(ERROR) << "load params sigmoid_b failed."; + return -1; + } + LOG(WARNING) << "load sigmoid_b [" << _sigmoid_b._params[0] << "] [" + << _sigmoid_b._params[1] << "]."; + _exp_max_input = exp_max; + _exp_min_input = exp_min; + return 0; + } + + int softmax(float x, double& o) { // NOLINT + float _y0 = x * _sigmoid_w._params[0] + _sigmoid_b._params[0]; + float _y1 = x * _sigmoid_w._params[1] + _sigmoid_b._params[1]; + _y0 = (_y0 > _exp_max_input) + ? _exp_max_input + : ((_y0 < _exp_min_input) ? _exp_min_input : _y0); + _y1 = (_y1 > _exp_max_input) + ? _exp_max_input + : ((_y1 < _exp_min_input) ? _exp_min_input : _y1); + o = 1.0f / (1.0f + exp(_y0 - _y1)); + return 0; + } + + public: + Parameter _sigmoid_w; + Parameter _sigmoid_b; + float _exp_max_input; + float _exp_min_input; +}; + +class SigmoidFluidModel { + public: + int softmax(float x, double& o) { // NOLINT + return _sigmoid_core->softmax(x, o); + } // NOLINT + + std::unique_ptr Clone() { + std::unique_ptr clone_model; + clone_model.reset(new SigmoidFluidModel()); + clone_model->_sigmoid_core = _sigmoid_core; + clone_model->_fluid_core = _fluid_core->Clone(); + return std::move(clone_model); + } + + public: + std::unique_ptr _fluid_core; + std::shared_ptr _sigmoid_core; +}; + +class FluidCpuWithSigmoidCore : public FluidFamilyCore { + public: + virtual ~FluidCpuWithSigmoidCore() {} + + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string model_path = params.get_path(); + size_t pos = model_path.find_last_of("/\\"); + std::string conf_path = model_path.substr(0, pos); + std::string conf_file = model_path.substr(pos); + configure::SigmoidConf conf; + if (configure::read_proto_conf(conf_path, conf_file, &conf) != 0) { + LOG(ERROR) << "failed load model path: " << model_path; + return -1; + } + + _core.reset(new SigmoidFluidModel); + + std::string fluid_model_data_path = conf.dnn_model_path(); + predictor::InferEngineCreationParams new_params(params); + new_params.set_path(fluid_model_data_path); + int ret = load_fluid_model(new_params); + if (ret < 0) { + LOG(ERROR) << "fail to load fluid model."; + return -1; + } + const char* sigmoid_w_file = conf.sigmoid_w_file().c_str(); + const char* sigmoid_b_file = conf.sigmoid_b_file().c_str(); + float exp_max = conf.exp_max_input(); + float exp_min = conf.exp_min_input(); + _core->_sigmoid_core.reset(new SigmoidModel); + LOG(INFO) << "create sigmoid core[" << _core->_sigmoid_core.get() + << "], use count[" << _core->_sigmoid_core.use_count() << "]."; + ret = _core->_sigmoid_core->load( + sigmoid_w_file, sigmoid_b_file, exp_max, exp_min); + if (ret < 0) { + LOG(ERROR) << "fail to load sigmoid model."; + return -1; + } + return 0; + } + + virtual bool Run(const void* in_data, void* out_data) { + if (!_core->_fluid_core->Run( + *(std::vector*)in_data, + (std::vector*)out_data)) { + LOG(ERROR) << "Failed call Run with paddle predictor"; + return false; + } + + return true; + } + + virtual int clone(SigmoidFluidModel* origin_core) { + if (origin_core == NULL) { + LOG(ERROR) << "origin paddle Predictor is null."; + return -1; + } + _core = origin_core->Clone(); + if (_core.get() == NULL) { + LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; + return -1; + } + LOG(INFO) << "clone sigmoid core[" << _core->_sigmoid_core.get() + << "] use count[" << _core->_sigmoid_core.use_count() << "]."; + return 0; + } + + virtual SigmoidFluidModel* get() { return _core.get(); } + + virtual int load_fluid_model( + const predictor::InferEngineCreationParams& params) = 0; + + int softmax(float x, double& o) { // NOLINT + return _core->_sigmoid_core->softmax(x, o); + } + + protected: + std::unique_ptr _core; +}; + +class FluidCpuNativeDirWithSigmoidCore : public FluidCpuWithSigmoidCore { + public: + int load_fluid_model(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.model_dir = data_path; + native_config.use_gpu = false; + native_config.device = 0; + native_config.fraction_of_gpu_memory = 0; + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core->_fluid_core = + paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidCpuAnalysisDirWithSigmoidCore : public FluidCpuWithSigmoidCore { + public: + int load_fluid_model(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetModel(data_path); + analysis_config.DisableGpu(); + analysis_config.SwitchSpecifyInputNames(true); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core->_fluid_core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +} // namespace fluid_cpu +} // namespace paddle_serving +} // namespace baidu diff --git a/paddle_inference/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp b/paddle_inference/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp new file mode 100644 index 0000000000000000000000000000000000000000..af3f93a8129282920f4cb6fd1d074e0c7eb46228 --- /dev/null +++ b/paddle_inference/inferencer-fluid-cpu/src/fluid_cpu_engine.cpp @@ -0,0 +1,57 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "paddle_inference/inferencer-fluid-cpu/include/fluid_cpu_engine.h" +#include "core/predictor/framework/factory.h" + +namespace baidu { +namespace paddle_serving { +namespace fluid_cpu { + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_ANALYSIS"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidCpuAnalysisDirCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_ANALYSIS_DIR"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidCpuAnalysisDirWithSigmoidCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_ANALYSIS_DIR_SIGMOID"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_NATIVE"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_NATIVE_DIR"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidCpuNativeDirWithSigmoidCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_CPU_NATIVE_DIR_SIGMOID"); + +} // namespace fluid_cpu +} // namespace paddle_serving +} // namespace baidu diff --git a/inferencer-fluid-gpu/CMakeLists.txt b/paddle_inference/inferencer-fluid-gpu/CMakeLists.txt similarity index 100% rename from inferencer-fluid-gpu/CMakeLists.txt rename to paddle_inference/inferencer-fluid-gpu/CMakeLists.txt diff --git a/paddle_inference/inferencer-fluid-gpu/include/fluid_gpu_engine.h b/paddle_inference/inferencer-fluid-gpu/include/fluid_gpu_engine.h new file mode 100644 index 0000000000000000000000000000000000000000..1b34bbda07eca16c8a1be50fc4b427ae6180b714 --- /dev/null +++ b/paddle_inference/inferencer-fluid-gpu/include/fluid_gpu_engine.h @@ -0,0 +1,534 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#pragma once + +#include +#include +#include +#include +#include +#include +#include +#include "core/configure/include/configure_parser.h" +#include "core/configure/inferencer_configure.pb.h" +#include "paddle_inference_api.h" // NOLINT +#include "core/predictor/framework/infer.h" + +DECLARE_int32(gpuid); + +namespace baidu { +namespace paddle_serving { +namespace fluid_gpu { + +using configure::SigmoidConf; + +class AutoLock { + public: + explicit AutoLock(pthread_mutex_t& mutex) : _mut(mutex) { + pthread_mutex_lock(&mutex); + } + + ~AutoLock() { pthread_mutex_unlock(&_mut); } + + private: + pthread_mutex_t& _mut; +}; + +class GlobalPaddleCreateMutex { + public: + pthread_mutex_t& mutex() { return _mut; } + + static pthread_mutex_t& instance() { + static GlobalPaddleCreateMutex gmutex; + return gmutex.mutex(); + } + + private: + GlobalPaddleCreateMutex() { pthread_mutex_init(&_mut, NULL); } + + pthread_mutex_t _mut; +}; + +class GlobalSigmoidCreateMutex { + public: + pthread_mutex_t& mutex() { return _mut; } + static pthread_mutex_t& instance() { + static GlobalSigmoidCreateMutex gmutex; + return gmutex.mutex(); + } + + private: + GlobalSigmoidCreateMutex() { pthread_mutex_init(&_mut, NULL); } + + pthread_mutex_t _mut; +}; + +// data interface +class FluidFamilyCore { + public: + virtual ~FluidFamilyCore() {} + virtual bool Run(const void* in_data, void* out_data) { + if (!_core->Run(*(std::vector*)in_data, + (std::vector*)out_data)) { + LOG(ERROR) << "Failed call Run with paddle predictor"; + return false; + } + + return true; + } + + virtual int create(const predictor::InferEngineCreationParams& params) = 0; + + virtual int clone(void* origin_core) { + if (origin_core == NULL) { + LOG(ERROR) << "origin paddle Predictor is null."; + return -1; + } + paddle::PaddlePredictor* p_predictor = + (paddle::PaddlePredictor*)origin_core; + _core = p_predictor->Clone(); + if (_core.get() == NULL) { + LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; + return -1; + } + return 0; + } + + virtual void* get() { return _core.get(); } + + protected: + std::unique_ptr _core; +}; + +// infer interface +class FluidGpuAnalysisCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetParamsFile(data_path + "/__params__"); + analysis_config.SetProgFile(data_path + "/__model__"); + analysis_config.EnableUseGpu(100, FLAGS_gpuid); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + analysis_config.SwitchSpecifyInputNames(true); + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidGpuNativeCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.param_file = data_path + "/__params__"; + native_config.prog_file = data_path + "/__model__"; + native_config.use_gpu = true; + native_config.fraction_of_gpu_memory = 0.01; + native_config.device = FLAGS_gpuid; + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidGpuAnalysisDirCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetModel(data_path); + analysis_config.EnableUseGpu(100, FLAGS_gpuid); + analysis_config.SwitchSpecifyInputNames(true); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidGpuNativeDirCore : public FluidFamilyCore { + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.model_dir = data_path; + native_config.use_gpu = true; + native_config.fraction_of_gpu_memory = 0.01; + native_config.device = FLAGS_gpuid; + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core = paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class Parameter { + public: + Parameter() : _row(0), _col(0), _params(NULL) {} + ~Parameter() { + LOG(INFO) << "before destroy Parameter, file_name[" << _file_name << "]"; + destroy(); + } + + int init(int row, int col, const char* file_name) { + destroy(); + _file_name = file_name; + _row = row; + _col = col; + _params = reinterpret_cast(malloc(_row * _col * sizeof(float))); + if (_params == NULL) { + LOG(ERROR) << "Load " << _file_name << " malloc error."; + return -1; + } + LOG(WARNING) << "Load parameter file[" << _file_name << "] success."; + return 0; + } + + void destroy() { + _row = 0; + _col = 0; + if (_params != NULL) { + free(_params); + _params = NULL; + } + } + + int load() { + if (_params == NULL || _row <= 0 || _col <= 0) { + LOG(ERROR) << "load parameter error [not inited]."; + return -1; + } + + FILE* fs = fopen(_file_name.c_str(), "rb"); + if (fs == NULL) { + LOG(ERROR) << "load " << _file_name << " fopen error."; + return -1; + } + static const uint32_t MODEL_FILE_HEAD_LEN = 16; + char head[MODEL_FILE_HEAD_LEN] = {0}; + if (fread(head, 1, MODEL_FILE_HEAD_LEN, fs) != MODEL_FILE_HEAD_LEN) { + destroy(); + LOG(ERROR) << "Load " << _file_name << " read head error."; + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + return -1; + } + + uint32_t matrix_size = _row * _col; + if (matrix_size == fread(_params, sizeof(float), matrix_size, fs)) { + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + LOG(INFO) << "load " << _file_name << " read ok."; + return 0; + } else { + LOG(ERROR) << "load " << _file_name << " read error."; + destroy(); + if (fs != NULL) { + fclose(fs); + fs = NULL; + } + return -1; + } + return 0; + } + + public: + std::string _file_name; + int _row; + int _col; + float* _params; +}; + +class SigmoidModel { + public: + ~SigmoidModel() {} + int load(const char* sigmoid_w_file, + const char* sigmoid_b_file, + float exp_max, + float exp_min) { + AutoLock lock(GlobalSigmoidCreateMutex::instance()); + if (0 != _sigmoid_w.init(2, 1, sigmoid_w_file) || 0 != _sigmoid_w.load()) { + LOG(ERROR) << "load params sigmoid_w failed."; + return -1; + } + LOG(WARNING) << "load sigmoid_w [" << _sigmoid_w._params[0] << "] [" + << _sigmoid_w._params[1] << "]."; + if (0 != _sigmoid_b.init(2, 1, sigmoid_b_file) || 0 != _sigmoid_b.load()) { + LOG(ERROR) << "load params sigmoid_b failed."; + return -1; + } + LOG(WARNING) << "load sigmoid_b [" << _sigmoid_b._params[0] << "] [" + << _sigmoid_b._params[1] << "]."; + _exp_max_input = exp_max; + _exp_min_input = exp_min; + return 0; + } + + int softmax(float x, double& o) { // NOLINT + float _y0 = x * _sigmoid_w._params[0] + _sigmoid_b._params[0]; + float _y1 = x * _sigmoid_w._params[1] + _sigmoid_b._params[1]; + _y0 = (_y0 > _exp_max_input) + ? _exp_max_input + : ((_y0 < _exp_min_input) ? _exp_min_input : _y0); + _y1 = (_y1 > _exp_max_input) + ? _exp_max_input + : ((_y1 < _exp_min_input) ? _exp_min_input : _y1); + o = 1.0f / (1.0f + exp(_y0 - _y1)); + return 0; + } + + public: + Parameter _sigmoid_w; + Parameter _sigmoid_b; + float _exp_max_input; + float _exp_min_input; +}; + +class SigmoidFluidModel { + public: + int softmax(float x, double& o) { // NOLINT + return _sigmoid_core->softmax(x, o); + } // NOLINT + + std::unique_ptr Clone() { + std::unique_ptr clone_model; + clone_model.reset(new SigmoidFluidModel()); + clone_model->_sigmoid_core = _sigmoid_core; + clone_model->_fluid_core = _fluid_core->Clone(); + return std::move(clone_model); + } + + public: + std::unique_ptr _fluid_core; + std::shared_ptr _sigmoid_core; +}; + +class FluidGpuWithSigmoidCore : public FluidFamilyCore { + public: + virtual ~FluidGpuWithSigmoidCore() {} + + public: + int create(const predictor::InferEngineCreationParams& params) { + std::string model_path = params.get_path(); + size_t pos = model_path.find_last_of("/\\"); + std::string conf_path = model_path.substr(0, pos); + std::string conf_file = model_path.substr(pos); + configure::SigmoidConf conf; + if (configure::read_proto_conf(conf_path, conf_file, &conf) != 0) { + LOG(ERROR) << "failed load model path: " << model_path; + return -1; + } + + _core.reset(new SigmoidFluidModel); + + std::string fluid_model_data_path = conf.dnn_model_path(); + predictor::InferEngineCreationParams new_params(params); + new_params.set_path(fluid_model_data_path); + int ret = load_fluid_model(new_params); + if (ret < 0) { + LOG(ERROR) << "fail to load fluid model."; + return -1; + } + const char* sigmoid_w_file = conf.sigmoid_w_file().c_str(); + const char* sigmoid_b_file = conf.sigmoid_b_file().c_str(); + float exp_max = conf.exp_max_input(); + float exp_min = conf.exp_min_input(); + _core->_sigmoid_core.reset(new SigmoidModel); + LOG(INFO) << "create sigmoid core[" << _core->_sigmoid_core.get() + << "], use count[" << _core->_sigmoid_core.use_count() << "]."; + ret = _core->_sigmoid_core->load( + sigmoid_w_file, sigmoid_b_file, exp_max, exp_min); + if (ret < 0) { + LOG(ERROR) << "fail to load sigmoid model."; + return -1; + } + return 0; + } + + virtual bool Run(const void* in_data, void* out_data) { + if (!_core->_fluid_core->Run( + *(std::vector*)in_data, + (std::vector*)out_data)) { + LOG(ERROR) << "Failed call Run with paddle predictor"; + return false; + } + + return true; + } + + virtual int clone(SigmoidFluidModel* origin_core) { + if (origin_core == NULL) { + LOG(ERROR) << "origin paddle Predictor is null."; + return -1; + } + _core = origin_core->Clone(); + if (_core.get() == NULL) { + LOG(ERROR) << "fail to clone paddle predictor: " << origin_core; + return -1; + } + LOG(INFO) << "clone sigmoid core[" << _core->_sigmoid_core.get() + << "] use count[" << _core->_sigmoid_core.use_count() << "]."; + return 0; + } + + virtual SigmoidFluidModel* get() { return _core.get(); } + + virtual int load_fluid_model( + const predictor::InferEngineCreationParams& params) = 0; + + int softmax(float x, double& o) { // NOLINT + return _core->_sigmoid_core->softmax(x, o); + } + + protected: + std::unique_ptr _core; +}; + +class FluidGpuNativeDirWithSigmoidCore : public FluidGpuWithSigmoidCore { + public: + int load_fluid_model(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::NativeConfig native_config; + native_config.model_dir = data_path; + native_config.use_gpu = true; + native_config.fraction_of_gpu_memory = 0.01; + native_config.device = FLAGS_gpuid; + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core->_fluid_core = + paddle::CreatePaddlePredictor( + native_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +class FluidGpuAnalysisDirWithSigmoidCore : public FluidGpuWithSigmoidCore { + public: + int load_fluid_model(const predictor::InferEngineCreationParams& params) { + std::string data_path = params.get_path(); + if (access(data_path.c_str(), F_OK) == -1) { + LOG(ERROR) << "create paddle predictor failed, path not exits: " + << data_path; + return -1; + } + + paddle::AnalysisConfig analysis_config; + analysis_config.SetModel(data_path); + analysis_config.EnableUseGpu(100, FLAGS_gpuid); + analysis_config.SwitchSpecifyInputNames(true); + analysis_config.SetCpuMathLibraryNumThreads(1); + + if (params.enable_memory_optimization()) { + analysis_config.EnableMemoryOptim(); + } + + AutoLock lock(GlobalPaddleCreateMutex::instance()); + _core->_fluid_core = + paddle::CreatePaddlePredictor(analysis_config); + if (NULL == _core.get()) { + LOG(ERROR) << "create paddle predictor failed, path: " << data_path; + return -1; + } + + LOG(WARNING) << "create paddle predictor sucess, path: " << data_path; + return 0; + } +}; + +} // namespace fluid_gpu +} // namespace paddle_serving +} // namespace baidu diff --git a/paddle_inference/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp b/paddle_inference/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp new file mode 100644 index 0000000000000000000000000000000000000000..7447a417338a37716eff025721126e4c817408a6 --- /dev/null +++ b/paddle_inference/inferencer-fluid-gpu/src/fluid_gpu_engine.cpp @@ -0,0 +1,59 @@ +// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed 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. + +#include "paddle_inference/inferencer-fluid-gpu/include/fluid_gpu_engine.h" +#include "core/predictor/framework/factory.h" + +DEFINE_int32(gpuid, 0, "GPU device id to use"); + +namespace baidu { +namespace paddle_serving { +namespace fluid_gpu { + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_ANALYSIS"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidGpuAnalysisDirCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_ANALYSIS_DIR"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidGpuAnalysisDirWithSigmoidCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_ANALYSIS_DIR_SIGMOID"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_NATIVE"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_NATIVE_DIR"); + +REGIST_FACTORY_OBJECT_IMPL_WITH_NAME( + ::baidu::paddle_serving::predictor::FluidInferEngine< + FluidGpuNativeDirWithSigmoidCore>, + ::baidu::paddle_serving::predictor::InferEngine, + "FLUID_GPU_NATIVE_DIR_SIGMOID"); + +} // namespace fluid_gpu +} // namespace paddle_serving +} // namespace baidu diff --git a/pdcodegen/CMakeLists.txt b/pdcodegen/CMakeLists.txt deleted file mode 100644 index abb5b5f840872a98c5c5fa2f866697dc30873eb6..0000000000000000000000000000000000000000 --- a/pdcodegen/CMakeLists.txt +++ /dev/null @@ -1,17 +0,0 @@ -include(plugin/CMakeLists.txt) -include(src/CMakeLists.txt) - -PROTOBUF_GENERATE_CPP(pdcodegen_proto_srcs pdcodegen_proto_hdrs - ${CMAKE_SOURCE_DIR}/predictor/proto/pds_option.proto) - -LIST(APPEND pdcodegen_srcs ${pdcodegen_proto_srcs}) - -add_executable(pdcodegen ${pdcodegen_srcs}) -target_link_libraries(pdcodegen protobuf ${PROTOBUF_PROTOC_LIBRARY}) - -# install -install(TARGETS pdcodegen - RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/bin - ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib - LIBRARY DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/so - ) diff --git a/pdcodegen/plugin/substitute.cc b/pdcodegen/plugin/substitute.cc deleted file mode 100644 index 0ed454481bcfdc43492263adc9ad4a49d8812907..0000000000000000000000000000000000000000 --- a/pdcodegen/plugin/substitute.cc +++ /dev/null @@ -1,175 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -// Protocol Buffers - Google's data interchange format -// Copyright 2008 Google Inc. All rights reserved. -// http://code.google.com/p/protobuf/ -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Author: kenton@google.com (Kenton Varda) - -// #include -#include "pdcodegen/plugin/substitute.h" -#include "pdcodegen/plugin/stl_util-inl.h" -#include "pdcodegen/plugin/strutil.h" - -namespace google { -namespace protobuf { -namespace strings { - -using internal::SubstituteArg; - -// Returns the number of args in arg_array which were passed explicitly -// to Substitute(). -static int CountSubstituteArgs(const SubstituteArg* const* args_array) { - int count = 0; - while (args_array[count] != NULL && args_array[count]->size() != -1) { - ++count; - } - return count; -} - -string Substitute(const char* format, - const SubstituteArg& arg0, - const SubstituteArg& arg1, - const SubstituteArg& arg2, - const SubstituteArg& arg3, - const SubstituteArg& arg4, - const SubstituteArg& arg5, - const SubstituteArg& arg6, - const SubstituteArg& arg7, - const SubstituteArg& arg8, - const SubstituteArg& arg9) { - string result; - SubstituteAndAppend(&result, - format, - arg0, - arg1, - arg2, - arg3, - arg4, - arg5, - arg6, - arg7, - arg8, - arg9); - return result; -} - -void SubstituteAndAppend(string* output, - const char* format, - const SubstituteArg& arg0, - const SubstituteArg& arg1, - const SubstituteArg& arg2, - const SubstituteArg& arg3, - const SubstituteArg& arg4, - const SubstituteArg& arg5, - const SubstituteArg& arg6, - const SubstituteArg& arg7, - const SubstituteArg& arg8, - const SubstituteArg& arg9) { - const SubstituteArg* const args_array[] = {&arg0, - &arg1, - &arg2, - &arg3, - &arg4, - &arg5, - &arg6, - &arg7, - &arg8, - &arg9, - NULL}; - - // Determine total size needed. - int size = 0; - for (int i = 0; format[i] != '\0'; i++) { - if (format[i] == '$') { - if (ascii_isdigit(format[i + 1])) { - int index = format[i + 1] - '0'; - if (args_array[index]->size() == -1) { - GOOGLE_LOG(DFATAL) - << "strings::Substitute format string invalid: asked for \"$" - << index << "\", but only " << CountSubstituteArgs(args_array) - << " args were given. Full format string was: \"" - << CEscape(format) << "\"."; - return; - } - size += args_array[index]->size(); - ++i; // Skip next char. - } else if (format[i + 1] == '$') { - ++size; - ++i; // Skip next char. - } else { - GOOGLE_LOG(DFATAL) << "Invalid strings::Substitute() format string: \"" - << CEscape(format) << "\"."; - return; - } - } else { - ++size; - } - } - - if (size == 0) return; - - // Build the string. - int original_size = output->size(); - STLStringResizeUninitialized(output, original_size + size); - char* target = string_as_array(output) + original_size; - for (int i = 0; format[i] != '\0'; i++) { - if (format[i] == '$') { - if (ascii_isdigit(format[i + 1])) { - const SubstituteArg* src = args_array[format[i + 1] - '0']; - memcpy(target, src->data(), src->size()); - target += src->size(); - ++i; // Skip next char. - } else if (format[i + 1] == '$') { - *target++ = '$'; - ++i; // Skip next char. - } - } else { - *target++ = format[i]; - } - } - - GOOGLE_DCHECK_EQ(target - output->data(), output->size()); -} - -} // namespace strings -} // namespace protobuf -} // namespace google diff --git a/pdcodegen/plugin/substitute.h b/pdcodegen/plugin/substitute.h deleted file mode 100644 index a5bdc1645642ec53db7a73da944a8e6571de54b4..0000000000000000000000000000000000000000 --- a/pdcodegen/plugin/substitute.h +++ /dev/null @@ -1,189 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -// Protocol Buffers - Google's data interchange format -// Copyright 2008 Google Inc. All rights reserved. -// http://code.google.com/p/protobuf/ -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the names of its -// contributors may be used to endorse or promote products derived from -// this software without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -// Author: kenton@google.com (Kenton Varda) -// from google3/strings/substitute.h - -#include -#include -// hmmm... -// #include -#include "pdcodegen/plugin/strutil.h" - -#pragma once -namespace google { -namespace protobuf { -namespace strings { - -// ---------------------------------------------------------------------- -// strings::Substitute() -// strings::SubstituteAndAppend() -// Kind of like StringPrintf, but different. -// -// Example: -// string GetMessage(string first_name, string last_name, int age) { -// return strings::Substitute("My name is $0 $1 and I am $2 years old.", -// first_name, last_name, age); -// } -// -// Differences from StringPrintf: -// * The format string does not identify the types of arguments. -// Instead, the magic of C++ deals with this for us. See below -// for a list of accepted types. -// * Substitutions in the format string are identified by a '$' -// followed by a digit. So, you can use arguments out-of-order and -// use the same argument multiple times. -// * It's much faster than StringPrintf. -// -// Supported types: -// * Strings (const char*, const string&) -// * Note that this means you do not have to add .c_str() to all of -// your strings. In fact, you shouldn't; it will be slower. -// * int32, int64, uint32, uint64: Formatted using SimpleItoa(). -// * float, double: Formatted using SimpleFtoa() and SimpleDtoa(). -// * bool: Printed as "true" or "false". -// -// SubstituteAndAppend() is like Substitute() but appends the result to -// *output. Example: -// -// string str; -// strings::SubstituteAndAppend(&str, -// "My name is $0 $1 and I am $2 years old.", -// first_name, last_name, age); -// -// Substitute() is significantly faster than StringPrintf(). For very -// large strings, it may be orders of magnitude faster. -// ---------------------------------------------------------------------- - -namespace internal { // Implementation details. - -class SubstituteArg { - public: - explicit inline SubstituteArg(const char* value) - : text_(value), size_(strlen(text_)) {} - explicit inline SubstituteArg(const string& value) - : text_(value.data()), size_(value.size()) {} - - // Indicates that no argument was given. - inline SubstituteArg() : text_(NULL), size_(-1) {} - - // Primitives - // We don't overload for signed and unsigned char because if people are - // explicitly declaring their chars as signed or unsigned then they are - // probably actually using them as 8-bit integers and would probably - // prefer an integer representation. But, we don't really know. So, we - // make the caller decide what to do. - explicit inline SubstituteArg(char value) : text_(scratch_), size_(1) { - scratch_[0] = value; - } - explicit inline SubstituteArg(short value) // NOLINT - : text_(FastInt32ToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(unsigned short value) // NOLINT - : text_(FastUInt32ToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(int value) - : text_(FastInt32ToBuffer(value, scratch_)), size_(strlen(text_)) {} - explicit inline SubstituteArg(unsigned int value) - : text_(FastUInt32ToBuffer(value, scratch_)), size_(strlen(text_)) {} - explicit inline SubstituteArg(long value) // NOLINT - : text_(FastLongToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(unsigned long value) // NOLINT - : text_(FastULongToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(long long value) // NOLINT - : text_(FastInt64ToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(unsigned long long value) // NOLINT - : text_(FastUInt64ToBuffer(value, scratch_)), - size_(strlen(text_)) {} - explicit inline SubstituteArg(float value) - : text_(FloatToBuffer(value, scratch_)), size_(strlen(text_)) {} - explicit inline SubstituteArg(double value) - : text_(DoubleToBuffer(value, scratch_)), size_(strlen(text_)) {} - explicit inline SubstituteArg(bool value) - : text_(value ? "true" : "false"), size_(strlen(text_)) {} - - inline const char* data() const { return text_; } - inline int size() const { return size_; } - - private: - const char* text_; - int size_; - char scratch_[kFastToBufferSize]; -}; - -} // namespace internal - -LIBPROTOBUF_EXPORT string -Substitute(const char* format, - const internal::SubstituteArg& arg0 = internal::SubstituteArg(), - const internal::SubstituteArg& arg1 = internal::SubstituteArg(), - const internal::SubstituteArg& arg2 = internal::SubstituteArg(), - const internal::SubstituteArg& arg3 = internal::SubstituteArg(), - const internal::SubstituteArg& arg4 = internal::SubstituteArg(), - const internal::SubstituteArg& arg5 = internal::SubstituteArg(), - const internal::SubstituteArg& arg6 = internal::SubstituteArg(), - const internal::SubstituteArg& arg7 = internal::SubstituteArg(), - const internal::SubstituteArg& arg8 = internal::SubstituteArg(), - const internal::SubstituteArg& arg9 = internal::SubstituteArg()); - -LIBPROTOBUF_EXPORT void SubstituteAndAppend( - string* output, - const char* format, - const internal::SubstituteArg& arg0 = internal::SubstituteArg(), - const internal::SubstituteArg& arg1 = internal::SubstituteArg(), - const internal::SubstituteArg& arg2 = internal::SubstituteArg(), - const internal::SubstituteArg& arg3 = internal::SubstituteArg(), - const internal::SubstituteArg& arg4 = internal::SubstituteArg(), - const internal::SubstituteArg& arg5 = internal::SubstituteArg(), - const internal::SubstituteArg& arg6 = internal::SubstituteArg(), - const internal::SubstituteArg& arg7 = internal::SubstituteArg(), - const internal::SubstituteArg& arg8 = internal::SubstituteArg(), - const internal::SubstituteArg& arg9 = internal::SubstituteArg()); - -} // namespace strings -} // namespace protobuf -} // namespace google diff --git a/pdcodegen/src/pdcodegen.cpp b/pdcodegen/src/pdcodegen.cpp deleted file mode 100644 index 1896caeb044f86c7a87897bbb22dbc8d17f1ac2d..0000000000000000000000000000000000000000 --- a/pdcodegen/src/pdcodegen.cpp +++ /dev/null @@ -1,1549 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include "boost/algorithm/string.hpp" -#include "boost/scoped_ptr.hpp" -#include "google/protobuf/compiler/code_generator.h" -#include "google/protobuf/compiler/plugin.h" -#include "google/protobuf/descriptor.h" -#include "google/protobuf/io/printer.h" -#include "google/protobuf/io/zero_copy_stream.h" -#include "pdcodegen/pds_option.pb.h" -#include "pdcodegen/plugin/strutil.h" -#include "pdcodegen/plugin/substitute.h" -using std::string; -using google::protobuf::Descriptor; -using google::protobuf::FileDescriptor; -using google::protobuf::FieldDescriptor; -using google::protobuf::MethodDescriptor; -using google::protobuf::ServiceDescriptor; -using google::protobuf::compiler::CodeGenerator; -using google::protobuf::compiler::GeneratorContext; -using google::protobuf::HasSuffixString; -using google::protobuf::StripSuffixString; -namespace google { -namespace protobuf { -string dots_to_colons(const string& name) { - return StringReplace(name, ".", "::", true); -} -string full_class_name(const Descriptor* descriptor) { - // Find "outer", the descriptor of the top-level message in which - // "descriptor" is embedded. - const Descriptor* outer = descriptor; - while (outer->containing_type() != NULL) { - outer = outer->containing_type(); - } - return outer->full_name(); -} -} // namespace protobuf -} // namespace google -string strip_proto(const string& filename) { - if (HasSuffixString(filename, ".protolevel")) { - return StripSuffixString(filename, ".protolevel"); - } else { - return StripSuffixString(filename, ".proto"); - } -} -void string_format(std::string& source) { // NOLINT - size_t len = source.length(); - std::string sep = "_"; - for (int i = 0; i < len; i++) { - if (source[i] >= 'A' && source[i] <= 'Z') { - source[i] += 32; - if (i == 0) { - continue; - } - source.insert(i, sep); - i++; - len++; - } - } -} -bool valid_service_method(const std::vector& methods) { - if (methods.size() != 2) { - return false; - } - if (methods[0]->name() == "inference" && methods[1]->name() == "debug") { - return true; - } - if (methods[1]->name() == "inference" && methods[0]->name() == "debug") { - return true; - } - return false; -} - -#ifdef BCLOUD -class PdsCodeGenerator : public CodeGenerator { - public: - virtual bool Generate(const FileDescriptor* file, - const string& parameter, - GeneratorContext* context, - std::string* error) const { - const string header = strip_proto(file->name()) + ".pb.h"; - const string body = strip_proto(file->name()) + ".pb.cc"; - bool include_inserted = false; - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* descriptor = file->service(i); - if (!descriptor) { - *error = "get descriptor failed"; - return false; - } - pds::PaddleServiceOption options = - descriptor->options().GetExtension(pds::options); - bool generate_impl = options.generate_impl(); - bool generate_stub = options.generate_stub(); - if (!generate_impl && !generate_stub) { - return true; - } - if (!include_inserted) { - boost::scoped_ptr output( - context->OpenForInsert(header, "includes")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (generate_impl) { - printer.Print("#include \"predictor/common/inner_common.h\"\n"); - printer.Print("#include \"predictor/framework/service.h\"\n"); - printer.Print("#include \"predictor/framework/manager.h\"\n"); - printer.Print("#include \"predictor/framework/service_manager.h\"\n"); - } - if (generate_stub) { - printer.Print("#include \n"); - printer.Print("#include \"sdk-cpp/include/factory.h\"\n"); - printer.Print("#include \"sdk-cpp/include/stub.h\"\n"); - printer.Print("#include \"sdk-cpp/include/stub_impl.h\"\n"); - } - include_inserted = true; - } - const std::string& class_name = descriptor->name(); - const std::string& service_name = descriptor->name(); - // xxx.ph.h - { - if (generate_impl) { - // service scope - // namespace scope - boost::scoped_ptr output( - context->OpenForInsert(header, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_head( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - if (generate_stub) { - // service class scope - - // namespace scope - { - boost::scoped_ptr - output(context->OpenForInsert(header, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_stub_head( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - } - } - // xxx.pb.cc - { - if (generate_impl) { - // service scope - // namespace scope - boost::scoped_ptr output( - context->OpenForInsert(body, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_body( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - if (generate_stub) { - // service class scope - {} // namespace scope - { - boost::scoped_ptr - output(context->OpenForInsert(body, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_stub_body( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - } - } - } - return true; - } - - private: - bool generate_paddle_serving_head(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - std::string variable_name = class_name; - string_format(variable_name); - printer->Print( - "class $name$Impl : public $name$ {\n" - "public:\n" - " virtual ~$name$Impl() {}\n" - " static $name$Impl& instance() {\n" - " return _s_$variable_name$_impl;\n" - " }\n\n" - " $name$Impl(const std::string& service_name) {\n" - " REGIST_FORMAT_SERVICE(\n" - " service_name, &$name$Impl::instance());\n" - " }\n\n", - "name", - class_name, - "variable_name", - variable_name); - for (int i = 0; i < methods.size(); i++) { - const MethodDescriptor* m = methods[i]; - printer->Print( - " virtual void $name$(google::protobuf::RpcController* cntl_base,\n" - " const $input_name$* request,\n" - " $output_name$* response,\n" - " google::protobuf::Closure* done);\n\n", - "name", - m->name(), - "input_name", - google::protobuf::dots_to_colons(m->input_type()->full_name()), - "output_name", - google::protobuf::dots_to_colons(m->output_type()->full_name())); - } - printer->Print( - " static $name$Impl _s_$variable_name$_impl;\n" - "};", - "name", - class_name, - "variable_name", - variable_name); - return true; - } - bool generate_paddle_serving_body(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - std::string variable_name = class_name; - string_format(variable_name); - for (int i = 0; i < methods.size(); i++) { - const MethodDescriptor* m = methods[i]; - printer->Print("void $name$Impl::$method$(\n", - "name", - class_name, - "method", - m->name()); - printer->Print( - " google::protobuf::RpcController* cntl_base,\n" - " const $input_name$* request,\n" - " $output_name$* response,\n" - " google::protobuf::Closure* done) {\n" - " struct timeval tv;\n" - " gettimeofday(&tv, NULL);" - " long start = tv.tv_sec * 1000000 + tv.tv_usec;", - "input_name", - google::protobuf::dots_to_colons(m->input_type()->full_name()), - "output_name", - google::protobuf::dots_to_colons(m->output_type()->full_name())); - if (m->name() == "inference") { - printer->Print( - " baidu::rpc::ClosureGuard done_guard(done);\n" - " baidu::rpc::Controller* cntl = \n" - " static_cast(cntl_base);\n" - " ::baidu::paddle_serving::predictor::InferService* svr = \n" - " " - "::baidu::paddle_serving::predictor::InferServiceManager::instance(" - ").item(\"$service$\");\n" - " if (svr == NULL) {\n" - " LOG(ERROR) << \"Not found service: $service$\";\n" - " cntl->SetFailed(404, \"Not found service: $service$\");\n" - " return ;\n" - " }\n" - " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT - " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT - " int err_code = svr->inference(request, response);\n" - " if (err_code != 0) {\n" - " LOG(WARNING)\n" - " << \"Failed call inferservice[$name$], name[$service$]\"\n" - " << \", error_code: \" << err_code;\n" - " cntl->SetFailed(err_code, \"InferService inference " - "failed!\");\n" - " }\n" - " gettimeofday(&tv, NULL);\n" - " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" - " // flush notice log\n" - " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n", // NOLINT - "name", - class_name, - "service", - service_name); - } - if (m->name() == "debug") { - printer->Print( - " baidu::rpc::ClosureGuard done_guard(done);\n" - " baidu::rpc::Controller* cntl = \n" - " static_cast(cntl_base);\n" - " ::baidu::paddle_serving::predictor::InferService* svr = \n" - " " - "::baidu::paddle_serving::predictor::InferServiceManager::instance(" - ").item(\"$service$\");\n" - " if (svr == NULL) {\n" - " LOG(ERROR) << \"Not found service: $service$\";\n" - " cntl->SetFailed(404, \"Not found service: $service$\");\n" - " return ;\n" - " }\n" - " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT - " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT - " butil::IOBufBuilder debug_os;\n" - " int err_code = svr->inference(request, response, &debug_os);\n" - " if (err_code != 0) {\n" - " LOG(WARNING)\n" - " << \"Failed call inferservice[$name$], name[$service$]\"\n" - " << \", error_code: \" << err_code;\n" - " cntl->SetFailed(err_code, \"InferService inference " - "failed!\");\n" - " }\n" - " debug_os.move_to(cntl->response_attachment());\n" - " gettimeofday(&tv, NULL);\n" - " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" - " // flush notice log\n" - " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n" // NOLINT - " LOG(INFO)\n" - " << \"TC=[\" << (end - start) << \"] Received debug " - "request[log_id=\" << cntl->log_id()\n" - " << \"] from \" << cntl->remote_side()\n" - " << \" to \" << cntl->local_side();\n", - "name", - class_name, - "service", - service_name); - } - printer->Print("}\n"); - } - printer->Print( - "$name$Impl $name$Impl::_s_$variable_name$_impl(\"$service$\");\n", - "name", - class_name, - "variable_name", - variable_name, - "service", - service_name); - return true; - } - bool generate_paddle_serving_stub_head(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "class $name$_StubCallMapper : public baidu::rpc::CallMapper {\n" - "private:\n" - " uint32_t _package_size;\n" - " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" - "public:\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "$name$_StubCallMapper(uint32_t package_size, " - "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" - " _package_size = package_size;\n" - " _stub_handler = stub;\n" - "}\n", - "name", - class_name); - - printer->Print( - "baidu::rpc::SubCall default_map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"default_map\", channel_index);", - "name", - class_name); - printer->Indent(); - - if (!generate_paddle_serving_stub_default_map( - printer, descriptor, error, service_name, class_name)) { - return false; - } - - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "baidu::rpc::SubCall sub_package_map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope scope(\"sub_map\", " - "channel_index);", - "name", - class_name); - printer->Indent(); - - std::vector in_shared_fields; - std::vector in_item_fields; - const MethodDescriptor* md = descriptor->FindMethodByName("inference"); - if (!md) { - *error = "not found inference method!"; - return false; - } - for (int i = 0; i < md->input_type()->field_count(); ++i) { - const FieldDescriptor* fd = md->input_type()->field(i); - if (!fd) { - *error = "invalid fd at: " + i; - return false; - } - bool pack_on = fd->options().GetExtension(pds::pack_on); - if (pack_on && !fd->is_repeated()) { - *error = "Pack fields must be repeated, field: " + fd->name(); - return false; - } - if (pack_on) { - in_item_fields.push_back(fd); - } else { - in_shared_fields.push_back(fd); - } - } - - if (!generate_paddle_serving_stub_package_map(printer, - descriptor, - error, - service_name, - class_name, - in_shared_fields, - in_item_fields)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "baidu::rpc::SubCall Map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n", - "name", - class_name); - printer->Indent(); - - if (in_item_fields.size() <= 0) { - printer->Print( - "// No packed items found in proto file, use default map method\n" - "return default_map(channel_index, method, request, response);\n"); - } else { - printer->Print( - "butil::Timer tt(butil::Timer::STARTED);\n" - "baidu::rpc::SubCall ret;\n" - "if (_package_size == 0) {\n" - " ret = default_map(channel_index, method, request, response);\n" - "} else {\n" - " ret = sub_package_map(channel_index, method, request, " - "response);\n" - "}\n" - "tt.stop();\n" - "if (ret.flags != baidu::rpc::SKIP_SUB_CHANNEL && ret.method != " - "NULL) {\n" - " _stub_handler->update_latency(tt.u_elapsed(), \"pack_map\");\n" - "}\n" - "return ret;\n"); - } - - printer->Outdent(); - printer->Print("}\n"); - - printer->Outdent(); - printer->Print("};\n"); - - //////////////////////////////////////////////////////////////// - printer->Print( - "class $name$_StubResponseMerger : public baidu::rpc::ResponseMerger " - "{\n" - "private:\n" - " uint32_t _package_size;\n" - " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" - "public:\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "$name$_StubResponseMerger(uint32_t package_size, " - "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" - " _package_size = package_size;\n" - " _stub_handler = stub;\n" - "}\n", - "name", - class_name); - - printer->Print( - "baidu::rpc::ResponseMerger::Result default_merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"default_merge\");", - "name", - class_name); - printer->Indent(); - if (!generate_paddle_serving_stub_default_merger( - printer, descriptor, error, service_name, class_name)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "baidu::rpc::ResponseMerger::Result sub_package_merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"sub_merge\");", - "name", - class_name); - printer->Indent(); - if (!generate_paddle_serving_stub_package_merger( - printer, descriptor, error, service_name, class_name)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "baidu::rpc::ResponseMerger::Result Merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "butil::Timer tt(butil::Timer::STARTED);\n" - "baidu::rpc::ResponseMerger::Result ret;" - "if (_package_size <= 0) {\n" - " ret = default_merge(response, sub_response);\n" - "} else {\n" - " ret = sub_package_merge(response, sub_response);\n" - "}\n" - "tt.stop();\n" - "if (ret != baidu::rpc::ResponseMerger::FAIL) {\n" - " _stub_handler->update_latency(tt.u_elapsed(), \"pack_merge\");\n" - "}\n" - "return ret;\n"); - printer->Outdent(); - printer->Print("}\n"); - - printer->Outdent(); - printer->Print("};\n"); - return true; - } - bool generate_paddle_serving_stub_default_map( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "if (channel_index > 0) { \n" - " return baidu::rpc::SubCall::Skip();\n" - "}\n"); - printer->Print( - "google::protobuf::Message* cur_res = " - "_stub_handler->fetch_response();\n" - "if (cur_res == NULL) {\n" - " LOG(INFO) << \"Failed fetch response from stub handler, new it\";\n" - " cur_res = response->New();\n" - " if (cur_res == NULL) {\n" - " LOG(ERROR) << \"Failed new response item!\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::SubCall::Bad();\n" - " }\n" - " return baidu::rpc::SubCall(method, request, cur_res, " - "baidu::rpc::DELETE_RESPONSE);\n" - "}\n"); - "LOG(INFO) \n" - " << \"[default] Succ map, channel_index: \" << channel_index;\n"; - printer->Print( - "return baidu::rpc::SubCall(method, request, cur_res, 0);\n"); - return true; - } - bool generate_paddle_serving_stub_default_merger( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "try {\n" - " response->MergeFrom(*sub_response);\n" - " return baidu::rpc::ResponseMerger::MERGED;\n" - "} catch (const std::exception& e) {\n" - " LOG(ERROR) << \"Merge failed.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::ResponseMerger::FAIL;\n" - "}\n"); - return true; - } - bool generate_paddle_serving_stub_package_map( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name, - std::vector& in_shared_fields, // NOLINT - std::vector& in_item_fields) const { // NOLINT - const MethodDescriptor* md = descriptor->FindMethodByName("inference"); - if (!md) { - *error = "not found inference method!"; - return false; - } - - printer->Print( - "const $req_type$* req \n" - " = dynamic_cast(request);\n" - "$req_type$* sub_req = NULL;", - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - - // 1. pack fields 逐字段计算index范围,并从req copy值sub_req - printer->Print("\n// 1. 样本字段(必须为repeated类型)按指定下标复制\n"); - for (uint32_t ii = 0; ii < in_item_fields.size(); ii++) { - const FieldDescriptor* fd = in_item_fields[ii]; - std::string field_name = fd->name(); - printer->Print("\n/////$field_name$\n", "field_name", field_name); - if (ii == 0) { - printer->Print( - "uint32_t total_size = req->$field_name$_size();\n" - "if (channel_index == 0) {\n" - " _stub_handler->update_average(total_size, \"item_size\");\n" - "}\n", - "field_name", - field_name); - - printer->Print( - "int start = _package_size * channel_index;\n" - "if (start >= total_size) {\n" - " return baidu::rpc::SubCall::Skip();\n" - "}\n" - "int end = _package_size * (channel_index + 1);\n" - "if (end > total_size) {\n" - " end = total_size;\n" - "}\n"); - - printer->Print( - "sub_req = " - "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" - "if (sub_req == NULL) {\n" - " LOG(ERROR) << \"failed fetch sub_req from stub.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::SubCall::Bad();\n" - "}\n", - "name", - class_name, - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - - } else { - printer->Print( - "if (req->$field_name$_size() != total_size) {\n" - " LOG(ERROR) << \"pack field size not consistency: \"\n" - " << total_size << \"!=\" << " - "req->$field_name$_size()\n" - " << \", field: $field_name$.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::SubCall::Bad();\n" - "}\n", - "field_name", - field_name); - } - - printer->Print("for (uint32_t i = start; i < end; ++i) {\n"); - printer->Indent(); - if (fd->cpp_type() == - google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE) { - printer->Print( - "sub_req->add_$field_name$()->CopyFrom(req->$field_name$(i));\n", - "field_name", - field_name); - } else { - printer->Print("sub_req->add_$field_name$(req->$field_name$(i));\n", - "field_name", - field_name); - } - printer->Outdent(); - printer->Print("}\n"); - } - - // 2. shared fields逐字段从req copy至sub_req - printer->Print("\n// 2. 共享字段,从req逐个复制到sub_req\n"); - if (in_item_fields.size() == 0) { - printer->Print( - "if (sub_req == NULL) { // no packed items\n" - " sub_req = " - "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" - " if (!sub_req) {\n" - " LOG(ERROR) << \"failed fetch sub_req from stub handler.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::SubCall::Bad();\n" - " }\n" - "}\n", - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - } - for (uint32_t si = 0; si < in_shared_fields.size(); si++) { - const FieldDescriptor* fd = in_shared_fields[si]; - std::string field_name = fd->name(); - printer->Print("\n/////$field_name$\n", "field_name", field_name); - if (fd->is_optional()) { - printer->Print( - "if (req->has_$field_name$()) {\n", "field_name", field_name); - printer->Indent(); - } - if (fd->cpp_type() == - google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE || - fd->is_repeated()) { - printer->Print( - "sub_req->mutable_$field_name$()->CopyFrom(req->$field_name$());\n", - "field_name", - field_name); - } else { - printer->Print("sub_req->set_$field_name$(req->$field_name$());\n", - "field_name", - field_name); - } - if (fd->is_optional()) { - printer->Outdent(); - printer->Print("}\n"); - } - } - - printer->Print( - "LOG(INFO)\n" - " << \"[pack] Succ map req at: \"\n" - " << channel_index;\n"); - printer->Print( - "google::protobuf::Message* sub_res = " - "_stub_handler->fetch_response();\n" - "if (sub_res == NULL) {\n" - " LOG(ERROR) << \"failed create sub_res from res.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return baidu::rpc::SubCall::Bad();\n" - "}\n" - "return baidu::rpc::SubCall(method, sub_req, sub_res, 0);\n"); - return true; - } - bool generate_paddle_serving_stub_package_merger( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - return generate_paddle_serving_stub_default_merger( - printer, descriptor, error, service_name, class_name); - } - bool generate_paddle_serving_stub_body(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - - const MethodDescriptor* md = methods[0]; - std::map variables; - variables["name"] = class_name; - variables["req_type"] = - google::protobuf::dots_to_colons(md->input_type()->full_name()); - variables["res_type"] = - google::protobuf::dots_to_colons(md->output_type()->full_name()); - variables["fullname"] = descriptor->full_name(); - printer->Print(variables, - "REGIST_STUB_OBJECT_WITH_TAG(\n" - " $name$_Stub,\n" - " $name$_StubCallMapper,\n" - " $name$_StubResponseMerger,\n" - " $req_type$,\n" - " $res_type$,\n" - " \"$fullname$\");\n"); - variables.clear(); - return true; - } -}; -#else // #ifdef BCLOUD -class PdsCodeGenerator : public CodeGenerator { - public: - virtual bool Generate(const FileDescriptor* file, - const string& parameter, - GeneratorContext* context, - std::string* error) const { - const string header = strip_proto(file->name()) + ".pb.h"; - const string body = strip_proto(file->name()) + ".pb.cc"; - bool include_inserted = false; - for (int i = 0; i < file->service_count(); ++i) { - const ServiceDescriptor* descriptor = file->service(i); - if (!descriptor) { - *error = "get descriptor failed"; - return false; - } - pds::PaddleServiceOption options = - descriptor->options().GetExtension(pds::options); - bool generate_impl = options.generate_impl(); - bool generate_stub = options.generate_stub(); - if (!generate_impl && !generate_stub) { - return true; - } - if (!include_inserted) { - boost::scoped_ptr output( - context->OpenForInsert(header, "includes")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (generate_impl) { - printer.Print("#include \"predictor/common/inner_common.h\"\n"); - printer.Print("#include \"predictor/framework/service.h\"\n"); - printer.Print("#include \"predictor/framework/manager.h\"\n"); - printer.Print("#include \"predictor/framework/service_manager.h\"\n"); - } - if (generate_stub) { - printer.Print("#include \n"); - printer.Print("#include \"sdk-cpp/include/factory.h\"\n"); - printer.Print("#include \"sdk-cpp/include/stub.h\"\n"); - printer.Print("#include \"sdk-cpp/include/stub_impl.h\"\n"); - } - include_inserted = true; - } - const std::string& class_name = descriptor->name(); - const std::string& service_name = descriptor->name(); - // xxx.ph.h - { - if (generate_impl) { - // service scope - // namespace scope - boost::scoped_ptr output( - context->OpenForInsert(header, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_head( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - if (generate_stub) { - // service class scope - - // namespace scope - { - boost::scoped_ptr - output(context->OpenForInsert(header, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_stub_head( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - } - } - // xxx.pb.cc - { - if (generate_impl) { - // service scope - // namespace scope - boost::scoped_ptr output( - context->OpenForInsert(body, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_body( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - if (generate_stub) { - // service class scope - {} // namespace scope - { - boost::scoped_ptr - output(context->OpenForInsert(body, "namespace_scope")); - google::protobuf::io::Printer printer(output.get(), '$'); - if (!generate_paddle_serving_stub_body( - &printer, descriptor, error, service_name, class_name)) { - return false; - } - } - } - } - } - return true; - } - - private: - bool generate_paddle_serving_head(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - std::string variable_name = class_name; - string_format(variable_name); - printer->Print( - "class $name$Impl : public $name$ {\n" - "public:\n" - " virtual ~$name$Impl() {}\n" - " static $name$Impl& instance() {\n" - " return _s_$variable_name$_impl;\n" - " }\n\n" - " $name$Impl(const std::string& service_name) {\n" - " REGIST_FORMAT_SERVICE(\n" - " service_name, &$name$Impl::instance());\n" - " }\n\n", - "name", - class_name, - "variable_name", - variable_name); - for (int i = 0; i < methods.size(); i++) { - const MethodDescriptor* m = methods[i]; - printer->Print( - " virtual void $name$(google::protobuf::RpcController* cntl_base,\n" - " const $input_name$* request,\n" - " $output_name$* response,\n" - " google::protobuf::Closure* done);\n\n", - "name", - m->name(), - "input_name", - google::protobuf::dots_to_colons(m->input_type()->full_name()), - "output_name", - google::protobuf::dots_to_colons(m->output_type()->full_name())); - } - printer->Print( - " static $name$Impl _s_$variable_name$_impl;\n" - "};", - "name", - class_name, - "variable_name", - variable_name); - return true; - } - bool generate_paddle_serving_body(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - std::string variable_name = class_name; - string_format(variable_name); - for (int i = 0; i < methods.size(); i++) { - const MethodDescriptor* m = methods[i]; - printer->Print("void $name$Impl::$method$(\n", - "name", - class_name, - "method", - m->name()); - printer->Print( - " google::protobuf::RpcController* cntl_base,\n" - " const $input_name$* request,\n" - " $output_name$* response,\n" - " google::protobuf::Closure* done) {\n" - " struct timeval tv;\n" - " gettimeofday(&tv, NULL);" - " long start = tv.tv_sec * 1000000 + tv.tv_usec;", - "input_name", - google::protobuf::dots_to_colons(m->input_type()->full_name()), - "output_name", - google::protobuf::dots_to_colons(m->output_type()->full_name())); - if (m->name() == "inference") { - printer->Print( - " brpc::ClosureGuard done_guard(done);\n" - " brpc::Controller* cntl = \n" - " static_cast(cntl_base);\n" - " ::baidu::paddle_serving::predictor::InferService* svr = \n" - " " - "::baidu::paddle_serving::predictor::InferServiceManager::instance(" - ").item(\"$service$\");\n" - " if (svr == NULL) {\n" - " LOG(ERROR) << \"Not found service: $service$\";\n" - " cntl->SetFailed(404, \"Not found service: $service$\");\n" - " return ;\n" - " }\n" - " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT - " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT - " int err_code = svr->inference(request, response);\n" - " if (err_code != 0) {\n" - " LOG(WARNING)\n" - " << \"Failed call inferservice[$name$], name[$service$]\"\n" - " << \", error_code: \" << err_code;\n" - " cntl->SetFailed(err_code, \"InferService inference " - "failed!\");\n" - " }\n" - " gettimeofday(&tv, NULL);\n" - " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" - " // flush notice log\n" - " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n", // NOLINT - "name", - class_name, - "service", - service_name); - } - if (m->name() == "debug") { - printer->Print( - " brpc::ClosureGuard done_guard(done);\n" - " brpc::Controller* cntl = \n" - " static_cast(cntl_base);\n" - " ::baidu::paddle_serving::predictor::InferService* svr = \n" - " " - "::baidu::paddle_serving::predictor::InferServiceManager::instance(" - ").item(\"$service$\");\n" - " if (svr == NULL) {\n" - " LOG(ERROR) << \"Not found service: $service$\";\n" - " cntl->SetFailed(404, \"Not found service: $service$\");\n" - " return ;\n" - " }\n" - " LOG(INFO) << \" remote_side=\[\" << cntl->remote_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" local_side=\[\" << cntl->local_side() << " // NOLINT - "\"\]\";\n" - " LOG(INFO) << \" service_name=\[\" << \"$name$\" << \"\]\";\n" // NOLINT - " LOG(INFO) << \" log_id=\[\" << cntl->log_id() << \"\]\";\n" // NOLINT - " butil::IOBufBuilder debug_os;\n" - " int err_code = svr->inference(request, response, &debug_os);\n" - " if (err_code != 0) {\n" - " LOG(WARNING)\n" - " << \"Failed call inferservice[$name$], name[$service$]\"\n" - " << \", error_code: \" << err_code;\n" - " cntl->SetFailed(err_code, \"InferService inference " - "failed!\");\n" - " }\n" - " debug_os.move_to(cntl->response_attachment());\n" - " gettimeofday(&tv, NULL);\n" - " long end = tv.tv_sec * 1000000 + tv.tv_usec;\n" - " // flush notice log\n" - " LOG(INFO) << \" tc=\[\" << (end - start) << \"\]\";\n" // NOLINT - " LOG(INFO)\n" - " << \"TC=[\" << (end - start) << \"] Received debug " - "request[log_id=\" << cntl->log_id()\n" - " << \"] from \" << cntl->remote_side()\n" - " << \" to \" << cntl->local_side();\n", - "name", - class_name, - "service", - service_name); - } - printer->Print("}\n"); - } - printer->Print( - "$name$Impl $name$Impl::_s_$variable_name$_impl(\"$service$\");\n", - "name", - class_name, - "variable_name", - variable_name, - "service", - service_name); - return true; - } - bool generate_paddle_serving_stub_head(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "class $name$_StubCallMapper : public brpc::CallMapper {\n" - "private:\n" - " uint32_t _package_size;\n" - " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" - "public:\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "$name$_StubCallMapper(uint32_t package_size, " - "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" - " _package_size = package_size;\n" - " _stub_handler = stub;\n" - "}\n", - "name", - class_name); - - printer->Print( - "brpc::SubCall default_map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"default_map\", channel_index);", - "name", - class_name); - printer->Indent(); - - if (!generate_paddle_serving_stub_default_map( - printer, descriptor, error, service_name, class_name)) { - return false; - } - - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "brpc::SubCall sub_package_map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope scope(\"sub_map\", " - "channel_index);", - "name", - class_name); - printer->Indent(); - - std::vector in_shared_fields; - std::vector in_item_fields; - const MethodDescriptor* md = descriptor->FindMethodByName("inference"); - if (!md) { - *error = "not found inference method!"; - return false; - } - for (int i = 0; i < md->input_type()->field_count(); ++i) { - const FieldDescriptor* fd = md->input_type()->field(i); - if (!fd) { - *error = "invalid fd at: " + i; - return false; - } - bool pack_on = fd->options().GetExtension(pds::pack_on); - if (pack_on && !fd->is_repeated()) { - *error = "Pack fields must be repeated, field: " + fd->name(); - return false; - } - if (pack_on) { - in_item_fields.push_back(fd); - } else { - in_shared_fields.push_back(fd); - } - } - - if (!generate_paddle_serving_stub_package_map(printer, - descriptor, - error, - service_name, - class_name, - in_shared_fields, - in_item_fields)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "brpc::SubCall Map(\n" - " int channel_index,\n" - " const google::protobuf::MethodDescriptor* method,\n" - " const google::protobuf::Message* request,\n" - " google::protobuf::Message* response) {\n", - "name", - class_name); - printer->Indent(); - - if (in_item_fields.size() <= 0) { - printer->Print( - "// No packed items found in proto file, use default map method\n" - "return default_map(channel_index, method, request, response);\n"); - } else { - printer->Print( - "butil::Timer tt(butil::Timer::STARTED);\n" - "brpc::SubCall ret;\n" - "if (_package_size == 0) {\n" - " ret = default_map(channel_index, method, request, response);\n" - "} else {\n" - " ret = sub_package_map(channel_index, method, request, " - "response);\n" - "}\n" - "tt.stop();\n" - "if (ret.flags != brpc::SKIP_SUB_CHANNEL && ret.method != NULL) {\n" - " _stub_handler->update_latency(tt.u_elapsed(), \"pack_map\");\n" - "}\n" - "return ret;\n"); - } - - printer->Outdent(); - printer->Print("}\n"); - - printer->Outdent(); - printer->Print("};\n"); - - //////////////////////////////////////////////////////////////// - printer->Print( - "class $name$_StubResponseMerger : public brpc::ResponseMerger {\n" - "private:\n" - " uint32_t _package_size;\n" - " baidu::paddle_serving::sdk_cpp::Stub* _stub_handler;\n" - "public:\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "$name$_StubResponseMerger(uint32_t package_size, " - "baidu::paddle_serving::sdk_cpp::Stub* stub) {\n" - " _package_size = package_size;\n" - " _stub_handler = stub;\n" - "}\n", - "name", - class_name); - - printer->Print( - "brpc::ResponseMerger::Result default_merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"default_merge\");", - "name", - class_name); - printer->Indent(); - if (!generate_paddle_serving_stub_default_merger( - printer, descriptor, error, service_name, class_name)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "brpc::ResponseMerger::Result sub_package_merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n" - " baidu::paddle_serving::sdk_cpp::TracePackScope " - "scope(\"sub_merge\");", - "name", - class_name); - printer->Indent(); - if (!generate_paddle_serving_stub_package_merger( - printer, descriptor, error, service_name, class_name)) { - return false; - } - printer->Outdent(); - printer->Print("}\n"); - - printer->Print( - "brpc::ResponseMerger::Result Merge(\n" - " google::protobuf::Message* response,\n" - " const google::protobuf::Message* sub_response) {\n", - "name", - class_name); - printer->Indent(); - printer->Print( - "butil::Timer tt(butil::Timer::STARTED);\n" - "brpc::ResponseMerger::Result ret;" - "if (_package_size <= 0) {\n" - " ret = default_merge(response, sub_response);\n" - "} else {\n" - " ret = sub_package_merge(response, sub_response);\n" - "}\n" - "tt.stop();\n" - "if (ret != brpc::ResponseMerger::FAIL) {\n" - " _stub_handler->update_latency(tt.u_elapsed(), \"pack_merge\");\n" - "}\n" - "return ret;\n"); - printer->Outdent(); - printer->Print("}\n"); - - printer->Outdent(); - printer->Print("};\n"); - return true; - } - bool generate_paddle_serving_stub_default_map( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "if (channel_index > 0) { \n" - " return brpc::SubCall::Skip();\n" - "}\n"); - printer->Print( - "google::protobuf::Message* cur_res = " - "_stub_handler->fetch_response();\n" - "if (cur_res == NULL) {\n" - " LOG(INFO) << \"Failed fetch response from stub handler, new it\";\n" - " cur_res = response->New();\n" - " if (cur_res == NULL) {\n" - " LOG(ERROR) << \"Failed new response item!\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::SubCall::Bad();\n" - " }\n" - " return brpc::SubCall(method, request, cur_res, " - "brpc::DELETE_RESPONSE);\n" - "}\n"); - "LOG(INFO) \n" - " << \"[default] Succ map, channel_index: \" << channel_index;\n"; - printer->Print("return brpc::SubCall(method, request, cur_res, 0);\n"); - return true; - } - bool generate_paddle_serving_stub_default_merger( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - printer->Print( - "try {\n" - " response->MergeFrom(*sub_response);\n" - " return brpc::ResponseMerger::MERGED;\n" - "} catch (const std::exception& e) {\n" - " LOG(ERROR) << \"Merge failed.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::ResponseMerger::FAIL;\n" - "}\n"); - return true; - } - bool generate_paddle_serving_stub_package_map( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name, - std::vector& in_shared_fields, // NOLINT - std::vector& in_item_fields) const { // NOLINT - const MethodDescriptor* md = descriptor->FindMethodByName("inference"); - if (!md) { - *error = "not found inference method!"; - return false; - } - - printer->Print( - "const $req_type$* req \n" - " = dynamic_cast(request);\n" - "$req_type$* sub_req = NULL;", - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - - // 1. pack fields 逐字段计算index范围,并从req copy值sub_req - printer->Print("\n// 1. 样本字段(必须为repeated类型)按指定下标复制\n"); - for (uint32_t ii = 0; ii < in_item_fields.size(); ii++) { - const FieldDescriptor* fd = in_item_fields[ii]; - std::string field_name = fd->name(); - printer->Print("\n/////$field_name$\n", "field_name", field_name); - if (ii == 0) { - printer->Print( - "uint32_t total_size = req->$field_name$_size();\n" - "if (channel_index == 0) {\n" - " _stub_handler->update_average(total_size, \"item_size\");\n" - "}\n", - "field_name", - field_name); - - printer->Print( - "int start = _package_size * channel_index;\n" - "if (start >= total_size) {\n" - " return brpc::SubCall::Skip();\n" - "}\n" - "int end = _package_size * (channel_index + 1);\n" - "if (end > total_size) {\n" - " end = total_size;\n" - "}\n"); - - printer->Print( - "sub_req = " - "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" - "if (sub_req == NULL) {\n" - " LOG(ERROR) << \"failed fetch sub_req from stub.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::SubCall::Bad();\n" - "}\n", - "name", - class_name, - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - - } else { - printer->Print( - "if (req->$field_name$_size() != total_size) {\n" - " LOG(ERROR) << \"pack field size not consistency: \"\n" - " << total_size << \"!=\" << " - "req->$field_name$_size()\n" - " << \", field: $field_name$.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::SubCall::Bad();\n" - "}\n", - "field_name", - field_name); - } - - printer->Print("for (uint32_t i = start; i < end; ++i) {\n"); - printer->Indent(); - if (fd->cpp_type() == - google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE) { - printer->Print( - "sub_req->add_$field_name$()->CopyFrom(req->$field_name$(i));\n", - "field_name", - field_name); - } else { - printer->Print("sub_req->add_$field_name$(req->$field_name$(i));\n", - "field_name", - field_name); - } - printer->Outdent(); - printer->Print("}\n"); - } - - // 2. shared fields逐字段从req copy至sub_req - printer->Print("\n// 2. 共享字段,从req逐个复制到sub_req\n"); - if (in_item_fields.size() == 0) { - printer->Print( - "if (sub_req == NULL) { // no packed items\n" - " sub_req = " - "dynamic_cast<$req_type$*>(_stub_handler->fetch_request());\n" - " if (!sub_req) {\n" - " LOG(ERROR) << \"failed fetch sub_req from stub handler.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::SubCall::Bad();\n" - " }\n" - "}\n", - "req_type", - google::protobuf::dots_to_colons(md->input_type()->full_name())); - } - for (uint32_t si = 0; si < in_shared_fields.size(); si++) { - const FieldDescriptor* fd = in_shared_fields[si]; - std::string field_name = fd->name(); - printer->Print("\n/////$field_name$\n", "field_name", field_name); - if (fd->is_optional()) { - printer->Print( - "if (req->has_$field_name$()) {\n", "field_name", field_name); - printer->Indent(); - } - if (fd->cpp_type() == - google::protobuf::FieldDescriptor::CPPTYPE_MESSAGE || - fd->is_repeated()) { - printer->Print( - "sub_req->mutable_$field_name$()->CopyFrom(req->$field_name$());\n", - "field_name", - field_name); - } else { - printer->Print("sub_req->set_$field_name$(req->$field_name$());\n", - "field_name", - field_name); - } - if (fd->is_optional()) { - printer->Outdent(); - printer->Print("}\n"); - } - } - - printer->Print( - "LOG(INFO)\n" - " << \"[pack] Succ map req at: \"\n" - " << channel_index;\n"); - printer->Print( - "google::protobuf::Message* sub_res = " - "_stub_handler->fetch_response();\n" - "if (sub_res == NULL) {\n" - " LOG(ERROR) << \"failed create sub_res from res.\";\n" - " _stub_handler->update_average(1, \"pack_fail\");\n" - " return brpc::SubCall::Bad();\n" - "}\n" - "return brpc::SubCall(method, sub_req, sub_res, 0);\n"); - return true; - } - bool generate_paddle_serving_stub_package_merger( - google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - return generate_paddle_serving_stub_default_merger( - printer, descriptor, error, service_name, class_name); - } - bool generate_paddle_serving_stub_body(google::protobuf::io::Printer* printer, - const ServiceDescriptor* descriptor, - string* error, - const std::string& service_name, - const std::string& class_name) const { - std::vector methods; - for (int i = 0; i < descriptor->method_count(); ++i) { - methods.push_back(descriptor->method(i)); - } - if (!valid_service_method(methods)) { - *error = "Service can only contains two methods: inferend, debug"; - return false; - } - - const MethodDescriptor* md = methods[0]; - std::map variables; - variables["name"] = class_name; - variables["req_type"] = - google::protobuf::dots_to_colons(md->input_type()->full_name()); - variables["res_type"] = - google::protobuf::dots_to_colons(md->output_type()->full_name()); - variables["fullname"] = descriptor->full_name(); - printer->Print(variables, - "REGIST_STUB_OBJECT_WITH_TAG(\n" - " $name$_Stub,\n" - " $name$_StubCallMapper,\n" - " $name$_StubResponseMerger,\n" - " $req_type$,\n" - " $res_type$,\n" - " \"$fullname$\");\n"); - variables.clear(); - return true; - } -}; -#endif // #ifdef BCLOUD - -int main(int argc, char** argv) { - PdsCodeGenerator generator; - return google::protobuf::compiler::PluginMain(argc, argv, &generator); -} diff --git a/predictor/CMakeLists.txt b/predictor/CMakeLists.txt deleted file mode 100644 index 766052103313bc69b6d1ba0edf66194df08da3b4..0000000000000000000000000000000000000000 --- a/predictor/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -include(proto/CMakeLists.txt) -include(common/CMakeLists.txt) -include(op/CMakeLists.txt) -include(mempool/CMakeLists.txt) -include(framework/CMakeLists.txt) -#include(plugin/CMakeLists.txt) -include(src/CMakeLists.txt) - -include_directories(SYSTEM ${CMAKE_CURRENT_LIST_DIR}/../kvdb/include) - -add_library(pdserving ${pdserving_srcs}) -set_source_files_properties( - ${pdserving_srcs} - PROPERTIES - COMPILE_FLAGS "-Wno-strict-aliasing -Wno-unused-variable -Wno-non-virtual-dtor -Wno-error=non-virtual-dtor -Wno-error=delete-non-virtual-dtor") -add_dependencies(pdserving protobuf kvdb boost brpc leveldb pdcodegen configure) - -target_link_libraries(pdserving - brpc protobuf boost leveldb configure kvdb -lpthread -lcrypto -lm -lrt -lssl -ldl -lz) - -# install -install(TARGETS pdserving - RUNTIME DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/bin - ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib - LIBRARY DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/so - ) - -FILE(GLOB inc_common ${CMAKE_CURRENT_LIST_DIR}/common/*.h) -install(FILES ${inc_common} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/predictor/common) - -FILE(GLOB inc_framework ${CMAKE_CURRENT_LIST_DIR}/framework/*.h) -install(FILES ${inc_framework} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/predictor/framework) - -install(FILES ${CMAKE_CURRENT_LIST_DIR}/mempool/mempool.h - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/predictor/mempool) -install(FILES ${CMAKE_CURRENT_LIST_DIR}/op/op.h - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/predictor/op) diff --git a/predictor/common/constant.cpp b/predictor/common/constant.cpp deleted file mode 100644 index c1cd1c8b557e8a201089cd03455b0ac0cccefdb8..0000000000000000000000000000000000000000 --- a/predictor/common/constant.cpp +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/common/constant.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -DEFINE_bool(use_parallel_infer_service, false, ""); -DEFINE_int32(el_log_level, 16, ""); -DEFINE_int32(idle_timeout_s, 16, ""); -DEFINE_int32(port, 8010, ""); -DEFINE_string(workflow_path, "./conf", ""); -DEFINE_string(workflow_file, "workflow.prototxt", ""); -DEFINE_string(inferservice_path, "./conf", ""); -DEFINE_string(inferservice_file, "service.prototxt", ""); -DEFINE_string(logger_path, "./conf", ""); -DEFINE_string(logger_file, "log.conf", ""); -DEFINE_string(resource_path, "./conf", ""); -DEFINE_string(resource_file, "resource.prototxt", ""); -DEFINE_int32(max_concurrency, - 0, - "Limit of request processing in parallel, 0: unlimited"); -DEFINE_int32( - num_threads, - 0, - "Number of pthreads that server runs on, not change if this value <= 0"); -DEFINE_int32(reload_interval_s, 10, ""); -DEFINE_bool(enable_model_toolkit, false, "enable model toolkit"); -DEFINE_string(enable_protocol_list, "baidu_std", "set protocol list"); -DEFINE_bool(enable_cube, false, "enable cube"); - -const char* START_OP_NAME = "startup_op"; -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu - -// Baidurpc -BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_INTERNAL_FAILURE, - "Paddle Serving Framework Internal Error."); -BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_MEM_ALLOC_FAILURE, - "Paddle Serving Memory Alloc Error."); -BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_OVERFLOW_FAILURE, - "Paddle Serving Array Overflow Error."); -BAIDU_REGISTER_ERRNO(baidu::paddle_serving::predictor::ERR_OP_INFER_FAILURE, - "Paddle Serving Op Inference Error."); diff --git a/predictor/common/constant.h b/predictor/common/constant.h deleted file mode 100644 index 72509c8d9187f817cf4dd0dfef1bff06370ce537..0000000000000000000000000000000000000000 --- a/predictor/common/constant.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. -#pragma once -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -// GFLAGS Variables -DECLARE_bool(use_parallel_infer_service); -DECLARE_int32(el_log_level); -DECLARE_int32(idle_timeout_s); -DECLARE_int32(port); -DECLARE_string(workflow_path); -DECLARE_string(workflow_file); -DECLARE_string(inferservice_path); -DECLARE_string(inferservice_file); -DECLARE_string(logger_path); -DECLARE_string(logger_file); -DECLARE_string(resource_path); -DECLARE_string(resource_file); -DECLARE_bool(enable_mc_cache); -DECLARE_bool(enable_nshead_protocol); -DECLARE_string(nshead_protocol); -DECLARE_int32(max_concurrency); -DECLARE_int32(num_threads); -DECLARE_int32(reload_interval_s); -DECLARE_bool(enable_model_toolkit); -DECLARE_string(enable_protocol_list); -DECLARE_bool(enable_cube); - -// STATIC Variables -extern const char* START_OP_NAME; - -// ERRORCODE -enum { - // internal error - ERR_INTERNAL_FAILURE = -5000, - ERR_MEM_ALLOC_FAILURE = -5001, - ERR_OVERFLOW_FAILURE = -5002, - // op error - ERR_OP_INFER_FAILURE = -5100, - // no error - ERR_OK = 0, - // internal ignore - ERR_IGNORE_FAILURE = 5000, - // op ignore - ERR_OP_IGNORE_FAILURE = 5100, -}; - -static const size_t MAX_WORKFLOW_NUM_IN_ONE_SERVICE = 20; -static const uint32_t DEFAULT_CACHE_CAPACITY = 10000; -static const uint32_t DEFAULT_CACHE_UNITSIZE = 8192; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/common/inner_common.h b/predictor/common/inner_common.h deleted file mode 100644 index 9f9b3b2f3607578348dcca9253d6451f8fa205d6..0000000000000000000000000000000000000000 --- a/predictor/common/inner_common.h +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. -#pragma once - -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include "boost/algorithm/string.hpp" // for boost::split&trim -#include "boost/function.hpp" -#include "boost/unordered_map.hpp" -#include "google/protobuf/text_format.h" - -#include "gflags/gflags.h" - -#ifdef BCLOUD -#include "baidu/rpc/channel.h" -#include "baidu/rpc/policy/giano_authenticator.h" -#include "baidu/rpc/server.h" -#include "base/comlog_sink.h" -#include "base/logging.h" -#include "base/object_pool.h" -#include "base/time.h" -#include "bthread.h" // NOLINT -#else -#include "brpc/channel.h" -#include "brpc/policy/giano_authenticator.h" -#include "brpc/server.h" -#include "bthread/bthread.h" -#include "butil/logging.h" -#include "butil/object_pool.h" -#include "butil/time.h" -#endif - -#include "glog/raw_logging.h" - -#include "configure/include/configure_parser.h" -#include "configure/server_configure.pb.h" - -#include "predictor/common/constant.h" -#include "predictor/common/types.h" -#include "predictor/common/utils.h" - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -namespace butil = base; -#endif diff --git a/predictor/common/macros.h b/predictor/common/macros.h deleted file mode 100644 index 7636d714264ebc88296f8bb83137c204d27db6ba..0000000000000000000000000000000000000000 --- a/predictor/common/macros.h +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#ifndef CATCH_ANY_AND_RET -#define CATCH_ANY_AND_RET(errno) \ - catch (...) { \ - LOG(ERROR) << "exception catched"; \ - return errno; \ - } -#endif - -#ifdef USE_PTHREAD - -#define THREAD_T pthread_t -#define THREAD_KEY_T pthread_key_t -#define THREAD_MUTEX_T pthread_mutex_t -#define THREAD_KEY_CREATE pthread_key_create -#define THREAD_SETSPECIFIC pthread_setspecific -#define THREAD_GETSPECIFIC pthread_getspecific -#define THREAD_CREATE pthread_create -#define THREAD_CANCEL pthread_cancel -#define THREAD_JOIN pthread_join -#define THREAD_KEY_DELETE pthread_key_delete -#define THREAD_MUTEX_INIT pthread_mutex_init -#define THREAD_MUTEX_LOCK pthread_mutex_lock -#define THREAD_MUTEX_UNLOCK pthread_mutex_unlock -#define THREAD_MUTEX_DESTROY pthread_mutex_destroy -#define THREAD_COND_T pthread_cond_t -#define THREAD_COND_INIT pthread_cond_init -#define THREAD_COND_SIGNAL pthread_cond_signal -#define THREAD_COND_WAIT pthread_cond_wait -#define THREAD_COND_DESTROY pthread_cond_destroy - -#else - -#define THREAD_T bthread_t -#define THREAD_KEY_T bthread_key_t -#define THREAD_MUTEX_T bthread_mutex_t -#define THREAD_KEY_CREATE bthread_key_create -#define THREAD_SETSPECIFIC bthread_setspecific -#define THREAD_GETSPECIFIC bthread_getspecific -#define THREAD_CREATE bthread_start_background -#define THREAD_CANCEL bthread_stop -#define THREAD_JOIN bthread_join -#define THREAD_KEY_DELETE bthread_key_delete -#define THREAD_MUTEX_INIT bthread_mutex_init -#define THREAD_MUTEX_LOCK bthread_mutex_lock -#define THREAD_MUTEX_UNLOCK bthread_mutex_unlock -#define THREAD_MUTEX_DESTROY bthread_mutex_destroy -#define THREAD_COND_T bthread_cond_t -#define THREAD_COND_INIT bthread_cond_init -#define THREAD_COND_SIGNAL bthread_cond_signal -#define THREAD_COND_WAIT bthread_cond_wait -#define THREAD_COND_DESTROY bthread_cond_destroy - -#endif - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/common/utils.h b/predictor/common/utils.h deleted file mode 100644 index 8701be9bf03c518fef4f5dba97b9b969afccf20a..0000000000000000000000000000000000000000 --- a/predictor/common/utils.h +++ /dev/null @@ -1,153 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "predictor/common/inner_common.h" -#include "predictor/common/macros.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#ifdef BCLOUD -namespace butil = base; -#endif - -class TimerFlow { - public: - static const int MAX_SIZE = 1024; - - TimerFlow() { init(); } - - void init() { - _csize = 0; - _name = NULL; - _started = false; - _auto = false; - } - - explicit TimerFlow(const char* name) : _csize(0), _name(name) { - _last = _start = butil::cpuwide_time_us(); - _auto = true; - _started = true; - } - - void set_name(const char* name) { _name = name; } - - void start() { - _last = _start = butil::cpuwide_time_us(); - _started = true; - } - - bool check(const char* tag) { - if (!_started) { - LOG(WARNING) << "Timer not started yet!"; - return false; - } - uint64_t now = butil::cpuwide_time_us(); - if (!appendf("%s:%lu|", tag, now - _last)) { - LOG(WARNING) << "Failed check timer: " << _name << ", value = [" << tag - << ":" << (now - _last) << "]!"; - return false; - } - - _last = now; - return true; - } - - std::string info() { return std::string(_buf); } - - void end() { - uint64_t now = butil::cpuwide_time_us(); - if (!appendf("total:%lu", now - _start)) { - LOG(WARNING) << "Failed dump time_info[" << _name << "]"; - } - _started = false; - } - - ~TimerFlow() { - if (!_auto) { - return; - } - uint64_t now = butil::cpuwide_time_us(); - if (appendf("total:%lu,%s", now - _start, _name)) { - LOG(INFO) << " " << _name << "_tc=[" << _buf << "]"; - } else { - LOG(WARNING) << "Failed dump time_info[" << _name << "]"; - } - } - - private: - bool appendf(const char* fmt, ...) { - va_list ap; - va_start(ap, fmt); - try { - int bytes = vsnprintf(_buf + _csize, MAX_SIZE - _csize, fmt, ap); - if (bytes >= MAX_SIZE - _csize || bytes < 0) { - LOG(WARNING) << "Overflow when appendf!"; - return false; - } - _csize += bytes; - } - CATCH_ANY_AND_RET(false); - - va_end(ap); - return true; - } - - private: - char _buf[1024]; - int _csize; - uint64_t _start; - uint64_t _last; - const char* _name; - bool _started; - bool _auto; -}; - -template -struct derived_from_message {}; - -template -class TIsDerivedFromB { - private: - static uint8_t check(TBase*) { return 1; } - - static uint32_t check(void*) { return 0; } - - public: - enum { - // function call cannot apprear in a constant-expression - RESULT = (sizeof(uint8_t) == sizeof(check(reinterpret_cast(NULL)))), - }; -}; - -template -class IsDerivedFrom { - private: - static bool check(TBase*) { return true; } - - static bool check(void*) { return false; } - - public: - template - static bool yes(T* x) { - return check(x); - } -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/bsf-inl-tensor.h b/predictor/framework/bsf-inl-tensor.h deleted file mode 100644 index 15e11bb4d88420a1bbdc17e36c7648e460ccabbd..0000000000000000000000000000000000000000 --- a/predictor/framework/bsf-inl-tensor.h +++ /dev/null @@ -1,373 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#ifdef BCLOUD -#include -#else -#include -#endif - -#include -#include -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/infer_data.h" -#include "predictor/framework/memory.h" - -#include - -namespace im { -namespace bsf { - -template <> -struct Task { - typedef Task - TaskT; - typedef baidu::paddle_serving::predictor::Tensor Tensor; - typedef baidu::paddle_serving::predictor::Tensor InType; - typedef baidu::paddle_serving::predictor::Tensor OutType; - typedef baidu::paddle_serving::predictor::BatchTensor BatchTensor; - typedef baidu::paddle_serving::predictor::BatchTensor InArrayT; - typedef baidu::paddle_serving::predictor::BatchTensor OutArrayT; - - struct Segment { - Segment(void* p, size_t b, size_t s) : ptr(p), begin(b), size(s) {} - void* ptr; - size_t begin; - size_t size; - }; - - int read_fd; - int write_fd; - - pid_t owner_tid; - - const InArrayT* in; - OutArrayT* out; - - size_t rem; - size_t size; - - butil::atomic index; - - const BatchTensor* get(bool is_in) const { - if (is_in) { - return in; - } else { - return out; - } - } - - BatchTensor* get(bool is_in) { - if (is_in) { - return const_cast(in); - } else { - return out; - } - } - - Task() { - read_fd = -1; - write_fd = -1; - owner_tid = -1; - in = NULL; - out = NULL; - rem = -1; - size = -1; - index.store(0, butil::memory_order_relaxed); - } -}; - -template <> -class BatchTasks> { - public: - typedef baidu::paddle_serving::predictor::Tensor Tensor; - typedef baidu::paddle_serving::predictor::Tensor InType; - typedef baidu::paddle_serving::predictor::Tensor OutType; - typedef baidu::paddle_serving::predictor::DataBuf DataBuf; - typedef baidu::paddle_serving::predictor::MempoolWrapper MempoolWrapper; - - typedef Task - TaskT; - typedef TaskMeta TaskMetaT; - typedef TaskT::InArrayT InArrayT; - typedef TaskT::OutArrayT OutArrayT; - - explicit BatchTasks(size_t batch_size, bool batch_align = false) - : _batch_size(batch_size), - _rem_size(batch_size), - _batch_align(batch_align) { - _batch_in.clear(); - _batch_out.clear(); - _tasks.clear(); - } - - ~BatchTasks() { - _batch_in.clear(); - _batch_out.clear(); - _tasks.clear(); - } - - static bool check_valid(const InArrayT& in, - OutArrayT& out, // NOLINT - bool align) { // NOLINT - if (align) { - if (out.count() <= 0 || out.size() <= 0) { - LOG(ERROR) << "Out tensor is empty, when aligned"; - return false; - } - - if (out.size() != in.size()) { - LOG(ERROR) << "In/Out tensor size not eq: " << out.size() - << "!=" << in.size(); - return false; - } - - for (size_t fi = 0, shape0 = 0; fi < out.count(); ++fi) { - if (!out[fi].valid()) { - LOG(ERROR) << "Out[" << fi << "] tensor not valid"; - return false; - } - - if (out.size() != out[fi].shape0()) { - LOG(ERROR) << "Shape0 not consistency, " << out.size() - << "!=" << out[fi].shape0() << ", " << fi; - return false; - } - } - } - - return true; - } - - size_t append_task(TaskT* task) { - size_t add = std::min(task->rem, _rem_size); - if (!_batch_align) { - add = task->rem; - } - TaskMetaT tm(task, task->in->size() - task->rem, add); - _tasks.push_back(tm); - - task->rem -= add; - _rem_size -= add; - return _rem_size; - } - - void merge_tasks() { - merge_input(); - merge_output(); - } - - void merge_input() { - if (_tasks.size() <= 0 || _tasks[0].task->in->count() <= 0) { - return; - } - - if (_tasks.size() == 1 && !_batch_align) { - TaskMetaT& tm = _tasks[0]; - _batch_in = *(tm.task->in); - return; - } - - merge_tensor(true); - } - - void merge_output() { - if (_batch_align) { - if (_tasks.size() <= 0 || _tasks[0].task->out->count() <= 0) { - return; - } - } - - if (_tasks.size() <= 0 || _tasks[0].task->out->count() <= 0) { - return; - } - - TaskMetaT& tm = _tasks[0]; - if (_tasks.size() == 1 && !_batch_align) { - _batch_out = *(tm.task->out); - return; - } - - if (tm.task->out->size() <= 0) { - // shape is empty - _batch_out = *(tm.task->out); - return; - } - - if ((*tm.task->out)[0].data.data() == 0 || - (*tm.task->out)[0].data.size() == 0) { - _batch_out = *(tm.task->out); - return; - } - - merge_tensor(false); - } - - void merge_tensor(bool is_in) { - // accumulate batch size from fetched tasks - size_t batch_size = 0; - for (size_t ti = 0; ti < _tasks.size(); ++ti) { - TaskMetaT& tm = _tasks[ti]; - size_t add = tm.end - tm.begin; - batch_size += add; - } - - // merge all instanses in each tensor data - size_t tensor_count = _tasks[0].task->get(is_in)->count(); - for (size_t fi = 0; fi < tensor_count; ++fi) { - const Tensor& head = (*(_tasks[0].task->get(is_in)))[fi]; - Tensor batch_tensor; - batch_tensor.name = head.name; - batch_tensor.type = head.type; - batch_tensor.shape.push_back(batch_size); - - size_t ins_ele_count = 1; - for (size_t si = 1; si < head.shape.size(); ++si) { - batch_tensor.shape.push_back(head.shape[si]); - ins_ele_count *= head.shape[si]; - } - - size_t tensor_ele_count = ins_ele_count * batch_size; - size_t ins_byte = ins_ele_count * head.ele_byte(); - - size_t tensor_byte = tensor_ele_count * head.ele_byte(); - void* data_buf = MempoolWrapper::instance().malloc(tensor_byte); - if (!data_buf) { - LOG(ERROR) << "Malloc failed, size: " << tensor_byte; - return; - } - - size_t data_byte = 0; - for (size_t ti = 0; ti < _tasks.size(); ++ti) { - TaskMetaT& tm = _tasks[ti]; - size_t acc_byte = ins_byte * (tm.end - tm.begin); - if (data_byte + acc_byte > tensor_byte) { - LOG(ERROR) << "Invalid bytes: " << data_byte << " + " << acc_byte - << " >= " << tensor_byte; - return; - } - - const Tensor& tensor = (*(tm.task->get(is_in)))[fi]; - memcpy( - reinterpret_cast(data_buf) + data_byte, - reinterpret_cast(tensor.data.data()) + tm.begin * ins_byte, - acc_byte); - data_byte += acc_byte; - } - - if (data_byte != tensor_byte) { - LOG(ERROR) << "Invalid tensor byte: " << data_byte - << " != " << tensor_byte; - return; - } - - batch_tensor.data = - DataBuf(reinterpret_cast(data_buf), tensor_byte); - if (is_in) { - _batch_in.push_back(batch_tensor); - } else { - _batch_out.push_back(batch_tensor); - } - } - - LOG(INFO) << "merge input(" << is_in << ") samples: " << batch_size - << " from " << _tasks.size() << " pvs"; - } - - void notify_tasks() { - if (_batch_out.size() != _batch_in.size()) { - LOG(ERROR) << "batch size not consistency: " << _batch_out.size() - << " != " << _batch_in.size(); - return; - } - - size_t tensor_count = _batch_out.count(); - size_t batch_size = _batch_out.size(); - for (size_t fi = 0; fi < tensor_count; ++fi) { - const Tensor& tensor = _batch_out[fi]; - size_t ins_byte = tensor.ele_byte(); - for (size_t si = 1; si < tensor.shape.size(); ++si) { - ins_byte *= tensor.shape[si]; - } - - for (size_t ti = 0, bi = 0, add = 0; ti < _tasks.size(); - ++ti, bi += add) { - OutArrayT* dst = _tasks[ti].task->out; - add = _tasks[ti].end - _tasks[ti].begin; - size_t offset_src = ins_byte * bi; - size_t add_byte = add * ins_byte; - - if (_batch_align) { // merge all batchs - size_t offset_dst = ins_byte * _tasks[ti].begin; - void* ptr = const_cast((*dst)[fi].data.data()); - memcpy( - reinterpret_cast(ptr) + offset_dst, - reinterpret_cast(_batch_out[fi].data.data()) + offset_src, - add_byte); - } else { // overwrite - if (dst->count() <= 0) { - dst->push_back(_batch_out[fi]); - } else { - (*dst)[fi] = _batch_out[fi]; - } - - (*dst)[fi].shape[0] = add; - (*dst)[fi].data = DataBuf( - reinterpret_cast(_batch_out[fi].data.data()) + offset_src, - add_byte); - } - } - } - - for (size_t ti = 0; ti < _tasks.size(); ++ti) { - TaskT* task = _tasks[ti].task; - size_t begin = _tasks[ti].begin; - size_t end = _tasks[ti].end; - size_t add = end - begin; - - size_t index = task->index.fetch_add(add); - if ((index + add) >= task->in->size()) { - char c = 0; - while (write(task->write_fd, &c, 1) != 1 && errno == EINTR) { - } - butil::return_object(task); - } - } - } - - const typename TaskT::InArrayT& in() const { return _batch_in; } - - typename TaskT::OutArrayT& out() { return _batch_out; } - - size_t task_size() { return _tasks.size(); } - - private: - std::vector _tasks; - InArrayT _batch_in; - OutArrayT _batch_out; - size_t _batch_size; - size_t _rem_size; - bool _batch_align; -}; - -} // namespace bsf -} // namespace im diff --git a/predictor/framework/bsf-inl.h b/predictor/framework/bsf-inl.h deleted file mode 100644 index 8fa58f948721c29dadffff5c9e330e90342c8311..0000000000000000000000000000000000000000 --- a/predictor/framework/bsf-inl.h +++ /dev/null @@ -1,250 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#ifdef BCLOUD -#include -#else -#include -#endif - -#include -#include - -#include "predictor/common/inner_common.h" - -namespace im { -namespace bsf { - -template -void* TaskExecutor::thread_entry(void* args) { - ThreadContext* context = static_cast*>(args); - TaskExecutor* executor = - static_cast*>(context->executor); - executor->work(context); - - return NULL; -} - -template -int TaskExecutor::start(uint32_t thread_num, uint32_t init_timeout_sec) { - _stop = false; - if (!_thread_contexts.empty()) { - LOG(WARNING) << "BSF has started"; - return 0; - } - - if (thread_num == 0) { - LOG(ERROR) << "cannot init BSF with zero thread"; - return -1; - } - - ThreadContext* contexts = new ThreadContext[thread_num]; - for (uint32_t i = 0; i < thread_num; ++i) { - contexts[i].executor = this; - if (_user_thread_contexts != NULL) { - contexts[i].user_thread_context = _user_thread_contexts[i]; - } - - int rc = THREAD_CREATE( - &contexts[i].tid, NULL, &TaskExecutor::thread_entry, &contexts[i]); - if (rc != 0) { - LOG(ERROR) << "failed to create BSF worker thread: index=" << i - << ", rc=" << rc << ", errno=" << errno << ":" - << strerror(errno); - return -1; - } - - _thread_contexts.push_back(&contexts[i]); - } - - int init_timeout = init_timeout_sec * 1000 * 1000; - bool has_error = false; - - bool has_timeout = true; - if (init_timeout == 0) { - has_timeout = false; - } - - while (!has_timeout || init_timeout > 0) { - bool done = true; - for (size_t i = 0; i < _thread_contexts.size(); ++i) { - if (_thread_contexts[i]->init_status < 0) { - has_error = true; - break; - } - - if (_thread_contexts[i]->init_status == 0) { - done = false; - } - } - - if (has_error) { - LOG(ERROR) << "BSF thread init error"; - return -1; - } - - if (done) { - LOG(INFO) << "BSF thread init done"; - return 0; - } - - // 100ms - const int sleep_interval = 100 * 1000; - usleep(sleep_interval); - init_timeout -= sleep_interval; - } - - LOG(ERROR) << "BSF thread init timed out"; - return -1; -} - -template -void TaskExecutor::stop() { - _stop = true; - for (size_t i = 0; i < _thread_contexts.size(); ++i) { - THREAD_CANCEL(_thread_contexts[i]->tid); - } - - for (size_t i = 0; i < _thread_contexts.size(); ++i) { - THREAD_JOIN(_thread_contexts[i]->tid, NULL); - } - _thread_contexts.clear(); -} - -template -TaskHandler TaskExecutor::schedule(const InArrayT& in, - OutArrayT& out) { // NOLINT - TaskT* task = butil::get_object(); - if (!task) { - LOG(ERROR) << "Failed get TaskT from object pool"; - return TaskHandler::valid_handle(); - } - - if (!BatchTasks::check_valid(in, out, _batch_align)) { - LOG(ERROR) << "Invalid input & output"; - return TaskHandler::valid_handle(); - } - - int fds[2]; - int rc = pipe(fds); - if (rc != 0) { - LOG(ERROR) << "call pipe() failed, errno=" << errno << ":" - << strerror(errno); - return TaskHandler::valid_handle(); - } - - task->read_fd = fds[0]; - task->write_fd = fds[1]; - task->owner_tid = ::syscall(SYS_gettid); - - task->in = ∈ - task->out = &out; - task->rem = in.size(); - task->size = in.size(); - task->index.store(0, butil::memory_order_relaxed); - - AutoMutex lock(_mut); - _task_queue.push_back(task); - THREAD_COND_SIGNAL(&_cond); - - return TaskHandler(*task); -} - -template -bool TaskExecutor::fetch_batch(BatchTasks& batch) { // NOLINT - AutoMutex lock(_mut); - while (_task_queue.empty()) { - THREAD_COND_WAIT(&_cond, &_mut); - } - - if (_task_queue.empty()) { - LOG(ERROR) << "invalid task queue!"; - return false; - } - - while (!_task_queue.empty()) { - TaskT* task = _task_queue.front(); - size_t rem = batch.append_task(task); - if (task->rem <= 0) { - _task_queue.pop_front(); - } - if (rem <= 0) break; - } - - return true; -} - -template -int TaskExecutor::work(ThreadContext* context) { - if (_thread_init_fn != NULL) { - if (_thread_init_fn(context->user_thread_context) != 0) { - LOG(ERROR) << "execute thread init thunk failed, BSF thread will exit"; - context->init_status = -1; - return -1; - } else { - LOG(INFO) << "execute thread init thunk succeed"; - } - } - - context->init_status = 1; - while (!_stop) { - if (_thread_reset_fn != NULL) { - if (_thread_reset_fn(context->user_thread_context) != 0) { - LOG(ERROR) << "execute user thread reset failed"; - } - } - - BatchTasks batch(_batch_size, _batch_align); - if (fetch_batch(batch)) { - batch.merge_tasks(); - _fn(batch.in(), batch.out()); - batch.notify_tasks(); - } - } - - return 0; -} - -template -bool TaskManager::schedule(const InArrayT& in, - OutArrayT& out) { // NOLINT - TaskHandler handler = _executor.schedule(in, out); - - if (handler.valid()) { - _task_owned = handler; - return true; - } else { - LOG(ERROR) << "failed to schedule task"; - return false; - } -} - -template -void TaskManager::wait() { - char buffer[128]; - while (read(_task_owned.read_fd, buffer, sizeof(buffer)) < 0 && - errno == EINTR) { - } - - close(_task_owned.read_fd); - close(_task_owned.write_fd); - - _task_owned.read_fd = -1; - _task_owned.write_fd = -1; - return; -} -} // namespace bsf -} // namespace im diff --git a/predictor/framework/bsf.h b/predictor/framework/bsf.h deleted file mode 100644 index d4bd32638b289825d7af84e36fe6e199b8b7a21f..0000000000000000000000000000000000000000 --- a/predictor/framework/bsf.h +++ /dev/null @@ -1,361 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include -#include - -#ifdef BCLOUD -#include "base/atomicops.h" -#else -#include "butil/atomicops.h" -#endif - -#include "predictor/common/inner_common.h" - -#include "boost/function.hpp" - -namespace im { -namespace bsf { - -static const size_t DEFAULT_BATCH_SIZE = 100; - -template -struct Task { - typedef std::vector InArrayT; - typedef std::vector OutArrayT; - typedef InItemT InType; - typedef OutItemT OutType; - typedef Task TaskT; - - int read_fd; - int write_fd; - - pid_t owner_tid; - - const InArrayT* in; - OutArrayT* out; - - size_t rem; - size_t size; - - size_t batch_size() { return in->size(); } - - butil::atomic index; - - Task() { - read_fd = -1; - write_fd = -1; - owner_tid = -1; - in = NULL; - out = NULL; - rem = -1; - size = -1; - index.store(0, butil::memory_order_relaxed); - } -}; - -template -struct TaskMeta { - TaskMeta(TaskT* ptr, size_t start, size_t add) - : task(ptr), begin(start), end(start + add) {} - - TaskT* task; - size_t begin; - size_t end; -}; - -template -class BatchTasks { - public: - typedef typename TaskT::InType InType; - typedef typename TaskT::OutType OutType; - typedef TaskMeta TaskMetaT; - - explicit BatchTasks(size_t batch_size, bool batch_align = true) - : _batch_size(batch_size), - _rem_size(batch_size), - _batch_align(batch_align) { - _batch_in.clear(); - _batch_out.clear(); - _tasks.clear(); - } - - ~BatchTasks() { - _batch_in.clear(); - _batch_out.clear(); - _tasks.clear(); - } - - // synchronized operation - size_t append_task(TaskT* task) { - size_t add = std::min(task->rem, _rem_size); - if (!_batch_align) { - add = task->rem; - } - - TaskMetaT tm(task, task->in->size() - task->rem, add); - _tasks.push_back(tm); - - task->rem -= add; - _rem_size -= add; - return _rem_size; - } - - static bool check_valid(const typename TaskT::InArrayT& in, - const typename TaskT::OutArrayT& out, - bool align) { - (void)in; - (void)out; - (void)align; - return true; - } - - void merge_tasks() { - for (size_t ti = 0; ti < _tasks.size(); ++ti) { - TaskMetaT& tm = _tasks[ti]; - for (size_t vi = tm.begin; vi < tm.end; ++vi) { - _batch_in.push_back((*tm.task->in)[vi]); - _batch_out.push_back((*tm.task->out)[vi]); - } - } - } - - void notify_tasks() { - if (_batch_out.size() != _batch_in.size()) { - LOG(ERROR) << "batch size not consistency: " << _batch_out.size() - << " != " << _batch_in.size(); - return; - } - - for (size_t ti = 0, bi = 0; ti < _tasks.size(); ++ti) { - TaskT* task = _tasks[ti].task; - size_t begin = _tasks[ti].begin; - size_t end = _tasks[ti].end; - size_t add = end - begin; - - for (size_t oi = begin; oi < end; ++oi, ++bi) { - if (bi >= _batch_in.size()) { - LOG(ERROR) << "batch index overflow: " << bi << " > " - << _batch_in.size(); - return; - } - (*task->out)[oi] = _batch_out[bi]; - } - - size_t index = task->index.fetch_add(add); - if ((index + add) >= task->in->size()) { - char c = 0; - while (write(task->write_fd, &c, 1) != 1 && errno == EINTR) { - } - butil::return_object(task); - } - } - } - - const typename TaskT::InArrayT& in() const { return _batch_in; } - - typename TaskT::OutArrayT& out() { return _batch_out; } - - size_t task_size() { return _tasks.size(); } - - private: - std::vector _tasks; - typename TaskT::InArrayT _batch_in; - typename TaskT::OutArrayT _batch_out; - size_t _rem_size; - size_t _batch_size; - bool _batch_align; -}; - -// BSF task handle -template -struct TaskHandler { - int read_fd; - int write_fd; - - TaskHandler() : read_fd(-1), write_fd(-1) { - // do nothing - } - - explicit TaskHandler(TaskT const& task) - : read_fd(task.read_fd), write_fd(task.write_fd) { - // do nothing - } - - inline bool valid() const { return read_fd >= 0 && write_fd >= 0; } - - static TaskHandler& valid_handle() { - static TaskHandler vhandle; - return vhandle; - } -}; - -template -class TaskExecutor; - -template -class TaskManager; - -template -struct ThreadContext { - TaskExecutor* executor; - void* user_thread_context; - THREAD_T tid; - int init_status; - - ThreadContext() - : executor(NULL), user_thread_context(NULL), tid(-1), init_status(0) { - // do nothing - } - - ~ThreadContext() { - tid = -1; - executor = NULL; - user_thread_context = NULL; - init_status = 0; - } -}; - -template -class TaskExecutor { - public: - typedef typename TaskT::InType InType; - typedef typename TaskT::OutType OutType; - typedef typename TaskT::InArrayT InArrayT; - typedef typename TaskT::OutArrayT OutArrayT; - typedef std::vector TaskArrayT; - - TaskExecutor() - : _stop(false), - _thread_init_fn(NULL), - _thread_reset_fn(NULL), - _user_thread_contexts(NULL), - _batch_size(DEFAULT_BATCH_SIZE), - _batch_align(false), - _fn(NULL) { - THREAD_MUTEX_INIT(&_mut, NULL); - THREAD_COND_INIT(&_cond, NULL); - _task_queue.clear(); - } - - ~TaskExecutor() { - THREAD_MUTEX_DESTROY(&_mut); - THREAD_COND_DESTROY(&_cond); - } - - static TaskExecutor* instance() { - static TaskExecutor singleton; - return &singleton; - } - - void set_batch_size(size_t batch_size) { _batch_size = batch_size; } - - void set_batch_align(size_t batch_align) { _batch_align = batch_align; } - - void set_thread_init_fn(boost::function init_fn, - void** contexts = NULL) { - _thread_init_fn = init_fn; - _user_thread_contexts = contexts; - } - - void set_thread_reset_fn(boost::function reset_fn) { - _thread_reset_fn = reset_fn; - } - - void set_thread_callback_fn( - boost::function cb) { - _fn = cb; - } - - int start(uint32_t thread_num, uint32_t init_timeout_sec = 0); - void stop(); - - static void* thread_entry(void* args); - - private: - TaskExecutor(TaskExecutor const& other); - TaskExecutor* operator=(TaskExecutor const& other); - - int work(ThreadContext* context); - - TaskHandler schedule(const InArrayT&, OutArrayT&); - - bool fetch_batch(BatchTasks& batch); // NOLINT - - bool _stop; - - // can't use boost::mutex, because some stupid macro - THREAD_MUTEX_T _mut; - THREAD_COND_T _cond; - - std::deque _task_queue; - - boost::function _thread_init_fn; - boost::function _thread_reset_fn; - void** _user_thread_contexts; - - std::vector*> _thread_contexts; - friend class TaskManager; - - size_t _batch_size; - bool _batch_align; - - boost::function _fn; -}; - -template -class TaskManager { - public: - typedef Task TaskT; - typedef typename TaskT::InArrayT InArrayT; - typedef typename TaskT::OutArrayT OutArrayT; - - explicit TaskManager(TaskExecutor& exe, size_t batch_size) // NOLINT - : _executor(exe) {} - - TaskManager() : _executor(*TaskExecutor::instance()) {} - - ~TaskManager() { wait(); } - - bool schedule(const InArrayT& in, OutArrayT& out); // NOLINT - void wait(); - - inline void clear() { wait(); } - - private: - TaskExecutor& _executor; - TaskHandler _task_owned; -}; // class TaskManager - -class AutoMutex { - public: - explicit AutoMutex(THREAD_MUTEX_T& mut) : _mut(mut) { - THREAD_MUTEX_LOCK(&_mut); - } - - ~AutoMutex() { THREAD_MUTEX_UNLOCK(&_mut); } - - private: - THREAD_MUTEX_T& _mut; -}; - -} // namespace bsf -} // namespace im - -#include "predictor/framework/bsf-inl-tensor.h" -#include "predictor/framework/bsf-inl.h" diff --git a/predictor/framework/channel.h b/predictor/framework/channel.h deleted file mode 100644 index 0bad1889a63a359cf39633eacd59de6b37eaaa9b..0000000000000000000000000000000000000000 --- a/predictor/framework/channel.h +++ /dev/null @@ -1,225 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class Channel; - -class Bus { - public: - Bus() { clear(); } - - int regist(const std::string& op, Channel* channel) { - std::pair::iterator, bool> r = - _op_channels.insert(std::make_pair(op, channel)); - if (!r.second) { - LOG(ERROR) << "Failed insert op&channel into bus:" << op; - return -1; - } - return 0; - } - - Channel* channel_by_name(const std::string& op_name) { - typename boost::unordered_map::iterator it = - _op_channels.find(op_name); - if (it == _op_channels.end()) { - LOG(WARNING) << "Not found channel in bus, op_name:" << op_name << "."; - return NULL; - } - - return it->second; - } - - void clear() { _op_channels.clear(); } - - size_t size() const { return _op_channels.size(); } - - private: - boost::unordered_map _op_channels; -}; - -class Channel { - public: - Channel() {} - - void init(uint32_t id, const char* op) { - _id = id; - _op = std::string(op); - clear_data(); - } - - void deinit() { clear_data(); } - - uint32_t id() const { return _id; } - - const std::string& op() { return _op; } - - int share_to_bus(Bus* bus) { - if (bus->regist(_op, this) != 0) { - LOG(ERROR) << "Failed regist channel[" << _op << "] to bus!"; - return -1; - } - - return 0; - } - - virtual void clear_data() = 0; - - virtual void* param() = 0; - virtual const void* param() const = 0; - - virtual google::protobuf::Message* message() = 0; - virtual const google::protobuf::Message* message() const = 0; - - virtual Channel& operator=(const Channel& channel) = 0; - - virtual std::string debug_string() const = 0; - - private: - uint32_t _id; - std::string _op; -}; - -template -class OpChannel : public Channel { - public: - OpChannel() {} - - void clear_data() { _data.Clear(); } - - void* param() { return &_data; } - - const void* param() const { return &_data; } - - google::protobuf::Message* message() { - return message_impl( - derived_from_message< - TIsDerivedFromB::RESULT>()); - } - - google::protobuf::Message* message_impl(derived_from_message) { - return dynamic_cast(&_data); - } - - google::protobuf::Message* message_impl(derived_from_message) { - LOG(ERROR) << "Current type: " << typeid(T).name() - << " is not derived from protobuf."; - return NULL; - } - - const google::protobuf::Message* message() const { - return message_impl( - derived_from_message< - TIsDerivedFromB::RESULT>()); - } - - const google::protobuf::Message* message_impl( - derived_from_message) const { - return dynamic_cast(&_data); - } - - const google::protobuf::Message* message_impl( - derived_from_message) const { - LOG(ERROR) << "Current type: " << typeid(T).name() - << " is not derived from protobuf."; - return NULL; - } - - Channel& operator=(const Channel& channel) { - _data = *(dynamic_cast&>(channel)).data(); - return *this; - } - - std::string debug_string() const { return _data.ShortDebugString(); } - - // functions of derived class - - T* data() { return &_data; } - - const T* data() const { return &_data; } - - Channel& operator=(const T& obj) { - _data = obj; - return *this; - } - - private: - T _data; -}; - -template <> -class OpChannel : public Channel { - public: - OpChannel() : _data(NULL) {} - - virtual ~OpChannel() { _data = NULL; } - - void clear_data() { _data = NULL; } - - void* param() { return const_cast((const void*)_data); } - - const void* param() const { return _data; } - - google::protobuf::Message* message() { - return const_cast(_data); - } - - const google::protobuf::Message* message() const { return _data; } - - Channel& operator=(const Channel& channel) { - _data = channel.message(); - return *this; - } - - std::string debug_string() const { - if (_data) { - return _data->ShortDebugString(); - } else { - return "{\"Error\": \"Null Message Ptr\"}"; - } - } - - // derived function imiplements - google::protobuf::Message* data() { - return const_cast(_data); - } - - const google::protobuf::Message* data() const { return _data; } - - OpChannel& operator=( - google::protobuf::Message* message) { - _data = message; - return *this; - } - - OpChannel& operator=( - const google::protobuf::Message* message) { - _data = message; - return *this; - } - - private: - const google::protobuf::Message* _data; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/dag.cpp b/predictor/framework/dag.cpp deleted file mode 100644 index 99476b45b83986ac2bb9bdfad391baaf18e0686e..0000000000000000000000000000000000000000 --- a/predictor/framework/dag.cpp +++ /dev/null @@ -1,248 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/dag.h" -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/predictor_metric.h" // PredictorMetric -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -Dag::Dag() { - _index_nodes.clear(); - _name_nodes.clear(); - _stages.clear(); -} - -Dag::~Dag() { deinit(); } - -int Dag::deinit() { - for (std::vector::iterator iter = _stages.begin(); - iter != _stages.end(); - ++iter) { - if (*iter != NULL) { - delete *iter; - } - } - _stages.clear(); - - for (std::vector::iterator iter = _index_nodes.begin(); - iter != _index_nodes.end(); - ++iter) { - DagNode* node = *iter; - if (node != NULL) { - void* conf = node->conf; - if (conf != NULL) { - Op* op = OpRepository::instance().get_op(node->type); - if (op == NULL) { - LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; - return -1; - } - op->delete_config(conf); - OpRepository::instance().return_op(node->type, op); - } - delete node; - } - } - _index_nodes.clear(); - _name_nodes.clear(); - return 0; -} - -EdgeMode Dag::parse_mode(std::string& mode) { - if (mode == "RO") { - return RO; - } else if (mode == "RW") { - return RW; - } else { - return UNKNOWN; - } -} - -// [@Node] -// name: preprocess -// type: ProcessorOp -// [.@Depend] -// name: StartupOp -// mode: RO -// [@Node] -// name: discret_extractor -// type: DiscretExtractOp -// [.@Depend] -// name: StartupOp -// mode: RO -// [.@Depend] -// name: preprocess -// mode: RW -// [@Node] -// name: dnn_inference -// type: PaddleV2InferenceOp -// [.@Depend] -// name: discret_extractor -// mode: RO -// [@Node] -// name: postprocess -// type: PostProcessOp -// [.@Depend] -// name: dnn_inference -// mode: RO -#if 0 -int Dag::init(const char* path, const char* file, const std::string& name) { - comcfg::Configure conf; - if (conf.load(path, file) != 0) { - LOG(ERROR) << "Failed load conf from" - << path << "/" << file << " in dag: " - << name; - return ERR_INTERNAL_FAILURE; - } - - return init(conf, name); -} -#endif - -int Dag::init(const configure::Workflow& conf, const std::string& name) { - _dag_name = name; - _index_nodes.clear(); - _name_nodes.clear(); - for (uint32_t i = 0; i < conf.nodes_size(); i++) { - DagNode* node = new (std::nothrow) DagNode(); - if (node == NULL) { - LOG(ERROR) << "Failed create new dag node"; - return ERR_MEM_ALLOC_FAILURE; - } - node->id = i + 1; // 0 is reserved for begginer-op - node->name = conf.nodes(i).name(); - node->type = conf.nodes(i).type(); - uint32_t depend_size = conf.nodes(i).dependencies_size(); - for (uint32_t j = 0; j < depend_size; j++) { - const configure::DAGNodeDependency& depend = - conf.nodes(i).dependencies(j); - std::string name = depend.name(); - std::string mode = depend.mode(); - node->depends.insert(std::make_pair(name, parse_mode(mode))); - } - Op* op = OpRepository::instance().get_op(node->type); - if (op == NULL) { - LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; - return ERR_INTERNAL_FAILURE; - } - // node->conf could be NULL - node->conf = op->create_config(conf.nodes(i)); - OpRepository::instance().return_op(node->type, op); - _name_nodes.insert(std::make_pair(node->name, node)); - _index_nodes.push_back(node); - } - - if (topo_sort() != 0) { - LOG(ERROR) << "Topo sort dag[" << _dag_name << "] failed!"; - return ERR_INTERNAL_FAILURE; - } - - if (FLAGS_el_log_level == 16) { - LOG(INFO) << "DAG: " << _dag_name; - LOG(INFO) << ", Op Num: " << _index_nodes.size(); - for (uint32_t nid = 0; nid < _index_nodes.size(); nid++) { - DagNode* node = _index_nodes[nid]; - LOG(INFO) << ", OP-" << node->id << "-" << node->name << "-" - << node->type; - LOG(INFO) << " depends: " << node->depends.size(); - - boost::unordered_map::iterator it; - for (it = node->depends.begin(); it != node->depends.end(); it++) { - LOG(INFO) << " " << it->first << " " << it->second; - } - } - LOG(INFO) << ""; - } - - return ERR_OK; -} - -uint32_t Dag::nodes_size() { return _index_nodes.size(); } - -const DagNode* Dag::node_by_id(uint32_t id) { return _index_nodes[id]; } - -const DagNode* Dag::node_by_id(uint32_t id) const { return _index_nodes[id]; } - -const DagNode* Dag::node_by_name(std::string& name) { - return _name_nodes[name]; -} - -const DagNode* Dag::node_by_name(const std::string& name) const { - boost::unordered_map::const_iterator it; - it = _name_nodes.find(name); - if (it == _name_nodes.end()) { - LOG(WARNING) << "Not found op by name:" << name; - return NULL; - } - return it->second; -} - -uint32_t Dag::stage_size() { return _stages.size(); } - -const DagStage* Dag::stage_by_index(uint32_t index) { return _stages[index]; } - -int Dag::topo_sort() { - std::stringstream ss; - for (uint32_t nid = 0; nid < _index_nodes.size(); nid++) { - DagStage* stage = new (std::nothrow) DagStage(); - if (stage == NULL) { - LOG(ERROR) << "Invalid stage!"; - return ERR_MEM_ALLOC_FAILURE; - } - stage->nodes.push_back(_index_nodes[nid]); - ss.str(""); - ss << _stages.size(); - stage->name = ss.str(); - stage->full_name = full_name() + NAME_DELIMITER + stage->name; - _stages.push_back(stage); - - // assign stage number after stage created - _index_nodes[nid]->stage = nid; - // assign dag node full name after stage created - _index_nodes[nid]->full_name = - stage->full_name + NAME_DELIMITER + _index_nodes[nid]->name; - } - return ERR_OK; -} - -void Dag::regist_metric(const std::string& service_name) { - for (int stage_idx = 0; stage_idx < _stages.size(); ++stage_idx) { - DagStage* stage = _stages[stage_idx]; - PredictorMetric::GetInstance()->regist_latency_metric( - STAGE_METRIC_PREFIX + service_name + NAME_DELIMITER + stage->full_name); - for (int node_idx = 0; node_idx < stage->nodes.size(); ++node_idx) { - DagNode* node = stage->nodes[node_idx]; - PredictorMetric::GetInstance()->regist_latency_metric( - OP_METRIC_PREFIX + service_name + NAME_DELIMITER + node->full_name); - Op* op = OpRepository::instance().get_op(node->type); - if (op == NULL) { - LOG(ERROR) << "Failed to get_op, op type[" << node->type << "]"; - return; - } - op->set_full_name(service_name + NAME_DELIMITER + node->full_name); - op->set_config(node->conf); - op->regist_metric(); - OpRepository::instance().return_op(node->type, op); - } - } -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/dag.h b/predictor/framework/dag.h deleted file mode 100644 index e6c5f71163f47f3dc62a4b8f72718af52e38d223..0000000000000000000000000000000000000000 --- a/predictor/framework/dag.h +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -enum EdgeMode { RO = 0, RW = 1, UNKNOWN }; - -struct DagNode { - uint32_t id; - uint32_t stage; - std::string name; // opname - std::string full_name; // workflow_stageindex_opname - std::string type; - void* conf; - boost::unordered_map depends; -}; - -struct DagStage { - std::vector nodes; - std::string name; // stageindex - std::string full_name; // workflow_stageindex -}; - -class Dag { - public: - Dag(); - - virtual ~Dag(); - - EdgeMode parse_mode(std::string& mode); // NOLINT - - int init(const char* path, const char* file, const std::string& name); - - int init(const configure::Workflow& conf, const std::string& name); - - int deinit(); - - uint32_t nodes_size(); - - const DagNode* node_by_id(uint32_t id); - - const DagNode* node_by_id(uint32_t id) const; - - const DagNode* node_by_name(std::string& name); // NOLINT - - const DagNode* node_by_name(const std::string& name) const; - - uint32_t stage_size(); - - const DagStage* stage_by_index(uint32_t index); - - const std::string& name() const { return _dag_name; } - - const std::string& full_name() const { return _dag_name; } - - void regist_metric(const std::string& service_name); - - private: - int topo_sort(); - - private: - std::string _dag_name; - boost::unordered_map _name_nodes; - std::vector _index_nodes; - std::vector _stages; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/dag_view.cpp b/predictor/framework/dag_view.cpp deleted file mode 100644 index 72f63f418a8ec1cbce2c7b3bcb842f743f79cdb3..0000000000000000000000000000000000000000 --- a/predictor/framework/dag_view.cpp +++ /dev/null @@ -1,192 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/dag_view.h" -#ifdef BCLOUD -#include // TRACEPRINTF -#else -#include // TRACEPRINTF -#endif -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/op_repository.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -int DagView::init(Dag* dag, const std::string& service_name) { - _name = dag->name(); - _full_name = service_name + NAME_DELIMITER + dag->name(); - _bus = butil::get_object(); - _bus->clear(); - uint32_t stage_size = dag->stage_size(); - // create tls stage view - for (uint32_t si = 0; si < stage_size; si++) { - const DagStage* stage = dag->stage_by_index(si); - if (stage == NULL) { - LOG(ERROR) << "Failed get stage by index:" << si; - return ERR_INTERNAL_FAILURE; - } - ViewStage* vstage = butil::get_object(); - if (vstage == NULL) { - LOG(ERROR) << "Failed get vstage from object pool" - << "at:" << si; - return ERR_MEM_ALLOC_FAILURE; - } - vstage->full_name = service_name + NAME_DELIMITER + stage->full_name; - uint32_t node_size = stage->nodes.size(); - // create tls view node - for (uint32_t ni = 0; ni < node_size; ni++) { - DagNode* node = stage->nodes[ni]; - ViewNode* vnode = butil::get_object(); - if (vnode == NULL) { - LOG(ERROR) << "Failed get vnode at:" << ni; - return ERR_MEM_ALLOC_FAILURE; - } - // factory type - Op* op = OpRepository::instance().get_op(node->type); - if (op == NULL) { - LOG(ERROR) << "Failed get op with type:" << node->type; - return ERR_INTERNAL_FAILURE; - } - - // initialize a TLS op object - if (op->init(_bus, dag, node->id, node->name, node->type, node->conf) != - 0) { - LOG(WARNING) << "Failed init op, type:" << node->type; - return ERR_INTERNAL_FAILURE; - } - op->set_full_name(service_name + NAME_DELIMITER + node->full_name); - vnode->conf = node; - vnode->op = op; - vstage->nodes.push_back(vnode); - } - _view.push_back(vstage); - } - - return ERR_OK; -} - -int DagView::deinit() { - uint32_t stage_size = _view.size(); - for (uint32_t si = 0; si < stage_size; si++) { - ViewStage* vstage = _view[si]; - uint32_t node_size = vstage->nodes.size(); - for (uint32_t ni = 0; ni < node_size; ni++) { - ViewNode* vnode = vstage->nodes[ni]; - vnode->op->deinit(); - OpRepository::instance().return_op(vnode->op); - vnode->reset(); - // clear item - butil::return_object(vnode); - } - // clear vector - vstage->nodes.clear(); - butil::return_object(vstage); - } - _view.clear(); - _bus->clear(); - butil::return_object(_bus); - return ERR_OK; -} - -int DagView::execute(butil::IOBufBuilder* debug_os) { - uint32_t stage_size = _view.size(); - for (uint32_t si = 0; si < stage_size; si++) { - TRACEPRINTF("start to execute stage[%u]", si); - int errcode = execute_one_stage(_view[si], debug_os); - TRACEPRINTF("finish to execute stage[%u]", si); - if (errcode < 0) { - LOG(ERROR) << "failed execute stage[" << _view[si]->debug(); - return errcode; - } - } - return ERR_OK; -} - -// The default execution strategy is in sequencing -// You can derive a subclass to implement this func. -// ParallelDagView maybe the one you want. -int DagView::execute_one_stage(ViewStage* vstage, - butil::IOBufBuilder* debug_os) { - butil::Timer stage_time(butil::Timer::STARTED); - uint32_t node_size = vstage->nodes.size(); - for (uint32_t ni = 0; ni < node_size; ni++) { - ViewNode* vnode = vstage->nodes[ni]; - DagNode* conf = vnode->conf; - Op* op = vnode->op; - TRACEPRINTF("start to execute op[%s]", op->name()); - int errcode = op->process(debug_os != NULL); - TRACEPRINTF("finish to execute op[%s]", op->name()); - if (errcode < 0) { - LOG(ERROR) << "Execute failed, Op:" << op->debug_string(); - return errcode; - } - - if (errcode > 0) { - LOG(INFO) << "Execute ignore, Op:" << op->debug_string(); - continue; - } - - if (debug_os) { - (*debug_os) << "{\"op_name\": \"" << op->name() - << "\", \"debug_str:\": \"" << op->debug_string() - << "\", \"time_info\": \"" << op->time_info() << "\"}"; - } - - // LOG(DEBUG) << "Execute succ, Op:" << op->debug_string(); - } - stage_time.stop(); - PredictorMetric::GetInstance()->update_latency_metric( - STAGE_METRIC_PREFIX + vstage->full_name, stage_time.u_elapsed()); - return ERR_OK; -} - -int DagView::set_request_channel(Channel& request) { - // Each workflow should get the very beginning - // request (channel), and commit it to bus, for - // the first stage ops consuming. - - request.share_to_bus(_bus); - - return ERR_OK; -} - -const Channel* DagView::get_response_channel() const { - // Caller obtains response channel from bus, and - // writes it to rpc response(protbuf/json) - if (_view.size() < 1) { - LOG(ERROR) << "invalid empty view stage!"; - return NULL; - } - - ViewStage* last_stage = _view[_view.size() - 1]; - if (last_stage->nodes.size() != 1 || last_stage->nodes[0] == NULL) { - LOG(ERROR) << "Invalid last stage, size[" << last_stage->nodes.size() - << "] != 1"; - return NULL; - } - - Op* last_op = last_stage->nodes[0]->op; - if (last_op == NULL) { - LOG(ERROR) << "Last op is NULL"; - return NULL; - } - return last_op->mutable_channel(); -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/dag_view.h b/predictor/framework/dag_view.h deleted file mode 100644 index 89e195bf72e75a7084153d9b37a3b2daf06d2351..0000000000000000000000000000000000000000 --- a/predictor/framework/dag_view.h +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/dag.h" -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class Op; - -struct ViewNode { - Op* op; // op->full_name == service_workflow_stageindex_opname - DagNode* conf; - void reset() { - op = NULL; - conf = NULL; - } -}; - -struct ViewStage { - std::vector nodes; - std::string full_name; // service_workflow_stageindex - std::string debug() { return "TOBE IMPLEMENTED!"; } -}; - -class DagView { - public: - DagView() : _bus(NULL) { _view.clear(); } - - ~DagView() {} - - int init(Dag* dag, const std::string& service_name); - - int deinit(); - - int execute(butil::IOBufBuilder* debug_os); - - // The default execution strategy is in sequencing - // You can derive a subclass to implement this func. - // ParallelDagView maybe the one you want. - virtual int execute_one_stage(ViewStage* vstage, - butil::IOBufBuilder* debug_os); - - int set_request_channel(Channel& request); // NOLINT - - const Channel* get_response_channel() const; - - const std::string& name() const { return _name; } - - const std::string& full_name() const { return _full_name; } - - private: - std::string _name; - std::string _full_name; - std::vector _view; - Bus* _bus; -}; - -// The derived DagView supports parallel execution -// strategy, by implments the execute_one_stage(). -class ParallelDagView : public DagView { - public: - int execute_one_stage(ViewStage* vstage, butil::IOBufBuilder*) { return 0; } -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/factory.h b/predictor/framework/factory.h deleted file mode 100644 index b615687c0441ee62d50ace025181de13b2416891..0000000000000000000000000000000000000000 --- a/predictor/framework/factory.h +++ /dev/null @@ -1,153 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "glog/raw_logging.h" -#include "predictor/common/inner_common.h" -namespace baidu { -namespace paddle_serving { -namespace predictor { - -//////////////// DECLARE INTERFACE //////////////// -#define DECLARE_FACTORY_OBJECT(D, B) \ - static int regist(const std::string& tag) { \ - FactoryDerive* factory = new (std::nothrow) FactoryDerive(); \ - if (factory == NULL || \ - FactoryPool::instance().register_factory(tag, factory) != 0) { \ - RAW_LOG_FATAL("Failed regist factory: %s in macro!", #D); \ - return -1; \ - } \ - return 0; \ - } - -#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) -#define PDS_STR_CAT_I(a, b) a##b - -#define DEFINE_FACTORY_OBJECT(D) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - D::regist(#D); \ - } - -//////////////// REGISTER INTERFACE //////////////// - -#define REGIST_FACTORY_OBJECT_IMPL(D, B) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - ::baidu::paddle_serving::predictor::FactoryDerive* factory = new ( \ - ::std::nothrow)::baidu::paddle_serving::predictor::FactoryDerive(); \ - if (factory == NULL || \ - ::baidu::paddle_serving::predictor::FactoryPool::instance() \ - .register_factory(#D, factory) != 0) { \ - RAW_LOG_FATAL("Failed regist factory: %s->%s in macro!", #D, #B); \ - return; \ - } \ - return; \ - } - -#define REGIST_FACTORY_OBJECT_IMPL_WITH_NAME(D, B, N) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - ::baidu::paddle_serving::predictor::FactoryDerive* factory = new ( \ - ::std::nothrow)::baidu::paddle_serving::predictor::FactoryDerive(); \ - if (factory == NULL || \ - ::baidu::paddle_serving::predictor::FactoryPool::instance() \ - .register_factory(N, factory) != 0) { \ - RAW_LOG_FATAL( \ - "Failed regist factory: %s->%s, tag: %s in macro!", #D, #B, N); \ - return; \ - } \ - RAW_LOG_WARNING( \ - "Succ regist factory: %s->%s, tag: %s in macro!", #D, #B, N); \ - return; \ - } - -template -class FactoryBase { - public: - virtual B* gen() = 0; - virtual void del(B* obj) = 0; -}; - -template -class FactoryDerive : public FactoryBase { - public: - B* gen() { return new (std::nothrow) D(); } - - void del(B* obj) { delete dynamic_cast(obj); } -}; - -template -class FactoryPool { - public: - static FactoryPool& instance() { - static FactoryPool singleton; - return singleton; - } - - int register_factory(const std::string& tag, FactoryBase* factory) { - typename std::map*>::iterator it = - _pool.find(tag); - if (it != _pool.end()) { - RAW_LOG_FATAL("Insert duplicate with tag: %s", tag.c_str()); - return -1; - } - - std::pair*>::iterator, bool> - r = _pool.insert(std::make_pair(tag, factory)); - if (!r.second) { - RAW_LOG_FATAL("Failed insert new factory with: %s", tag.c_str()); - return -1; - } - - RAW_LOG_INFO("Succ insert one factory, tag: %s, base type %s", - tag.c_str(), - typeid(B).name()); - - return 0; - } - - B* generate_object(const std::string& tag) { - typename std::map*>::iterator it = - _pool.find(tag); - if (it == _pool.end() || it->second == NULL) { - RAW_LOG_FATAL("Not found factory pool, tag: %s, pool size %u", - tag.c_str(), - _pool.size()); - return NULL; - } - - return it->second->gen(); - } - - template - void return_object(B* object) { - FactoryDerive factory; - factory.del(object); - } - - private: - std::map*> _pool; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu - -/* vim: set expandtab ts=2 sw=2 sts=2 tw=100: */ diff --git a/predictor/framework/infer.h b/predictor/framework/infer.h deleted file mode 100644 index c479479a271601b0d197d7f4fc4672ccc54c3801..0000000000000000000000000000000000000000 --- a/predictor/framework/infer.h +++ /dev/null @@ -1,918 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/bsf.h" -#include "predictor/framework/factory.h" -#include "predictor/framework/infer_data.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using configure::ModelToolkitConf; - -class InferEngineCreationParams { - public: - InferEngineCreationParams() { - _path = ""; - _enable_memory_optimization = false; - _static_optimization = false; - _force_update_static_cache = false; - } - - void set_path(const std::string& path) { _path = path; } - - void set_enable_memory_optimization(bool enable_memory_optimization) { - _enable_memory_optimization = enable_memory_optimization; - } - - bool enable_memory_optimization() const { - return _enable_memory_optimization; - } - - void set_static_optimization(bool static_optimization = false) { - _static_optimization = static_optimization; - } - - void set_force_update_static_cache(bool force_update_static_cache = false) { - _force_update_static_cache = force_update_static_cache; - } - - bool static_optimization() const { return _static_optimization; } - - bool force_update_static_cache() const { return _force_update_static_cache; } - - std::string get_path() const { return _path; } - - void dump() const { - LOG(INFO) << "InferEngineCreationParams: " - << "model_path = " << _path << ", " - << "enable_memory_optimization = " << _enable_memory_optimization - << ", " - << "static_optimization = " << _static_optimization << ", " - << "force_update_static_cache = " << _force_update_static_cache; - } - - private: - std::string _path; - bool _enable_memory_optimization; - bool _static_optimization; - bool _force_update_static_cache; -}; - -class InferEngine { - public: - virtual ~InferEngine() {} - - virtual int proc_initialize(const configure::EngineDesc& conf, bool version) { - return proc_initialize_impl(conf, version); - } - virtual int proc_finalize() { return proc_finalize_impl(); } - virtual int thrd_initialize() { return thrd_initialize_impl(); } - virtual int thrd_clear() { return thrd_clear_impl(); } - virtual int thrd_finalize() { return thrd_finalize_impl(); } - virtual int infer(const void* in, void* out, uint32_t batch_size = -1) { - return infer_impl1(in, out, batch_size); - } - - virtual int reload() = 0; - - virtual uint64_t version() const = 0; - - // begin: framework inner call - virtual int proc_initialize_impl(const configure::EngineDesc& conf, - bool version) = 0; - virtual int thrd_initialize_impl() = 0; - virtual int thrd_finalize_impl() = 0; - virtual int thrd_clear_impl() = 0; - virtual int proc_finalize_impl() = 0; - virtual int infer_impl1(const void* in, - void* out, - uint32_t batch_size = -1) = 0; - virtual int infer_impl2(const BatchTensor& in, - BatchTensor& out) = 0; // NOLINT - // end: framework inner call -}; - -class ReloadableInferEngine : public InferEngine { - public: - virtual ~ReloadableInferEngine() {} - - union last_check_status { - time_t last_timestamp; - uint64_t last_md5sum; - uint64_t last_revision; - }; - - typedef im::bsf::Task TaskT; - - virtual int load(const InferEngineCreationParams& params) = 0; - - int proc_initialize_impl(const configure::EngineDesc& conf, bool version) { - _reload_tag_file = conf.reloadable_meta(); - _reload_mode_tag = conf.reloadable_type(); - _model_data_path = conf.model_data_path(); - _infer_thread_num = conf.runtime_thread_num(); - _infer_batch_size = conf.batch_infer_size(); - _infer_batch_align = conf.enable_batch_align(); - - bool enable_memory_optimization = false; - if (conf.has_enable_memory_optimization()) { - enable_memory_optimization = conf.enable_memory_optimization(); - } - - bool static_optimization = false; - if (conf.has_static_optimization()) { - static_optimization = conf.static_optimization(); - } - - bool force_update_static_cache = false; - if (conf.has_force_update_static_cache()) { - force_update_static_cache = conf.force_update_static_cache(); - } - - _infer_engine_params.set_path(_model_data_path); - if (enable_memory_optimization) { - _infer_engine_params.set_enable_memory_optimization(true); - _infer_engine_params.set_static_optimization(static_optimization); - _infer_engine_params.set_force_update_static_cache( - force_update_static_cache); - } - - if (!check_need_reload() || load(_infer_engine_params) != 0) { - LOG(ERROR) << "Failed load model_data_path" << _model_data_path; - return -1; - } - - if (parse_version_info(conf, version) != 0) { - LOG(ERROR) << "Failed parse version info"; - return -1; - } - - LOG(WARNING) << "Succ load model_data_path" << _model_data_path; - return 0; - } - - int proc_initialize(const configure::EngineDesc& conf, bool version) { - if (proc_initialize_impl(conf, version) != 0) { - LOG(ERROR) << "Failed proc initialize impl"; - return -1; - } - - // init bsf framework - if (_infer_thread_num <= 0) { - return 0; - } - - im::bsf::TaskExecutor::instance()->set_thread_init_fn( - boost::bind(&InferEngine::thrd_initialize_impl, this)); - im::bsf::TaskExecutor::instance()->set_thread_reset_fn( - boost::bind(&InferEngine::thrd_clear_impl, this)); - im::bsf::TaskExecutor::instance()->set_thread_callback_fn( - boost::bind(&InferEngine::infer_impl2, this, _1, _2)); - im::bsf::TaskExecutor::instance()->set_batch_size(_infer_batch_size); - im::bsf::TaskExecutor::instance()->set_batch_align( - _infer_batch_align); - if (im::bsf::TaskExecutor::instance()->start(_infer_thread_num) != - 0) { - LOG(ERROR) << "Failed start bsf executor, threads:" << _infer_thread_num; - return -1; - } - - LOG(WARNING) << "Enable batch schedule framework, thread_num:" - << _infer_thread_num << ", batch_size:" << _infer_batch_size - << ", enable_batch_align:" << _infer_batch_align; - - return 0; - } - - int infer(const void* in, void* out, uint32_t batch_size = -1) { - if (_infer_thread_num <= 0) { - return infer_impl1(in, out, batch_size); - } - - im::bsf::TaskManager task_manager; - task_manager.schedule(*(reinterpret_cast(in)), - *(reinterpret_cast(out))); - task_manager.wait(); - return 0; - } - - int thrd_initialize() { - if (_infer_thread_num > 0) { - return 0; - } - - return thrd_initialize_impl(); - } - - int thrd_clear() { - if (_infer_thread_num > 0) { - return 0; - } - - return thrd_clear_impl(); - } - - int proc_finalize() { - if (proc_finalize_impl() != 0) { - LOG(ERROR) << "Failed proc finalize impl"; - return -1; - } - - if (_infer_thread_num > 0) { - im::bsf::TaskExecutor::instance()->stop(); - } - - return 0; - } - - int reload() { - if (check_need_reload()) { - LOG(WARNING) << "begin reload model[" << _model_data_path << "]."; - return load(_infer_engine_params); - } - return 0; - } - - uint64_t version() const { return _version; } - - uint32_t thread_num() const { return _infer_thread_num; } - - private: - int parse_version_info(const configure::EngineDesc& config, bool version) { - _version = uint64_t(-1); - return 0; - } - - bool check_need_reload() { - if (_reload_mode_tag == "timestamp_ne") { - return check_timestamp_ne(); - } else if (_reload_mode_tag == "timestamp_gt") { - return check_timestamp_gt(); - } else if (_reload_mode_tag == "md5sum") { - return check_md5sum(); - } else if (_reload_mode_tag == "revision") { - return check_revision(); - } else if (_reload_mode_tag == "none") { - return false; - } else { - LOG(ERROR) << "Not support check type: " << _reload_mode_tag; - return false; - } - } - - bool check_timestamp_ne() { - struct stat st; - if (stat(_reload_tag_file.c_str(), &st) != 0) { - LOG(ERROR) << "Failed stat config file:" << _reload_tag_file; - return false; - } - - if ((st.st_mode & S_IFREG) && st.st_mtime != _last_status.last_timestamp) { - _last_status.last_timestamp = st.st_mtime; - return true; - } - - return false; - } - - bool check_timestamp_gt() { - struct stat st; - if (stat(_reload_tag_file.c_str(), &st) != 0) { - LOG(ERROR) << "Failed stat config file:" << _reload_tag_file; - return false; - } - - if ((st.st_mode & S_IFREG) && st.st_mtime > _last_status.last_timestamp) { - _last_status.last_timestamp = st.st_mtime; - return true; - } - - return false; - } - - bool check_md5sum() { return false; } - - bool check_revision() { return false; } - - protected: - std::string _model_data_path; - InferEngineCreationParams _infer_engine_params; - - private: - std::string _reload_tag_file; - std::string _reload_mode_tag; - last_check_status _last_status; - uint32_t _infer_thread_num; - uint32_t _infer_batch_size; - bool _infer_batch_align; - uint64_t _version; -}; - -template -struct ModelData { - ModelData() : current_idx(1) { - cores[0] = NULL; - cores[1] = NULL; - } - - ~ModelData() { - delete cores[0]; - delete cores[1]; - } - - EngineCore* cores[2]; - uint32_t current_idx; -}; - -template -class DBReloadableInferEngine : public ReloadableInferEngine { - public: - virtual ~DBReloadableInferEngine() {} - - int proc_initialize(const configure::EngineDesc& conf, bool version) { - THREAD_KEY_CREATE(&_skey, NULL); - THREAD_MUTEX_INIT(&_mutex, NULL); - return ReloadableInferEngine::proc_initialize(conf, version); - } - - virtual int load(const InferEngineCreationParams& params) { - if (_reload_vec.empty()) { - return 0; - } - - for (uint32_t ti = 0; ti < _reload_vec.size(); ++ti) { - if (load_data(_reload_vec[ti], params) != 0) { - LOG(ERROR) << "Failed reload engine model: " << ti; - return -1; - } - } - - LOG(WARNING) << "Succ load engine, path: " << params.get_path(); - - return 0; - } - - int load_data(ModelData* md, - const InferEngineCreationParams& params) { - uint32_t next_idx = (md->current_idx + 1) % 2; - if (md->cores[next_idx]) { - delete md->cores[next_idx]; - } - - md->cores[next_idx] = new (std::nothrow) EngineCore; - - params.dump(); - if (!md->cores[next_idx] || md->cores[next_idx]->create(params) != 0) { - LOG(ERROR) << "Failed create model, path: " << params.get_path(); - return -1; - } - md->current_idx = next_idx; - return 0; - } - - virtual int thrd_initialize_impl() { - // memory pool to be inited in non-serving-threads - if (MempoolWrapper::instance().thread_initialize() != 0) { - LOG(ERROR) << "Failed thread initialize mempool"; - return -1; - } - - ModelData* md = new (std::nothrow) ModelData; - if (!md || load_data(md, _infer_engine_params) != 0) { - LOG(ERROR) << "Failed create thread data from " - << _infer_engine_params.get_path(); - return -1; - } - - THREAD_SETSPECIFIC(_skey, md); - im::bsf::AutoMutex lock(_mutex); - _reload_vec.push_back(md); - return 0; - } - - int thrd_clear_impl() { - // for non-serving-threads - if (MempoolWrapper::instance().thread_clear() != 0) { - LOG(ERROR) << "Failed thread clear mempool"; - return -1; - } - return 0; - } - - int thrd_finalize_impl() { return 0; } - - int proc_finalize_impl() { - THREAD_KEY_DELETE(_skey); - THREAD_MUTEX_DESTROY(&_mutex); - return 0; - } - - EngineCore* get_core() { - ModelData* md = - (ModelData*)THREAD_GETSPECIFIC(_skey); - if (!md) { - LOG(ERROR) << "Failed get thread specific data"; - return NULL; - } - return md->cores[md->current_idx]; - } - - protected: - THREAD_KEY_T _skey; - THREAD_MUTEX_T _mutex; - std::vector*> _reload_vec; - - private: -}; - -// 多个EngineCore共用同一份模型数据 -template -class CloneDBReloadableInferEngine - : public DBReloadableInferEngine { - public: - virtual ~CloneDBReloadableInferEngine() {} - - virtual int proc_initialize(const configure::EngineDesc& conf, bool version) { - _pd = new (std::nothrow) ModelData; - if (!_pd) { - LOG(ERROR) << "Failed to allocate for ProcData"; - return -1; - } - return DBReloadableInferEngine::proc_initialize(conf, version); - } - - virtual int load(const InferEngineCreationParams& params) { - // 加载进程级模型数据 - if (!_pd || - DBReloadableInferEngine::load_data(_pd, params) != 0) { - LOG(ERROR) << "Failed to create common model from [" << params.get_path() - << "]."; - return -1; - } - LOG(WARNING) << "Succ load common model[" << _pd->cores[_pd->current_idx] - << "], path[" << params.get_path() << "]."; - - if (DBReloadableInferEngine::_reload_vec.empty()) { - return 0; - } - - for (uint32_t ti = 0; - ti < DBReloadableInferEngine::_reload_vec.size(); - ++ti) { - if (load_data(DBReloadableInferEngine::_reload_vec[ti], - _pd->cores[_pd->current_idx]) != 0) { - LOG(ERROR) << "Failed reload engine model: " << ti; - return -1; - } - } - - LOG(WARNING) << "Succ load clone model, path[" << params.get_path() << "]"; - - return 0; - } - - // 加载线程级对象,多个线程级对象共用pd_core的模型数据 - int load_data(ModelData* td, EngineCore* pd_core) { - uint32_t next_idx = (td->current_idx + 1) % 2; - if (td->cores[next_idx]) { - delete td->cores[next_idx]; - } - - td->cores[next_idx] = new (std::nothrow) EngineCore; - if (!td->cores[next_idx] || - td->cores[next_idx]->clone(pd_core->get()) != 0) { - LOG(ERROR) << "Failed clone model from pd_core[ " << pd_core << "], idx[" - << next_idx << "]"; - return -1; - } - td->current_idx = next_idx; - LOG(WARNING) << "td_core[" << td->cores[td->current_idx] - << "] clone model from pd_core[" << pd_core - << "] succ, cur_idx[" << td->current_idx << "]."; - return 0; - } - - virtual int thrd_initialize_impl() { - // memory pool to be inited in non-serving-threads - if (MempoolWrapper::instance().thread_initialize() != 0) { - LOG(ERROR) << "Failed thread initialize mempool"; - return -1; - } - - ModelData* md = new (std::nothrow) ModelData; - if (!md || load_data(md, _pd->cores[_pd->current_idx]) != 0) { - LOG(ERROR) << "Failed clone thread data, origin_core[" - << _pd->cores[_pd->current_idx] << "]."; - return -1; - } - - THREAD_SETSPECIFIC(DBReloadableInferEngine::_skey, md); - im::bsf::AutoMutex lock(DBReloadableInferEngine::_mutex); - DBReloadableInferEngine::_reload_vec.push_back(md); - return 0; - } - - protected: - ModelData* - _pd; // 进程级EngineCore,多个线程级EngineCore共用该对象的模型数据 -}; - -template -class FluidInferEngine : public CloneDBReloadableInferEngine { - public: - FluidInferEngine() {} - ~FluidInferEngine() {} - - int infer_impl1(const void* in, void* out, uint32_t batch_size = -1) { - FluidFamilyCore* core = - DBReloadableInferEngine::get_core(); - if (!core || !core->get()) { - LOG(ERROR) << "Failed get fluid core in infer_impl()"; - return -1; - } - - if (!core->Run(in, out)) { - LOG(ERROR) << "Failed run fluid family core"; - return -1; - } - return 0; - } - - int infer_impl2(const BatchTensor& in, BatchTensor& out) { // NOLINT - return infer_impl1(&in, &out); - } -}; - -typedef FactoryPool StaticInferFactory; - -class VersionedInferEngine : public InferEngine { - public: - VersionedInferEngine() { _versions.clear(); } - ~VersionedInferEngine() {} - - int proc_initialize(const configure::EngineDesc& conf) { - if (proc_initialize(conf, false) != 0) { - LOG(ERROR) << "Failed proc intialize engine: " << conf.name().c_str(); - return -1; - } - - LOG(WARNING) << "Succ proc initialize engine: " << conf.name().c_str(); - return 0; - } - - int proc_initialize(const configure::EngineDesc& conf, bool version) { - std::string engine_type = conf.type(); - InferEngine* engine = - StaticInferFactory::instance().generate_object(engine_type); - if (!engine) { - LOG(ERROR) << "Failed generate engine with type:" << engine_type; - return -1; - } - - if (engine->proc_initialize(conf, version) != 0) { - LOG(ERROR) << "Failed initialize engine, type:" << engine_type; - return -1; - } - - auto r = _versions.insert(std::make_pair(engine->version(), engine)); - if (!r.second) { - LOG(ERROR) << "Failed insert item: " << engine->version() - << ", type: " << engine_type; - return -1; - } - LOG(WARNING) << "Succ proc initialize version engine: " - << engine->version(); - return 0; - } - - int proc_finalize() { - for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { - if (iter->second->proc_finalize() != 0) { - LOG(ERROR) << "Failed proc finalize version engine: " << iter->first; - } - LOG(WARNING) << "Succ proc finalize version engine: " << iter->first; - } - return 0; - } - - int thrd_initialize() { - for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { - if (iter->second->thrd_initialize() != 0) { - LOG(ERROR) << "Failed thrd initialize version engine: " << iter->first; - return -1; - } - LOG(WARNING) << "Succ thrd initialize version engine: " << iter->first; - } - return 0; - } - - int thrd_clear() { - for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { - if (iter->second->thrd_clear() != 0) { - LOG(ERROR) << "Failed thrd clear version engine: " << iter->first; - return -1; - } - } - return 0; - } - - int thrd_finalize() { - for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { - if (iter->second->thrd_finalize() != 0) { - LOG(ERROR) << "Failed thrd finalize version engine: " << iter->first; - return -1; - } - LOG(WARNING) << "Succ thrd finalize version engine: " << iter->first; - } - return 0; - } - - int reload() { - for (auto iter = _versions.begin(); iter != _versions.end(); ++iter) { - if (iter->second->reload() != 0) { - LOG(ERROR) << "Failed reload version engine: " << iter->first; - return -1; - } - LOG(WARNING) << "Succ reload version engine: " << iter->first; - } - return 0; - } - - uint64_t version() const { - InferEngine* engine = default_engine(); - if (engine) { - return engine->version(); - } else { - return uint64_t(-1); - } - } - - // inference interface - InferEngine* default_engine() const { - if (_versions.size() != 1) { - LOG(ERROR) << "Ambiguous default engine version:" << _versions.size(); - return NULL; - } - - return _versions.begin()->second; - } - - int infer(const void* in, void* out, uint32_t batch_size) { - InferEngine* engine = default_engine(); - if (!engine) { - LOG(WARNING) << "fail to get default engine"; - return -1; - } - return engine->infer(in, out, batch_size); - } - - template - T* get_core() { - InferEngine* engine = default_engine(); - if (!engine) { - LOG(WARNING) << "fail to get core"; - return NULL; - } - auto db_engine = dynamic_cast*>(engine); - if (db_engine) { - return db_engine->get_core(); - } - LOG(WARNING) << "fail to get core"; - return NULL; - } - - // versioned inference interface - int infer(const void* in, void* out, uint32_t batch_size, uint64_t version) { - auto iter = _versions.find(version); - if (iter == _versions.end()) { - LOG(ERROR) << "Not found version engine: " << version; - return -1; - } - - return iter->second->infer(in, out, batch_size); - } - - template - T* get_core(uint64_t version) { - auto iter = _versions.find(version); - if (iter == _versions.end()) { - LOG(ERROR) << "Not found version engine: " << version; - return NULL; - } - - auto db_engine = dynamic_cast*>(iter->second); - if (db_engine) { - return db_engine->get_core(); - } - LOG(WARNING) << "fail to get core for " << version; - return NULL; - } - - // -- - int proc_initialize_impl(const configure::EngineDesc& conf, bool) { - return -1; - } - int thrd_initialize_impl() { return -1; } - int thrd_finalize_impl() { return -1; } - int thrd_clear_impl() { return -1; } - int proc_finalize_impl() { return -1; } - int infer_impl1(const void* in, void* out, uint32_t batch_size = -1) { - return -1; - } - int infer_impl2(const BatchTensor& in, BatchTensor& out) { // NOLINT - return -1; - } // NOLINT - - private: - boost::unordered_map _versions; -}; - -class InferManager { - public: - static InferManager& instance() { - static InferManager ins; - return ins; - } - - int proc_initialize(const char* path, const char* file) { - ModelToolkitConf model_toolkit_conf; - if (configure::read_proto_conf(path, file, &model_toolkit_conf) != 0) { - LOG(ERROR) << "failed load infer config, path: " << path << "/" << file; - return -1; - } - - size_t engine_num = model_toolkit_conf.engines_size(); - for (size_t ei = 0; ei < engine_num; ++ei) { - std::string engine_name = model_toolkit_conf.engines(ei).name(); - VersionedInferEngine* engine = new (std::nothrow) VersionedInferEngine(); - if (!engine) { - LOG(ERROR) << "Failed generate versioned engine: " << engine_name; - return -1; - } - - if (engine->proc_initialize(model_toolkit_conf.engines(ei)) != 0) { - LOG(ERROR) << "Failed initialize version engine, name:" << engine_name; - return -1; - } - - auto r = _map.insert(std::make_pair(engine_name, engine)); - if (!r.second) { - LOG(ERROR) << "Failed insert item: " << engine_name; - return -1; - } - LOG(WARNING) << "Succ proc initialize engine: " << engine_name; - } - - return 0; - } - - int thrd_initialize() { - for (auto it = _map.begin(); it != _map.end(); ++it) { - if (it->second->thrd_initialize() != 0) { - LOG(ERROR) << "Failed thrd initialize engine, name: " << it->first; - return -1; - } - LOG(WARNING) << "Succ thrd initialize engine, name: " << it->first; - } - return 0; - } - - int thrd_clear() { - for (auto it = _map.begin(); it != _map.end(); ++it) { - if (it->second->thrd_clear() != 0) { - LOG(ERROR) << "Failed thrd clear engine, name: " << it->first; - return -1; - } - } - return 0; - } - - int reload() { - for (auto it = _map.begin(); it != _map.end(); ++it) { - if (it->second->reload() != 0) { - LOG(ERROR) << "Failed reload engine, name: " << it->first; - return -1; - } - } - return 0; - } - - int thrd_finalize() { - for (auto it = _map.begin(); it != _map.end(); ++it) { - if (it->second->thrd_finalize() != 0) { - LOG(ERROR) << "Failed thrd finalize engine, name: " << it->first; - return -1; - } - LOG(WARNING) << "Succ thrd finalize engine, name: " << it->first; - } - return 0; - } - - int proc_finalize() { - for (auto it = _map.begin(); it != _map.end(); ++it) { - if (it->second->proc_finalize() != 0) { - LOG(ERROR) << "Failed proc finalize engine, name: " << it->first; - return -1; - } - LOG(WARNING) << "Succ proc finalize engine, name: " << it->first; - } - _map.clear(); - return 0; - } - - // Inference interface - int infer(const char* model_name, - const void* in, - void* out, - uint32_t batch_size = -1) { - auto it = _map.find(model_name); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; - return -1; - } - return it->second->infer(in, out, batch_size); - } - - template - T* get_core(const char* model_name) { - auto it = _map.find(model_name); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; - return NULL; - } - auto infer_engine = - dynamic_cast*>(it->second->default_engine()); - if (infer_engine) { - return infer_engine->get_core(); - } - LOG(WARNING) << "fail to get core for " << model_name; - return NULL; - } - - // Versioned inference interface - int infer(const char* model_name, - const void* in, - void* out, - uint32_t batch_size, - uint64_t version) { - auto it = _map.find(model_name); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; - return -1; - } - return it->second->infer(in, out, batch_size, version); - } - - template - T* get_core(const char* model_name, uint64_t version) { - auto it = _map.find(model_name); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find engine in map, model name:" << model_name; - return NULL; - } - return it->second->get_core(version); - } - - int query_version(const std::string& model, uint64_t& version) { // NOLINT - auto it = _map.find(model); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find engine in map, model name:" << model; - return -1; - } - auto infer_engine = it->second->default_engine(); - if (!infer_engine) { - LOG(WARNING) << "Cannot get default engine for model:" << model; - return -1; - } - version = infer_engine->version(); - LOG(INFO) << "Succ get version: " << version << " for model: " << model; - return 0; - } - - private: - boost::unordered_map _map; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/infer_data.h b/predictor/framework/infer_data.h deleted file mode 100644 index 8bb0b5d8b2dddab032710324e6cfdfeffc6f60ee..0000000000000000000000000000000000000000 --- a/predictor/framework/infer_data.h +++ /dev/null @@ -1,165 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -enum DataType { FLOAT32, INT64 }; - -class DataBuf { - public: - DataBuf() : _data(NULL), _size(0), _owned(true) {} - - explicit DataBuf(size_t size) - : _data(new char[size]), _size(size), _owned(true) {} - - DataBuf(void* data, size_t size) : _data(data), _size(size), _owned(false) {} - - DataBuf(void* data, size_t size, bool owned) - : _data(data), _size(size), _owned(owned) {} - - void* data() const { return _data; } - - size_t size() const { return _size; } - - void free() { - _size = 0; - if (_owned) { - delete[](reinterpret_cast(_data)); - } - } - - ~DataBuf() { free(); } - - private: - void* _data; - size_t _size; - bool _owned; -}; - -struct Tensor { - Tensor() { - shape.clear(); - for (int li = 0; li < lod.size(); ++li) { - lod[li].clear(); - } - lod.clear(); - } - - Tensor(const Tensor& tensor) { - name = tensor.name; - data = tensor.data; - type = tensor.type; - shape.assign(tensor.shape.begin(), tensor.shape.end()); - for (int li = 0; li < tensor.lod.size(); ++li) { - std::vector l; - l.assign(tensor.lod[li].begin(), tensor.lod[li].end()); - lod.push_back(l); - } - } - - ~Tensor() { shape.clear(); } - - size_t ele_byte() const { - if (type == INT64) { - return sizeof(int64_t); - } else { - return sizeof(float); - } - } - - bool valid() const { - if (shape.empty()) { - if (data.data() || data.size()) { - LOG(ERROR) << "data should be empty"; - return false; - } - return true; - } - - if (!data.data() || !data.size()) { - LOG(ERROR) << "data cannot empty"; - return false; - } - - size_t byte_size = 1; - for (size_t si = 0; si < shape.size(); ++si) { - byte_size *= shape[si]; - } - - if (byte_size * ele_byte() != data.size()) { - LOG(ERROR) << "wrong data size: " << byte_size * ele_byte() << " vs. " - << data.size(); - return false; - } - - return true; - } - - size_t shape0() { - if (shape.empty()) { - return 0; - } - return shape[0]; - } - - std::string name; - std::vector shape; - DataBuf data; - DataType type; - std::vector> lod; -}; - -class BatchTensor { - public: - BatchTensor() {} - ~BatchTensor() { _features.clear(); } - - BatchTensor(const BatchTensor& tv) { - _features.assign(tv.features().begin(), tv.features().end()); - } - - Tensor& operator[](int index) { return _features[index]; } - - const Tensor& operator[](int index) const { return _features[index]; } - - void push_back(const Tensor& tensor) { _features.push_back(tensor); } - - size_t count() const { return _features.size(); } - - size_t size() const { - // shape0 indicates batch_size - if (count() <= 0 || _features[0].shape.size() <= 0) { - return 0; - } - return _features[0].shape[0]; - } - - const std::vector& features() const { return _features; } - - void clear() { _features.clear(); } - - private: - std::vector _features; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/kv_manager.h b/predictor/framework/kv_manager.h deleted file mode 100644 index c1ca8409df624379107a9ba6ed0a26f7e6f0df30..0000000000000000000000000000000000000000 --- a/predictor/framework/kv_manager.h +++ /dev/null @@ -1,94 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using configure::ModelToolkitConf; - -struct KVInfo { - std::string model_name; - uint32_t sparse_param_service_type; - std::string sparse_param_service_table_name; -}; - -class KVManager { - public: - static KVManager &instance() { - static KVManager ins; - return ins; - } - - int proc_initialize(const char *path, const char *file) { - ModelToolkitConf model_toolkit_conf; - if (configure::read_proto_conf(path, file, &model_toolkit_conf) != 0) { - LOG(ERROR) << "failed load infer config, path: " << path << "/" << file; - return -1; - } - - size_t engine_num = model_toolkit_conf.engines_size(); - for (size_t ei = 0; ei < engine_num; ++ei) { - const configure::EngineDesc &conf = model_toolkit_conf.engines(ei); - std::string engine_name = conf.name(); - KVInfo *kvinfo = new (std::nothrow) KVInfo(); - kvinfo->model_name = engine_name; - if (conf.has_sparse_param_service_type()) { - kvinfo->sparse_param_service_type = conf.sparse_param_service_type(); - } else { - kvinfo->sparse_param_service_type = configure::EngineDesc::NONE; - } - - if (conf.has_sparse_param_service_table_name()) { - kvinfo->sparse_param_service_table_name = - conf.sparse_param_service_table_name(); - } else { - kvinfo->sparse_param_service_table_name = ""; - } - - auto r = _map.insert(std::make_pair(engine_name, kvinfo)); - if (!r.second) { - LOG(ERROR) << "Failed insert item: " << engine_name; - return -1; - } - - LOG(WARNING) << engine_name << ": " - << kvinfo->sparse_param_service_table_name; - LOG(WARNING) << "Succ proc initialize kvmanager for engine: " - << engine_name; - } - - return 0; - } - - const KVInfo *get_kv_info(std::string model_name) { - auto it = _map.find(model_name); - if (it == _map.end()) { - LOG(WARNING) << "Cannot find kvinfo for model " << model_name; - return NULL; - } - - return it->second; - } - - private: - std::map _map; -}; -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/manager.h b/predictor/framework/manager.h deleted file mode 100644 index 939ba15a477e1bff5a96edf1dc8a8530d7a96bba..0000000000000000000000000000000000000000 --- a/predictor/framework/manager.h +++ /dev/null @@ -1,245 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/constant.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/service.h" -#include "predictor/framework/workflow.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using configure::WorkflowConf; -using configure::InferServiceConf; - -class Workflow; -// class InferService; -// class ParallelInferService; - -template -I* create_item_impl() { - return new (std::nothrow) I(); -} - -template <> -inline InferService* create_item_impl() { - if (FLAGS_use_parallel_infer_service) { - return new (std::nothrow) ParallelInferService(); - } else { - return new (std::nothrow) InferService(); - } -} - -class WorkflowManager { - public: - static WorkflowManager& instance() { - static WorkflowManager mgr; - return mgr; - } - - int initialize(const std::string path, const std::string file) { - WorkflowConf workflow_conf; - if (configure::read_proto_conf(path, file, &workflow_conf) != 0) { - LOG(ERROR) << "Failed load manager<" << Workflow::tag() - << "> configure from " << path << "/" << file; - return -1; - } - - try { - uint32_t item_size = workflow_conf.workflows_size(); - for (uint32_t ii = 0; ii < item_size; ii++) { - std::string name = workflow_conf.workflows(ii).name(); - Workflow* item = new (std::nothrow) Workflow(); - if (item == NULL) { - LOG(ERROR) << "Failed create " << Workflow::tag() << " for: " << name; - return -1; - } - if (item->init(workflow_conf.workflows(ii)) != 0) { - LOG(ERROR) << "Failed init item: " << name << " at:" << ii << "!"; - return -1; - } - - std::pair< - typename boost::unordered_map::iterator, - bool> - r = _item_map.insert(std::make_pair(name, item)); - if (!r.second) { - LOG(ERROR) << "Failed insert item:" << name << " at:" << ii << "!"; - return -1; - } - - LOG(INFO) << "Succ init item:" << name << " from conf:" << path << "/" - << file << ", at:" << ii << "!"; - } - } catch (...) { - LOG(ERROR) << "Config[" << path << "/" << file << "] format " - << "invalid, load failed"; - return -1; - } - return 0; - } - - Workflow* create_item() { return create_item_impl(); } - - Workflow* item(const std::string& name) { - typename boost::unordered_map::iterator it; - it = _item_map.find(name); - if (it == _item_map.end()) { - LOG(WARNING) << "Not found item: " << name << "!"; - return NULL; - } - - return it->second; - } - - Workflow& operator[](const std::string& name) { - Workflow* i = item(name); - if (i == NULL) { - std::string err = "Not found item in manager for:"; - err += name; - throw std::overflow_error(err); - } - return *i; - } - - int reload() { - int ret = 0; - typename boost::unordered_map::iterator it = - _item_map.begin(); - for (; it != _item_map.end(); ++it) { - if (it->second->reload() != 0) { - LOG(WARNING) << "failed reload item: " << it->first << "!"; - ret = -1; - } - } - - LOG(INFO) << "Finish reload " << _item_map.size() << " " << Workflow::tag() - << "(s)"; - return ret; - } - - int finalize() { return 0; } - - private: - WorkflowManager() {} - - private: - boost::unordered_map _item_map; -}; - -class InferServiceManager { - public: - static InferServiceManager& instance() { - static InferServiceManager mgr; - return mgr; - } - - int initialize(const std::string path, const std::string file) { - InferServiceConf infer_service_conf; - if (configure::read_proto_conf(path, file, &infer_service_conf) != 0) { - LOG(ERROR) << "Failed load manager<" << InferService::tag() - << "> configure!"; - return -1; - } - - try { - uint32_t item_size = infer_service_conf.services_size(); - for (uint32_t ii = 0; ii < item_size; ii++) { - std::string name = infer_service_conf.services(ii).name(); - InferService* item = new (std::nothrow) InferService(); - if (item == NULL) { - LOG(ERROR) << "Failed create " << InferService::tag() - << " for: " << name; - return -1; - } - if (item->init(infer_service_conf.services(ii)) != 0) { - LOG(ERROR) << "Failed init item: " << name << " at:" << ii << "!"; - return -1; - } - - std::pair< - typename boost::unordered_map::iterator, - bool> - r = _item_map.insert(std::make_pair(name, item)); - if (!r.second) { - LOG(ERROR) << "Failed insert item:" << name << " at:" << ii << "!"; - return -1; - } - - LOG(INFO) << "Succ init item:" << name << " from conf:" << path << "/" - << file << ", at:" << ii << "!"; - } - } catch (...) { - LOG(ERROR) << "Config[" << path << "/" << file << "] format " - << "invalid, load failed"; - return -1; - } - return 0; - } - - InferService* create_item() { return create_item_impl(); } - - InferService* item(const std::string& name) { - typename boost::unordered_map::iterator it; - it = _item_map.find(name); - if (it == _item_map.end()) { - LOG(WARNING) << "Not found item: " << name << "!"; - return NULL; - } - - return it->second; - } - - InferService& operator[](const std::string& name) { - InferService* i = item(name); - if (i == NULL) { - std::string err = "Not found item in manager for:"; - err += name; - throw std::overflow_error(err); - } - return *i; - } - - int reload() { - int ret = 0; - typename boost::unordered_map::iterator it = - _item_map.begin(); - for (; it != _item_map.end(); ++it) { - if (it->second->reload() != 0) { - LOG(WARNING) << "failed reload item: " << it->first << "!"; - ret = -1; - } - } - - LOG(INFO) << "Finish reload " << _item_map.size() << " " - << InferService::tag() << "(s)"; - return ret; - } - - int finalize() { return 0; } - - private: - InferServiceManager() {} - - private: - boost::unordered_map _item_map; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/memory.cpp b/predictor/framework/memory.cpp deleted file mode 100644 index 28b73c166efc7b5d2073263ca6b841e78aa124f8..0000000000000000000000000000000000000000 --- a/predictor/framework/memory.cpp +++ /dev/null @@ -1,112 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/memory.h" -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -struct MempoolRegion { - MempoolRegion(im::fugue::memory::Region* region, im::Mempool* mempool) - : _region(region), _mempool(mempool) {} - im::fugue::memory::Region* region() { return _region; } - im::Mempool* mempool() { return _mempool; } - - im::fugue::memory::Region* _region; - im::Mempool* _mempool; - ~MempoolRegion() { - if (_region) { - delete _region; - _region = NULL; - } - if (_mempool) { - delete _mempool; - _mempool = NULL; - } - } -}; - -int MempoolWrapper::initialize() { - if (THREAD_KEY_CREATE(&_bspec_key, NULL) != 0) { - LOG(ERROR) << "unable to create thread_key of thrd_data"; - return -1; - } - if (THREAD_SETSPECIFIC(_bspec_key, NULL) != 0) { - LOG(ERROR) << "failed initialize bsepecific key to null"; - return -1; - } - - return 0; -} - -int MempoolWrapper::thread_initialize() { - im::fugue::memory::Region* region = new im::fugue::memory::Region(); - region->init(); - im::Mempool* mempool = new (std::nothrow) im::Mempool(region); - MempoolRegion* mempool_region = new MempoolRegion(region, mempool); - if (mempool == NULL) { - LOG(ERROR) << "Failed create thread mempool"; - return -1; - } - - if (THREAD_SETSPECIFIC(_bspec_key, mempool_region) != 0) { - LOG(ERROR) << "unable to set the thrd_data"; - delete region; - delete mempool; - delete mempool_region; - return -1; - } - - LOG(WARNING) << "Succ thread initialize mempool wrapper"; - return 0; -} - -int MempoolWrapper::thread_clear() { - MempoolRegion* mempool_region = - (MempoolRegion*)THREAD_GETSPECIFIC(_bspec_key); - if (mempool_region == NULL) { - LOG(WARNING) << "THREAD_GETSPECIFIC() returned NULL"; - return -1; - } - im::Mempool* mempool = mempool_region->mempool(); - im::fugue::memory::Region* region = mempool_region->region(); - if (mempool) { - mempool->release_block(); - region->reset(); - } - return 0; -} - -void* MempoolWrapper::malloc(size_t size) { - MempoolRegion* mempool_region = - (MempoolRegion*)THREAD_GETSPECIFIC(_bspec_key); - if (mempool_region == NULL) { - LOG(WARNING) << "THREAD_GETSPECIFIC() returned NULL"; - return NULL; - } - - im::Mempool* mempool = mempool_region->mempool(); - if (!mempool) { - LOG(WARNING) << "Cannot malloc memory:" << size - << ", since mempool is not thread initialized"; - return NULL; - } - return mempool->malloc(size); -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/memory.h b/predictor/framework/memory.h deleted file mode 100644 index 4f60eb2ef5e3036f0d07637a97874d68bec23ac7..0000000000000000000000000000000000000000 --- a/predictor/framework/memory.h +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include "predictor/common/inner_common.h" -#include "predictor/mempool/mempool.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class MempoolWrapper { - public: - MempoolWrapper() {} - - static MempoolWrapper& instance() { - static MempoolWrapper mempool; - return mempool; - } - - int initialize(); - - int thread_initialize(); - - int thread_clear(); - - void* malloc(size_t size); - - private: - // im::fugue::memory::Region _region; - THREAD_KEY_T _bspec_key; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/merger.h b/predictor/framework/merger.h deleted file mode 100644 index 5188bed689cfb0347e9ad0a12a59ddd0200cda14..0000000000000000000000000000000000000000 --- a/predictor/framework/merger.h +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class IMerger { - public: - virtual bool merge(const google::protobuf::Message*, - google::protobuf::Message*) = 0; -}; - -class DefaultMerger : public IMerger { - public: - bool merge(const google::protobuf::Message* s, google::protobuf::Message* d) { - if (!s || !d) { - return false; - } - - d->MergeFrom(*s); - return true; - } -}; - -template -class Singleton { - public: - static T* instance() { - static T ins; - return &ins; - } -}; - -class MergerManager { - public: - typedef IMerger MergerT; - - static MergerManager& instance() { - static MergerManager ins; - return ins; - } - - bool set(std::string name, MergerT* merger) { - if (_mergers.find(name) != _mergers.end()) { - LOG(ERROR) << "Duplicated merger: " << name; - return false; - } - _mergers[name] = merger; - return true; - } - - bool get(const std::string& name, MergerT*& merger) { // NOLINT - std::map::iterator iter = _mergers.find(name); - if (iter == _mergers.end()) { - return false; - } - merger = iter->second; - return true; - } - - private: - MergerManager() { set("default", Singleton::instance()); } - - private: - std::map _mergers; -}; - -#define DECLARE_MERGER(M) \ - static bool regist_self() { \ - if (!baidu::paddle_serving::predictor::MergerManager::instance().set( \ - #M, baidu::paddle_serving::predictor::Singleton::instance())) { \ - LOG(ERROR) << "Failed regist merger: " << #M; \ - return false; \ - } \ - LOG(INFO) << "Succ regist merger: " << #M; \ - return true; \ - } - -#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) -#define PDS_STR_CAT_I(a, b) a##b - -#define DEFINE_MERGER(M) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - M::regist_self(); \ - } - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/op_repository.cpp b/predictor/framework/op_repository.cpp deleted file mode 100644 index 76396cd2a9945151e65e36da18c42909ada124ee..0000000000000000000000000000000000000000 --- a/predictor/framework/op_repository.cpp +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/op_repository.h" -#include -#include "predictor/op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -Op* OpRepository::get_op(std::string op_type) { - ManagerMap::iterator iter = _repository.find(op_type); - Op* op = NULL; - if (iter != _repository.end()) { - op = (iter->second)->get_op(); - } else { - LOG(ERROR) << "Try to create unknown op[" << op_type << "]"; - } - return op; -} - -void OpRepository::return_op(Op* op) { - if (op == NULL) { - LOG(ERROR) << "Try to return NULL op"; - return; - } - ManagerMap::iterator iter = _repository.find(op->type()); - if (iter != _repository.end()) { - iter->second->return_op(op); - } else { - LOG(ERROR) << "Try to return unknown op[" << op << "], op_type[" - << op->type() << "]."; - } -} - -void OpRepository::return_op(const std::string& op_type, Op* op) { - if (op == NULL) { - LOG(ERROR) << "Try to return NULL op"; - return; - } - ManagerMap::iterator iter = _repository.find(op_type); - if (iter != _repository.end()) { - iter->second->return_op(op); - } else { - LOG(ERROR) << "Try to return unknown op[" << op << "], op_type[" << op_type - << "]."; - } -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/op_repository.h b/predictor/framework/op_repository.h deleted file mode 100644 index 045912945232f9a36f40a941bc77041fa5ca08e2..0000000000000000000000000000000000000000 --- a/predictor/framework/op_repository.h +++ /dev/null @@ -1,80 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#define REGISTER_OP(op) \ - ::baidu::paddle_serving::predictor::OpRepository::instance().regist_op( \ - #op) - -class Op; - -class Factory { - public: - virtual Op* get_op() = 0; - virtual void return_op(Op* op) = 0; -}; - -template -class OpFactory : public Factory { - public: - Op* get_op() { return butil::get_object(); } - - void return_op(Op* op) { - butil::return_object(dynamic_cast(op)); - } - - static OpFactory& instance() { - static OpFactory ins; - return ins; - } -}; - -class OpRepository { - public: - typedef boost::unordered_map ManagerMap; - - OpRepository() {} - ~OpRepository() {} - - static OpRepository& instance() { - static OpRepository repo; - return repo; - } - - template - void regist_op(std::string op_type) { - _repository[op_type] = &OpFactory::instance(); - RAW_LOG_INFO("Succ regist op: %s", op_type.c_str()); - } - - Op* get_op(std::string op_type); - - void return_op(Op* op); - - void return_op(const std::string& op_type, Op* op); - - private: - ManagerMap _repository; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/predictor_metric.cpp b/predictor/framework/predictor_metric.cpp deleted file mode 100644 index fc3600b11608ace505ae78b94b33c951311f79b4..0000000000000000000000000000000000000000 --- a/predictor/framework/predictor_metric.cpp +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/predictor_metric.h" -#ifdef BCLOUD -#include "base/memory/singleton.h" -#else -#include "butil/memory/singleton.h" -#endif - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -PredictorMetric* PredictorMetric::GetInstance() { - return Singleton::get(); -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/resource.cpp b/predictor/framework/resource.cpp deleted file mode 100644 index 15a5022d69458eae76c6b3f75ab3076d365ed333..0000000000000000000000000000000000000000 --- a/predictor/framework/resource.cpp +++ /dev/null @@ -1,242 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/resource.h" -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/kv_manager.h" -namespace baidu { -namespace paddle_serving { -namespace predictor { - -using configure::ResourceConf; -using rec::mcube::CubeAPI; -// __thread bool p_thread_initialized = false; - -static void dynamic_resource_deleter(void* d) { -#if 1 - LOG(INFO) << "dynamic_resource_delete on " << bthread_self(); -#endif - delete static_cast(d); -} - -DynamicResource::DynamicResource() {} - -DynamicResource::~DynamicResource() {} - -int DynamicResource::initialize() { return 0; } - -std::shared_ptr Resource::getDB() { return db; } - -int DynamicResource::clear() { return 0; } - -int Resource::initialize(const std::string& path, const std::string& file) { - ResourceConf resource_conf; - if (configure::read_proto_conf(path, file, &resource_conf) != 0) { - LOG(ERROR) << "Failed initialize resource from: " << path << "/" << file; - return -1; - } - - // mempool - if (MempoolWrapper::instance().initialize() != 0) { - LOG(ERROR) << "Failed proc initialized mempool wrapper"; - return -1; - } - LOG(WARNING) << "Successfully proc initialized mempool wrapper"; - - if (FLAGS_enable_model_toolkit) { - int err = 0; - std::string model_toolkit_path = resource_conf.model_toolkit_path(); - if (err != 0) { - LOG(ERROR) << "read model_toolkit_path failed, path[" << path - << "], file[" << file << "]"; - return -1; - } - std::string model_toolkit_file = resource_conf.model_toolkit_file(); - if (err != 0) { - LOG(ERROR) << "read model_toolkit_file failed, path[" << path - << "], file[" << file << "]"; - return -1; - } - if (InferManager::instance().proc_initialize( - model_toolkit_path.c_str(), model_toolkit_file.c_str()) != 0) { - LOG(ERROR) << "failed proc initialize modeltoolkit, config: " - << model_toolkit_path << "/" << model_toolkit_file; - return -1; - } - - if (KVManager::instance().proc_initialize( - model_toolkit_path.c_str(), model_toolkit_file.c_str()) != 0) { - LOG(ERROR) << "Failed proc initialize kvmanager, config: " - << model_toolkit_path << "/" << model_toolkit_file; - } - } - - if (THREAD_KEY_CREATE(&_tls_bspec_key, dynamic_resource_deleter) != 0) { - LOG(ERROR) << "unable to create tls_bthread_key of thrd_data"; - return -1; - } - // init rocksDB instance - if (db.get() == nullptr) { - db = RocksDBWrapper::RocksDBWrapperFactory("kvdb"); - } - - THREAD_SETSPECIFIC(_tls_bspec_key, NULL); - return 0; -} - -int Resource::cube_initialize(const std::string& path, - const std::string& file) { - // cube - if (!FLAGS_enable_cube) { - return 0; - } - - ResourceConf resource_conf; - if (configure::read_proto_conf(path, file, &resource_conf) != 0) { - LOG(ERROR) << "Failed initialize resource from: " << path << "/" << file; - return -1; - } - - int err = 0; - std::string cube_config_file = resource_conf.cube_config_file(); - if (err != 0) { - LOG(ERROR) << "reade cube_config_file failed, path[" << path << "], file[" - << cube_config_file << "]"; - return -1; - } - err = CubeAPI::instance()->init(cube_config_file.c_str()); - if (err != 0) { - LOG(ERROR) << "failed initialize cube, config: " << cube_config_file - << " error code : " << err; - return -1; - } - - LOG(INFO) << "Successfully initialize cube"; - - return 0; -} - -int Resource::thread_initialize() { - // mempool - if (MempoolWrapper::instance().thread_initialize() != 0) { - LOG(ERROR) << "Failed thread initialized mempool wrapper"; - return -1; - } - LOG(WARNING) << "Successfully thread initialized mempool wrapper"; - - // infer manager - if (FLAGS_enable_model_toolkit && - InferManager::instance().thrd_initialize() != 0) { - LOG(ERROR) << "Failed thrd initialized infer manager"; - return -1; - } - - DynamicResource* p_dynamic_resource = - reinterpret_cast(THREAD_GETSPECIFIC(_tls_bspec_key)); - if (p_dynamic_resource == NULL) { - p_dynamic_resource = new (std::nothrow) DynamicResource; - if (p_dynamic_resource == NULL) { - LOG(ERROR) << "failed to create tls DynamicResource"; - return -1; - } - if (p_dynamic_resource->initialize() != 0) { - LOG(ERROR) << "DynamicResource initialize failed."; - delete p_dynamic_resource; - p_dynamic_resource = NULL; - return -1; - } - - if (THREAD_SETSPECIFIC(_tls_bspec_key, p_dynamic_resource) != 0) { - LOG(ERROR) << "unable to set tls DynamicResource"; - delete p_dynamic_resource; - p_dynamic_resource = NULL; - return -1; - } - } -#if 0 - LOG(INFO) << "Successfully thread initialized dynamic resource"; -#else - LOG(INFO) << bthread_self() - << ": Successfully thread initialized dynamic resource " - << p_dynamic_resource; - -#endif - return 0; -} - -int Resource::thread_clear() { - // mempool - if (MempoolWrapper::instance().thread_clear() != 0) { - LOG(ERROR) << "Failed thread clear mempool wrapper"; - return -1; - } - - // infer manager - if (FLAGS_enable_model_toolkit && - InferManager::instance().thrd_clear() != 0) { - LOG(ERROR) << "Failed thrd clear infer manager"; - return -1; - } - - DynamicResource* p_dynamic_resource = - reinterpret_cast(THREAD_GETSPECIFIC(_tls_bspec_key)); - if (p_dynamic_resource == NULL) { -#if 0 - LOG(ERROR) << "tls dynamic resource shouldn't be null after " - << "thread_initialize"; -#else - LOG(ERROR) - << bthread_self() - << ": tls dynamic resource shouldn't be null after thread_initialize"; -#endif - return -1; - } - if (p_dynamic_resource->clear() != 0) { - LOG(ERROR) << "Failed to invoke dynamic resource clear"; - return -1; - } - - // ... - return 0; -} - -int Resource::reload() { - if (FLAGS_enable_model_toolkit && InferManager::instance().reload() != 0) { - LOG(ERROR) << "Failed reload infer manager"; - return -1; - } - - // other resource reload here... - return 0; -} - -int Resource::finalize() { - if (FLAGS_enable_model_toolkit && - InferManager::instance().proc_finalize() != 0) { - LOG(ERROR) << "Failed proc finalize infer manager"; - return -1; - } - if (CubeAPI::instance()->destroy() != 0) { - LOG(ERROR) << "Destory cube api failed "; - return -1; - } - THREAD_KEY_DELETE(_tls_bspec_key); - - return 0; -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/resource.h b/predictor/framework/resource.h deleted file mode 100644 index 56e6bc2e8f748219409310e54744c755c81617a0..0000000000000000000000000000000000000000 --- a/predictor/framework/resource.h +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "cube/cube-api/include/cube_api.h" -#include "kvdb/paddle_rocksdb.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/infer.h" -#include "predictor/framework/memory.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class BaseRdDict; -struct DynamicResource { - DynamicResource(); - - ~DynamicResource(); - - int initialize(); - - int clear(); -}; - -class Resource { - public: - Resource() { - // Reference InferManager::instance() explicitly, to make sure static - // instance of InferManager is constructed before that of Resource, and - // destruct after that of Resource - // See https://stackoverflow.com/a/335746/1513460 - InferManager::instance(); - } - - ~Resource() { finalize(); } - - static Resource& instance() { - static Resource ins; - return ins; - } - - int initialize(const std::string& path, const std::string& file); - int cube_initialize(const std::string& path, const std::string& file); - int thread_initialize(); - - int thread_clear(); - - int reload(); - - int finalize(); - - std::shared_ptr getDB(); - - DynamicResource* get_dynamic_resource() { - return reinterpret_cast( - THREAD_GETSPECIFIC(_tls_bspec_key)); - } - - private: - int thread_finalize() { return 0; } - std::shared_ptr db; - - THREAD_KEY_T _tls_bspec_key; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/server.cpp b/predictor/framework/server.cpp deleted file mode 100644 index 4545d4a07cc1d990dad30df245bf77a4f2c212e6..0000000000000000000000000000000000000000 --- a/predictor/framework/server.cpp +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/server.h" -#ifdef BCLOUD -#include // NovaServiceAdaptor -#include // NsheadMcpackAdaptor -#include // PublicPbrpcServiceAdaptor -#else -#include // NovaServiceAdaptor -#include // NsheadMcpackAdaptor -#include // PublicPbrpcServiceAdaptor -#endif -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/manager.h" -#include "predictor/framework/resource.h" -#include "predictor/framework/service_manager.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -#endif - -volatile bool ServerManager::_s_reload_starting = true; - -bool ServerManager::_compare_string_piece_without_case( - const butil::StringPiece& s1, const char* s2) { - if (strlen(s2) != s1.size()) { - return false; - } - return strncasecmp(s1.data(), s2, s1.size()) == 0; -} - -ServerManager::ServerManager() { - _format_services.clear(); - _options.idle_timeout_sec = FLAGS_idle_timeout_s; - _options.max_concurrency = FLAGS_max_concurrency; - _options.num_threads = FLAGS_num_threads; -} - -int ServerManager::add_service_by_format(const std::string& format) { - Service* service = FormatServiceManager::instance().get_service(format); - if (service == NULL) { - LOG(ERROR) << "Not found service by format:" << format << "!"; - return -1; - } - - if (_format_services.find(format) != _format_services.end()) { - LOG(ERROR) << "Cannot insert duplicated service by format:" << format - << "!"; - return -1; - } - - std::pair::iterator, bool> it = - _format_services.insert(std::make_pair(format, service)); - if (!it.second) { - LOG(ERROR) << "Failed insert service by format:" << format << "!"; - return -1; - } - - return 0; -} - -int ServerManager::start_and_wait() { - if (_start_reloader() != 0) { - LOG(ERROR) << "Failed start reloader"; - return -1; - } - - boost::unordered_map::iterator it; - for (it = _format_services.begin(); it != _format_services.end(); it++) { - if (_server.AddService(it->second, brpc::SERVER_DOESNT_OWN_SERVICE) != 0) { - LOG(ERROR) << "Failed to add service of format:" << it->first << "!"; - return -1; - } - } - - if (_server.Start(FLAGS_port, &_options) != 0) { - LOG(ERROR) << "Failed to start Paddle Inference Server"; - return -1; - } - _server.RunUntilAskedToQuit(); - - ServerManager::stop_reloader(); - if (_wait_reloader() != 0) { - LOG(ERROR) << "Failed start reloader"; - return -1; - } - return 0; -} - -void ServerManager::_set_server_option_by_protocol( - const ::butil::StringPiece& protocol_type) { - std::string enabled_protocols = FLAGS_enable_protocol_list; - if (_compare_string_piece_without_case(protocol_type, "nova_pbrpc")) { - _options.nshead_service = new ::brpc::policy::NovaServiceAdaptor; - } else if (_compare_string_piece_without_case(protocol_type, - "public_pbrpc")) { - _options.nshead_service = new ::brpc::policy::PublicPbrpcServiceAdaptor; - } else if (_compare_string_piece_without_case(protocol_type, - "nshead_mcpack")) { - _options.nshead_service = new ::brpc::policy::NsheadMcpackAdaptor; - } else { - LOG(ERROR) << "fail to set nshead protocol, protocol_type[" << protocol_type - << "]."; - return; - } - _options.enabled_protocols = enabled_protocols; - LOG(INFO) << "success to set nshead protocol, protocol_type[" << protocol_type - << "]."; -} - -int ServerManager::_start_reloader() { - int ret = - THREAD_CREATE(&_reload_thread, NULL, ServerManager::_reload_worker, NULL); - - if (ret != 0) { - LOG(ERROR) << "Failed start reload thread, ret:" << ret; - return -1; - } - - return 0; -} - -int ServerManager::_wait_reloader() { - THREAD_JOIN(_reload_thread, NULL); - return 0; -} - -void* ServerManager::_reload_worker(void* args) { - LOG(INFO) << "Entrence reload worker, " - << "interval_s: " << FLAGS_reload_interval_s; - while (ServerManager::reload_starting()) { - LOG(INFO) << "Begin reload framework..."; - if (Resource::instance().reload() != 0) { - LOG(ERROR) << "Failed reload resource!"; - } - - if (WorkflowManager::instance().reload() != 0) { - LOG(ERROR) << "Failed reload workflows"; - } - - usleep(FLAGS_reload_interval_s * 1000000); - } - - LOG(INFO) << "Exit reload worker!"; - return NULL; -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/server.h b/predictor/framework/server.h deleted file mode 100644 index 8e011e6572ff291a0cd338a1b59a02a97e4c0339..0000000000000000000000000000000000000000 --- a/predictor/framework/server.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -#endif - -class ServerManager { - public: - typedef google::protobuf::Service Service; - ServerManager(); - - static ServerManager& instance() { - static ServerManager server; - return server; - } - - static bool reload_starting() { return _s_reload_starting; } - - static void stop_reloader() { _s_reload_starting = false; } - - int add_service_by_format(const std::string& format); - - int start_and_wait(); - - private: - int _start_reloader(); - - int _wait_reloader(); - - static void* _reload_worker(void* args); - - bool _compare_string_piece_without_case(const butil::StringPiece& s1, - const char* s2); - - void _set_server_option_by_protocol( - const ::butil::StringPiece& protocol_type); - - brpc::ServerOptions _options; - brpc::Server _server; - boost::unordered_map _format_services; - THREAD_T _reload_thread; - static volatile bool _s_reload_starting; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/service.cpp b/predictor/framework/service.cpp deleted file mode 100644 index 968baab61e3639ad602a61a253a1ddcf57d62d92..0000000000000000000000000000000000000000 --- a/predictor/framework/service.cpp +++ /dev/null @@ -1,279 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/service.h" -#ifdef BCLOUD -#include // butil::Timer -#else -#include // butil::Timer -#endif - -#include -#include -#include -#include "predictor/common/constant.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/dag_view.h" -#include "predictor/framework/manager.h" -#include "predictor/framework/predictor_metric.h" // PredictorMetric -#include "predictor/framework/resource.h" -#include "predictor/framework/server.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -int InferService::init(const configure::InferService& conf) { - _infer_service_format = conf.name(); - - std::string merger = conf.merger(); - if (merger == "") { - merger = "default"; - } - if (!MergerManager::instance().get(merger, _merger)) { - LOG(ERROR) << "Failed get merger: " << merger; - return ERR_INTERNAL_FAILURE; - } else { - LOG(WARNING) << "Succ get merger: " << merger - << " for service: " << _infer_service_format; - } - - ServerManager& svr_mgr = ServerManager::instance(); - if (svr_mgr.add_service_by_format(_infer_service_format) != 0) { - LOG(ERROR) << "Not found service by format name:" << _infer_service_format - << "!"; - return ERR_INTERNAL_FAILURE; - } - - _enable_map_request_to_workflow = conf.enable_map_request_to_workflow(); - LOG(INFO) << "service[" << _infer_service_format - << "], enable_map_request_to_workflow[" - << _enable_map_request_to_workflow << "]."; - - if (_enable_map_request_to_workflow) { - if (_request_to_workflow_map.init( - MAX_WORKFLOW_NUM_IN_ONE_SERVICE /*load_factor=80*/) != 0) { - LOG(ERROR) << "init request to workflow map failed, bucket_count[" - << MAX_WORKFLOW_NUM_IN_ONE_SERVICE << "]."; - return ERR_INTERNAL_FAILURE; - } - int err = 0; - _request_field_key = conf.request_field_key().c_str(); - if (_request_field_key == "") { - LOG(ERROR) << "read request_field_key failed, request_field_key[" - << _request_field_key << "]."; - return ERR_INTERNAL_FAILURE; - } - - LOG(INFO) << "service[" << _infer_service_format << "], request_field_key[" - << _request_field_key << "]."; - uint32_t value_mapped_workflows_size = conf.value_mapped_workflows_size(); - for (uint32_t fi = 0; fi < value_mapped_workflows_size; fi++) { - std::vector tokens; - std::vector workflows; - std::string list = conf.value_mapped_workflows(fi).workflow(); - boost::split(tokens, list, boost::is_any_of(",")); - uint32_t tsize = tokens.size(); - for (uint32_t ti = 0; ti < tsize; ++ti) { - boost::trim_if(tokens[ti], boost::is_any_of(" ")); - Workflow* workflow = WorkflowManager::instance().item(tokens[ti]); - if (workflow == NULL) { - LOG(ERROR) << "Failed get workflow by name:" << tokens[ti] - << ", ti: " << ti; - return ERR_INTERNAL_FAILURE; - } - workflow->regist_metric(full_name()); - workflows.push_back(workflow); - } - - const std::string& request_field_value = - conf.value_mapped_workflows(fi).request_field_value(); - if (_request_to_workflow_map.insert(request_field_value, workflows) == - NULL) { - LOG(ERROR) << "insert [" << request_field_value << "," << list - << "] to _request_to_workflow_map failed."; - return ERR_INTERNAL_FAILURE; - } - LOG(INFO) << "workflow[" << list << "], request_field_value[" - << request_field_value << "]."; - } - } else { - uint32_t flow_size = conf.workflows_size(); - for (uint32_t fi = 0; fi < flow_size; fi++) { - const std::string& workflow_name = conf.workflows(fi); - Workflow* workflow = WorkflowManager::instance().item(workflow_name); - if (workflow == NULL) { - LOG(ERROR) << "Failed get workflow by name:" << workflow_name; - return ERR_INTERNAL_FAILURE; - } - workflow->regist_metric(full_name()); - _flows.push_back(workflow); - } - } - - LOG(INFO) << "Succ load infer_service: " << _infer_service_format << "!"; - - return ERR_OK; -} - -int InferService::reload() { return ERR_OK; } - -const std::string& InferService::name() const { return _infer_service_format; } - -// ´®ÐÐÖ´ÐÐÿ¸öworkflow -int InferService::inference(const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os) { - TRACEPRINTF("start to inference"); - // when funtion call begins, framework will reset - // thread local variables&resources automatically. - if (Resource::instance().thread_clear() != 0) { - LOG(ERROR) << "Failed thread clear whole resource"; - return ERR_INTERNAL_FAILURE; - } - - TRACEPRINTF("finish to thread clear"); - - if (_enable_map_request_to_workflow) { - std::vector* workflows = _map_request_to_workflow(request); - if (!workflows || workflows->size() == 0) { - LOG(ERROR) << "Failed to map request to workflow"; - return ERR_INTERNAL_FAILURE; - } - size_t fsize = workflows->size(); - for (size_t fi = 0; fi < fsize; ++fi) { - Workflow* workflow = (*workflows)[fi]; - if (workflow == NULL) { - LOG(ERROR) << "Failed to get valid workflow at: " << fi; - return ERR_INTERNAL_FAILURE; - } - TRACEPRINTF("start to execute workflow[%s]", workflow->name().c_str()); - int errcode = _execute_workflow(workflow, request, response, debug_os); - TRACEPRINTF("finish to execute workflow[%s]", workflow->name().c_str()); - if (errcode < 0) { - LOG(ERROR) << "Failed execute workflow[" << workflow->name() - << "] in:" << name(); - return errcode; - } - } - } else { - TRACEPRINTF("start to execute one workflow"); - size_t fsize = _flows.size(); - for (size_t fi = 0; fi < fsize; ++fi) { - TRACEPRINTF("start to execute one workflow-%lu", fi); - int errcode = execute_one_workflow(fi, request, response, debug_os); - TRACEPRINTF("finish to execute one workflow-%lu", fi); - if (errcode < 0) { - LOG(ERROR) << "Failed execute 0-th workflow in:" << name(); - return errcode; - } - } - } - return ERR_OK; -} - -int InferService::debug(const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os) { - return inference(request, response, debug_os); -} - -int InferService::execute_one_workflow(uint32_t index, - const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os) { - if (index >= _flows.size()) { - LOG(ERROR) << "Faield execute workflow, index: " << index - << " >= max:" << _flows.size(); - return ERR_OVERFLOW_FAILURE; - } - Workflow* workflow = _flows[index]; - return _execute_workflow(workflow, request, response, debug_os); -} - -int InferService::_execute_workflow(Workflow* workflow, - const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os) { - butil::Timer workflow_time(butil::Timer::STARTED); - // create and submit beginer channel - BuiltinChannel req_channel; - req_channel.init(0, START_OP_NAME); - req_channel = request; - - DagView* dv = workflow->fetch_dag_view(full_name()); - dv->set_request_channel(req_channel); - - // call actual inference interface - int errcode = dv->execute(debug_os); - if (errcode < 0) { - LOG(ERROR) << "Failed execute dag for workflow:" << workflow->name(); - return errcode; - } - - TRACEPRINTF("finish to dv execute"); - // create ender channel and copy - const Channel* res_channel = dv->get_response_channel(); - if (!_merger || !_merger->merge(res_channel->message(), response)) { - LOG(ERROR) << "Failed merge channel res to response"; - return ERR_INTERNAL_FAILURE; - } - TRACEPRINTF("finish to copy from"); - - workflow_time.stop(); - PredictorMetric::GetInstance()->update_latency_metric( - WORKFLOW_METRIC_PREFIX + dv->full_name(), workflow_time.u_elapsed()); - - // return tls data to object pool - workflow->return_dag_view(dv); - TRACEPRINTF("finish to return dag view"); - return ERR_OK; -} - -std::vector* InferService::_map_request_to_workflow( - const google::protobuf::Message* request) { - const google::protobuf::Descriptor* desc = request->GetDescriptor(); - const google::protobuf::FieldDescriptor* field = - desc->FindFieldByName(_request_field_key); - if (field == NULL) { - LOG(ERROR) << "No field[" << _request_field_key << "] in [" - << desc->full_name() << "]."; - return NULL; - } - if (field->is_repeated()) { - LOG(ERROR) << "field[" << desc->full_name() << "." << _request_field_key - << "] is repeated."; - return NULL; - } - if (field->cpp_type() != google::protobuf::FieldDescriptor::CPPTYPE_STRING) { - LOG(ERROR) << "field[" << desc->full_name() << "." << _request_field_key - << "] should be string"; - return NULL; - } - const std::string& field_value = - request->GetReflection()->GetString(*request, field); - std::vector* p_workflow = - _request_to_workflow_map.seek(field_value); - if (p_workflow == NULL) { - LOG(ERROR) << "cannot find key[" << field_value - << "] in _request_to_workflow_map"; - return NULL; - } - return p_workflow; -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/service.h b/predictor/framework/service.h deleted file mode 100644 index f9896e2898bf3a3e749e78df3929d5e49b1c3f8a..0000000000000000000000000000000000000000 --- a/predictor/framework/service.h +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/merger.h" -#include "predictor/framework/workflow.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class InferService { - public: - typedef OpChannel BuiltinChannel; - - static const char* tag() { return "service"; } - - InferService() - : _last_change_timestamp(0), - _enable_map_request_to_workflow(false), - _request_field_key(""), - _merger(NULL) { - _flows.clear(); - _request_to_workflow_map.clear(); - } - - int init(const configure::InferService& conf); - - int deinit() { return 0; } - - int reload(); - - const std::string& name() const; - - const std::string& full_name() const { return _infer_service_format; } - - // Execute each workflow serially - virtual int inference(const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os = NULL); - - int debug(const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os); - - int execute_one_workflow(uint32_t index, - const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os); - - private: - int _execute_workflow(Workflow* workflow, - const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os); - - std::vector* _map_request_to_workflow( - const google::protobuf::Message* request); - - private: - std::vector _flows; - std::string _infer_service_format; - uint64_t _last_change_timestamp; - bool _enable_map_request_to_workflow; - std::string _request_field_key; - ::butil::FlatMap> - _request_to_workflow_map; - IMerger* _merger; -}; - -class ParallelInferService : public InferService { - public: - // Execute workflows in parallel - int inference(const google::protobuf::Message* request, - google::protobuf::Message* response, - butil::IOBufBuilder* debug_os) { - return 0; - } -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/service_manager.h b/predictor/framework/service_manager.h deleted file mode 100644 index 1b339c3742ef7302d5ce82704dd70d0ad6f84e7b..0000000000000000000000000000000000000000 --- a/predictor/framework/service_manager.h +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "predictor/common/inner_common.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -#define REGIST_FORMAT_SERVICE(svr_name, svr) \ - do { \ - int ret = \ - ::baidu::paddle_serving::predictor::FormatServiceManager::instance() \ - .regist_service(svr_name, svr); \ - if (ret != 0) { \ - RAW_LOG_ERROR("Failed regist service[%s][%s]", \ - svr_name.c_str(), \ - typeid(svr).name()); \ - } else { \ - RAW_LOG_INFO("Success regist service[%s][%s]", \ - svr_name.c_str(), \ - typeid(svr).name()); \ - } \ - } while (0) - -class FormatServiceManager { - public: - typedef google::protobuf::Service Service; - - int regist_service(const std::string& svr_name, Service* svr) { - if (_service_map.find(svr_name) != _service_map.end()) { - RAW_LOG_ERROR("Service[%s][%s] already exist!", - svr_name.c_str(), - typeid(svr).name()); - return -1; - } - - std::pair::iterator, bool> ret; - ret = _service_map.insert(std::make_pair(svr_name, svr)); - if (ret.second == false) { - RAW_LOG_ERROR("Service[%s][%s] insert failed!", - svr_name.c_str(), - typeid(svr).name()); - return -1; - } - - RAW_LOG_INFO("Service[%s] insert successfully!", svr_name.c_str()); - return 0; - } - - Service* get_service(const std::string& svr_name) { - boost::unordered_map::iterator res; - if ((res = _service_map.find(svr_name)) == _service_map.end()) { - RAW_LOG_WARNING("Service[%s] not found in service manager!", - svr_name.c_str()); - return NULL; - } - return (*res).second; - } - - static FormatServiceManager& instance() { - static FormatServiceManager service_; - return service_; - } - - private: - boost::unordered_map _service_map; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/workflow.cpp b/predictor/framework/workflow.cpp deleted file mode 100644 index 61f74c0270b1cd991bb799146f0cfa20738718ff..0000000000000000000000000000000000000000 --- a/predictor/framework/workflow.cpp +++ /dev/null @@ -1,79 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/framework/workflow.h" -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/predictor_metric.h" // PredictorMetric - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -int Workflow::init(const configure::Workflow& conf) { - const std::string& name = conf.name(); - _type = conf.workflow_type(); - _name = name; - if (_dag.init(conf, name) != 0) { - LOG(ERROR) << "Failed initialize dag: " << _name; - return -1; - } - return 0; -} - -DagView* Workflow::fetch_dag_view(const std::string& service_name) { - DagView* view = NULL; - if (_type == "Sequence") { - view = butil::get_object(); - } else if (_type == "Parallel") { - view = butil::get_object(); - } else { - LOG(ERROR) << "Unknown dag type:" << _type << "!"; - return NULL; - } - if (view == NULL) { - LOG(ERROR) << "create dag view from pool failed!"; - return NULL; - } - view->init(&_dag, service_name); - return view; -} - -void Workflow::return_dag_view(DagView* view) { - view->deinit(); - if (_type == "Sequence") { - butil::return_object(view); - } else if (_type == "Parallel") { - butil::return_object(dynamic_cast(view)); - } else { - LOG(ERROR) << "Unknown dag type:" << _type << "!"; - return; - } -} - -int Workflow::reload() { - // reload op's config here... - - return 0; -} - -void Workflow::regist_metric(const std::string& service_name) { - PredictorMetric::GetInstance()->regist_latency_metric( - WORKFLOW_METRIC_PREFIX + service_name + NAME_DELIMITER + full_name()); - _dag.regist_metric(service_name); -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/framework/workflow.h b/predictor/framework/workflow.h deleted file mode 100644 index 8e833602f61c3e700dc5bf8db4c95a17e64604d7..0000000000000000000000000000000000000000 --- a/predictor/framework/workflow.h +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/dag.h" -#include "predictor/framework/dag_view.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -template -class Manager; - -class Workflow { - public: - Workflow() {} - - static const char* tag() { return "workflow"; } - - // Each workflow object corresponds to an independent - // configure file, so you can share the object between - // different apps. - int init(const configure::Workflow& conf); - - DagView* fetch_dag_view(const std::string& service_name); - - int deinit() { return 0; } - - void return_dag_view(DagView* view); - - int reload(); - - const std::string& name() { return _name; } - - const std::string& full_name() { return _name; } - - void regist_metric(const std::string& service_name); - - private: - Dag _dag; - std::string _type; - std::string _name; -}; - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/mempool/mempool.cpp b/predictor/mempool/mempool.cpp deleted file mode 100644 index a6e1fcf5caf7183590e60f0a39f8831727e64569..0000000000000000000000000000000000000000 --- a/predictor/mempool/mempool.cpp +++ /dev/null @@ -1,90 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/mempool/mempool.h" - -namespace im { - -__thread Mempool* g_mempool = NULL; - -namespace fugue { - -namespace memory { - -void Region::init() { - _big_mem_capacity = 32 * 1024 * 1024; - _big_mem_start = new char[_big_mem_capacity]; -} - -void Region::reset() { - // release memory allocate from GlobalMempool - _free_blocks.unsafe_foreach(); - _free_blocks.reset(); - - // release memory from malloc - BigNode* head = _big_nodes.release(); - while (head) { - BigNode* next = head->next; - ::free(head); - head = next; - } - _mlc_mem_size.store(0, butil::memory_order_relaxed); - _mlc_mem_count.store(0, butil::memory_order_relaxed); - - // clear the large buffer - _big_mem_size.store(0, butil::memory_order_relaxed); - _big_mem_count.store(0, butil::memory_order_relaxed); -} - -BlockReference* Region::get() { - BlockReference* ref = _free_blocks.get(); - if (ref->block == NULL) { - ref->offset = 0; - ref->block = GlobalBlockFreeList::instance()->get(); - } - return ref; -} - -void Region::put(BlockReference* block) { _free_blocks.put(block); } - -void* Region::malloc(size_t size) { - if (size < MLC_MEM_THRESHOLD) { - uint32_t offset = - _big_mem_size.fetch_add(size, butil::memory_order_relaxed); - if (offset + size < _big_mem_capacity) { - _big_mem_count.fetch_add(1, butil::memory_order_relaxed); - return _big_mem_start + offset; - } - } - - _mlc_mem_size.fetch_add(size, butil::memory_order_relaxed); - _mlc_mem_count.fetch_add(1, butil::memory_order_relaxed); - BigNode* node = reinterpret_cast(::malloc(sizeof(BigNode) + size)); - _big_nodes.push(node); - return node->data; -} - -Region::Region() { - _big_mem_size.store(0, butil::memory_order_relaxed); - _big_mem_count.store(0, butil::memory_order_relaxed); - - _big_mem_start = NULL; - _big_mem_capacity = 0; - - _mlc_mem_size.store(0, butil::memory_order_relaxed); - _mlc_mem_count.store(0, butil::memory_order_relaxed); -} -} // namespace memory -} // namespace fugue -} // namespace im diff --git a/predictor/op/op.cpp b/predictor/op/op.cpp deleted file mode 100644 index ed8c35ec0489e1c8bf9b0057257baa8892055679..0000000000000000000000000000000000000000 --- a/predictor/op/op.cpp +++ /dev/null @@ -1,307 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/op/op.h" - -#ifdef BCLOUD -#include // base::Timer -#else -#include -#endif - -#include -#include "predictor/common/constant.h" -#include "predictor/common/utils.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/dag.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -int Op::init(Bus* bus, - Dag* dag, - uint32_t id, - const std::string& name, - const std::string& type, - void* conf) { - _bus = bus; - _dag = dag; - _id = id; - _name = name; - _type = type; - set_config(conf); - - _timer = butil::get_object(); - if (!_timer) { - LOG(ERROR) << "Invalid timerflow in op:" << this->name(); - return -1; - } - - _timer->init(); - _has_calc = false; - _has_init = true; - - Channel* channel = mutable_channel(); - if (channel == NULL) { - LOG(ERROR) << "Failed mutable channel in op: " << this->id() << ", " - << this->name() << "!"; - return -1; - } - - return custom_init(); -} - -int Op::deinit() { - if (_timer) { - butil::return_object(_timer); - } - - _bus = NULL; - _dag = NULL; - _timer = NULL; - - if (release_channel() != 0) { - LOG(ERROR) << "Failed release channel in op:" << this->id() << ", " - << this->name() << "!"; - return -1; - } - - return custom_deinit(); -} - -int Op::check_time(const char* tag) { - if (!_timer) { - LOG(ERROR) << "Invalid timer in op"; - return -1; - } - - if (!_timer->check(tag)) { - LOG(ERROR) << "Failed check timer:" << tag; - return -1; - } - - return 0; -} - -int Op::process(bool debug) { - butil::Timer op_time(butil::Timer::STARTED); - if (debug && _timer) { - _timer->start(); - } - if (!_has_init) { - LOG(ERROR) << "Make sure op has been init before inference"; - return ERR_INTERNAL_FAILURE; - } - - if (_has_calc) { - LOG(INFO) << "Op: " << _name << " already processed before"; - return ERR_OK; - } - - // 1. dependency inference - /* - DagNode* node = _dag->node_by_name(this->name()); - if (node == NULL) { - LOG(ERROR) << "Failed get node of op:" << this->name(); - return -1; - } - boost::unordered_map& depends = - node->depends; - boost::unordered_map::iterator it; - for (it = depends.begin(); it != depends.end(); it++) { - Op* depend_op = view->find(it->first); - if (depend_op->process() != 0) { - LOG(WARNING) << "Op: " << _name << " processed failed!"; - return -1; - } - }*/ - if (debug && _timer) { - _timer->check("depend"); - } - - // 2. current inference - if (inference() != 0) { - return ERR_OP_INFER_FAILURE; - } - if (debug && _timer) { - _timer->check("infer"); - } - - // 3. share output to bus - Channel* channel = mutable_channel(); - channel->share_to_bus(_bus); - - // 4. mark has calculated - _has_calc = true; - - if (debug && _timer) { - _timer->check("share"); - _timer->end(); - } - - op_time.stop(); - PredictorMetric::GetInstance()->update_latency_metric( - OP_METRIC_PREFIX + full_name(), op_time.u_elapsed()); - LOG(INFO) << " " << name() << "_time=[" << op_time.u_elapsed() << "]"; - return ERR_OK; -} - -std::string Op::time_info() { - if (_timer) { - return _timer->info(); - } else { - return "Invalid Timer!"; - } -} - -bool Op::is_mutable(const std::string& op) { - if (op == START_OP_NAME) { - return false; - } - DagNode* node = const_cast(_dag->node_by_name(_name)); - if (node->depends.find(op) == node->depends.end()) { - LOG(WARNING) << "op: " << _name << " doesnot depend on" - << "op: " << op << "!"; - return false; - } - - if (node->depends[op] != RW) { - LOG(WARNING) << "op: " << _name << " has no RW access" - << "ot op: " << op << ", mode: " << node->depends[op] - << ", please use get_argment() instead."; - return false; - } - - return true; -} - -bool Op::is_mutable(const std::string& op) const { - if (op == START_OP_NAME) { - return false; - } - DagNode* node = const_cast(_dag->node_by_name(_name)); - if (node->depends.find(op) == node->depends.end()) { - LOG(WARNING) << "op: " << _name << " doesnot depend on" - << "op: " << op << "!"; - return false; - } - - if (node->depends[op] != RW) { - LOG(WARNING) << "op: " << _name << " has no RW access" - << "ot op: " << op << ", mode: " << node->depends[op] - << ", please use get_argment() instead."; - return false; - } - - return true; -} - -bool Op::is_readable(const std::string& op) { - if (op == START_OP_NAME) { - return true; - } - DagNode* node = const_cast(_dag->node_by_name(_name)); - if (node->depends.find(op) == node->depends.end()) { - LOG(WARNING) << "op: " << _name << " doesnot depend on" - << "op: " << op << "!"; - return false; - } - - if (node->depends[op] != RW && node->depends[op] != RO) { - LOG(WARNING) << "op: " << _name << " has no RO access" - << "ot op: " << op << ", mode: " << node->depends[op] - << ", please check your configuration."; - return false; - } - - return true; -} - -bool Op::is_readable(const std::string& op) const { - if (op == START_OP_NAME) { - return true; - } - DagNode* node = const_cast(_dag->node_by_name(_name)); - if (node->depends.find(op) == node->depends.end()) { - LOG(WARNING) << "op: " << _name << " doesnot depend on " - << "op: " << op << "!"; - return false; - } - - if (node->depends[op] != RW && node->depends[op] != RO) { - LOG(WARNING) << "op: " << _name << " has no RO access" - << "ot op: " << op << ", mode: " << node->depends[op] - << ", please check your configuration."; - return false; - } - - return true; -} - -// Get the Channel object of dependent OP -Channel* Op::mutable_depend_channel(const std::string& op) { - if (!is_mutable(op)) { - LOG(WARNING) << "Op: " << _name << " cannot mutable op: " << op << "!"; - return NULL; - } - - // Get the Channel object of dependent OP from bus - return _bus->channel_by_name(op); -} - -// Get the Channel object of dependent OP -const Channel* Op::get_depend_channel(const std::string& op) const { - // Get the `mode` attribute of dependent OP from dag - if (!is_readable(op)) { - LOG(WARNING) << "op: " << _name << " doesnot depend on op: " << op << "!"; - return NULL; - } - - // Get the Channel object of dependent OP from bus - return _bus->channel_by_name(op); -} - -google::protobuf::Message* Op::mutable_message() { - return mutable_channel()->message(); -} - -const google::protobuf::Message* Op::get_message() const { - return get_channel()->message(); -} - -bool Op::has_calc() { return _has_calc; } - -const char* Op::name() const { return _name.c_str(); } - -const std::string& Op::type() const { return _type; } - -uint32_t Op::id() const { return _id; } - -const std::string Op::debug_string() { - const Channel* channel = get_channel(); - if (!channel) { - LOG(ERROR) << "Invalid channel!"; - return "Invalid channel in OP"; - } - return channel->debug_string(); -} - -const google::protobuf::Message* Op::get_request_message() { - return _bus->channel_by_name(START_OP_NAME)->message(); -} - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/op/op.h b/predictor/op/op.h deleted file mode 100644 index ce7352d9b877533f5b9afb97b1f518b70e1e2c0c..0000000000000000000000000000000000000000 --- a/predictor/op/op.h +++ /dev/null @@ -1,260 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include // bvar::LatencyRecorder -#include -#include "predictor/common/inner_common.h" -#include "predictor/framework/channel.h" -#include "predictor/framework/op_repository.h" -#include "predictor/framework/predictor_metric.h" // PredictorMetric - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -class Dag; - -class Op { - public: - Op() - : _bus(NULL), - _dag(NULL), - _has_calc(false), - _has_init(false), - _timer(NULL) {} - - virtual ~Op() {} - - // ------Getters for Channel/Data/Message of dependent OP----- - - // Get the Channel object of dependent OP - Channel* mutable_depend_channel(const std::string& op); - - // Get the Channel object of dependent OP - const Channel* get_depend_channel(const std::string& op) const; - - template - T* mutable_depend_argument(const std::string& op) { - Channel* channel = mutable_depend_channel(op); - if (channel == NULL) { - LOG(WARNING) << "cannot mutable channel of " << op << " in " << _name; - return NULL; - } - - OpChannel* op_channel = dynamic_cast*>(channel); - if (!op_channel) { - LOG(ERROR) << "Cannot dynamic cast channel of op:" << this->name() - << " to type: " << typeid(T).name(); - return NULL; - } - - return op_channel->data(); - } - - template - const T* get_depend_argument(const std::string& op) const { - const Channel* channel = get_depend_channel(op); - if (channel == NULL) { - LOG(WARNING) << "cannot get read-only channel of " << op << " in " - << _name; - return NULL; - } - - const OpChannel* op_channel = dynamic_cast*>(channel); - if (!op_channel) { - LOG(ERROR) << "Cannot dynamic cast channel of op:" << this->name() - << " to type: " << typeid(T).name(); - return NULL; - } - - return op_channel->data(); - } - - // -----Getters for Channel/Data/Message of current OP---- - - // Get pointer to the progobuf message of current OP - google::protobuf::Message* mutable_message(); - - // Get pointer to the protobuf message of current OP - const google::protobuf::Message* get_message() const; - - // Get the template class data object of current OP - template - T* mutable_data() { - Channel* channel = mutable_channel(); - return (dynamic_cast*>(channel))->data(); - } - - // Get the template class data object of current OP - template - const T* get_data() const { - const Channel* channel = get_channel(); - return (dynamic_cast*>(channel))->data(); - } - - // ---------------- Other base class members ---------------- - - int init(Bus* bus, - Dag* dag, - uint32_t id, - const std::string& name, - const std::string& type, - void* conf); - - int deinit(); - - int check_time(const char* tag); - - int process(bool debug); - - std::string time_info(); - - // Get the input object - const google::protobuf::Message* get_request_message(); - - bool has_calc(); - - const char* name() const; - - const std::string& full_name() const { return _full_name; } - - void set_full_name(const std::string full_name) { _full_name = full_name; } - - const std::string& type() const; - - uint32_t id() const; - - // --------------- Default implements ---------------- - - virtual int custom_init() { return 0; } - - virtual int custom_deinit() { return 0; } - - virtual const std::string debug_string(); - - // ------------------ OP Interface ------------------- - - // Get the derived Channel object of current OP - virtual Channel* mutable_channel() = 0; - - // Get the derived Channel object of current OP - virtual const Channel* get_channel() const = 0; - - // Release the derived Channel object of current OP - virtual int release_channel() = 0; - - // Inference interface - virtual int inference() = 0; - - // ------------------ Conf Interface ------------------- - virtual void* create_config(const configure::DAGNode& conf) { return NULL; } - - virtual void delete_config(void* conf) {} - - virtual void set_config(void* conf) { return; } - - // ------------------ Metric Interface ------------------- - virtual void regist_metric() { return; } - - private: - bool is_mutable(const std::string& op); - - bool is_mutable(const std::string& op) const; - - bool is_readable(const std::string& op); - - bool is_readable(const std::string& op) const; - - private: - Bus* _bus; - Dag* _dag; - uint32_t _id; - std::string _name; - std::string _full_name; // service_workflow_stageindex_opname - std::string _type; - bool _has_calc; - bool _has_init; - TimerFlow* _timer; -}; - -template -class OpWithChannel : public Op { - public: - typedef T DataType; - typedef OpChannel ChannelType; - - OpWithChannel() : _channel(NULL) {} - - virtual ~OpWithChannel() {} - - // ---------- Implements ---------- - - Channel* mutable_channel() { - if (_channel != NULL) { - return _channel; - } - - _channel = butil::get_object(); - if (!_channel) { - LOG(ERROR) << "Failed mutable channel of type:" << typeid(T).name(); - return NULL; - } - _channel->init(this->id(), this->name()); - return _channel; - } - - const Channel* get_channel() const { return _channel; } - - int release_channel() { - if (_channel) { - _channel->deinit(); - butil::return_object(_channel); - } - - _channel = NULL; - return 0; - } - - // ------------- Interface ------------- - - // Inference interface - virtual int inference() = 0; - - private: - ChannelType* _channel; -}; - -template -class OpWithChannelAndConf : public OpWithChannel { - public: - void set_config(void* conf) { _conf = static_cast(conf); } - - C* get_self_config() { return _conf; } - - virtual void delete_config(void* conf) { delete static_cast(conf); } - - private: - C* _conf; -}; - -#define DECLARE_OP(OP_TYPE) \ - OP_TYPE() { REGISTER_OP(OP_TYPE); } \ - static OP_TYPE _s_##OP_TYPE - -#define DEFINE_OP(OP_TYPE) OP_TYPE OP_TYPE::_s_##OP_TYPE - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/op/op_struct_demo.h b/predictor/op/op_struct_demo.h deleted file mode 100644 index 7733803ec8162e55a004249098b29bdb62275ad3..0000000000000000000000000000000000000000 --- a/predictor/op/op_struct_demo.h +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "common/inner_common.h" -#include "framework/channel.h" -#include "op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace predictor { - -struct DemoData { - boost::unordered_map name_id; - int data; -}; - -class StructOp : public OpWithChannel { - public: - DECLARE_OP(StructOp); - - int inference() { - DemoData* data = mutable_data(); - data.data = 1; - - return 0; - } -}; - -DEFINE_OP(StructOp); - -} // namespace predictor -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/src/pdserving.cpp b/predictor/src/pdserving.cpp deleted file mode 100644 index 6131e52803befbc85b0ce89bb3da318e5edf5e75..0000000000000000000000000000000000000000 --- a/predictor/src/pdserving.cpp +++ /dev/null @@ -1,247 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include - -#ifdef BCLOUD -#include // bthread_set_worker_startfn -#else -#include // bthread_set_worker_startfn -#endif - -#include -#include - -#include "predictor/common/constant.h" -#include "predictor/common/inner_common.h" -#include "predictor/framework/manager.h" -#include "predictor/framework/resource.h" -#include "predictor/framework/server.h" -#include "predictor/framework/service.h" -#include "predictor/framework/workflow.h" - -using baidu::paddle_serving::predictor::ServerManager; -using baidu::paddle_serving::predictor::WorkflowManager; -using baidu::paddle_serving::predictor::InferServiceManager; -using baidu::paddle_serving::predictor::Resource; -using baidu::paddle_serving::predictor::FLAGS_workflow_path; -using baidu::paddle_serving::predictor::FLAGS_workflow_file; -using baidu::paddle_serving::predictor::FLAGS_inferservice_path; -using baidu::paddle_serving::predictor::FLAGS_inferservice_file; -using baidu::paddle_serving::predictor::FLAGS_logger_path; -using baidu::paddle_serving::predictor::FLAGS_logger_file; -using baidu::paddle_serving::predictor::FLAGS_resource_path; -using baidu::paddle_serving::predictor::FLAGS_resource_file; -using baidu::paddle_serving::predictor::FLAGS_reload_interval_s; -using baidu::paddle_serving::predictor::FLAGS_port; - -using baidu::paddle_serving::configure::InferServiceConf; -using baidu::paddle_serving::configure::read_proto_conf; - -void print_revision(std::ostream& os, void*) { -#if defined(PDSERVING_VERSION) - os << PDSERVING_VERSION; -#else - os << "undefined"; -#endif -#if defined(PDSERVING_BUILDTIME) - os << ", BuildAt: " << PDSERVING_BUILDTIME; -#endif -} - -static bvar::PassiveStatus s_predictor_revision( - "predictor_revision", print_revision, NULL); - -DEFINE_bool(V, false, "print version, bool"); -DEFINE_bool(g, false, "user defined gflag path"); -DECLARE_string(flagfile); - -namespace bthread { -extern pthread_mutex_t g_task_control_mutex; -} -pthread_mutex_t g_worker_start_fn_mutex = PTHREAD_MUTEX_INITIALIZER; - -void pthread_worker_start_fn() { - while (pthread_mutex_lock(&g_worker_start_fn_mutex) != 0) { - } - - // Try to avoid deadlock in bthread - int lock_status = pthread_mutex_trylock(&bthread::g_task_control_mutex); - if (lock_status == EBUSY || lock_status == EAGAIN) { - pthread_mutex_unlock(&bthread::g_task_control_mutex); - } - Resource::instance().thread_initialize(); - - // Try to avoid deadlock in bthread - if (lock_status == EBUSY || lock_status == EAGAIN) { - while (pthread_mutex_lock(&bthread::g_task_control_mutex) != 0) { - } - } - - pthread_mutex_unlock(&g_worker_start_fn_mutex); -} - -static void g_change_server_port() { - InferServiceConf conf; - if (read_proto_conf(FLAGS_inferservice_path.c_str(), - FLAGS_inferservice_file.c_str(), - &conf) != 0) { - LOG(WARNING) << "failed to load configure[" << FLAGS_inferservice_path - << "," << FLAGS_inferservice_file << "]."; - return; - } - uint32_t port = conf.port(); - if (port != 0) { - FLAGS_port = port; - LOG(INFO) << "use configure[" << FLAGS_inferservice_path << "/" - << FLAGS_inferservice_file << "] port[" << port - << "] instead of flags"; - } - return; -} - -#ifdef UNIT_TEST -int ut_main(int argc, char** argv) { -#else -int main(int argc, char** argv) { -#endif - google::ParseCommandLineFlags(&argc, &argv, true); - - if (FLAGS_V) { - print_revision(std::cout, NULL); - std::cout << std::flush; - return 0; - } - - if (!FLAGS_g) { - google::SetCommandLineOption("flagfile", "conf/gflags.conf"); - } - - google::ParseCommandLineFlags(&argc, &argv, true); - - g_change_server_port(); - -// initialize logger instance -#ifdef BCLOUD - logging::LoggingSettings settings; - settings.logging_dest = logging::LOG_TO_FILE; - - std::string filename(argv[0]); - filename = filename.substr(filename.find_last_of('/') + 1); - settings.log_file = - strdup((std::string("./log/") + filename + ".log").c_str()); - settings.delete_old = logging::DELETE_OLD_LOG_FILE; - logging::InitLogging(settings); - - logging::ComlogSinkOptions cso; - cso.process_name = filename; - cso.enable_wf_device = true; - logging::ComlogSink::GetInstance()->Setup(&cso); -#else - if (FLAGS_log_dir == "") { - FLAGS_log_dir = "./log"; - } - - struct stat st_buf; - int ret = 0; - if ((ret = stat(FLAGS_log_dir.c_str(), &st_buf)) != 0) { - mkdir(FLAGS_log_dir.c_str(), 0777); - ret = stat(FLAGS_log_dir.c_str(), &st_buf); - if (ret != 0) { - LOG(WARNING) << "Log path " << FLAGS_log_dir - << " not exist, and create fail"; - return -1; - } - } - google::InitGoogleLogging(strdup(argv[0])); - FLAGS_logbufsecs = 0; - FLAGS_logbuflevel = -1; -#endif - LOG(INFO) << "Succ initialize logger"; - - // initialize resource manager - if (Resource::instance().initialize(FLAGS_resource_path, - FLAGS_resource_file) != 0) { - LOG(ERROR) << "Failed initialize resource, conf:" << FLAGS_resource_path - << "/" << FLAGS_resource_file; - return -1; - } - LOG(INFO) << "Succ initialize resource"; - - // initialize workflow manager - if (WorkflowManager::instance().initialize(FLAGS_workflow_path, - FLAGS_workflow_file) != 0) { - LOG(ERROR) << "Failed initialize workflow manager, conf:" - << FLAGS_workflow_path << "/" << FLAGS_workflow_file; - return -1; - } - LOG(INFO) << "Succ initialize workflow"; - - // initialize service manager - if (InferServiceManager::instance().initialize( - FLAGS_inferservice_path, FLAGS_inferservice_file) != 0) { - LOG(ERROR) << "Failed initialize infer service manager, conf:" - << FLAGS_inferservice_path << "/" << FLAGS_inferservice_file; - return -1; - } - LOG(INFO) << "Succ initialize inferservice"; - - int errcode = bthread_set_worker_startfn(pthread_worker_start_fn); - if (errcode != 0) { - LOG(ERROR) << "Failed call pthread worker start function, error_code[" - << errcode << "]"; - return -1; - } - LOG(INFO) << "Succ call pthread worker start function"; - - if (Resource::instance().cube_initialize(FLAGS_resource_path, - FLAGS_resource_file) != 0) { - LOG(ERROR) << "Failed initialize cube, conf: " << FLAGS_resource_path << "/" - << FLAGS_resource_file; - return -1; - } - LOG(INFO) << "Succ initialize cube"; - -#ifndef BCLOUD - // FATAL messages are output to stderr - FLAGS_stderrthreshold = 3; -#endif - - if (ServerManager::instance().start_and_wait() != 0) { - LOG(ERROR) << "Failed start server and wait!"; - return -1; - } - LOG(INFO) << "Succ start service manager"; - - if (InferServiceManager::instance().finalize() != 0) { - LOG(ERROR) << "Failed finalize infer service manager."; - } - - if (WorkflowManager::instance().finalize() != 0) { - LOG(ERROR) << "Failed finalize workflow manager"; - } - - if (Resource::instance().finalize() != 0) { - LOG(ERROR) << "Failed finalize resource manager"; - } - -#ifdef BCLOUD -#else - google::ShutdownGoogleLogging(); -#endif - LOG(INFO) << "Paddle Inference Server exit successfully!"; - return 0; -} diff --git a/predictor/unittest/test_bsf.cpp b/predictor/unittest/test_bsf.cpp deleted file mode 100644 index 6de12b4640f45d5228831079544b1866d94aa2b3..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_bsf.cpp +++ /dev/null @@ -1,102 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/unittest/test_bsf.h" -#include - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -butil::atomic global_id; - -void TestItem::auto_gen() { - id = global_id.fetch_add(1); - char buf[128]; - snprintf(buf, sizeof(buf), "test-%d", id); - text = buf; - printf("id:%d,text:%s\n", id, text.c_str()); -} - -void work(const std::vector& in, - std::vector& out) { // NOLINT - for (size_t i = 0; i < in.size(); ++i) { - out[i] = in[i]; - usleep(50); - } -} - -TEST_F(TestBsf, test_single_thread) { - // initialize TaskExecutor - global_id.store(0, butil::memory_order_relaxed); - im::bsf::TaskExecutor>::instance() - ->set_thread_callback_fn(boost::bind(&work, _1, _2)); - EXPECT_EQ( - (im::bsf::TaskExecutor>::instance() - ->start(1)), - 0); - - std::vector in; - std::vector out; - - TestItem::create(in, out, 5); - - im::bsf::TaskManager task_manager; - task_manager.schedule(in, out); - printf("wait for bsf finish...\n"); - task_manager.wait(); - printf("bsf executed finished\n"); - ASSERT_EQ(out.size(), 5); - for (size_t i = 0; i < out.size(); i++) { - char temp[128]; - snprintf(temp, sizeof(temp), "test-%d", i); - EXPECT_EQ(i, in[i].id); - EXPECT_EQ(i, out[i].id); - EXPECT_STREQ(temp, in[i].text.c_str()); - EXPECT_STREQ(temp, out[i].text.c_str()); - } - - im::bsf::TaskExecutor>::instance()->stop(); -} - -TEST_F(TestBsf, test_multi_thread) { - // initialize TaskExecutor - global_id.store(0, butil::memory_order_relaxed); - im::bsf::TaskExecutor>::instance() - ->set_thread_callback_fn(boost::bind(&work, _1, _2)); - im::bsf::TaskExecutor>::instance() - ->set_batch_size(100); - EXPECT_EQ( - (im::bsf::TaskExecutor>::instance() - ->start(3)), - 0); - - const size_t psize = 5; - std::unique_ptr pid; - pid.reset(new pthread_t[psize]); - for (size_t i = 0; i < psize; ++i) { - pthread_create(&pid[i], NULL, &TestBsf::task_trigger, NULL); - } - - for (size_t i = 0; i < psize; ++i) { - pthread_join(pid[i], NULL); - } - - im::bsf::TaskExecutor>::instance()->stop(); -} -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/predictor/unittest/test_bsf.h b/predictor/unittest/test_bsf.h deleted file mode 100644 index 0101d65f7a2483fabe68cd2db6748ba6336442e0..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_bsf.h +++ /dev/null @@ -1,92 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "common/inner_common.h" -#include "framework/bsf.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -#ifndef DEFINE_UP_DOWN -#define DEFINE_UP_DOWN \ - void SetUp() {} \ - void TearDown() {} - -struct TestItem { - void auto_gen(); - - bool operator==(const TestItem& other) { - return text == other.text && id == other.id; - } - - static void create(std::vector& in, // NOLINT - std::vector& out, // NOLINT - size_t size) { - in.clear(); - out.clear(); - for (size_t i = 0; i < size; i++) { - TestItem item; - item.auto_gen(); - in.push_back(item); - item.id += 1000000; - out.push_back(item); - } - } - - std::string text; - size_t id; -}; - -class TestBsf : public ::testing::Test { - public: - TestBsf() {} - virtual ~TestBsf() {} - - static void* task_trigger(void* arg) { - for (size_t i = 0; i < 100; i++) { - std::vector in; - std::vector out; - - size_t count = rand_r() % 10 + 1; - TestItem::create(in, out, count); - - im::bsf::TaskManager task_manager; - task_manager.schedule(in, out); - printf("wait for bsf finish..., count:%d, first:%d\n", count, in[0].id); - task_manager.wait(); - printf("bsf executed finished, count:%d, first:%d\n", count, in[0].id); - EXPECT_EQ(out.size(), count); - for (size_t i = 0; i < out.size(); i++) { - EXPECT_EQ(in[i].id, out[i].id); - char temp[128]; - snprintf(temp, sizeof(temp), "test-%d", in[i].id); - EXPECT_STREQ(temp, in[i].text.c_str()); - EXPECT_STREQ(temp, out[i].text.c_str()); - } - } - } - - DEFINE_UP_DOWN -}; - -#undef DEFINE_UP_DOWN -#endif -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_main.cpp b/predictor/unittest/test_main.cpp deleted file mode 100644 index 053cdfa942a6e21e952bb310ab755305306aed74..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_main.cpp +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include "common/inner_common.h" - -int main(int argc, char** argv) { - LOG(INFO) << "Start running all ut cases..."; - testing::InitGoogleTest(&argc, argv); - return RUN_ALL_TESTS(); -} diff --git a/predictor/unittest/test_manager.cpp b/predictor/unittest/test_manager.cpp deleted file mode 100644 index 17587114c166fb3f4fe631a7f4ae452e461e5114..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_manager.cpp +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/unittest/test_manager.h" -#include "framework/manager.h" -#include "framework/service.h" -#include "predictor/unittest/test_tool.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -using baidu::paddle_serving::predictor::Manager; -using baidu::paddle_serving::predictor::InferService; -using baidu::paddle_serving::predictor::ParallelInferService; -using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; -using baidu::paddle_serving::predictor::InferServiceManager; - -struct ManagerItem { - int a; - float b; - - int init(const comcfg::ConfigUnit& c) { return 0; } - - static const char* tag() { return "Item"; } -}; - -TEST_F(TestManager, test_manager_instance) { - ManagerItem* item = Manager::instance().create_item(); - EXPECT_FALSE(item == NULL); - item->a = 1; - item->b = 2.0; -} - -TEST_F(TestManager, test_infer_service_create) { - InferService seq; - ParallelInferService par; - - FLAGS_use_parallel_infer_service = false; - EXPECT_EQ(typeid(seq), - typeid(*InferServiceManager::instance().create_item())); - - FLAGS_use_parallel_infer_service = true; - EXPECT_EQ(typeid(par), - typeid(*InferServiceManager::instance().create_item())); -} - -TEST_F(TestManager, test_conf_success) { - const char* conf_content = - "[@Item]\n" - "name: item1\n" - "a:b\n" - "[@Item]\n" - "name: item2\n" - "c:d"; - - AutoTempFile file(conf_content); - - typedef Manager mgr; - EXPECT_EQ(mgr::instance().initialize("./", file.name()), 0); - - ManagerItem* item11 = mgr::instance().item("item1"); - ManagerItem* item12 = &mgr::instance()["item1"]; - EXPECT_EQ(item11, item12); - - ManagerItem* item21 = mgr::instance().item("item2"); - ManagerItem* item22 = &mgr::instance()["item2"]; - EXPECT_EQ(item21, item22); -} - -TEST_F(TestManager, test_conf_success_item_not_found) { - const char* conf_content = - "[@Item1]\n" - "name: item1\n" - "a:b\n" - "[@Item2]\n" - "name: item2\n" - "c:d"; - - AutoTempFile file(conf_content); - - typedef Manager mgr; - EXPECT_EQ(mgr::instance().initialize("./", file.name()), 0); -} - -TEST_F(TestManager, test_conf_failed_name_not_found) { - const char* conf_content = - "[@Item]\n" - "name2: item1\n" - "a:b\n" - "[@Item]\n" - "name: item2\n" - "c:d"; - - AutoTempFile file(conf_content); - - typedef Manager mgr; - EXPECT_EQ(mgr::instance().initialize("./", file.name()), -1); -} -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_message_op.cpp b/predictor/unittest/test_message_op.cpp deleted file mode 100644 index e50ede2922d41a107947812937401e702dc328e5..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_message_op.cpp +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/unittest/test_message_op.h" -#include -#include "framework/dag.h" -#include "framework/manager.h" -#include "framework/service.h" -#include "predictor/unittest/test_tool.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -using baidu::paddle_serving::predictor::Manager; -using baidu::paddle_serving::predictor::InferService; -using baidu::paddle_serving::predictor::ParallelInferService; -using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; -using baidu::paddle_serving::predictor::InferServiceManager; -using baidu::paddle_serving::predictor::Bus; -using baidu::paddle_serving::predictor::Dag; -using baidu::paddle_serving::predictor::Channel; -using pds::ut::OpMessageData; - -TEST_F(TestMSGOP, test_init) { - Bus* bus = new Bus(); - ASSERT_NE(bus, NULL); - Dag* dag = NULL; - - MsgOP op; - std::string op_name = "TestMSGOp"; - std::string op_type = "TestMSGOp"; - EXPECT_EQ(0, op.init(bus, dag, (uint32_t)9999, op_name, op_type, NULL)); - EXPECT_FALSE(op.has_calc()); - EXPECT_EQ(9999, op.id()); - EXPECT_STREQ("TestMSGOp", op.name()); - EXPECT_STREQ("", op.debug_string().c_str()); - EXPECT_NE(op._timer, NULL); - EXPECT_EQ(bus, op._bus); - - OpMessageData* ab = op.mutable_data(); - EXPECT_EQ(33, ab->a()); - EXPECT_FLOAT_EQ(4.4, ab->b()); - - Channel* chn = op.mutable_channel(); - EXPECT_EQ(chn->id(), 9999); - EXPECT_STREQ(chn->op().c_str(), "TestMSGOp"); - - EXPECT_EQ(ab, chn->param()); - - EXPECT_EQ(0, bus->size()); - Channel* chn2 = bus->channel_by_name("TestOp"); - EXPECT_EQ(NULL, chn2); - - // Message OP can obtain data via message() - EXPECT_EQ(ab, chn->message()); -} -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_message_op.h b/predictor/unittest/test_message_op.h deleted file mode 100644 index 398ba3f396f6d4425cf911f05daf82fe712ed9fe..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_message_op.h +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "framework/channel.h" -#include "op/op.h" -#include "predictor/msg_data.pb.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -class MsgOP : public baidu::paddle_serving::predictor::OpWithChannel< - pds::ut::OpMessageData> { - public: - int inference() { - pds::ut::OpMessageData* msg = mutable_data(); - msg->set_a(11); - msg->set_b(22.2); - return 0; - } -}; - -#ifndef DEFINE_UP_DOWN -#define DEFINE_UP_DOWN \ - void SetUp() {} \ - void TearDown() {} - -class TestMSGOP : public ::testing::Test { - public: - TestMSGOP() {} - virtual ~TestMSGOP() {} - - DEFINE_UP_DOWN -}; - -#undef DEFINE_UP_DOWN -#endif -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_op.cpp b/predictor/unittest/test_op.cpp deleted file mode 100644 index 5d9f5abeec51f96340ea22559ff7e263db7e6412..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_op.cpp +++ /dev/null @@ -1,297 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include -#include -#include -#include "framework/dag.h" -#include "framework/dag_view.h" -#include "framework/manager.h" -#include "framework/service.h" - -#include "predictor/unittest/test_message_op.h" -#include "predictor/unittest/test_op.h" -#include "predictor/unittest/test_tool.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -using baidu::paddle_serving::predictor::Manager; -using baidu::paddle_serving::predictor::InferService; -using baidu::paddle_serving::predictor::ParallelInferService; -using baidu::paddle_serving::predictor::FLAGS_use_parallel_infer_service; -using baidu::paddle_serving::predictor::InferServiceManager; -using baidu::paddle_serving::predictor::Bus; -using baidu::paddle_serving::predictor::Dag; -using baidu::paddle_serving::predictor::Channel; -using baidu::paddle_serving::predictor::Dag; -using baidu::paddle_serving::predictor::DagView; -using baidu::paddle_serving::predictor::ViewStage; -using baidu::paddle_serving::predictor::ViewNode; -using pds::ut::OpMessageData; - -TEST_F(TestOP, test_init) { - Bus* bus = new Bus(); - ASSERT_NE(bus, NULL); - Dag* dag = NULL; - - ABOP op; - std::string op_name = "TestOp"; - std::string op_type = "TestOp"; - EXPECT_EQ(0, op.init(bus, dag, (uint32_t)999, op_name, op_type, NULL)); - EXPECT_FALSE(op.has_calc()); - EXPECT_EQ(999, op.id()); - EXPECT_STREQ("TestOp", op.name()); - EXPECT_STREQ("{\"a\": 3, \"b\": 4}", op.debug_string().c_str()); - EXPECT_NE(op._timer, NULL); - EXPECT_EQ(bus, op._bus); - - AB* ab = op.mutable_data(); - EXPECT_EQ(3, ab->a); - EXPECT_FLOAT_EQ(4.0, ab->b); - - Channel* chn = op.mutable_channel(); - EXPECT_EQ(chn->id(), 999); - EXPECT_STREQ(chn->op().c_str(), "TestOp"); - - EXPECT_EQ(ab, chn->param()); - EXPECT_EQ(NULL, chn->message()); - - EXPECT_EQ(0, bus->size()); - Channel* chn2 = bus->channel_by_name("TestOp"); - EXPECT_EQ(NULL, chn2); -} - -TEST_F(TestOP, test_depend_argment) { - Bus bus; - Dag dag; - - AutoTempFile file( - "[@Node]\n" - "name: node1\n" - "type: ABOP\n" - "[@Node]\n" - "name: node2\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node1\n" - "mode: RO\n" - "[@Node]\n" - "name: node3\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node1\n" - "mode: RO\n" - "[@Node]\n" - "name: node4\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node2\n" - "mode: RW\n" - "[.@Depend]\n" - "name: node3\n" - "mode: RO"); - - std::string dag_name = "DagTest"; - EXPECT_EQ(0, dag.init("./", file.name(), dag_name)); - - ABOP op; - std::string op_name = "node4"; - std::string op_type = "ABOP"; - EXPECT_EQ(0, op.init(&bus, &dag, (uint32_t)888, op_name, op_type, NULL)); - - EXPECT_FALSE(op.is_readable("node1")); - EXPECT_FALSE(op.is_mutable("node1")); - EXPECT_TRUE(op.is_readable("node2")); - EXPECT_TRUE(op.is_mutable("node2")); - EXPECT_TRUE(op.is_readable("node3")); - EXPECT_FALSE(op.is_mutable("node3")); - - // process() is not called, channel has not been - // committed to bus yet! - EXPECT_TRUE(NULL == op.get_depend_channel("node1")); - EXPECT_TRUE(NULL == op.get_depend_channel("node2")); - EXPECT_TRUE(NULL == op.get_depend_channel("node3")); - EXPECT_TRUE(NULL == op.mutable_depend_channel("node1")); - EXPECT_TRUE(NULL == op.mutable_depend_channel("node2")); - EXPECT_TRUE(NULL == op.mutable_depend_channel("node3")); -} - -TEST_F(TestOP, test_inference) { - Bus bus; - Dag dag; - - AutoTempFile file( - "[@Node]\n" - "name: node1\n" - "type: ABOP\n" - "[@Node]\n" - "name: node2\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node1\n" - "mode: RO\n" - "[@Node]\n" - "name: node3\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node1\n" - "mode: RO\n" - "[@Node]\n" - "name: node4\n" - "type: ABOP\n" - "[.@Depend]\n" - "name: node2\n" - "mode: RW\n" - "[.@Depend]\n" - "name: node3\n" - "mode: RO"); - - std::string dag_name = "DagTest"; - EXPECT_EQ(0, dag.init("./", file.name(), dag_name)); - - ABOP op1; - std::string op1_name = "node1"; - std::string op_type = "ABOP"; - EXPECT_EQ(0, op1.init(&bus, &dag, (uint32_t)888, op1_name, op_type, NULL)); - - ABOP op2; - std::string op2_name = "node2"; - EXPECT_EQ(0, op2.init(&bus, &dag, (uint32_t)888, op2_name, op_type, NULL)); - - MsgOP op3; - std::string op3_name = "node3"; - EXPECT_EQ(0, op3.init(&bus, &dag, (uint32_t)888, op3_name, op_type, NULL)); - - ABOP op4; - std::string op4_name = "node4"; - EXPECT_EQ(0, op4.init(&bus, &dag, (uint32_t)888, op4_name, op_type, NULL)); - - EXPECT_TRUE(op2.is_readable("node1")); - EXPECT_FALSE(op2.is_mutable("node1")); - - EXPECT_FALSE(op2.is_readable("node3")); - EXPECT_FALSE(op2.is_mutable("node3")); - - EXPECT_FALSE(op2.is_readable("node4")); - EXPECT_FALSE(op2.is_mutable("node4")); - - EXPECT_TRUE(op3.is_readable("node1")); - EXPECT_FALSE(op3.is_mutable("node1")); - - EXPECT_FALSE(op3.is_readable("node2")); - EXPECT_FALSE(op3.is_mutable("node2")); - - EXPECT_FALSE(op3.is_readable("node4")); - EXPECT_FALSE(op3.is_mutable("node4")); - - EXPECT_FALSE(op4.is_readable("node1")); - EXPECT_FALSE(op4.is_mutable("node1")); - - EXPECT_TRUE(op4.is_readable("node2")); - EXPECT_TRUE(op4.is_mutable("node2")); - - EXPECT_TRUE(op4.is_readable("node3")); - EXPECT_FALSE(op4.is_mutable("node3")); - - EXPECT_EQ(0, op1.process(false)); - EXPECT_EQ(0, op2.process(false)); - EXPECT_EQ(0, op3.process(false)); - EXPECT_EQ(0, op4.process(true)); - - EXPECT_TRUE(NULL == op4.get_depend_channel("node1")); - EXPECT_FALSE(NULL == op4.get_depend_channel("node2")); - EXPECT_FALSE(NULL == op4.get_depend_channel("node3")); - EXPECT_TRUE(NULL == op4.mutable_depend_channel("node1")); - EXPECT_FALSE(NULL == op4.mutable_depend_channel("node2")); - EXPECT_TRUE(NULL == op4.mutable_depend_channel("node3")); - - const AB* dop1 = op4.get_depend_argument("node1"); - - const AB* dop21 = op4.get_depend_argument("node2"); - const google::protobuf::Message* dop22 = - op4.get_depend_channel("node2")->message(); - const google::protobuf::Message* dop23 = - op4.get_depend_argument("node2"); - - const OpMessageData* dop31 = op4.get_depend_argument("node3"); - const google::protobuf::Message* dop32 = - op4.get_depend_channel("node3")->message(); - const google::protobuf::Message* dop33 = - op4.get_depend_argument("node3"); - - EXPECT_EQ(NULL, dop1); - - EXPECT_NE(NULL, dop21); - EXPECT_EQ(NULL, dop22); - EXPECT_EQ(NULL, dop23); - - EXPECT_NE(NULL, dop31); - EXPECT_NE(NULL, dop32); - EXPECT_EQ(NULL, dop33); - EXPECT_EQ(dop31, dop32); - - const OpMessageData* dop322 = dynamic_cast(dop32); - - EXPECT_EQ(1, dop21->a); - EXPECT_FLOAT_EQ(2.2, dop21->b); - - EXPECT_EQ(11, dop31->a()); - EXPECT_FLOAT_EQ(22.2, dop31->b()); - - EXPECT_EQ(11, dop322->a()); - EXPECT_FLOAT_EQ(22.2, dop322->b()); -} - -TEST_F(TestOP, test_op_with_channel_and_conf) { - Dag dag; - std::string op_name = "test_op"; - std::string name_in_conf = "test_name_in_conf"; - butil::TempFile dag_conf; - dag_conf.save_format( - "[@Node]\n" - "name: %s\n" - "type: OpWithConf\n" - "name_in_conf: %s\n", - op_name.c_str(), - name_in_conf.c_str()); - - std::string dag_name = "DagTest"; - ASSERT_EQ(0, dag.init("./", dag_conf.fname(), dag_name)); - - DagView view; - view.init(&dag, "service_name"); - ASSERT_EQ(0, view.execute(NULL)); - - const std::vector& view_stage_vec = view._view; - uint32_t stage_size = view_stage_vec.size(); - for (uint32_t si = 0; si < stage_size; si++) { - ViewStage* vstage = view_stage_vec[si]; - uint32_t node_size = vstage->nodes.size(); - for (uint32_t ni = 0; ni < node_size; ni++) { - ViewNode* vnode = vstage->nodes[ni]; - OpWithConf* op = dynamic_cast(vnode->op); - ASSERT_NE(NULL, op); - EXPECT_STREQ(op->name(), op_name.c_str()); - EXPECT_STREQ(op->get_self_config()->name_in_conf.c_str(), - name_in_conf.c_str()); - EXPECT_STREQ(op->mutable_data()->name_for_output.c_str(), - name_in_conf.c_str()); - } - } -} -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_op.h b/predictor/unittest/test_op.h deleted file mode 100644 index 174f2f84b8601b83ced50fb634df677410d522c2..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_op.h +++ /dev/null @@ -1,113 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "framework/channel.h" -#include "op/op.h" - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -struct AB { - int a; - float b; - - int Clear() { - a = 3; - b = 4.0; - return 0; - } - - std::string ShortDebugString() const { - std::ostringstream oss; - oss << "{\"a\": "; - oss << a; - oss << ", \"b\": "; - oss << b; - oss << "}"; - return oss.str(); - } -}; - -class ABOP : public baidu::paddle_serving::predictor::OpWithChannel { - public: - int inference() { - AB* ab = mutable_data(); - ab->a = 1; - ab->b = 2.2; - return 0; - } - DECLARE_OP(ABOP); -}; - -DEFINE_OP(ABOP); - -struct OpConf { - std::string name_in_conf; -}; - -struct OpOutput { - std::string name_for_output; - void Clear() { name_for_output.clear(); } - std::string ShortDebugString() const { return name_for_output; } -}; - -class OpWithConf - : public baidu::paddle_serving::predictor::OpWithChannelAndConf { - public: - DECLARE_OP(OpWithConf); - void* create_config(const comcfg::ConfigUnit& conf) { - OpConf* op_conf = new (std::nothrow) OpConf(); - int err = 0; - op_conf->name_in_conf = conf["name_in_conf"].to_cstr(&err); - if (err != 0) { - return NULL; - } - return op_conf; - } - - void delete_config(void* conf) { delete static_cast(conf); } - - int inference() { - OpConf* op_conf = get_self_config(); - OpOutput* op_output = mutable_data(); - op_output->name_for_output = op_conf->name_in_conf; - return 0; - } -}; - -DEFINE_OP(OpWithConf); - -#ifndef DEFINE_UP_DOWN -#define DEFINE_UP_DOWN \ - void SetUp() {} \ - void TearDown() {} - -class TestOP : public ::testing::Test { - public: - TestOP() {} - virtual ~TestOP() {} - - DEFINE_UP_DOWN -}; - -#undef DEFINE_UP_DOWN -#endif -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/predictor/unittest/test_server_manager.cpp b/predictor/unittest/test_server_manager.cpp deleted file mode 100644 index e610e4a7ac9ccc0d3425fa4f2ec3c4aa7e8d7097..0000000000000000000000000000000000000000 --- a/predictor/unittest/test_server_manager.cpp +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "predictor/unittest/test_server_manager.h" // TestServerManager -#include // FLAGS -#include -#include "framework/server.h" // ServerManager - -namespace baidu { -namespace paddle_serving { -namespace unittest { - -using baidu::paddle_serving::predictor::ServerManager; -using baidu::paddle_serving::predictor::FLAGS_enable_nshead_protocol; -using baidu::paddle_serving::predictor::FLAGS_nshead_protocol; - -TEST_F(TestServerManager, test_nshead_protocol) { - ASSERT_EQ(FLAGS_enable_nshead_protocol, false); - ServerManager server_manager1; - EXPECT_EQ(server_manager1._options.nshead_service, NULL); - - google::SetCommandLineOption("enable_nshead_protocol", "true"); - ASSERT_EQ(FLAGS_enable_nshead_protocol, true); - ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), "itp"); - ServerManager server_manager2; - EXPECT_NE(server_manager2._options.nshead_service, NULL); - - std::string protocol = "nova_pbrpc"; - google::SetCommandLineOption("enable_nshead_protocol", "true"); - google::SetCommandLineOption("nshead_protocol", protocol.c_str()); - ASSERT_EQ(FLAGS_enable_nshead_protocol, true); - ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); - ServerManager server_manager3; - EXPECT_NE(server_manager3._options.nshead_service, NULL); - - protocol = "public_pbrpc"; - google::SetCommandLineOption("enable_nshead_protocol", "true"); - google::SetCommandLineOption("nshead_protocol", protocol.c_str()); - ASSERT_EQ(FLAGS_enable_nshead_protocol, true); - ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); - ServerManager server_manager4; - EXPECT_NE(server_manager4._options.nshead_service, NULL); - - protocol = "nshead_mcpack"; - google::SetCommandLineOption("enable_nshead_protocol", "true"); - google::SetCommandLineOption("nshead_protocol", protocol.c_str()); - ASSERT_EQ(FLAGS_enable_nshead_protocol, true); - ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); - ServerManager server_manager5; - EXPECT_NE(server_manager5._options.nshead_service, NULL); - - protocol = "nshead_wrong_protocol"; - google::SetCommandLineOption("enable_nshead_protocol", "true"); - google::SetCommandLineOption("nshead_protocol", protocol.c_str()); - ASSERT_EQ(FLAGS_enable_nshead_protocol, true); - ASSERT_STREQ(FLAGS_nshead_protocol.c_str(), protocol.c_str()); - ServerManager server_manager6; - EXPECT_EQ(server_manager6._options.nshead_service, NULL); -} - -} // namespace unittest -} // namespace paddle_serving -} // namespace baidu diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..55e162c3ba916652a5de29b315a7326546f19661 --- /dev/null +++ b/python/CMakeLists.txt @@ -0,0 +1,32 @@ +file(GLOB_RECURSE SERVING_CLIENT_PY_FILES serving_client/*.py) +set(PY_FILES ${SERVING_CLIENT_PY_FILES}) +SET(PACKAGE_NAME "serving_client") +set(SETUP_LOG_FILE "setup.py.log") + +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/setup.py.in + ${CMAKE_CURRENT_BINARY_DIR}/setup.py) + +set(SERVING_CLIENT_CORE ${PADDLE_SERVING_BINARY_DIR}/core/general-client/serving_client.so) + +message("python env: " ${py_env}) + +add_custom_command( + OUTPUT ${PADDLE_SERVING_BINARY_DIR}/.timestamp + COMMAND cp -r ${CMAKE_CURRENT_SOURCE_DIR}/paddle_serving/ ${PADDLE_SERVING_BINARY_DIR}/python/ + COMMAND ${CMAKE_COMMAND} -E copy ${PADDLE_SERVING_BINARY_DIR}/core/general-client/serving_client.so ${PADDLE_SERVING_BINARY_DIR}/python/paddle_serving/serving_client/ + COMMAND env ${py_env} ${PYTHON_EXECUTABLE} setup.py bdist_wheel + DEPENDS ${SERVING_CLIENT_CORE} sdk_configure_py_proto ${PY_FILES}) + +add_custom_target(paddle_python ALL DEPENDS serving_client ${PADDLE_SERVING_BINARY_DIR}/.timestamp) + +set(SERVING_CLIENT_PYTHON_PACKAGE_DIR ${CMAKE_CURRENT_BINARY_DIR}/dist/) + +install(DIRECTORY ${SERVING_CLIENT_PYTHON_PACKAGE_DIR} + DESTINATION opt/serving_client/share/wheels +) + +find_program(PATCHELF_EXECUTABLE patchelf) +if(NOT PATCHELF_EXECUTABLE) + message(FATAL_ERROR "patchelf not found, please install it.\n" + "For Ubuntu, the command is: apt-get install -y patchelf.") +endif() diff --git a/python/examples/imdb/inference.conf b/python/examples/imdb/inference.conf new file mode 100644 index 0000000000000000000000000000000000000000..bbb056b8914e457e7efcbaa59be5e994f87a9ca1 --- /dev/null +++ b/python/examples/imdb/inference.conf @@ -0,0 +1,6 @@ +2 3 +words 1 -1 0 +label 1 1 0 +cost mean_0.tmp_0 +acc accuracy_0.tmp_0 +prediction fc_1.tmp_2 diff --git a/python/examples/imdb/test_client.py b/python/examples/imdb/test_client.py new file mode 100644 index 0000000000000000000000000000000000000000..ab52c2dcccc29216b20910d8cd96ab54ed977702 --- /dev/null +++ b/python/examples/imdb/test_client.py @@ -0,0 +1,16 @@ +from paddle_serving import Client +import sys + +client = Client() +client.load_client_config(sys.argv[1]) +client.connect(["127.0.0.1:9292"]) + +for line in sys.stdin: + group = line.strip().split() + words = [int(x) for x in group[1:int(group[0])]] + label = [int(group[-1])] + feed = {"words": words, "label": label} + fetch = ["acc", "cost", "prediction"] + fetch_map = client.predict(feed=feed, fetch=fetch) + print("{} {}".format(fetch_map["prediction"][1], label[0])) + diff --git a/python/examples/util/get_acc.py b/python/examples/util/get_acc.py new file mode 100644 index 0000000000000000000000000000000000000000..ce4885a657365ee09c69f98ca7675fdc68fbf7a3 --- /dev/null +++ b/python/examples/util/get_acc.py @@ -0,0 +1,13 @@ +import sys +import os + +total = 0 +acc = 0 +for line in sys.stdin: + line = line.strip() + group = line.split() + if (float(group[0]) - 0.5) * (float(group[1]) - 0.5) > 0: + acc += 1 + total += 1 + +print(float(acc) / float(total)) diff --git a/python/paddle_serving/__init__.py b/python/paddle_serving/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..1b1ac92198b39c3d00c50af2e68baf68ca9ff75e --- /dev/null +++ b/python/paddle_serving/__init__.py @@ -0,0 +1,14 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. +from .serving_client import Client diff --git a/python/paddle_serving/serving_client/__init__.py b/python/paddle_serving/serving_client/__init__.py new file mode 100644 index 0000000000000000000000000000000000000000..d12dc2b4f2604f8a0f9e02adc74e0af298f999e3 --- /dev/null +++ b/python/paddle_serving/serving_client/__init__.py @@ -0,0 +1,157 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. + +from .serving_client import PredictorClient +from ..proto import sdk_configure_pb2 as sdk +import time + +int_type = 0 +float_type = 1 + +class SDKConfig(object): + def __init__(self): + self.sdk_desc = sdk.SDKConf() + self.endpoints = [] + + def set_server_endpoints(self, endpoints): + self.endpoints = endpoints + + def gen_desc(self): + predictor_desc = sdk.Predictor() + predictor_desc.name = "general_model" + predictor_desc.service_name = \ + "baidu.paddle_serving.predictor.general_model.GeneralModelService" + predictor_desc.endpoint_router = "WeightedRandomRender" + predictor_desc.weighted_random_render_conf.variant_weight_list = "30" + + variant_desc = sdk.VariantConf() + variant_desc.tag = "var1" + variant_desc.naming_conf.cluster = "list://{}".format(":".join(self.endpoints)) + + predictor_desc.variants.extend([variant_desc]) + + self.sdk_desc.predictors.extend([predictor_desc]) + self.sdk_desc.default_variant_conf.tag = "default" + self.sdk_desc.default_variant_conf.connection_conf.connect_timeout_ms = 2000 + self.sdk_desc.default_variant_conf.connection_conf.rpc_timeout_ms = 20000 + self.sdk_desc.default_variant_conf.connection_conf.connect_retry_count = 2 + self.sdk_desc.default_variant_conf.connection_conf.max_connection_per_host = 100 + self.sdk_desc.default_variant_conf.connection_conf.hedge_request_timeout_ms = -1 + self.sdk_desc.default_variant_conf.connection_conf.hedge_fetch_retry_count = 2 + self.sdk_desc.default_variant_conf.connection_conf.connection_type = "pooled" + + self.sdk_desc.default_variant_conf.naming_conf.cluster_filter_strategy = "Default" + self.sdk_desc.default_variant_conf.naming_conf.load_balance_strategy = "la" + + self.sdk_desc.default_variant_conf.rpc_parameter.compress_type = 0 + self.sdk_desc.default_variant_conf.rpc_parameter.package_size = 20 + self.sdk_desc.default_variant_conf.rpc_parameter.protocol = "baidu_std" + self.sdk_desc.default_variant_conf.rpc_parameter.max_channel_per_request = 3 + + return str(self.sdk_desc) + + +class Client(object): + def __init__(self): + self.feed_names_ = [] + self.fetch_names_ = [] + self.client_handle_ = None + self.feed_shapes_ = [] + self.feed_types_ = {} + self.feed_names_to_idx_ = {} + + def load_client_config(self, path): + # load configuraion here + # get feed vars, fetch vars + # get feed shapes, feed types + # map feed names to index + self.client_handle_ = PredictorClient() + self.client_handle_.init(path) + self.feed_names_ = [] + self.fetch_names_ = [] + self.feed_shapes_ = [] + self.feed_types_ = {} + self.feed_names_to_idx_ = {} + + with open(path) as fin: + group = fin.readline().strip().split() + feed_num = int(group[0]) + fetch_num = int(group[1]) + for i in range(feed_num): + group = fin.readline().strip().split() + self.feed_names_.append(group[0]) + tmp_shape = [] + for s in group[2:-1]: + tmp_shape.append(int(s)) + self.feed_shapes_.append(tmp_shape) + self.feed_types_[group[0]] = int(group[-1]) + self.feed_names_to_idx_[group[0]] = i + for i in range(fetch_num): + group = fin.readline().strip().split() + self.fetch_names_.append(group[0]) + return + + def connect(self, endpoints): + # check whether current endpoint is available + # init from client config + # create predictor here + predictor_sdk = SDKConfig() + predictor_sdk.set_server_endpoints(endpoints) + sdk_desc = predictor_sdk.gen_desc() + timestamp = time.asctime(time.localtime(time.time())) + predictor_path = "/tmp/" + predictor_file = "%s_predictor.conf" % timestamp + with open(predictor_path + predictor_file, "w") as fout: + fout.write(sdk_desc) + self.client_handle_.set_predictor_conf( + predictor_path, predictor_file) + self.client_handle_.create_predictor() + + def get_feed_names(self): + return self.feed_names_ + + def get_fetch_names(self): + return self.fetch_names_ + + def predict(self, feed={}, fetch=[]): + int_slot = [] + float_slot = [] + int_feed_names = [] + float_feed_names = [] + fetch_names = [] + for key in feed: + if key not in self.feed_names_: + continue + if self.feed_types_[key] == int_type: + int_feed_names.append(key) + int_slot.append(feed[key]) + elif self.feed_types_[key] == float_type: + float_feed_names.append(key) + float_slot.append(feed[key]) + + for key in fetch: + if key in self.fetch_names_: + fetch_names.append(key) + + result = self.client_handle_.predict( + float_slot, float_feed_names, + int_slot, int_feed_names, + fetch_names) + + result_map = {} + for i, name in enumerate(fetch_names): + result_map[name] = result[i] + + return result_map + diff --git a/python/paddle_serving/version.py b/python/paddle_serving/version.py new file mode 100644 index 0000000000000000000000000000000000000000..e199e2080bb1ec137a6c0e22b81ee4782defa34f --- /dev/null +++ b/python/paddle_serving/version.py @@ -0,0 +1,16 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. +""" Paddle Serving Client version string """ +serving_client_version = "0.1.0" +module_proto_version = "0.1.0" diff --git a/python/requirements.txt b/python/requirements.txt new file mode 100644 index 0000000000000000000000000000000000000000..5359d565e8f612822e1a0c61ee27018daa4b0e1b --- /dev/null +++ b/python/requirements.txt @@ -0,0 +1,3 @@ +protobuf>=3.1.0 +six +paddlepaddle-gpu diff --git a/python/setup.py.in b/python/setup.py.in new file mode 100644 index 0000000000000000000000000000000000000000..313f78092b36ac49b403a7df8dc0ef5dfe5d8052 --- /dev/null +++ b/python/setup.py.in @@ -0,0 +1,77 @@ +# Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +# +# Licensed 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. +"""Setup for pip package.""" +from __future__ import absolute_import +from __future__ import division +from __future__ import print_function + +import platform + +from setuptools import setup, Distribution, Extension +from setuptools import find_packages +from setuptools import setup +from paddle_serving.version import serving_client_version + +def python_version(): + return [int(v) for v in platform.python_version().split(".")] + +max_version, mid_version, min_version = python_version() + +REQUIRED_PACKAGES = [ + 'six >= 1.10.0', 'protobuf >= 3.1.0','paddlepaddle' +] + +packages=['paddle_serving', + 'paddle_serving.serving_client', + 'paddle_serving.proto'] +package_data={'paddle_serving.serving_client': ['serving_client.so']} +package_dir={'paddle_serving.serving_client': + '${PADDLE_SERVING_BINARY_DIR}/python/paddle_serving/serving_client', + 'paddle_serving.proto': + '${PADDLE_SERVING_BINARY_DIR}/python/paddle_serving/proto'} + +setup( + name='paddle-serving-client', + version=serving_client_version.replace('-', ''), + description= + ('Paddle Serving Package for saved model with PaddlePaddle'), + url='https://github.com/PaddlePaddle/Serving', + author='PaddlePaddle Author', + author_email='guru4elephant@gmail.com', + install_requires=REQUIRED_PACKAGES, + packages=packages, + package_data=package_data, + package_dir=package_dir, + # PyPI package information. + classifiers=[ + 'Development Status :: 4 - Beta', + 'Intended Audience :: Developers', + 'Intended Audience :: Education', + 'Intended Audience :: Science/Research', + 'License :: OSI Approved :: Apache Software License', + 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.4', + 'Programming Language :: Python :: 3.5', + 'Programming Language :: Python :: 3.6', + 'Topic :: Scientific/Engineering', + 'Topic :: Scientific/Engineering :: Mathematics', + 'Topic :: Scientific/Engineering :: Artificial Intelligence', + 'Topic :: Software Development', + 'Topic :: Software Development :: Libraries', + 'Topic :: Software Development :: Libraries :: Python Modules', + ], + license='Apache 2.0', + keywords=('paddle-serving serving-client deployment industrial easy-to-use')) + diff --git a/sdk-cpp/CMakeLists.txt b/sdk-cpp/CMakeLists.txt deleted file mode 100644 index 0c710e26bf72a30580c678a4d21f76d683618e9a..0000000000000000000000000000000000000000 --- a/sdk-cpp/CMakeLists.txt +++ /dev/null @@ -1,16 +0,0 @@ -include(src/CMakeLists.txt) -include(proto/CMakeLists.txt) -add_library(sdk-cpp ${sdk_cpp_srcs}) -add_dependencies(sdk-cpp pdcodegen configure) -target_link_libraries(sdk-cpp brpc configure protobuf leveldb) - -# install -install(TARGETS sdk-cpp - ARCHIVE DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/lib - ) -install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/sdk-cpp/) - -FILE(GLOB inc ${CMAKE_CURRENT_BINARY_DIR}/*.pb.h) -install(FILES ${inc} - DESTINATION ${PADDLE_SERVING_INSTALL_DIR}/include/sdk-cpp) diff --git a/sdk-cpp/include/abtest.h b/sdk-cpp/include/abtest.h deleted file mode 100644 index b30b5442afd845fdc5317300f26c1c382b468517..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/abtest.h +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/factory.h" -#include "sdk-cpp/include/stub.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class Stub; -class Variant; - -static const char* WEIGHT_SEPERATOR = "|"; - -class EndpointRouterBase { - public: - typedef std::vector VariantList; - - virtual ~EndpointRouterBase() {} - - virtual int initialize(const google::protobuf::Message& conf) = 0; - - virtual Variant* route(const VariantList&) = 0; - - virtual Variant* route(const VariantList&, const void*) = 0; -}; - -class WeightedRandomRender : public EndpointRouterBase { - public: - static int register_self() { - INLINE_REGIST_OBJECT(WeightedRandomRender, EndpointRouterBase, -1); - return 0; - } - - WeightedRandomRender() : _normalized_sum(0) {} - - ~WeightedRandomRender() {} - - int initialize(const google::protobuf::Message& conf); - - Variant* route(const VariantList&); - - Variant* route(const VariantList&, const void*); - - private: - std::vector _variant_weight_list; - uint32_t _normalized_sum; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/common.h b/sdk-cpp/include/common.h deleted file mode 100644 index 618b532965707ce18b35a5e44731c95f59e4b671..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/common.h +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "gflags/gflags.h" -#include "google/protobuf/message.h" - -#ifdef BCLOUD -#include "baidu/rpc/channel.h" -#include "baidu/rpc/parallel_channel.h" -#include "baidu/rpc/traceprintf.h" -#include "base/comlog_sink.h" -#include "base/logging.h" -#include "base/object_pool.h" -#include "base/time.h" -#include "bthread.h" // NOLINT -#else -#include "brpc/channel.h" -#include "brpc/parallel_channel.h" -#include "brpc/traceprintf.h" -#include "bthread/bthread.h" -#include "butil/logging.h" -#include "butil/object_pool.h" -#include "butil/time.h" -#endif - -#include "bvar/bvar.h" - -#ifdef BCLOUD -#include "json_to_pb.h" // NOLINT -#else -#include "json2pb/json_to_pb.h" -#endif - -#include "configure/include/configure_parser.h" -#include "configure/sdk_configure.pb.h" - -#include "sdk-cpp/include/utils.h" - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -namespace butil = base; -#endif diff --git a/sdk-cpp/include/config_manager.h b/sdk-cpp/include/config_manager.h deleted file mode 100644 index 10dab498682159908001653aa661ed95fa82dd29..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/config_manager.h +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/endpoint_config.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class EndpointConfigManager { - public: - static EndpointConfigManager& instance() { - static EndpointConfigManager singleton; - return singleton; - } - - EndpointConfigManager() - : _last_update_timestamp(0), _current_endpointmap_id(1) {} - - int create(const char* path, const char* file); - - int load(); - - bool need_reload() { return false; } - - int reload() { - if (!need_reload()) { - LOG(INFO) << "Noneed reload endpoin config"; - return 0; - } - - return load(); - } - - const std::map& config() { return _ep_map; } - - const std::map& config() const { return _ep_map; } - - private: - int init_one_variant(const configure::VariantConf& conf, - VariantInfo& var); // NOLINT - - int init_one_endpoint(const configure::Predictor& conf, - EndpointInfo& ep, // NOLINT - const VariantInfo& default_var); - - int merge_variant(const VariantInfo& default_var, - const configure::VariantConf& conf, - VariantInfo& merged_var); // NOLINT - - int parse_tag_values(SplitParameters& split); // NOLINT - - private: - std::map _ep_map; - std::string _endpoint_config_path; - std::string _endpoint_config_file; - uint32_t _last_update_timestamp; - uint32_t _current_endpointmap_id; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/endpoint.h b/sdk-cpp/include/endpoint.h deleted file mode 100644 index 3b9bf9a38952d67ae0e7548a2f1c04a39faf6576..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/endpoint.h +++ /dev/null @@ -1,68 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once - -#include -#include -#include "sdk-cpp/include/abtest.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/endpoint_config.h" -#include "sdk-cpp/include/predictor.h" -#include "sdk-cpp/include/stub.h" -#include "sdk-cpp/include/variant.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class Endpoint { - friend class EndpointRouterBase; - - public: - virtual ~Endpoint() {} - - Endpoint() { _variant_list.clear(); } - - int initialize(const EndpointInfo& ep_info); - - int thrd_initialize(); - - int thrd_clear(); - - int thrd_finalize(); - - Predictor* get_predictor(const void* params); - - Predictor* get_predictor(); - - int ret_predictor(Predictor* predictor); - - const std::string& endpoint_name() const { return _endpoint_name; } - - private: - int initialize_variant(const VariantInfo& var_info, - const std::string& service, - const std::string& ep_name, - std::vector& stubs); // NOLINT - - private: - std::string _endpoint_name; - std::vector _variant_list; - EndpointRouterBase* _abtest_router; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/endpoint_config.h b/sdk-cpp/include/endpoint_config.h deleted file mode 100644 index 0fdabdb4985aca34606ca9d02dd1dfae230ab657..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/endpoint_config.h +++ /dev/null @@ -1,111 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "sdk-cpp/include/common.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -#define PARSE_CONF_ITEM(conf, item, name, fail) \ - do { \ - if (conf.has_##name()) { \ - item.set(conf.name()); \ - } else { \ - LOG(ERROR) << "Not found key in configue: " << #name; \ - } \ - } while (0) - -#define ASSIGN_CONF_ITEM(dest, src, fail) \ - do { \ - if (!src.init) { \ - LOG(ERROR) << "Cannot assign an unintialized item: " << #src \ - << " to dest: " << #dest; \ - return fail; \ - } \ - dest = src.value; \ - } while (0) - -template -struct type_traits { - static type_traits tag; -}; - -template -type_traits type_traits::tag; - -template -struct ConfigItem { - T value; - bool init; - ConfigItem() : init(false) {} - void set(const T& unit) { - value = unit; - init = true; - } -}; - -struct Connection { - ConfigItem tmo_conn; - ConfigItem tmo_rpc; - ConfigItem tmo_hedge; - ConfigItem cnt_retry_conn; - ConfigItem cnt_retry_hedge; - ConfigItem cnt_maxconn_per_host; - ConfigItem type_conn; -}; - -struct NamingInfo { - ConfigItem cluster_naming; - ConfigItem load_balancer; - ConfigItem cluster_filter; -}; - -struct RpcParameters { - ConfigItem protocol; - ConfigItem compress_type; - ConfigItem package_size; - ConfigItem route_tag; - ConfigItem max_channel; -}; - -struct SplitParameters { - ConfigItem split_tag; - ConfigItem tag_cands_str; - std::vector tag_values; -}; - -struct VariantInfo { - VariantInfo() {} - Connection connection; - NamingInfo naminginfo; - RpcParameters parameters; - SplitParameters splitinfo; -}; - -struct EndpointInfo { - EndpointInfo() : ab_test(NULL) {} - std::string endpoint_name; - std::string stub_service; - std::vector vars; - void* ab_test; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/factory.h b/sdk-cpp/include/factory.h deleted file mode 100644 index 777f79df4e90a6b011df931963e1e7e47bd0fbb8..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/factory.h +++ /dev/null @@ -1,199 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include "glog/raw_logging.h" -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/stub_impl.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -#ifdef BCLOUD -namespace brpc = baidu::rpc; -#endif - -#define INLINE_REGIST_OBJECT(D, B, E) \ - do { \ - Factory* factory = new (std::nothrow) Factory(); \ - if (factory == NULL || \ - FactoryPool::instance().register_factory(#D, factory) != 0) { \ - RAW_LOG_ERROR("Failed regist factory: %s->%s in macro!", #D, #B); \ - return E; \ - } \ - } while (0) - -#define DECLARE_FACTORY_OBJECT(D, B) \ - static int regist(const std::string& tag) { \ - Factory* factory = new (std::nothrow) Factory(); \ - if (factory == NULL || \ - FactoryPool::instance().register_factory(tag, factory) != 0) { \ - RAW_LOG_ERROR("Failed regist factory: %s in macro!", #D); \ - return -1; \ - } \ - return 0; \ - } - -#define PDS_STR_CAT(a, b) PDS_STR_CAT_I(a, b) -#define PDS_STR_CAT_I(a, b) a##b - -#define DEFINE_FACTORY_OBJECT(D) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - D::regist(#D); \ - } - -#define REGIST_FACTORY_OBJECT_IMPL(D, B) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - ::baidu::paddle_serving::sdk_cpp::Factory* factory = \ - new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory(); \ - if (factory == NULL || \ - ::baidu::paddle_serving::sdk_cpp::FactoryPool::instance() \ - .register_factory(#D, factory) != 0) { \ - RAW_LOG_ERROR("Failed regist factory: %s->%s in macro!", #D, #B); \ - return; \ - } \ - return; \ - } - -#define REGIST_FACTORY_OBJECT_IMPL_WITH_TAG(D, B, T) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - ::baidu::paddle_serving::sdk_cpp::Factory* factory = \ - new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory(); \ - if (factory == NULL || \ - ::baidu::paddle_serving::sdk_cpp::FactoryPool::instance() \ - .register_factory(T, factory) != 0) { \ - RAW_LOG_ERROR( \ - "Failed regist factory: %s->%s, tag %s in macro!", #D, #B, T); \ - return; \ - } \ - return; \ - } - -#define REGIST_ABTEST_OBJECT(D) \ - REGIST_FACTORY_OBJECT_IMPL( \ - D, ::baidu::paddle_serving::sdk_cpp::ABTestRouterBase) - -#define REGIST_ABTEST_OBJECT_WITH_TAG(D, T) \ - REGIST_FACTORY_OBJECT_IMPL_WITH_TAG( \ - D, ::baidu::paddle_serving::sdk_cpp::ABTestRouterBase, T) - -#define REGIST_STUB_OBJECT_WITH_TAG(D, C, R, I, O, T) \ - __attribute__((constructor)) static void PDS_STR_CAT(GlobalRegistObject, \ - __LINE__)(void) { \ - RAW_LOG_INFO("REGIST_STUB_OBJECT_WITH_TAG"); \ - ::baidu::paddle_serving::sdk_cpp::Factory< \ - ::baidu::paddle_serving::sdk_cpp::StubImpl, \ - ::baidu::paddle_serving::sdk_cpp::Stub>* factory = \ - new (::std::nothrow)::baidu::paddle_serving::sdk_cpp::Factory< \ - ::baidu::paddle_serving::sdk_cpp::StubImpl, \ - ::baidu::paddle_serving::sdk_cpp::Stub>(); \ - if (factory == NULL || \ - ::baidu::paddle_serving::sdk_cpp::FactoryPool< \ - ::baidu::paddle_serving::sdk_cpp::Stub>::instance() \ - .register_factory(T, factory) != 0) { \ - RAW_LOG_ERROR( \ - "Failed regist factory: %s->Stub, tag: %s in macro!", #D, T); \ - return; \ - } \ - return; \ - } - -class Stub; -class EndpointRouterBase; -class VariantRouterBase; - -template -class FactoryBase { - public: - virtual B* gen() = 0; - virtual void del(B* obj) = 0; -}; - -template -class Factory : public FactoryBase { - public: - B* gen() { return new (std::nothrow) D(); } - - void del(B* obj) { delete dynamic_cast(obj); } -}; - -template -class FactoryPool { - public: - static FactoryPool& instance() { - static FactoryPool singleton; - return singleton; - } - - int register_factory(const std::string& tag, FactoryBase* factory) { - typename std::map*>::iterator it = - _pool.find(tag); - if (it != _pool.end()) { - RAW_LOG_ERROR("Insert duplicate with tag: %s", tag.c_str()); - return -1; - } - - std::pair*>::iterator, bool> - r = _pool.insert(std::make_pair(tag, factory)); - if (!r.second) { - RAW_LOG_ERROR("Failed insert new factory with: %s", tag.c_str()); - return -1; - } - - RAW_LOG_INFO("Succ insert one factory, tag: %s, base type %s", - tag.c_str(), - typeid(B).name()); - - return 0; - } - - B* generate_object(const std::string& tag) { - typename std::map*>::iterator it = - _pool.find(tag); - if (it == _pool.end() || it->second == NULL) { - RAW_LOG_ERROR("Not found factory pool, tag: %s, pool size: %u", - tag.c_str(), - _pool.size()); - return NULL; - } - - return it->second->gen(); - } - - template - void return_object(B* object) { - Factory factory; - factory->del(object); - } - - private: - std::map*> _pool; -}; - -typedef FactoryPool StubFactory; -typedef FactoryPool CallMapperFactory; -typedef FactoryPool ResponseMergerFactory; -typedef FactoryPool EndpointRouterFactory; -typedef FactoryPool VariantRouterFactory; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/predictor.h b/sdk-cpp/include/predictor.h deleted file mode 100644 index 82e3f6bc0259218cfd00a8e453b73dfc493ce8ac..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/predictor.h +++ /dev/null @@ -1,217 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/endpoint_config.h" -#include "sdk-cpp/include/stub.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -#define GET_OBJECT_FROM_POOL(param, T, err) \ - do { \ - param = butil::get_object(); \ - if (!param) { \ - LOG(ERROR) << "Failed get object from pool" \ - << ", arg:" << #param << "type: " << #T; \ - return err; \ - } \ - } while (0) - -static const brpc::CompressType compress_types[] = {brpc::COMPRESS_TYPE_NONE, - brpc::COMPRESS_TYPE_SNAPPY, - brpc::COMPRESS_TYPE_GZIP, - brpc::COMPRESS_TYPE_ZLIB, - brpc::COMPRESS_TYPE_LZ4}; - -typedef void (*DoneType)(google::protobuf::Message* res, - brpc::Controller* controller); - -template -class FunctionClosure : public ::google::protobuf::Closure { - public: - typedef void (*FunctionType)(Arg1* arg1, Arg2* arg2); - - FunctionClosure() {} - - ~FunctionClosure() {} - - int init(FunctionType function, - bool self_deleting, - bool arg1_deleting, - bool arg2_deleting, - Arg1* arg1 = NULL, - Arg2* arg2 = NULL); - - void Run(); - - private: - FunctionType _function; - Arg1* _arg1; - Arg2* _arg2; - bool _self_deleting; - bool _arg1_deleting; - bool _arg2_deleting; -}; - -class InterfaceAdaptor { - public: - typedef google::protobuf::Message RequestMessage; - typedef google::protobuf::Message ResponseMessage; - - virtual int partition(RequestMessage& request, // NOLINT - std::vector& out) = 0; // NOLINT - virtual int merge(std::vector& response, // NOLINT - ResponseMessage& out) = 0; // NOLINT -}; - -class EchoAdaptor : public InterfaceAdaptor { - public: - typedef google::protobuf::Message RequestMessage; - typedef google::protobuf::Message ResponseMessage; - - int partition(RequestMessage& request, // NOLINT - std::vector& out) { // NOLINT - return 0; - } - - int merge(std::vector& response, // NOLINT - ResponseMessage*& out) { // NOLINT - return 0; - } -}; - -class Predictor { - public: - // synchronize interface - virtual int inference(google::protobuf::Message* req, - google::protobuf::Message* res) = 0; - - // asynchronize interface - virtual int inference(google::protobuf::Message* req, - google::protobuf::Message* res, - DoneType done, - brpc::CallId* cid = NULL) = 0; - - // synchronize interface - virtual int debug(google::protobuf::Message* req, - google::protobuf::Message* res, - butil::IOBufBuilder* debug_os) = 0; - - // un-blocked interface - virtual int send_inference(google::protobuf::Message* req, - google::protobuf::Message* res) = 0; - virtual int recv_inference() = 0; - virtual void cancel_inference() = 0; - - virtual const char* tag() = 0; - - virtual const google::protobuf::Service* service() = 0; - - virtual const brpc::Controller* controller() = 0; - - virtual const google::protobuf::RpcChannel* channel() = 0; - - virtual const Stub* stub() = 0; - - virtual bool is_inited() = 0; -}; - -template -class PredictorImpl : public Predictor { - public: - typedef google::protobuf::MethodDescriptor MethodDescriptor; - - PredictorImpl() - : _service(NULL), - _stub(NULL), - _infer(NULL), - _debug(NULL), - _channel(NULL), - _inited(false) { - // _inferid = 0; - } - - ~PredictorImpl() {} - - int init(google::protobuf::RpcChannel* chnl, - T* service, - const MethodDescriptor* infer, - const MethodDescriptor* debug, - const RpcParameters& options, - Stub* stub, - const std::string& tag); - - int reset(const RpcParameters& options, brpc::Controller& cntl); // NOLINT - - int deinit(); - - bool is_inited() { return _inited; } - - // 同步接口 - int inference(google::protobuf::Message* req, google::protobuf::Message* res); - - // 异步接口 - int inference(google::protobuf::Message* req, - google::protobuf::Message* res, - DoneType done, - brpc::CallId* cid = NULL); - - // Debug同步接口 - int debug(google::protobuf::Message* req, - google::protobuf::Message* res, - butil::IOBufBuilder* debug_os); - - // 半同步(非阻塞)接口 - int send_inference(google::protobuf::Message* req, - google::protobuf::Message* res); - - // 半同步(非阻塞)接口 - int recv_inference(); - - // 半同步(非阻塞)接口 - void cancel_inference(); - - const char* tag(); - - const google::protobuf::Service* service() { return _service; } - - const brpc::Controller* controller() { return &_cntl; } - - const google::protobuf::RpcChannel* channel() { return _channel; } - - const Stub* stub() { return _stub; } - - private: - T* _service; - Stub* _stub; - const MethodDescriptor* _infer; - const MethodDescriptor* _debug; - google::protobuf::RpcChannel* _channel; - brpc::Controller _cntl; - brpc::CallId _inferid; - RpcParameters _options; - std::string _tag; - bool _inited; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu - -#include "predictor.hpp" diff --git a/sdk-cpp/include/predictor_sdk.h b/sdk-cpp/include/predictor_sdk.h deleted file mode 100644 index 15e30f1e5e462a7b8f4569e71e0b73ccdf1b5b4b..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/predictor_sdk.h +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "sdk-cpp/include/config_manager.h" -#include "sdk-cpp/include/endpoint.h" -#include "sdk-cpp/include/endpoint_config.h" -#include "sdk-cpp/include/predictor.h" -#include "sdk-cpp/include/stub.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class PredictorApi { - public: - PredictorApi() {} - - int register_all(); - - int create(const char* path, const char* file); - - int thrd_initialize(); - - int thrd_clear(); - - int thrd_finalize(); - - void destroy(); - - static PredictorApi& instance() { - static PredictorApi api; - return api; - } - - Predictor* fetch_predictor(std::string ep_name) { - std::map::iterator it = _endpoints.find(ep_name); - if (it == _endpoints.end() || !it->second) { - LOG(ERROR) << "Failed fetch predictor:" - << ", ep_name: " << ep_name; - return NULL; - } - return it->second->get_predictor(); - } - - Predictor* fetch_predictor(std::string ep_name, const void* params) { - std::map::iterator it = _endpoints.find(ep_name); - if (it == _endpoints.end() || !it->second) { - LOG(ERROR) << "Failed fetch predictor:" - << ", ep_name: " << ep_name; - return NULL; - } - return it->second->get_predictor(params); - } - - int free_predictor(Predictor* predictor) { - const Stub* stub = predictor->stub(); - if (!stub || stub->return_predictor(predictor) != 0) { - LOG(ERROR) << "Failed return predictor via stub"; - return -1; - } - - return 0; - } - - private: - EndpointConfigManager _config_manager; - std::map _endpoints; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/stub.h b/sdk-cpp/include/stub.h deleted file mode 100644 index 7e4ee485030c8daaa646cee52883e918e9f0faa4..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/stub.h +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include "sdk-cpp/include/common.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class Predictor; -struct VariantInfo; - -class Stub { - public: - typedef google::protobuf::Message Message; - - virtual ~Stub() {} - - virtual int initialize(const VariantInfo& var, - const std::string& ep, - const std::string* tag, - const std::string* tag_value) = 0; - - // predictor - virtual Predictor* fetch_predictor() = 0; - virtual int return_predictor(Predictor* predictor) = 0; - virtual int return_predictor(Predictor* predictor) const = 0; - - // request - virtual Message* fetch_request() = 0; - virtual int return_request(Message* request) = 0; - virtual int return_request(Message* request) const = 0; - - // response - virtual Message* fetch_response() = 0; - virtual int return_response(Message* response) = 0; - virtual int return_response(Message* response) const = 0; - - virtual const std::string& which_endpoint() const = 0; - - // control logic for tls - virtual int thrd_initialize() = 0; - - virtual int thrd_clear() = 0; - - virtual int thrd_finalize() = 0; - - virtual void update_average(int64_t acc, const char* name) = 0; - virtual void update_latency(int64_t acc, const char* name) = 0; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/stub_impl.h b/sdk-cpp/include/stub_impl.h deleted file mode 100644 index 4681806b98b1735158fe2a8bc4533fc9b794eda3..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/stub_impl.h +++ /dev/null @@ -1,328 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include -#include -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/endpoint_config.h" -#include "sdk-cpp/include/predictor.h" -#include "sdk-cpp/include/stub.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -static const char* AVG_PREFIX = "avg_"; -static const char* LTC_PREFIX = "ltc_"; - -class Predictor; -template -class PredictorImpl; - -static const char* INFERENCE_METHOD_NAME = "inference"; -static const char* DEBUG_METHOD_NAME = "debug"; - -class MetricScope { - public: - MetricScope(Stub* stub, const char* routine) - : _stub(stub), _tt(butil::Timer::STARTED), _routine(routine) { - TRACEPRINTF("enter %s", routine); - } - - ~MetricScope() { - TRACEPRINTF("exit %s", _routine.c_str()); - _tt.stop(); - _stub->update_latency(_tt.u_elapsed(), _routine.c_str()); - } - - private: - Stub* _stub; - butil::Timer _tt; - std::string _routine; -}; - -class TracePackScope { - public: - explicit TracePackScope(const char* routine) : _routine(routine), _index(-1) { - TRACEPRINTF("start pack: %s", routine); - } - - TracePackScope(const char* routine, int index) - : _routine(routine), _index(index) { - TRACEPRINTF("start pack: %s, index: %d", routine, index); - } - - ~TracePackScope() { - if (_index >= 0) { - TRACEPRINTF("finish pack: %s, index: %d", _routine.c_str(), _index); - } else { - TRACEPRINTF("finish pack: %s", _routine.c_str()); - } - } - - private: - std::string _routine; - int _index; -}; - -class TagFilter : public brpc::NamingServiceFilter { - public: - class TagHelper { - public: - explicit TagHelper(const std::string& kv_str) { - if (kv_str.compare("") == 0) { - return; - } - - static const char TAG_DELIM = ','; - static const char KV_DELIM = ':'; - - std::string::size_type start_pos = 0; - std::string::size_type end_pos; - - do { - end_pos = kv_str.find(TAG_DELIM, start_pos); - std::string kv_pair_str; - if (end_pos == std::string::npos) { - kv_pair_str = kv_str.substr(start_pos); - } else { - kv_pair_str = kv_str.substr(start_pos, end_pos - start_pos); - start_pos = end_pos + 1; - } - - std::string::size_type kv_delim_pos = kv_pair_str.find(KV_DELIM, 0); - if (kv_delim_pos == std::string::npos) { - LOG(ERROR) << "invalid kv pair: " << kv_pair_str.c_str(); - continue; - } - - std::string key = kv_pair_str.substr(0, kv_delim_pos); - std::string value = kv_pair_str.substr(kv_delim_pos + 1); - _kv_map.insert(std::pair(key, value)); - } while (end_pos != std::string::npos); - } - - bool container(const std::string& k, const std::string& v) const { - std::map::const_iterator found = - _kv_map.find(k); - if (found == _kv_map.end()) { - // key not found - return false; - } - - if (v.compare(found->second) != 0) { - // value not equals - return false; - } - return true; - } - - private: - std::map _kv_map; - }; - - TagFilter(const std::string& key, const std::string& val) { - _key = key; - _value = val; - } - - bool Accept(const brpc::ServerNode& server) const { - TagHelper helper(server.tag); - return helper.container(_key, _value); - } - - private: - std::string _key; - std::string _value; -}; - -class BvarWrapper { - public: - virtual void update_latency(int64_t acc) = 0; - virtual void update_average(int64_t acc) = 0; -}; - -class LatencyWrapper : public BvarWrapper { - public: - explicit LatencyWrapper(const std::string& name) : _ltc(name + "_ltc") {} - - void update_latency(int64_t acc) { _ltc << acc; } - - void update_average(int64_t acc) { - LOG(ERROR) << "Cannot update average to a LatencyRecorder"; - } - - private: - bvar::LatencyRecorder _ltc; -}; - -class AverageWrapper : public BvarWrapper { - public: - explicit AverageWrapper(const std::string& name) - : _win(name + "_avg", &_avg, ::bvar::FLAGS_bvar_dump_interval) {} - - void update_latency(int64_t acc) { - LOG(ERROR) << "Cannot update latency to a AverageWrapper"; - } - - void update_average(int64_t acc) { _avg << acc; } - - private: - bvar::IntRecorder _avg; - bvar::Window _win; -}; - -struct StubTLS { - StubTLS() { - predictor_pools.clear(); - request_pools.clear(); - response_pools.clear(); - } - - std::vector predictor_pools; - std::vector request_pools; - std::vector response_pools; -}; - -template -class StubImpl : public Stub { - public: - typedef google::protobuf::Message Message; - - StubImpl() - : _channel(NULL), - _pchannel(NULL), - _gchannel(NULL), - _service_stub(NULL), - _infer(NULL), - _debug(NULL) {} - ~StubImpl() {} - - int initialize(const VariantInfo& var, - const std::string& ep, - const std::string* tag, - const std::string* tag_value); - - Predictor* fetch_predictor(); - int return_predictor(Predictor* predictor); - int return_predictor(Predictor* predictor) const; - - Message* fetch_request(); - int return_request(Message* request); - int return_request(Message* request) const; - - Message* fetch_response(); - int return_response(Message* response); - int return_response(Message* response) const; - - int thrd_initialize(); - int thrd_clear(); - int thrd_finalize(); - - const std::string& which_endpoint() const { return _endpoint; } - - private: - google::protobuf::RpcChannel* init_channel( - const VariantInfo& var, brpc::NamingServiceFilter* filter = NULL); - - brpc::ParallelChannel* init_pchannel(brpc::Channel* sub_channel, - uint32_t channel_count, - uint32_t package_size, - const brpc::ChannelOptions& options); - - StubTLS* get_tls() { - return static_cast(bthread_getspecific(_bthread_key)); - } - - private: - brpc::Channel* _channel; - brpc::ParallelChannel* _pchannel; - google::protobuf::RpcChannel* _gchannel; - T* _service_stub; - const google::protobuf::MethodDescriptor* _infer; - const google::protobuf::MethodDescriptor* _debug; - std::string _endpoint; - RpcParameters _options; - std::string _tag; - uint32_t _max_channel; - uint32_t _package_size; - - // tls handlers - bthread_key_t _bthread_key; - - // bvar variables - std::map _ltc_bvars; - std::map _avg_bvars; - mutable butil::Mutex _bvar_mutex; - -#ifndef DECLARE_LATENCY -#define DECLARE_LATENCY(item) LatencyWrapper* _ltc_##item; -#endif - - DECLARE_LATENCY(infer_sync); // 同步请求 - DECLARE_LATENCY(infer_async); // 异步请求 - DECLARE_LATENCY(infer_send); // 半同步send - DECLARE_LATENCY(infer_recv); // 半同步recv - DECLARE_LATENCY(infer_cancel); // 半同步cancel - DECLARE_LATENCY(debug); // 调试请求 - DECLARE_LATENCY(rpc_init); // rpc reset - DECLARE_LATENCY(thrd_clear); // thrd clear - DECLARE_LATENCY(pack_map); // thrd clear - DECLARE_LATENCY(pack_merge); // thrd clear - -#undef DECLARE_LATENCY - -#ifndef DECLARE_AVERAGE -#define DECLARE_AVERAGE(item) AverageWrapper* _avg_##item; -#endif - - DECLARE_AVERAGE(failure); // 失败请求数 - DECLARE_AVERAGE(item_size); // 单次请求item数 - DECLARE_AVERAGE(pack); // 单次请求分包数 - DECLARE_AVERAGE(pack_fail); // 单次请求分包失败数 - -#undef DECLARE_AVERAGE - - public: - void update_average(int64_t acc, const char* name) { - std::map::iterator iter = - _avg_bvars.find(std::string(AVG_PREFIX) + name); - if (iter == _avg_bvars.end()) { - LOG(ERROR) << "Not found average record:avg_" << name; - return; - } - - iter->second->update_average(acc); - } - - void update_latency(int64_t acc, const char* name) { - std::map::iterator iter = - _ltc_bvars.find(std::string(LTC_PREFIX) + name); - if (iter == _ltc_bvars.end()) { - LOG(ERROR) << "Not found latency record:ltc_" << name; - return; - } - - iter->second->update_latency(acc); - } -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu - -#include "stub_impl.hpp" diff --git a/sdk-cpp/include/utils.h b/sdk-cpp/include/utils.h deleted file mode 100644 index 75372a7d7b3ed0bb04c53a83cdde7bedc54462e9..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/utils.h +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "sdk-cpp/include/common.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -inline int str_split(const std::string& source, - const std::string& delim, - std::vector* vector_spliter) { - int delim_length = delim.length(); - int total_length = source.length(); - int last = 0; - - if (delim_length == 0) { - vector_spliter->push_back(source); - return 0; - } - - if (delim_length == 1) { - size_t index = source.find_first_of(delim, last); - while (index != std::string::npos) { - vector_spliter->push_back(source.substr(last, index - last)); - last = index + delim_length; - index = source.find_first_of(delim, last); - } - } else { - size_t index = source.find(delim, last); - while (index != std::string::npos) { - vector_spliter->push_back(source.substr(last, index - last)); - last = index + delim_length; - index = source.find(delim, last); - } - } - - if (last < total_length) { - vector_spliter->push_back(source.substr(last, total_length - last)); - } - return 0; -} - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/include/variant.h b/sdk-cpp/include/variant.h deleted file mode 100644 index 8857e14d7592aea406198c9bfb402e93220cf745..0000000000000000000000000000000000000000 --- a/sdk-cpp/include/variant.h +++ /dev/null @@ -1,62 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#pragma once -#include -#include -#include "sdk-cpp/include/common.h" -#include "sdk-cpp/include/endpoint_config.h" -#include "sdk-cpp/include/predictor.h" -#include "sdk-cpp/include/stub.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -class Variant { - friend class VariantRouterBase; - - public: - virtual ~Variant() {} - - Variant() : _default_stub(NULL) { _stub_map.clear(); } - - int initialize(const EndpointInfo& ep_info, const VariantInfo& var_info); - - int thrd_initialize(); - - int thrd_clear(); - - int thrd_finalize(); - - Predictor* get_predictor(const void* params); - - Predictor* get_predictor(); - - int ret_predictor(Predictor* predictor); - - const std::string& variant_tag() const { return _variant_tag; } - - private: - std::string _endpoint_name; - std::string _stub_service; - - std::string _variant_tag; - std::map _stub_map; - Stub* _default_stub; -}; - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/proto/CMakeLists.txt b/sdk-cpp/proto/CMakeLists.txt deleted file mode 100644 index 0807eb304fe5ad0c29695af37fb23a743ecee466..0000000000000000000000000000000000000000 --- a/sdk-cpp/proto/CMakeLists.txt +++ /dev/null @@ -1,5 +0,0 @@ -FILE(GLOB protos ${CMAKE_CURRENT_LIST_DIR}/*.proto) -list(APPEND protos ${CMAKE_SOURCE_DIR}/predictor/proto/pds_option.proto - ${CMAKE_SOURCE_DIR}/predictor/proto/builtin_format.proto) -PROTOBUF_GENERATE_SERVING_CPP(FALSE PROTO_SRCS PROTO_HDRS ${protos}) -LIST(APPEND sdk_cpp_srcs ${PROTO_SRCS}) diff --git a/sdk-cpp/src/abtest.cpp b/sdk-cpp/src/abtest.cpp deleted file mode 100644 index c205bb694be754953df95cd2429afbeb32e7e9eb..0000000000000000000000000000000000000000 --- a/sdk-cpp/src/abtest.cpp +++ /dev/null @@ -1,105 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "sdk-cpp/include/abtest.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -int WeightedRandomRender::initialize(const google::protobuf::Message& conf) { - srand((unsigned)time(NULL)); - try { - const configure::WeightedRandomRenderConf& weighted_random_render_conf = - dynamic_cast(conf); - - std::string weights = weighted_random_render_conf.variant_weight_list(); - - std::vector splits; - if (str_split(weights, WEIGHT_SEPERATOR, &splits) != 0) { - LOG(ERROR) << "Failed split string:" << weights; - return -1; - } - - uint32_t weight_size = splits.size(); - _normalized_sum = 0; - for (uint32_t wi = 0; wi < weight_size; ++wi) { - char* end_pos = NULL; - uint32_t ratio = strtoul(splits[wi].c_str(), &end_pos, 10); - if (end_pos == splits[wi].c_str()) { - LOG(ERROR) << "Error ratio(uint32) format:" << splits[wi] << " at " - << wi; - return -1; - } - - _variant_weight_list.push_back(ratio); - _normalized_sum += ratio; - } - - if (_normalized_sum <= 0) { - LOG(ERROR) << "Zero normalized weight sum"; - return -1; - } - - LOG(INFO) << "Succ read weights list: " << weights - << ", count: " << _variant_weight_list.size() - << ", normalized: " << _normalized_sum; - } catch (std::bad_cast& e) { - LOG(ERROR) << "Failed init WeightedRandomRender" - << "from configure, err:" << e.what(); - return -1; - } catch (...) { - LOG(ERROR) << "Failed init WeightedRandomRender" - << "from configure, err message is unkown."; - return -1; - } - - return 0; -} - -Variant* WeightedRandomRender::route(const VariantList& variants, - const void* params) { - return route(variants); -} - -Variant* WeightedRandomRender::route(const VariantList& variants) { - if (variants.size() != _variant_weight_list.size()) { - LOG(ERROR) << "#(Weights) is not equal #(Stubs)" - << ", size: " << _variant_weight_list.size() << " vs. " - << variants.size(); - return NULL; - } - - uint32_t sample = rand() % _normalized_sum; // NOLINT - uint32_t cand_size = _variant_weight_list.size(); - uint32_t cur_total = 0; - for (uint32_t ci = 0; ci < cand_size; ++ci) { - cur_total += _variant_weight_list[ci]; - if (sample < cur_total) { - LOG(INFO) << "Sample " << sample << " on " << ci - << ", _normalized: " << _normalized_sum - << ", weight: " << _variant_weight_list[ci]; - return variants[ci]; - } - } - - LOG(ERROR) << "Errors accurs in sampling, sample:" << sample - << ", total: " << _normalized_sum; - - return NULL; -} - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/src/config_manager.cpp b/sdk-cpp/src/config_manager.cpp deleted file mode 100644 index e019f2a71cd4c03471406faa38dab50c8c8947ec..0000000000000000000000000000000000000000 --- a/sdk-cpp/src/config_manager.cpp +++ /dev/null @@ -1,243 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "sdk-cpp/include/config_manager.h" -#ifdef BCLOUD -#include "baidu/rpc/server.h" -#else -#include "brpc/server.h" -#endif -#include "sdk-cpp/include/abtest.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -using configure::SDKConf; - -int EndpointConfigManager::create(const char* path, const char* file) { - _endpoint_config_path = path; - _endpoint_config_file = file; - - if (load() != 0) { - LOG(ERROR) << "Failed reload endpoint config"; - return -1; - } - - return 0; -} - -int EndpointConfigManager::load() { - try { - SDKConf sdk_conf; - if (configure::read_proto_conf(_endpoint_config_path.c_str(), - _endpoint_config_file.c_str(), - &sdk_conf) != 0) { - LOG(ERROR) << "Failed initialize endpoint list" - << ", config: " << _endpoint_config_path << "/" - << _endpoint_config_file; - return -1; - } - - VariantInfo default_var; - if (init_one_variant(sdk_conf.default_variant_conf(), default_var) != 0) { - LOG(ERROR) << "Failed read default var conf"; - return -1; - } - - uint32_t ep_size = sdk_conf.predictors_size(); - for (uint32_t ei = 0; ei < ep_size; ++ei) { - EndpointInfo ep; - if (init_one_endpoint(sdk_conf.predictors(ei), ep, default_var) != 0) { - LOG(ERROR) << "Failed read endpoint info at: " << ei; - return -1; - } - - std::map::iterator it; - if (_ep_map.find(ep.endpoint_name) != _ep_map.end()) { - LOG(ERROR) << "Cannot insert duplicated endpoint" - << ", ep name: " << ep.endpoint_name; - } - - std::pair::iterator, bool> r = - _ep_map.insert(std::make_pair(ep.endpoint_name, ep)); - if (!r.second) { - LOG(ERROR) << "Failed insert endpoint, name" << ep.endpoint_name; - return -1; - } - } - } catch (std::exception& e) { - LOG(ERROR) << "Failed load configure" << e.what(); - return -1; - } - LOG(INFO) << "Success reload endpoint config file, id: " - << _current_endpointmap_id; - return 0; -} - -int EndpointConfigManager::init_one_endpoint(const configure::Predictor& conf, - EndpointInfo& ep, - const VariantInfo& dft_var) { - try { - // name - ep.endpoint_name = conf.name(); - // stub - ep.stub_service = conf.service_name(); - // abtest - ConfigItem ep_router; - PARSE_CONF_ITEM(conf, ep_router, endpoint_router, -1); - if (ep_router.init) { - if (ep_router.value != "WeightedRandomRender") { - LOG(ERROR) << "endpointer_router unrecognized " << ep_router.value; - return -1; - } - - EndpointRouterBase* router = - EndpointRouterFactory::instance().generate_object(ep_router.value); - - const configure::WeightedRandomRenderConf& router_conf = - conf.weighted_random_render_conf(); - if (!router || router->initialize(router_conf) != 0) { - LOG(ERROR) << "Failed fetch valid ab test strategy" - << ", name:" << ep_router.value; - return -1; - } - ep.ab_test = router; - } - - // varlist - uint32_t var_size = conf.variants_size(); - for (uint32_t vi = 0; vi < var_size; ++vi) { - VariantInfo var; - if (merge_variant(dft_var, conf.variants(vi), var) != 0) { - LOG(ERROR) << "Failed merge variant info at: " << vi; - return -1; - } - - ep.vars.push_back(var); - } - - if (ep.vars.size() > 1 && ep.ab_test == NULL) { - LOG(ERROR) << "EndpointRouter must be configured, when" - << " #Variants > 1."; - return -1; - } - - LOG(INFO) << "Succ load one endpoint, name: " << ep.endpoint_name - << ", count of variants: " << ep.vars.size() << "."; - } catch (std::exception& e) { - LOG(ERROR) << "Exception acccurs when load endpoint conf" - << ", message: " << e.what(); - return -1; - } - return 0; -} - -int EndpointConfigManager::init_one_variant(const configure::VariantConf& conf, - VariantInfo& var) { - try { - // Connect - const configure::ConnectionConf& conn = conf.connection_conf(); - - PARSE_CONF_ITEM(conn, var.connection.tmo_conn, connect_timeout_ms, -1); - PARSE_CONF_ITEM(conn, var.connection.tmo_rpc, rpc_timeout_ms, -1); - PARSE_CONF_ITEM( - conn, var.connection.tmo_hedge, hedge_request_timeout_ms, -1); - PARSE_CONF_ITEM( - conn, var.connection.cnt_retry_conn, connect_retry_count, -1); - PARSE_CONF_ITEM( - conn, var.connection.cnt_retry_hedge, hedge_fetch_retry_count, -1); - PARSE_CONF_ITEM( - conn, var.connection.cnt_maxconn_per_host, max_connection_per_host, -1); - PARSE_CONF_ITEM(conn, var.connection.type_conn, connection_type, -1); - - // Naming - const configure::NamingConf& name = conf.naming_conf(); - - PARSE_CONF_ITEM(name, var.naminginfo.cluster_naming, cluster, -1); - PARSE_CONF_ITEM( - name, var.naminginfo.load_balancer, load_balance_strategy, -1); - PARSE_CONF_ITEM( - name, var.naminginfo.cluster_filter, cluster_filter_strategy, -1); - - // Rpc - const configure::RpcParameter& params = conf.rpc_parameter(); - - PARSE_CONF_ITEM(params, var.parameters.protocol, protocol, -1); - PARSE_CONF_ITEM(params, var.parameters.compress_type, compress_type, -1); - PARSE_CONF_ITEM(params, var.parameters.package_size, package_size, -1); - PARSE_CONF_ITEM( - params, var.parameters.max_channel, max_channel_per_request, -1); - // Split - const configure::SplitConf& splits = conf.split_conf(); - - PARSE_CONF_ITEM(splits, var.splitinfo.split_tag, split_tag_name, -1); - PARSE_CONF_ITEM(splits, var.splitinfo.tag_cands_str, tag_candidates, -1); - if (parse_tag_values(var.splitinfo) != 0) { - LOG(ERROR) << "Failed parse tag_values:" - << var.splitinfo.tag_cands_str.value; - return -1; - } - - // tag - PARSE_CONF_ITEM(conf, var.parameters.route_tag, tag, -1); - } catch (...) { - LOG(ERROR) << "Failed load variant from configure unit"; - return -1; - } - - return 0; -} - -int EndpointConfigManager::merge_variant(const VariantInfo& default_var, - const configure::VariantConf& conf, - VariantInfo& merged_var) { - merged_var = default_var; - - return init_one_variant(conf, merged_var); -} - -int EndpointConfigManager::parse_tag_values(SplitParameters& split) { - split.tag_values.clear(); - if (!split.split_tag.init || !split.tag_cands_str.init) { - LOG(WARNING) << "split info not set, skip..."; - return 0; - } - - static const char SPLIT_DELIM = ','; - const std::string& tag_str = split.tag_cands_str.value; - std::string::size_type start_pos = 0; - std::string::size_type end_pos; - - do { - end_pos = tag_str.find(SPLIT_DELIM, start_pos); - std::string tag_value_str; - if (end_pos == std::string::npos) { - tag_value_str = tag_str.substr(start_pos); - } else { - tag_value_str = tag_str.substr(start_pos, end_pos - start_pos); - start_pos = end_pos + 1; - } - - split.tag_values.push_back(tag_value_str); - } while (end_pos != std::string::npos); - - return 0; -} - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu - -/* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */ diff --git a/sdk-cpp/src/endpoint.cpp b/sdk-cpp/src/endpoint.cpp deleted file mode 100644 index 3a30a0de6465512e647321c07637692599f1890b..0000000000000000000000000000000000000000 --- a/sdk-cpp/src/endpoint.cpp +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "sdk-cpp/include/endpoint.h" -#include "sdk-cpp/include/factory.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -int Endpoint::initialize(const EndpointInfo& ep_info) { - _variant_list.clear(); - _endpoint_name = ep_info.endpoint_name; - _abtest_router = static_cast(ep_info.ab_test); - uint32_t var_size = ep_info.vars.size(); - for (uint32_t vi = 0; vi < var_size; ++vi) { - const VariantInfo& var_info = ep_info.vars[vi]; - Variant* var = new (std::nothrow) Variant; - if (!var || var->initialize(ep_info, var_info) != 0) { - LOG(ERROR) << "Failed initialize variant, tag:" - << var_info.parameters.route_tag.value - << ", endpoint: " << ep_info.endpoint_name - << ", var index: " << vi; - return -1; - } - _variant_list.push_back(var); - LOG(INFO) << "Succ create variant: " << vi - << ", endpoint:" << _endpoint_name; - } - - return 0; -} - -int Endpoint::thrd_initialize() { - uint32_t var_size = _variant_list.size(); - for (uint32_t vi = 0; vi < var_size; ++vi) { - Variant* var = _variant_list[vi]; - if (!var || var->thrd_initialize()) { - LOG(ERROR) << "Failed thrd initialize var: " << vi; - return -1; - } - } - LOG(WARNING) << "Succ thrd initialize all vars: " << var_size; - return 0; -} - -int Endpoint::thrd_clear() { - uint32_t var_size = _variant_list.size(); - for (uint32_t vi = 0; vi < var_size; ++vi) { - Variant* var = _variant_list[vi]; - if (!var || var->thrd_clear()) { - LOG(ERROR) << "Failed thrd clear var: " << vi; - return -1; - } - } - return 0; -} - -int Endpoint::thrd_finalize() { - uint32_t var_size = _variant_list.size(); - for (uint32_t vi = 0; vi < var_size; ++vi) { - Variant* var = _variant_list[vi]; - if (!var || var->thrd_finalize()) { - LOG(ERROR) << "Failed thrd finalize var: " << vi; - return -1; - } - } - LOG(INFO) << "Succ thrd finalize all vars: " << var_size; - return 0; -} - -Predictor* Endpoint::get_predictor() { - if (_variant_list.size() == 1) { - if (_variant_list[0] == NULL) { - LOG(ERROR) << "Not valid variant info"; - return NULL; - } - return _variant_list[0]->get_predictor(); - } - - if (_abtest_router == NULL) { - LOG(FATAL) << "Not valid abtest_router!"; - return NULL; - } - - Variant* var = _abtest_router->route(_variant_list); - if (!var) { - LOG(FATAL) << "get null var from endpoint"; - return NULL; - } - - return var->get_predictor(); -} - -int Endpoint::ret_predictor(Predictor* predictor) { - const Stub* stub = predictor->stub(); - if (!stub || stub->return_predictor(predictor) != 0) { - LOG(ERROR) << "Failed return predictor to pool"; - return -1; - } - - return 0; -} - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/src/predictor_sdk.cpp b/sdk-cpp/src/predictor_sdk.cpp deleted file mode 100644 index 246ac66f2d07f3c1becd7ab6c05be929c5003a03..0000000000000000000000000000000000000000 --- a/sdk-cpp/src/predictor_sdk.cpp +++ /dev/null @@ -1,119 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "sdk-cpp/include/predictor_sdk.h" -#include "sdk-cpp/include/abtest.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -int PredictorApi::register_all() { - if (WeightedRandomRender::register_self() != 0) { - LOG(ERROR) << "Failed register WeightedRandomRender"; - return -1; - } - - LOG(WARNING) << "Succ register all components!"; - - return 0; -} - -int PredictorApi::create(const char* path, const char* file) { - if (register_all() != 0) { - LOG(ERROR) << "Failed do register all!"; - return -1; - } - - if (_config_manager.create(path, file) != 0) { - LOG(ERROR) << "Failed create config manager from conf:" << path << "/" - << file; - return -1; - } - - const std::map& map = _config_manager.config(); - std::map::const_iterator it; - for (it = map.begin(); it != map.end(); ++it) { - const EndpointInfo& ep_info = it->second; - Endpoint* ep = new (std::nothrow) Endpoint(); - if (ep->initialize(ep_info) != 0) { - LOG(ERROR) << "Failed intialize endpoint:" << ep_info.endpoint_name; - return -1; - } - - if (_endpoints.find(ep_info.endpoint_name) != _endpoints.end()) { - LOG(ERROR) << "Cannot insert duplicated endpoint:" - << ep_info.endpoint_name; - return -1; - } - - std::pair::iterator, bool> r = - _endpoints.insert(std::make_pair(ep_info.endpoint_name, ep)); - if (!r.second) { - LOG(ERROR) << "Failed insert endpoint:" << ep_info.endpoint_name; - return -1; - } - - LOG(INFO) << "Succ create endpoint instance with name: " - << ep_info.endpoint_name; - } - - return 0; -} - -int PredictorApi::thrd_initialize() { - std::map::const_iterator it; - for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { - Endpoint* ep = it->second; - if (ep->thrd_initialize() != 0) { - LOG(ERROR) << "Failed thrd initialize endpoint:" << it->first; - return -1; - } - - LOG(WARNING) << "Succ thrd initialize endpoint:" << it->first; - } - return 0; -} - -int PredictorApi::thrd_clear() { - std::map::const_iterator it; - for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { - Endpoint* ep = it->second; - if (ep->thrd_clear() != 0) { - LOG(ERROR) << "Failed thrd clear endpoint:" << it->first; - return -1; - } - } - return 0; -} - -int PredictorApi::thrd_finalize() { - std::map::const_iterator it; - for (it = _endpoints.begin(); it != _endpoints.end(); ++it) { - Endpoint* ep = it->second; - if (ep->thrd_finalize() != 0) { - LOG(ERROR) << "Failed thrd finalize endpoint:" << it->first; - return -1; - } - - LOG(INFO) << "Succ thrd finalize endpoint:" << it->first; - } - return 0; -} - -void PredictorApi::destroy() { return; } - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu diff --git a/sdk-cpp/src/variant.cpp b/sdk-cpp/src/variant.cpp deleted file mode 100644 index 5657c36b5909f7608293172fc2f6c5847bc3aecf..0000000000000000000000000000000000000000 --- a/sdk-cpp/src/variant.cpp +++ /dev/null @@ -1,142 +0,0 @@ -// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved. -// -// Licensed 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. - -#include "sdk-cpp/include/variant.h" -#include "sdk-cpp/include/factory.h" - -namespace baidu { -namespace paddle_serving { -namespace sdk_cpp { - -int Variant::initialize(const EndpointInfo& ep_info, - const VariantInfo& var_info) { - _endpoint_name = ep_info.endpoint_name; - _stub_service = ep_info.stub_service; - - _variant_tag = var_info.parameters.route_tag.value; - _stub_map.clear(); - - const SplitParameters& split_info = var_info.splitinfo; - uint32_t tag_size = split_info.tag_values.size(); - for (uint32_t ti = 0; ti < tag_size; ++ti) { // split - Stub* stub = StubFactory::instance().generate_object(_stub_service); - const std::string& tag_value = split_info.tag_values[ti]; - if (!stub || - stub->initialize(var_info, - ep_info.endpoint_name, - &split_info.split_tag.value, - &tag_value) != 0) { - LOG(ERROR) << "Failed init stub from factory" - << ", stub name: " << ep_info.stub_service - << ", filter tag: " << tag_value; - return -1; - } - - // 判重 - std::map::iterator iter = _stub_map.find(tag_value); - if (iter != _stub_map.end()) { - LOG(ERROR) << "duplicated tag value: " << tag_value; - return -1; - } - _stub_map[tag_value] = stub; - } - - if (_stub_map.size() > 0) { - LOG(INFO) << "Initialize variants from VariantInfo" - << ", stubs count: " << _stub_map.size(); - return 0; - } - - Stub* stub = StubFactory::instance().generate_object(ep_info.stub_service); - if (!stub || stub->initialize(var_info, _endpoint_name, NULL, NULL) != 0) { - LOG(ERROR) << "Failed init stub from factory" - << ", stub name: " << ep_info.stub_service; - return -1; - } - - _default_stub = stub; - LOG(INFO) << "Succ create default debug"; - return 0; -} - -int Variant::thrd_initialize() { - if (_stub_map.size() <= 0) { - return _default_stub->thrd_initialize(); - } - - std::map::iterator iter; - for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { - Stub* stub = iter->second; - if (!stub || stub->thrd_initialize() != 0) { - LOG(ERROR) << "Failed thrd initialize stub: " << iter->first; - return -1; - } - LOG(INFO) << "Succ thrd initialize stub:" << iter->first; - } - - LOG(WARNING) << "Succ thrd initialize all stubs"; - return 0; -} - -int Variant::thrd_clear() { - if (_stub_map.size() <= 0) { - return _default_stub->thrd_clear(); - } - - std::map::iterator iter; - for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { - Stub* stub = iter->second; - if (!stub || stub->thrd_clear() != 0) { - LOG(ERROR) << "Failed thrd clear stub: " << iter->first; - return -1; - } - } - return 0; -} - -int Variant::thrd_finalize() { - if (_stub_map.size() <= 0) { - return _default_stub->thrd_finalize(); - } - - std::map::iterator iter; - for (iter = _stub_map.begin(); iter != _stub_map.end(); ++iter) { - Stub* stub = iter->second; - if (!stub || stub->thrd_finalize() != 0) { - LOG(ERROR) << "Failed thrd finalize stub: " << iter->first; - return -1; - } - } - return 0; -} - -Predictor* Variant::get_predictor() { - if (_default_stub) { - return _default_stub->fetch_predictor(); - } - - return NULL; -} - -Predictor* Variant::get_predictor(const void* params) { - if (_default_stub) { - return _default_stub->fetch_predictor(); - } - - return NULL; -} - -} // namespace sdk_cpp -} // namespace paddle_serving -} // namespace baidu