You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pegasus.apache.org by gi...@apache.org on 2022/06/23 07:25:49 UTC

[incubator-pegasus] branch dependabot/pip/python-client/cryptography-3.3.2 updated (88a8773ea -> fd4d73405)

This is an automated email from the ASF dual-hosted git repository.

github-bot pushed a change to branch dependabot/pip/python-client/cryptography-3.3.2
in repository https://gitbox.apache.org/repos/asf/incubator-pegasus.git


 discard 88a8773ea build(deps): bump cryptography from 3.2 to 3.3.2 in /python-client
     add 357b918be remove rdsn
     add 16313f89d Initial commit
     add a8e3f19c3 init commit
     add 7e3d6fb9c makefile.common edited BOOST => SYS
     add 4986ace6e fix bug related to rdsn_assert(xxx) to rdsn_assert(xxx, "") replacement
     add 91425a2e4 (1) remove primary service engine; (2) enabe port = 0 for not opening listen port for clients
     add fca03d8bb (1) rdsn_xxx to rxxx for logging; (2) client port sent to server  for better tracing logs
     add 1831e8770 add homepage of the wiki
     add 75ec066b5 avoid start network multiple times for different channels when they share the same channel with the same port
     add 2ea5f5d4a set reuse to true for boost asio acceptor to avoid already in used socket error
     add 8f56457de remove unnecessary msg header fields
     add 31ca812e1 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add aa51de46f add wiki data from zion
     add 15e058120 fix bug about boost asio usage: sequential send for the same connection
     add c4051d1c7 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add caed5d76b (1) add libboost libs for vs2013 (2) fix bug about enable_shared_from_this
     add 390b94a15 remove regex lib that is too large to be committed
     add f2a13e4ff add libs
     add af032b28d add large libs as zip files
     add 517c82a07 add license header
     add dfcf59f82 add license file
     add 683746e8e Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 98dff9b43 refine fd
     add e703f0ba9 append __in __out __inout with _param to avoid conflictions in ubuntu
     add 8d5e471c8 it is now built under ubuntu 14.04
     add 749bf3465 change in code name from rdsn to dsn
     add 8c95e4016 fix naming issue in config files too
     add 6e19e417a remove unused headers
     add faea09f26 relocate dist framework to src/dist dir (replication is a todo next)
     add 4578a7350 fix link to failure detector project in vs sln file
     add 4d05870dc nits
     add d5adae8f1 implement aio for linux
     add e9f41d483 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add be436d4a9 expand macro to avoid define __TITLE__ in header file (which is conflcting with others in .cpp files)
     add 71d94e7b6 fix vcxproj issue
     add ada03f5dc fix marshall/unmarshall for zero-length string/blob
     add 7a21e6094 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add 2a7b44562 remove libboost libs, use dedicated repo instead
     add 4cde06b58 fix makefile for enabling make under both mac and ubuntu
     add ff06bf6ce fix makefile for ubuntu build
     add a8d45a0bf fix bug about memset
     add 58c3f3e31 refine home page
     add 32ad2ca23 fix a bug about eror code usage; add assertion for precaution
     add 27307776e integrate fix for replication
     add ee3e9faa4 refine echo
     add 820090218 nits
     add 2a275e6e4 refine text on goals
     add 6b6a6a25a fix nits
     add fdb2dc8e0 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 394af649e add typed async rpc handler support
     add 34d5c17a8 (1) add rpc_replier for async rpc handler; (2) change boost::sharedptr to std ver
     add 2d6d90dd2 nits
     add 663fa247c add features in wiki
     add ddff01bf0 nits
     add f262a6463 divide the features into multiple aspects
     add 43e14f99b refine the format
     add 16e5bd847 Home.md edited online with Bitbucket
     add d35011d92 Home.md edited online with Bitbucket
     add 27fae4ad9 Home.md edited online with Bitbucket
     add 76ce16de7 Home.md edited online with Bitbucket
     add d1e171b17 Home.md edited online with Bitbucket
     add e733a59f5 Home.md edited online with Bitbucket
     add 68e4545ce Home.md edited online with Bitbucket
     add 73a74de6b Home.md edited online with Bitbucket
     add cf73b0474 add support for hex int config
     add f50a937ce update makefile to ensure all configures are copied automatically
     add 92f79cd95 add sample IDL file
     add 962c43b34 add thrift_helper
     add db1e0e2e8 add message parser and net_io
     add 3433fa34d (1) refine net_io as client & server base; (2) add thrift message parser
     add af5a38758 add more logs in network
     add 0c789233b add fast_execution_in_network support; refine echo bench
     add 39d514a4a nits for ubuntu compile
     add 49867e55d fix for ubuntu compile
     add 1a255c37a add multi-format network support (by opening multi ports - each for different formats)
     add b6e85a307 rdsn service invoked from thrift client test OK
     add 3fd2b0153 from (int)xxx to static_cast<int>(xxx)
     add 8fe7cdd49 fix conversion error for thrift on windows
     add 1689dddc6 fix conversion error for unbuntu compilation
     add 120c8472b Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add cbdaf2d39 fix trift
     add 3e9e6ba1d add safety check for simulator
     add 33a8f1407 remove uncessary check for simulator
     add 7176c9ba9 thrift-rdsn inter-op success!
     add d20f24d11 refine svc interface
     add 5d3e1badb move client connect outside lock
     add 745a10080 add serverlet
     add 73bae4420 refine dsn.dev interface
     add df29f9e2e add missing source file
     add e7cc2f5da fix bug that make ubuntu compile failure due to interface changewq
     add cd28ec026 remove redundnat typedef
     add 508c07a5c (1) refine task delay; (2) fix bug for timer task cancelling
     add 2fb3c6946 enable safe run for empty callbacks
     add 81c1df2d5 remove wiki wq
     add 4b99e8542 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add ed5806fa8 fix port assignment bug
     add ba2a0e463 demo debugging for replication
     add 865016a9f DEMO - fix a bug related to membership sync
     add f133b70f8 DEMO. disable invalid remote status change
     add 79bddd581 refine config and task pool settings
     add 4be52ac44 DEMO : the assign primary with replica close bug (the paper bug)
     add ff73360fd DEMO replicas closed in the middle of ASSIGN_PRIMARY
     add e5092c6c3 DEMO 43018 bug fix for potential secondary with meta server disconnect at time where it is ready for being secondary
     add 42b522ce3 DEMO fix bug when meta server disconnect via add_secondary reconfig
     add fbf76b060 fix bug when timeout == INFINITE for std::cond_var
     add af3120c82 add execution delay fault injection
     add 92810bcb8 (1). enable core dump on windows; (2). add project name in license headers
     add e8322c7a4 enable timer randomization
     add 6d0348590 use code gen for FD implementation
     add 741b5aa1c (1) add IDL for replication; (2) refactor coding style in replication
     add b3e49747e add IDL file for replication
     add 6d9e8df95 add service IDL for replica server and meta server
     add 6ab32f14a add simple_logger
     add 4611b5c14 fix bug about serialization size (note sizeof(xxx) != serialization size even for pod)!!!!
     add 4485f5f62 enable auto-create dir for simulation test
     add 7ff6ebb99 add transient_inactive for directly upgrade checking
     add 0e9dbaf1e fix ubuntu compilation error
     add 2826fcef6 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add d8be34707 (1) add chained_rpc (2) init learn state in ctro
     add a64aa568e inactive when reconfig or meta server disconnect
     add a381020d2 MARK: replication is stable before this commit
     add 368e1310f make sure it compiles ok on ubuntu
     add 0c75bae8a add php definition for an input IDL file
     add 68f6d1b00 (1) delete profiling result; (2) fix replication refactoring bugs
     add 9ddd9d669 fix compilation warnings on ubuntu
     add 760a0bd67 refine coding style
     add f1fcdb2b7 nits for code style refactoring
     add 874aa5328 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add edc8c006f add php script mark
     add be0c85040 fix issue for mac compilation
     add 6fde376d8 refine php types
     add c83fe494e refine php type defs
     add 94a7c9cd4 add code gen tools and templates
     add 6a6bdbf0f add more code templates
     add 0f8380dba remove absolute path in bath
     add ed095a247 add type template
     add 67d226b55 add replication c/s templates
     add a89614de8 Initial cmake support.
     add cdb0c846b Eliminate POSIX deprecation warnings by defining _CRT_NONSTDC_NO_DEPRECATE for Windows.
     add e8b355d12 data types conversion.
     add 42fb4cf46 add wiki docs
     add 9694e7909 Contribute.md edited online with Bitbucket
     add 70a787c47 remove wiki docs
     add ec28eee43 refine code generation
     add de46e6160 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 44277bc93 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 0102de4d6 Define "_CONSOLE" for visual studio configurations in dsn_set_compiler_flags().
     add 2c4a0f29e Check the return value of ::fread().
     add 1cc8a4abd The minimum version of CMake is now 2.8.8.
     add 7cbfc4941 The return value of fread should be the number of items read.
     add 938073ee9 remove unnecessary makefiles and solution files as now we use cmake to generate them automatically
     add 3f05913d4 add announcement docs
     add 112657c40 refine code generation scripts
     add 5b6acc686 Install executables in each sub-directory.
     add e5fd5323d Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add dff78f677 refine bash shell for codege
     add 8d8e65ba5 add php after <? for execution under ubuntu
     add 66326721b add release notes
     add d3bb889cb Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add dd0f81ad2 remove wiki as they are now in a separated repo
     add f797969e6 add install for code generation in CMake
     add b40192d4f add makefile template
     add 9b241babc fix php templates for compilation ok on ubuntu
     add 969072128 clean up makefile template
     add 303896e7a clean up makefile to pass ubutntu tutorial make
     add ae631fbfa Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add b7f414510 add support for server designation for each rpc client call besides binding for the client at the ctor time
     add 480891ae1 move fd's headers to dsn public dir (make it ready for publishment)
     add 19f812119 Don't install executables by default.
     add 17201dc0a add nfs_node component abstraction so people can use dedicated implementation of nfs
     add 399375759 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add f59061828 Modulize CMakeLists.txt
     add d54b5af81 add task call count matrix in profiler
     add d8281eaa7 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add cdbea9d9b task_merger.h deleted online with Bitbucket
     add 036b44eee Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add c37195f27 Move dsn.cmake to cmake/, and install it.
     add fa1f597d7 CMakeLists.txt code generation.
     add f894739fa fix profiler error when caller is null
     add 90626e094 make sure the project can compile using vs 2012
     add ee26d88c1 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 04d1dcf39 Merge branch 'master' of https://imzhenyu@bitbucket.org/imzhenyu/rdsn.git
     add 148399d66 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 73d1b1ab9 Add missing CMakeLists.txt.php
     add 38b0e7471 1. Use '/' as the directory separator on Windows too. 2. Remove DSN_EXTRA_TARGETS.
     add 8730a5fd4 Use DSN_PEDANTIC to control whether treat warnings as errors.
     add caf15205a refine the announcement
     add 1cdb3eb8c 1. CMAKE_BUILD_TYPE could be empty. 2. Find sources recursively only when DSN_RECURSIVE_SRC is set to "1"(true). 3. Make ms_link_static_runtime() a function instead of a macro, and save flags to cache.
     add 76b7b85ad refine the code and templates for the turotial
     add 36aa7a451 move replication sdk to inc/ dir
     add 2ebb5da89 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 37c1cf8f2 Bug fix.
     add b8fbc3d8c fix compilation error on ubuntu
     add ed0bab1cf rename inc/ to include/; codegen/ to bin/ so that the source dirs will be the same with that after installation
     add d4be7eb92 fix inc to include
     add 720cf8457 mv dsn.cmake from cmake dir to bin dir
     add e3889f454 add files for simple_kv replication
     add 93bcfee1f fix replication library order
     add 071f85b00 refine templates and replication headers so that replication code gen is working
     add f6191d67e revert makefile for simple kv
     add cf6f23fb8 make sure replication code gen works under ubuntu
     add fc7b5ae03 (1) add annotations for IDL files (2) replication code gen and compilation ok with annnotations
     add 269586a86 add timestamps to the logs
     add 6fd8f2c86 (1) refine replication code (naming conventions) (2) set absolute timeout value in rpc message to ensure correct timeout calc
     add ef36d3361 update config file for simple kv example
     add 304a08b5f enable quick load balance when config changes for a replica to enable quick reconfiguration (instead of waiting for LB timer)
     add a307f8be6 enable code gen for thrift encoding/decoding
     add 354439024 register thrift message parser in main for inter-operation
     add a495da1e0 fix nits on namespace change for thrift helper utilities
     add 734487b43 fix timed task scheduling - using top level service API to ensure empty tasks are executed inline to avoid deadlock when worker_count == 1 for [default]
     add 44986d3f5 enable multi-port multi-channel and multi-format RPC.
     add fa6ae9c19 fix nits on network config parsing
     add b05001504 refine from address logging (use the primary address instead of the app_id)
     add c420e749b add test project
     add a5b3f8157 add google protobuf support for data encoding/decoding
     add 2a39ad75c add proto file for ps as another example
     add 09ac49b20 enhance code generation for embedded types in gproto
     add e2c2b80be fix bug related to type generation for proto with multiple layers
     add ed3cf8dce rename metas to meta
     add 3997faed1 renmae compact to flush for replication app base
     add 4ac305a87 remove mutation batch support to simplify
     add fe791711c (1) eliminate unused fileds; (2) move timer randomization from dev to core
     add 8bdf0fb58 update license header
     add 4ca51023e refine license header
     add 3f30ef1f7 add context parameter for response only rpc callback
     add a0f2006f7 add command manager and clie app
     add b7dd97ce3 auto sleep in dsn::system::run
     add 64e6d1c36 add perf counter impl
     add 4f7015602 refine announcement doc
     add 51ea0c942 d:/rdsn/src/tools/common/native_aio_provider.win.cpp
     add 54c31a776 nits
     add fb8a778e6 nits
     add 7ec0ae09f nits
     add a8e482bee (1) enable extension propagation from requst to response (locally) (2) refine announcement a little bit
     add c2476e6b9 further refinement of the announcement
     add 6155a85c1 refine cn version of annoucement
     add 8afa1e1d5 update announcement format
     add c8ecc23ca Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add a465e3101 Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add ec4e6bbd2 (1) remove config parameters as config() is now global (2) refactor simple perf counter code
     add 21dc710eb remove unnecessary config warnings
     add 99d13166b make sure ubuntu build ok
     add abd9f0616 reorder counter percentil order to ensure it works
     add 2abcc996f add randomization for avoiding simul computation
     add 09aaab816 delete perf counter on dispathcer counter exit
     add 391652c03 add announcement v6
     add 16cde7e80 incorporate Lintao's fix
     add 54cd05a9f (1) add on_create_response join point for rpc request::create_response (2) fix nits in profiler and zlock etc.
     add 8be6b9bb9 add remote cli support
     add 5704a28af refine config for cli
     add acf8f51a6 (1) simply app node mapping as 1:1 instead of N:1 (2) move global states into one single global var dsn_all to simplify global inspection
     add f0db441d1 make enqueue consistent for common tasks and rpc response tasks using the same interface "enqueue()"
     add 0a6153db6 nits
     add 9129d92b5 nits
     add 138590800 fix bin place error
     add ae340d6dd (1) add more randomization in simulator  (task queue) (2) refine network structure to support multi-channel, multi-header-format, and multi-port
     add 960132926 ip:port format from %s:%u to %s:%d
     add 7b835a95b add catch for socket set option as it fails on mac
     add 97578e324 fix va_list twice segmentation bug on linux
     add ce14c5ecd Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add df15ee870 add errno in log message when aio_write failed
     add 1402186f9 remove test project
     add 829c20dd0 dump assert expression in logs
     add affd086cf add support for meta server durability
     add 0dd10cdbe meta service durablility test roughly done
     add 149146347 fix bug in replication client when partition configuration is out-dated.
     add c734650db fix file mode settings in linux
     add 5e4335d5a nits
     add d02744aea Merge branch 'master' of https://bitbucket.org/imzhenyu/rdsn
     add 54e272be4 remove docs
     add f42e1a47d Update README.md
     add aeed8519a Update README.md
     add f2bb730f5 Update README.md
     add e072d250c Update README.md
     add 2fb2642dd Update README.md
     add 6eeeba7ee Update README.md
     add 6178fe256 Update README.md
     add b5169884a Update README.md
     add 20dacd45f Update README.md
     add 89620c926 Update README.md
     add c7ee8da0c Update README.md
     add 3f5d2cb30 Update README.md
     add a7eff1551 Update README.md
     add b1a9c101f Update README.md
     add fce8a44f9 Update README.md
     add 95e06f585 change generated server name
     add 4496908e3 Update README.md
     add 8cd2f3912 Update README.md
     add 35d03fd05 Update README.md
     add 017166cef Update README.md
     add 86f456004 Update README.md
     add 3b7481d2c Update README.md
     add fed8d6446 Update README.md
     add 9f6a2331e Update README.md
     add 2ecdbe666 Update README.md
     add e7b6a5ab1 Update README.md
     add ef865c4f9 Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 5472ad19c add figures for rDSN
     add 7e20dbe36 Update README.md
     add 2a51557e1 Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 27afd478b resize arch jpg
     add c72067f9f Update README.md
     add 3b4a7e9cd Update README.md
     add 1508b627f Update README.md
     add 64b96cab7 Update README.md
     add 5dec7271a Update README.md
     add 82fe3058a Update README.md
     add a79e12af8 Update README.md
     add 8721887b1 add nfs function
     add 428189527 add nfs function
     add 21979d3f4 fix timeout_ms bug
     add aab281e5f update nfs function
     add 23306316d Update README.md
     add b4144b3e4 Update README.md
     add 051431d10 Update README.md
     add b89da124a Update README.md
     add b2cce54d8 Update README.md
     add ea03b11f3 Update README.md
     add e0deceb8a update layer3 figure
     add 6ab7d1324 Update README.md
     add 31512ae28 Update README.md
     add 4714ee18e Update README.md
     add 55a68097a Update README.md
     add d50e56f7d Update README.md
     add d7c537449 Update README.md
     add 1c87ad687 Update README.md
     add 6b66471a1 Update README.md
     add 6c931d950 Update README.md
     add d02346a0f change network interface into two-level to enable deep customization as more efficient container management, etc.
     add a6da591a1 add figure for dsn_all debugger view
     add f1f94fd1b Update README.md
     add 7de46ba58 Update README.md
     add e19246373 Update README.md
     add 10f65733d Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 916a3c9f1 (1) fix a code generation error (2) add mor logs in task.cpp
     add 63107c185 Update README.md
     add a55151d98 Update README.md
     add 35e9a8427 Update README.md
     add f770b5654 Merge branch 'master' of https://github.com/Microsoft/rDSN
     add ce569a45f add pre-built version of thrift and protoc in bin dir
     add 777a3a054 set exec privilege for thrift and protoc
     add 41952614e Update README.md
     add 8ffccea61 Update README.md
     add 18901ce1e Update README.md
     add 171098707 Update README.md
     add 573ef4bb3 add QR code for rDSN
     add 241b36d7e Update README.md
     add fb6ac468b Update README.md
     add 999d89256 Update README.md
     add 635d85929 Update rpc_engine.cpp
     add 3218f95f3 (1). add more comments (2). add more error code (3). add freeze when the cluster starts to avoid unnecessary fail-over at beginning (4). add client side network configuration support (5). refine test for simple kv
     add 3117bad61 (1) freeze replication reconfiguration if the percentage of originally used machines are not good enough (2) use machine name as well as localhost as addressable names for simulation network (so as to be compatible with native runtime which always uses machine names)
     add b57c52af3 O_BINARY not defined in linux
     add 3556f8b75 update
     add 690390fce update thrift binary
     add bcd1a1750 Add tutoiral links to the top of readme
     add 4bc8dd780 Update README.md
     add ac8ab1a9f add macros for reading structure from configuration
     add 2c499c02e add support for configuration::get_value<unsigned long>
     add 8945e6053 Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 3f2bcb276 update nfs function
     add 4d17cdc78 update nfs function
     add ef22a5dfd update nfs function
     add 76fe9257e update nfs function
     add 3f2197aab refine replication code
     add 2ad38b769 fix hash code error when app_id is known in replication client
     add f63431efe Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 476c4f8c8 update nfs function
     add c234fba74 update nfs function
     add f994d39fe revert rpc_engine.cpp
     add d5c12f9a9 revert native_aio
     add 33abc6461 revert rpc_engine.cpp
     add 508fb4553 revert native_aio
     add a75919502 fix absolute path
     add 6778a920f Merge pull request #1 from lishenglong/master
     add 541f893a8 (1) refactor nfs code (2) integration with replication ok (3) TODO: concurrent copy > 1
     add 467748fb7 using boost filesystem instead of direct.h for portability
     add 1a4e06753 make sure it compiles on ubutnu and with the right file permissions
     add d11c0535c do not remove ps during sync
     add 8eab600d8 async remote file copy invocation in replication
     add b2c7ecef0 set default worker count = 2 for replication thread pools
     add a0e3b3c28 Update README.md
     add b90960edd Merge branch 'master' of github.com:Microsoft/rdsn
     add 00f8356e3 Update README.md
     add bde4d4a0a enable quicker load balancing for primary failure
     add 31f3a304c Merge branch 'dev-rep'
     add f2facc51a log machine failure triggerred updates
     add fca50b500 disk fault injection delay too large
     add 8bd65bbaf add support for .cc files in makefile; fix nit in ubuntu compilation
     add f599383aa add support for command line role and instance number desgination to ease local test
     add 524250598 add loggging level filtering
     add 3f73fe846 enable fault injection off for each task type
     add 92b62afd1 (1) fix incomplete annotation for replication read can also work (2) log error message on file open failure instead of assertions
     add a7643d0a6 profiler
     add 752ec79d6 profiler comment
     add aa55cc268 profiler delete pdh
     add 0c36e41c1 profiler delete pdhcpp
     add d0f50ae3e profiler command update
     add 3fdf5d93c profiler pdh delete
     add 7861ffb51 profiler.cpp format update
     add 2e05c7e83 profiler brace format update
     add 75fe6e921 Merge pull request #3 from zjc95/master
     add 5ed8d58d3 refine profiler related ok. init play with echo seems ok. TODO: numbers are not all right.
     add bf2c607c0 Update README.md
     add 94637e41b Fix error in sort compare function
     add b052a1f15 Merge pull request #9 from lshmouse/master
     add c618bd568 Move OSX protoc/thrift to the corrected directory.
     add 5f6e68765 FreeBSD support.
     add 6c1c237e2 OSX does not define __unix__
     add 2b7f11883 Merge pull request #14 from linmajia/master
     add 05e2d8a14 (1) add global checker support in simulator; (2) init global checker project for replication
     add 214a52808 implement global check rules for replication
     add b7546ae44 add gtest
     add e014e9abc fix makefiles so gtest can be incorporated
     add 97221faf6 fix path settting order for link and output
     add d144b4ee5 add test cases for binary reader/writer
     add ee9860cd8 add more unit test for core and tools
     add e217a241e fix compilation fail on ubuntu for the unit test cases
     add 78f0a65db (1) add code generation for global checkers (2) upgrade system::run interface in code generation for easier launching single role instances without writing another configuration file
     add f389cf095 (1) use new system::run in code generation to enable starting role instances with single config file (2) refine replication checkers (3) simplify random seed setting (4) other nits
     add 693cf38fb fix bug in check.cpp.php code generation file
     add 887f8e561 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 6437cd5ea Merge pull request #15 from imzhenyu/master
     add fb53ad9b2 Merge pull request #16 from imzhenyu/master
     add df99bbe5b Merge pull request #17 from imzhenyu/master
     add 129a79206 Merge remote-tracking branch 'upstream/dev-rep'
     add e2749eebd Merge pull request #18 from imzhenyu/master
     add 84facfe1c add <fstream> in counter.server.impl
     add 2754d880c Merge remote-tracking branch 'upstream/master'
     add 62e46c0f7 add data_dir and learn_dir for replica app base so that learned files are put into different dirs for avoiding conflictions
     add 56f4b9e6d Merge branch 'master' of github.com:imzhenyu/rDSN
     add 6f7b2a16a fix counter tutorial code break due to replication app base dir change
     add 05a2aa024 (1). avoid task wait deadlock warning on cancel (2). add log gc for simple logger (3). enable real replication log gc
     add 0b7e59c91 client cache, test concurrent, fix file size type
     add b7a93b4ab fix variable name
     add bc7493acc fix variable name
     add b073f4600 add comment
     add 16f20b009 handle error, rename variable, client cache, solve confliction of copy request of the same file
     add 18fde7aba Merge branch 'master' of https://github.com/Microsoft/rDSN
     add cecfd60e1 add comment
     add 9c754611d handle concurrent write, test fault injector, test windows and linux
     add 326d79a90 modify resp_copy_file_info
     add b095c1044 modify resp_copy_file_info
     add 10eba0aff Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 5b25963ac fix gc, simulation
     add 23cef1002 add linux kernel aio
     add 0f8f6e883 add if defined
     add 2be2418c1 fix nfs test app
     add 6ca039fee Merge pull request #2 from lishenglong/master
     add 8428bf6a6 Revert "enhance nfs function"
     add 3535bd16e Merge pull request #19 from Microsoft/revert-2-master
     add eb8fd1d38 Merge pull request #23 from imzhenyu/master
     add ccd614209 fix multi-user requests, fix gc
     add 847257968 fix conflict
     add ac83afa2b add linux kernel aio
     add 5c904f8f6 fix multi-user requests, fix gc, fix app
     add ebb170cb8 Merge pull request #22 from lishenglong/master
     add c086999ae (1) refine nfs with concurrent copy/write (2) refine linux native AIO  provider
     add 6865ebbad add lib aio for system libs in dsn.cmake
     add 949415061 Merge remote-tracking branch 'upstream/dev-rep'
     add 91c27fc61 code generation for performance test
     add 2d5645590 fix mutation unmarshall bug
     add cb3d35393 update nfs and linux aio
     add 5378280ee update nfs and linux aio
     add aa1a77dd3 fix nfs gc
     add 669fd64a0 Merge pull request #24 from lishenglong/master
     add b2d74ffbf refine aio error handling
     add 60a8bc8c0 small improve
     add ca1de2f97 Merge pull request #25 from qinzuoyan/master
     add ad646c762 Merge branch 'master' of github.com:Microsoft/rDSN
     add 30a81a85a add cancel_success parameter to task::cancel to return two different values: (1) whether the task is ended (return value) (2) whether cancellation is successful (added parameter)
     add fc226574e Merge pull request #26 from imzhenyu/master
     add 9ec331637 Merge branch 'staging' of github.com:Microsoft/rdsn into staging
     add df758844f fix nits in nfs client and server; memory leak problem remains
     add e03c56d0a fix sleep bug
     add 62a9c1d27 Merge pull request #27 from shengofsun/staging
     add 9873ba6cb fix nits in nfs client and server; memory leak remains
     add 228c7b550 "#pragma once" in a cpp file.
     add a886d8dfd Spelling mistake for the file name of "cheker.cpp".
     add 913083ee3 Merge pull request #28 from linmajia/master
     add b8f6f9821 (1). fix memory leak in nfs due to cyclic ref counter and task cancellation (2). replace tabs with spaces
     add 39ff32715 Merge remote-tracking branch 'upstream/staging'
     add afa08672b replace tab with spaces in code templates
     add 535cac1b1 (1) fix type conversion error on ubuntu (2) fix config.ini code gen for replication. perf test
     add c803870b3 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 40765cfc8 Merge pull request #31 from imzhenyu/master
     add 3e1d0d9fd add quick 2pc support in replication by early acking prepare messages before logging is completed. use [replication] prepare_ack_on_secondary_before_logging_allowed = true to enable this feature.
     add bd81b671d (1) add quick replication option by allowing acking prepare without waiting mutations being durable in replication (2) restructure configurations for network
     add 66f58befc fix compile error on ubuntu due to Goto across local vars definition
     add 3339ef346 add concurrentqueue and implement high performance task queue using this queue lib
     add fcf29a0b4 (1) add high performance sync primitives from external projects (2) perf opt for layer 1 is hal-way
     add 517563f25 (1) lf cannot compile on ubuntu, removed (2) semaphore::wait(timeout) on linux still has issues, to be fixed (3) do not call add_ref on clear_outstanding_tasks as it is possible that it is in the middle of task destruction
     add 4b9cb84cb fix race between task destruction and serverlet destruction
     add 9a0d4c691 update INVALID CRC code
     add eaeb649a9 when timeout is max, using wait() directly to avoid wrong timeout value on different platforms
     add 0cc5ea3f3 nits
     add 39bf45faa fix task_context_manager and servicelet destruction deadlock (Haoxiang/LinMajia)
     add 2b0564cd7 lock performance optimization (1) add more locks, using lightweight locks whenever possible (2) update config files using performance test settings
     add d3723e058 move hpc locks to include dir for sdk publication (for inlining purpose)
     add 63bbfa175 explicitly spcifiy RPC_RPELICATION_WRITE_EMPTY task code for mutation holes on new pirmary
     add 0b0ed0a8f enable gettid in ubuntu by calling syscall
     add 80689a51a Merge branch 'master' of github.com:imzhenyu/rDSN
     add aa33cd605 init _l = 0 in ctor for spin lock
     add da32d31e4 add PS_UPGRADE_TO_PRIMARY to differentiate from assign primary to upgrade secondary
     add c4ad17ea4 (1) make sure atomicity of last committed decre update and state update in the simple-kv example (2) add more response data (partition count) in replication client base to support more complicated client side partitioning policies in the future
     add f44bcbbad (1) set default task bucket count be 8 instead of 1 in servicelet to reduce default contentions (2) remove unnecessary methods in mutation
     add a4a73c300 fix  a bug about read last value when primary switches (it is possible to read an old value due to new primary has not committed previously prepared value yet).
     add c4539f671 remvoe failed secondaries directly when upgrade to primary is designated (no primary available now).
     add 88317269a add override for virtual function for more strict static checking
     add 6d864be60 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 74219d2e2 use memory fence to ensure _instance var is read by all later read instances
     add f3948c6c0 include <atomic> for atomic_thread_fence
     add c4629f862 Merge remote-tracking branch 'upstream/master'
     add d85ede9e8 fix spell error
     add 54e609562 fix spell error
     add b47c438da Merge pull request #32 from qinzuoyan/staging
     add a1bd899ba fix blocking_priority_queue::dequeue's output_param bug
     add f721eacd1 Merge pull request #33 from qinzuoyan/staging
     add 3870e8f2e Merge remote-tracking branch 'upstream/staging'
     add 0f4595336 Merge pull request #34 from imzhenyu/master
     add 61e131e13 Fix compiling on FreeBSD.
     add 0a2a9675c Merge pull request #35 from linmajia/staging
     add d2464adb7 Use integer thread id instead of std::thread_id
     add 3ea42cd8e Merge pull request #36 from linmajia/staging
     add 5db41c766 cleanup ex_locks
     add f7a0e7fff Use -1 as the invalid thread id.
     add 0c112d514 Add macro "ARRAYSIZE".
     add f39a70354 Include <unistd.h> in dsn_types.h
     add 2329ea884 Make code more portable such as defining DSN_PLATFORM_POSIX.
     add 3d7bdbcb0 Merge pull request #38 from linmajia/staging
     add 40c536779 DSN_PLATFORM_POSIX is wrongly placed.
     add 60cd2c359 Merge remote-tracking branch 'origin/staging' into staging
     add 093ea116b Implement set_priority for posix systems.
     add c500ffb93 cleanup replica state configuration
     add ed5bfbe3f automatic performance optimization cleanup
     add c2400cb96 change task::cancel return and parameter to return :(1) finish (2) cancel
     add faf125ba9 fix define title to allow multiple title definitions for logging
     add 740312cef Merge remote-tracking branch 'upstream/staging'
     add 4e0cf435a Merge pull request #39 from linmajia/staging
     add ecc1772cb Merge remote-tracking branch 'upstream/staging'
     add b0e9f1efe add runtime info command for service engine
     add 2e8ad65dd add native thread id to workers for easier debugging
     add 37412d865 Merge pull request #40 from imzhenyu/master
     add 2ef99a5ee Merge remote-tracking branch 'upstream/staging' into staging
     add 0a7df5513 remove unused class variable
     add 0dcfb67a0 remove useless code
     add 5a3d0d370 refactor rpc_engine
     add 4f842d070 merge from qinzuoyan/staging
     add 802bc3c6d fix spelling mistake
     add d4e356b00 some small refactors
     add 8b6d317d8 replace tab to four spaces
     add 974a8997d Merge branch 'staging' of github.com:qinzuoyan/rDSN into staging
     add 5b93cd5f8 Merge remote-tracking branch 'remotes/ms/staging' into staging
     add 2fa7ec1a5 replace tab to four spaces
     add c688bbe92 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add ab618b842 remove useless code
     add 5515292ee Merge pull request #37 from qinzuoyan/staging
     add 534c07b0c Merge branch 'staging' of https://github.com/Microsoft/rDSN into staging
     add 40bb05e4b Notify users to load aio kernel module on FreeBSD.
     add a43c735e8 Merge remote-tracking branch 'origin/staging' into staging
     add ccae6dac0 Prefer pthread on UNIX systems, and add compiler option "-pthread".
     add b3752ea71 1. Use _thread->native_handle() to set thread priority instead of pthread_self(). 2. Implement setting thread names for pthread.
     add 242ce4296 (1) eliminate unnecessary thread pools by adding optoins in config files (2) redefine __TITLE__
     add f7ec6f660 fix nits
     add e0592a0fb update ERR_SUCCESS to ERR_OK to avoid confliction on mac
     add 308d4c8a7 update ERR_SUCCESS to ERR_OK to avoid confliction on mac (2)
     add 8ea5ac972 Merge pull request #41 from linmajia/staging
     add 03a341fd2 Merge remote-tracking branch 'upstream/staging'
     add 7c7075509 get current thread id implementation on mac
     add 2d9ee7204 Merge branch 'master' of github.com:imzhenyu/rDSN
     add dfcd6eb56 Merge pull request #42 from imzhenyu/master
     add 93d5eaff1 Merge remote-tracking branch 'upstream/staging' into staging
     add a325a1df7 Fix the portability issue of pthread_setname_np.
     add 915f3e049 Merge pull request #43 from linmajia/staging
     add 94cf45180 fix LightweightSemaphore::wait(timeout)
     add 9b5cbaaec Merge pull request #45 from qinzuoyan/staging
     add 913718615 Remove unnecessary macro DSN_PLATFORM_POSIX.
     add f244eda93 Merge remote-tracking branch 'upstream/staging' into staging
     add 94f6d1a80 Implement setting cpu affinity for non-windows systems.
     add d54e782cd FreeBSD uses cpuset_t instead of cpu_set_t
     add 2dbf31499 1. Mac OSX uses thread_policy_set() to set thread affinity. 2. Fix a bug which computes wrong cpu bits.
     add 8748cf3a9 Merge pull request #44 from linmajia/staging
     add 4648dc31d add memory allocator provider
     add c6e7c0722 add gperftools/tcmalloc into the ext repo
     add 8a380d5ca add customized memory allocators for services, runtime, and tools
     add ab7a5d2f0 (1) fix allocator compile on linux; (2) uncomment gperftool
     add 5cc7e7ed2 use memory provider instad of memory factory as the factory store template parameter;
     add d020e509d add timing info in echo perf test
     add 488654098 remove reference to gperftools
     add bf08ccd12 (1) optimize spin lock performance use exchange instead of compare_exchange (2) optimize task service owner management performance by using exchange instead of compare exchange (3) optimize std::function copy using std::move (4) optimize task::get_current_xxx performance using inlining
     add 940c9c265 Merge pull request #46 from imzhenyu/master
     add 9826a0dad performance optimizations: (1) avoid using ref counter when necessary; (2) using std::move to avoid copy cost.
     add 71092cdda add a new tasking::enqueue function to ensure happens-before relationship between task caller and task itself, to avoid some race conditions
     add d18034753 (1) fix rw_lock as rw_lock_nr as the current hpc rw lock is non-recursive. (2) refine perf test and now replication can use *ALL* cpu (3) TODO: admission control needs to be refined to address the non-stable CPU performance
     add 73bd8e1de remove rpc_retry_interval_milliseconds to simplify the rpc logic and avoid race conditions between timers and rpc response handling
     add 7ea70c996 (1) use macro for rpc message serialized size(which is a constant) instead of a static function (2) add write_empty method for binary_writer to avoid unnecessary memory copy for dummy write
     add 6b418454a use unordered_map and unordered_set to replace map and set to boost query performance
     add b71e81a47 use boost::intrusive_ptr instead of std::shareed_ptr for rpc_client_matcher
     add ed3f200b1 add hpc tail log for lightweight logging on stress test
     add d35516ef9 register hpc tail log dumper to SYS_EXIT and command manger to trigger its execution
     add 6e4bffb57 dump critical logs on screen
     add de5a46a33 add locks for each request to simplify the code between replicated request timeout and rpc response
     add f5e71093e add sanity check for binary writer
     add d649a3874 fix compilation error on ubuntu about static forward declaration of functions
     add bc9f2c926 Merge branch 'master' of github.com:imzhenyu/rDSN
     add f22bb4e2f Merge branch 'master' of github.com:imzhenyu/rDSN
     add a69ee3028 revert stack-check options in cmake include file
     add e53a4f749 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 50e41e6a3 fix binary writer buffer index when > uint16.max
     add 2d28c4ef1 Merge pull request #48 from imzhenyu/master
     add bc7c4fb04 Fix a typo.
     add b38a37534 Merge branch 'staging' of https://github.com/Microsoft/rDSN into staging
     add cef7bd259 Merge pull request #47 from linmajia/staging
     add cb2699317 use error_code instead of int error in replication layer
     add 305c139e6 enable error code "defined but not used" runtime checking - bugs to be fixed next
     add 074d74da3 fix compilation break due to error_code refactoring (cannot use %x for err)
     add 8c06b7c3b fix unhandled error code (detected by runtime checking in error_code)
     add 9e5e58c4e ensure the mutation log is flushed after ajusting the timer as on-demand
     add d455661a9 use error_code in rpc request/response so we don't need to convert between int and error code to enfore more strict error code handling checking
     add 4a473ff42 Merge pull request #49 from imzhenyu/master
     add 657d40309 fix error print on ubuntu for replica config
     add f8a0402bd Merge pull request #50 from imzhenyu/master
     add 5324d54d0 same small fix
     add 7e85d8f40 fix problem of flush memtable when learn sstables
     add 09d63ede8 1. Change ms_replace_compiler_flags() and ms_link_static_runtime() from function to macro. 2. Use string replacement instead of regex replacement in ms_link_static_runtime().
     add fa00503f2 Merge pull request #51 from linmajia/staging
     add d1e65db82 add payload size option for automated perf test
     add 48373b846 Merge remote-tracking branch 'upstream/master'
     add 6180777d9 Merge remote-tracking branch 'upstream/staging'
     add 7bb8adcb2 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 5acef00fa fix nits about static_cast and binary writer::write(const char[])
     add 3a192c05c Merge pull request #52 from imzhenyu/master
     add fa12e04b6 fix timeout calculation bug in replication client introduced by refactoring
     add 7aee1d209 Merge pull request #53 from imzhenyu/master
     add fa1206c2c fix log gc bug due to parallel prepare (wrong fix before)
     add 2ad0ec8e5 enable benign state unfreeze when LB starts (as all machine assumes alive but state is freezed at the beginning)
     add ce250cc52 fix atol to atoll to avoid integer overflow
     add 92c34d91c Merge pull request #54 from imzhenyu/master
     add a71ac9761 enable log gc for learning replicas
     add 083f1f82a do not do LB on existing primary and secondary nodes
     add 984d0529f (1)add /MP in cmake; (2) better generation of task id; (3) use %hu instead of %d for end point's port;
     add 68a755842 add variable support in config files so as to run multiple native test cases on the same machine with one config file
     add 053e206af fix nits
     add 59f7fd95e Merge pull request #55 from imzhenyu/master
     add 570affd3f Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add d37ce37db Merge branch 'staging' of github.com:qinzuoyan/rDSN into staging
     add 3547d0e28 improve logv() to print line and function
     add a1180e638 move flush memtable logic when learning into rocksdb
     add 48ed25109 Merge pull request #57 from qinzuoyan/staging
     add cb3599874 profiler java script & performace optimization
     add 8eb6da611 delete mongoose
     add da91f021c delete js part
     add 86fe4c8d9 delete js part
     add 47de595b5 delete js part
     add e21de7b7b profiler_command license
     add 6b0fd017e profiler & perf_counter fix
     add 66a854ab9 (1) add c interface for service api; (2) change end_point to dsn_endpoint_t
     add 7f74ebeb9 bounded string copy for task code and end-point.name
     add 4983dbbf0 update dsn_endpoint_t to dsn_address_t
     add acf69913e (1) add description of buffer and msg management in rDSN for zero-copy and mem-reuse; (2) continue implement c API (3) change handle_t to dsn_handle_t
     add 3055c42b2 (1) update C++ wrappers in dev to use the new C service API interface; (2) fix all related issues in apps
     add aea91d8a6 major revision for C interface for layer 1 is mostly done (minor fix required on another machine)
     add 63a356db7 update dsn code generation template to use the new C interface based libs
     add 625400c14 change for dll interface (in the middle)
     add f8263d640 git mv core directories
     add 5647d6694 add shared lib init support with GCC
     add 7f84ff23c (1) define resource management rules for Layer 1 C API (2) add resource gc in C++ wrappers in dev.cpp
     add 3dc82ae79 add_ref and release_ref appropriately for msgs and tasks
     add 2ae2a8baa recover release_ref for tasks w/ delay in simulator scheduler
     add 7d510641a simplify redundant code when rpc callback is empty in C++ wrappers
     add b9e8a5bfc cleanup replica code due to the C interface effort. now it is running.
     add 4179290d4 cleanup service app and mutation
     add a1f9d4812 move task tracker from dev.cpp to core so other language wrappers can benefit
     add 3df086584 (1) remove service namespace in c++ wrappers (2) rename cpp-task_ptr to task_ptr (3) renmae cpp-msg_ptr to message_ptr
     add 7f6e508f4 start csharp wrapper and demo echo exe
     add d51f3a1aa refine C# wrappers for service API
     add 2a8f3902a (1) dllimport in C# cannot return string  (mem ownership) (2) add toggle to turn off nfs_node in engine
     add 1f9e650c7 combine and remove unnecesary task types
     add b46779dfc hold callback global static variables to ensure they are not gced (cause null reference pointers)
     add 626b815ad add GetHash and Equals to all codes for correct comparison
     add ff70043ce add config.ini to echo.csharp
     add 55dfa2714 (1) init multi-language support in code generation (2) refine annotations for native calls in csharp wrapper
     add c7d34b309 refine binary writer, code gen etc.
     add 51293a658 (1) add svchost for general service module loading. (2) mov cli to tools dir with svchost together (3) add csharp code templates (TODO)
     add cc818988e Merge branch 'master' of github.com:imzhenyu/rDSN
     add 279475d65 continue code gen for C#
     add 1946beaab fix compilation bugs on unbuntu
     add 95b39fac2 cmake improvement.
     add 372a2d2c4 checkpoint  adding configuration dsptr (in-progress, build-break, don't sync me)
     add ef409603b (1) add configuration dsptr for get_config (2) fix cpp code gen break
     add 4f0293707 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add d3eb8d258 1. Add missing headers. 2. Fix data type cast issues.
     add 48f89dc11 cmake fix.
     add 5d320983b Only statically link boost on Windows.
     add b277d23ac Link dl on Linux.
     add 41f9bc8df add dsptr paramter to dsn_config_get_vlaue_xxx in csharp
     add 15f613a23 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 87909c112 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 831ae69d1 fix task_tracker error and now simple kv runs ok with the new c api
     add 6210fa041 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 843f07f09 nits.
     add 96b138ca6 fix a bug in msg_binary_io which computes the wrong write size
     add 7828fc044 (1) refact dsn_types.h as ports.h and autoref_ptr.h (2) do not use boost::instrusiveptr, use dsn::ref_ptr instead
     add 476cd55ba add test case for autoref_ptr
     add a5ee2fcc7 (1) enable configuration automatic dump all full config info with helper information (2) change xx.default to xx..default to default is always dumped before the others in dumped config file
     add 9435c5095 fix ubuntu compile break (undefined _t in autoref_ptr
     add 8a07e04c5 refine comments for layer 1 system call
     add ff7ef90d5 remove boost dependencies (not completed)
     add 04b80c772 Merge remote-tracking branch 'upstream/staging'
     add 04a73df75 (1) change aio_ptr to aio* (2) enable faster get_current_tid using tls
     add 6b8f832dc optimize for faster service_engine access
     add 5d603c1c7 enable global checker with new c service api
     add 217153b1e (1). optimize rpc server handling using lambda instead of std::function (2). change dev_cpp_task to safe_task
     add 4fada735e add timer_service role in core, which is previously mixed as part of the task queue role.
     add 1f8aff2ae fix a bug about service app to void* in cpp dev lib
     add 541682752 safe usage of realpath
     add ade6de8d1 Link boost statically on UNIX.
     add 6fd484760 Merge branch 'master' of github.com:imzhenyu/rDSN
     add e650fc9d9 ensure global checker ptr is correct when acrossing c interface
     add ab1712057 when replay a mutation, the mutations may be dropped due to insufficient replica count. therefore we need to remove it in the first place from the prepare list to ensure consistency
     add eb180d9a8 The core project links libraries with LINK_PRIVATE property on Windows.
     add 6a8fec712 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 5b85e9af4 retry when the remote replica is in transient inactive state to avoid unnecessary failover
     add bf8a59059 use 1 partition for perf test
     add e7651cba9 Printing "%" in printf should be "%%".
     add 7bb39d629 Initial support for csharp project.
     add eb1344061 fix memory leak with new safe_task_handle
     add 5b9a41e19 make sure release the local counter in ref_ptr when using rvalue std::move
     add 174735415 Use dos style path for csharp projects on Windows.
     add a969679fd c# projects support update.
     add 45d2e4c5c Use correct path of App.config in echo.csharp
     add c1e1f4b2c Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 618c038f7 c# project support updates.
     add cf96c22ff Convert to dos style path.
     add 8ed529a49 Convert to dos style path.
     add 4dc01acf3 Add config.ini to echo.csharp
     add 560fbdc27 Add config.ini to echo.csharp
     add 4b4084202 Remove unnecessary boost packages.
     add e4420d36a add more schedule point for mc
     add 41f8b207d Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add d28ae941c add warning on get_ioevents failure
     add a687ae72c Prefer static linking on rt and aio.
     add 0ee97f100 Remove binplaces.
     add 5137d4cb2 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 475db31fa improve logging code
     add e47bb96e1 improve logging
     add 3c50237d5 improve perf_test_helper to add perf_test_concurrent_count
     add 2e8c4d1a6 Merge pull request #59 from qinzuoyan/staging
     add b7ee55279 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 5ba98b2a0 improve logging
     add 7b2826977 Merge pull request #60 from qinzuoyan/staging
     add 11a3637c1 Merge remote-tracking branch 'upstream/staging'
     add e3e64044d Merge pull request #61 from imzhenyu/master
     add 24790441b update
     add 03a4b3289 update profiler
     add 569358911 pjs
     add d689f4fe5 fix typo
     add aef521bf8 fix compiler warning of -Wint-to-pointer-cast
     add 01f86f731 Merge pull request #62 from qinzuoyan/staging
     add 768c92bac refine comments for the system call in rDSN
     add 036f9a1b5 crc refinement (test not passed yet)
     add 0e791d7f2 make sure it builds ok on mac
     add 830826de3 Merge remote-tracking branch 'upstream/staging'
     add 8902557ad remove unnessary node parameter for rpc request tasks
     add f0b19ea91 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add e81c006fc (1) add non-recursive lock provider for higher performance (2) add more scheduling points in simulator for finer-grain model checking (3) refine header logging to ensure the headers are correct (node) when in simulator and other threads help enqueue the tasks (or even execute the tasks)
     add feaa5d12a (1) add customized main in gtest  (TODO) (2) refine comments in service api c
     add c38dd09d7 add missing header module_int.cpp.h
     add bd81bac6e (1) add core test project (2) seperate corelib and coredll into two projects
     add ae2600980 separate safe and unsafe single store
     add 87ac1fa27 refine makefiles so apps only linke to dsn.core.so
     add 347fe2406 do not link pthread on windows
     add d91098b2f nits
     add 994c66381 add aio read/write test
     add fe118f407 add more test in core.tests
     add f080fc4c0 (1) seperate lock checker as stand alone file (2) continue more unit tests for core
     add 492970ab6 (1) add completion queue files (2) add dll support for echo and simple_kv
     add 15eebfae4 (1) refine network model so sending queue is handled in rpc session base class (2) add hpc providers (3) add io loopers (4) add per node state support
     add 85ab1d119 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 07abb4bf2 fastrun on windows is built ok (TODO: test on windows; code on linux)
     add d647ef22a add system event support in scheduler; fix unit tests;
     add 2d59afec1 Fix wrong file name.
     add 415cb4aa4 Add missing include file "<sys/epoll.h>".
     add 71c0a7a0c Rename.
     add 5fb924db2 file utility functions such as file tree walker.
     add 925e0f964 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add b52d253cc fastrun on windows test ok with core.test
     add ea7c757fc fix address name bug, maybe produce an unterminated string when name too long
     add bcd16e8ac Merge pull request #64 from imzhenyu/master
     add c1c2f9e7b Merge pull request #63 from zjc95/master
     add 234879fbb Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 12c3f712a re-generate *.types.h from *.thrift
     add 5bb7cd9a5 Merge pull request #65 from qinzuoyan/staging
     add 038f4d8a1 Merge remote-tracking branch 'upstream/staging'
     add 43af7660b 1. Rename function get_file_names to get_files. 2. Rename sftw_fn to sftw_fn_t.
     add 6995cb197 Merge branch 'master' of github.com:imzhenyu/rDSN
     add de35e7575 sync code effort for aio and network with epoll on linux (on-going effort, built-break)
     add 3a67b1d78 continue working on iolooper impl on linux
     add ee56f3734 fix linux build break (test not ok yet)
     add 40124eb57 nits
     add b8d1e7501 Add close_.
     add 7bce93fa5 More file operations.
     add 9b616f155 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 650b69200 Reimplement get_normalized_path.
     add 2f89d1a84 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add f9a88a0e0 Export bool get_normalized_path(const std::string& path, std::string&     npath);
     add f846a9b50 Bug fixes.
     add df68e3785 Unit tests for file operations.
     add 8746cc463 nftw should set flag FTW_ACTIONRETVAL on systems with glibc.
     add 4f6ae43fe Bug fixes.
     add ff3c59eed Non-linux may not define FTW_CONTINUE and FTW_STOP.
     add 5108db6eb looper bind must be after listen so accept call happen after listen
     add 9f76b94c3 epoll is for linux only.
     add 477ca096a Fix the "ignoring return value" warning.
     add 91288a98a Merge branch 'master' of github.com:imzhenyu/rDSN
     add d01f5d15c Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add f2f6e1f2b use non-block connect and epoll
     add 7c4c48d8b core.test hpc test sometimes ok (TODO: sometimes hang)
     add 085644ba7 Add missing "," and ";".
     add 0e625a751 Could not use '' for std::string plus operation.
     add 13a0dac28 Bug fixes.
     add c830a9de5 Bug fixes on Windows.
     add a9d7785a1 use non-semaphore version eventfd for disk aio
     add 6c2f401bf Merge branch 'master' of github.com:imzhenyu/rDSN
     add 4d81ef1e1 merge callback for connect and send/recv in linux epoll
     add 5230efafe Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add d16c883c1 typo.
     add 3d57f96f9 (1) fix compilation error of undeclared _S_IREAD etc. (2) add thread name for io loopers
     add 0f5ae8711 improve message send queue
     add db11fa29b (1) change app_create callback with additional type parameter so languages such as Java and Python can easily create apps with type reflection (2) refine epoll failure handling and sock options
     add 77e603a9a add fast tls_dsn context access
     add fc5876ce9 Fix build break on Linux.
     add f0659a540 set tls dsn for timer service providers
     add acd28ab1a Bug fix.
     add 71388f0cf Rename.
     add 0ec7b10d9 1. Move file operation definitions to utils.h.  2. Move file_utils.cpp to dev/cpp
     add a540ff3b8 Use lamda in file_tree_walk().
     add 7a341a61a Add sys/types.h and sys/stat.h in ports.h
     add fb21e6a96 Add path rename function
     add 22e42da50 Replace boost filesystem functions with ours.
     add 50a3873a7 add io_mode in global service spec config
     add 22d9f04f1 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 0cbc725a0 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add bc4fc4d41 enable io_loop_mode in service gnine spec
     add 6bc45c4bc Use handler pointer in ftw_ctx struct.
     add 8227457d9 Remove "struct" from the constructor.
     add 02083fba7 Add stat64_
     add 9099780b2 1. Reimplement path_exists() using stat64 function. 2. Implement file_size(). 3. Restructure file_utils test.
     add 2bab9fb86 Enable file_size() and add associated tests.
     add afb7261cd Change size type from uintmax_t to int64_t
     add f2ac345bf Use dsn::utils::get_files()
     add ea8598181 Use dsn::utils::get_files()
     add e043dab26 Nits
     add 7a2673645 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 8b4cd26da git bug:(
     add 1e27ebe7f 1. refactor timer service 2. per queue io engine support tested (TODO: timer service)
     add 39d0c0bae Move file operations to dsn::utils::filesystem namespace and delete some obsolete functions.
     add 7cd13f92b Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add ce9e86473 Parameter "path" has been renamed to "path1".
     add 85661f346 Should use _path.c_str() instead of _path.
     add 5f5517669 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 8f91ba2d6 Merge branch 'master' of github.com:imzhenyu/rDSN
     add d91da3c8c (1) refine lock checker (2) fix core tests so tests forbidden by lock checker are not present
     add 810f0a916 Use normalized path in exists().
     add 66a559255 Add a missing check.
     add 1111ca598 Reset author
     add 577abfca7 Merge branch 'master' of github.com:imzhenyu/rDSN
     add c2946004c (1) add config files for testing of simple_kv (2) fix a bug in network session sending queue management
     add 429969d5d 1. Rename remove to remove_path. 2. Rename getcwd to get_current_directory. 3. Rename exists to path_exists.
     add fe4bd8515 Merge branch 'master' of github.com:imzhenyu/rDSN
     add fce4e7f09 (1) move reconnect logic from each rpc client session class to network (later is a TODO) (2) fix nits in blob read
     add 81f3ab296 make module_init as static instead of extern so that it won't find wrong module_init
     add 44132960d 1. Fix the bug in get_current_directory() that does a wrong comparision. 2. Code optimization
     add c11042e8e Fix build break on Linux.
     add ce6b6d8d3 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 29c16c2bd reconnect if not connected before
     add f4ad11918 fix incomplete send on windows with IOCP
     add c02641c2f Forget to remove "%d"
     add f8965daa1 FreeBSD does not have stat64(), therefore use stat() on UNIX since the st_size field is still 64 bit.
     add 09f05565d Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 5c5227d78 merge on_closed and on_failure into one on_failure in network providers
     add 9a0f4fc4f reuse the socket for reconnect
     add 0146e792c merge connection state handling into base class
     add 5e35badce (1) remove unncessary send_messages() (2) fix warnings on linux
     add 2cbb53441 nits
     add d79cde980 fix mix_all_io_looper on linux so core.test works with both PER_NODE and PER_QUEUE
     add 8e33f245f refine epoll net on linux
     add e9db862e0 merge rpc session client type and server type to simplify the code (windows, TODO: linux)
     add 9ebe6f215 add msg sent stat for each session; refine epoll_ctl flags for different ops
     add 7b910e756 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 9306c3be8 add message_sent stat on sessions; other nits;
     add fd895c4ea fix compile error on ubuntu after network refactoring
     add 7be98a1f6 fix concurent send in linux hpc send (due to ugly epoll design:-()
     add 5bcf549e5 Replace boost.
     add bf9e16168 Replace boost.
     add 93f4eb47c 1. Change the file_tree_walk's interface to match ftw. 2. Add path_combine, get_subdirectories functions. 3. Remove Boost.
     add 3178fcf2b Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 866a4d6bb Replace Boost.
     add c90ceff63 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 6ae4ad4c0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add ce61c0116 turn tcp options
     add a8ae29fc0 add io loop timer service implementation (TO BE TESTED)
     add 1ceeb81a4 Fix linux build break.
     add e5db0ce59 Remove unnecesary boost_filesystem library.
     add 7c386ac9a Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 1b0d776c1 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add aaa45cfdb task queue may be shared, so need to check remote timers queue again even count > 0 initially
     add 3d5933bb6 avoid recursive lock on linux epoll loop
     add 8a308b9e6 update echo config
     add 88728e668 remove send/recv blocking optimization which introduces bugs:(
     add c525beb44 log_start_level, not logging_start_level
     add e60e3977a make sure log level is correct
     add ec4d3cd22 add more logs for hpc network on linux with timers
     add fe5482807 add & release context appropriately to ensure the epoll callback won't work with freed context
     add 27808714f fix port print with %hu but not %u
     add de6a261db fix mismatched malloc/delete
     add 5f60242a7 nits
     add 34b9e09bf fix ref counter error about rpc sessios, now echo test with 100+ clients works fin
     add 7ad56f382 remvoe unnecessary io_service member in asio_rpc_session
     add 58555aab7 avoid using move semantic for socket and io service so boost asio with smaller versions can compile
     add 0a340f81f enable seperate configuration of IOE_MODE for rpc/disk/timer/nfs
     add fec58546d enable multi-type dsn_address_t (ipv4, ipv6, and uri). using dsn::rpc_adddress to replcae dsn_address_t in dev.cpp
     add 41984767e fix compile break on linux due to rpc_addresss and dsn_address_t refactoring
     add 1ac0e21ea Add BSD kqueue structure.
     add 5ce76065f Remove the trailing '\0'.
     add 8e6e195e6 1. eventfd is not available on BSD. 2. Add close_completion_queue() for portability.
     add 5d5c46b7a Do not add reference to boost, aio, rt, dl system-widely, and move them to individual projects that really need.
     add 314bc9dfd fix nits in code generation (copy *.ini does work in binplace command)
     add a2e43d8b2 (1). add log_shared and log_private for replication to enable private replication log for each replica (2). add test case for mutation logs (3). replace __out_param with /*out*/
     add 3dda0b109 Comment a message output.
     add e57acc9b9 Remove redundant if-check.
     add 3eee01043 1. Define IO_LOOPER_MAX_EVENT_COUNT 2. BSD still needs _local_notification_fd and _local_notification_callback.
     add e2d13e72b Use unordered_set instead of hash_set.
     add 22c8270b3 Move headers within platform macros.
     add 3b46c42f3 Change the parameter type of on_connect_events_ready() and on_connect_events_ready() from uint32_t to uintptr_t.
     add d92cfac48 Implement io_looper for BSD.
     add 8d73c4377 Forget to include <unordered_set>
     add ae4491412 Fix a copy/paste bug that should return an empty string.
     add 89284bb92 Initial hpc network provider implementation for BSD.
     add 3921023ff Nits.
     add 9d56ffa49 Bug fixes on BSD.
     add c8e888fb3 Forget to add EV_ENABLE.
     add 50d1e10cf pbytes could be null.
     add 3390669b6 Initial hpc aio implementation on BSD.
     add a15f3629d To unix format.
     add 2626f50b7 Nits.
     add 62d000196 Bug fixes.
     add 273e764b1 Bug fixes.
     add 0319d9dc2 hpc is done on BSD.
     add 0a8ad73b4 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 94f6dd065 Check whether the fd is IO_LOOPER_USER_NOTIFICATION_FD.
     add 88c190439 Merge branch 'master' of github.com:imzhenyu/rDSN
     add f941080be add support for service api calls outside rDSN's apps
     add 12a3985d8 Use lseek instead of tell since tell is only available on Windows.
     add 9ca732726 Add missing headers on UNIX.
     add b7d6035e1 __out_param is gone.
     add b0a808ec0 config update.
     add 0fe1f657f config update.
     add bfe4b4eda Merge branch 'master' of github.com:imzhenyu/rDSN
     add 99d29490d add support for service API invocation in non-rDSN threads (e.g., clientlib used in 3rd party services) (TO BE TESTED)
     add a81a66966 kevent flags is a bit mask.
     add 3bc5ed7e5 More parameter validation.
     add 2513c1357 Bug fixes for EVFILT_AIO.
     add aa28a7cae Define EVFILT_READ_WRITE for registering both filters since assertion will be triggered when registering respectively.
     add 160502cce Fix a copy/paste bug from linux mplementation that truncates the kevent pointer.
     add a433a6153 Comment EVFILT_AIO since such an event is auto-registered when aio is executed.
     add 98e94bb2b Assert when gethostbyname fails otherwise wrong ip(-1) will be returned.
     add d16cc5878 Nits.
     add 4a3fa32d1 More error checks.
     add 1852bb08f Merge branch 'master' of github.com:imzhenyu/rDSN
     add 0db08173e Windows does not have hstrerror(), so just print error number.
     add 49ca53ed3 Fix Windows build error.
     add 1cc3d6094 csharp template update.
     add 6d680d1f8 (1). external serivce api call test in dsn.core.tests (2). use code generated `echo' project instead of the manually written one before
     add bcea77dd2 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 8daf42fb4 fix csharp code gen on windows
     add 0813f8bed Set property "Prefer32Bit" to false.
     add 248a447ab use code generated echo.csharp  to replace the old echo.csharp
     add 90ed8ce3e using rpc_read_stream and rpc_write_stream instead of message_ptr to align with other languages' dev libs (e.g., csharp)
     add 904847330 delete csharp dev lib and echo as they are now moved to rDSN-Projects/rDSN.CSharp repo
     add e2adbc0a1 Set DSN_BUILD_RUNTIME to 0 if it is not defined so that apps do not need to know this macro any more.
     add 84c855649 Add debug info.
     add 3c1c6e735 1. Use execute_process() to call msbuild/xbuild on csharp projects. 2. Copy libdsn.core.so/dll to csharp projects' output directories.
     add a32376d86 Bug fix.
     add b3f7cc59d Bug fixes.
     add 8ce6fec1f Merge pull request #67 from imzhenyu/master
     add f94bc2ccf Merge pull request #1 from Microsoft/staging
     add f378e4d6c add test case for invoking service API from non-rDSN threads
     add 010b5edcb Merge pull request #68 from qinzuoyan/staging
     add 2b5404202 Merge remote-tracking branch 'upstream/staging'
     add c9e52eecb merge two tls strucutre (tls dsn and tls task id); make sure they can be inited on-demand so non-rDSN threads service api call can succeed.
     add 5ea380b4d use DSN_ROOT as the installation dir (higher priority than CMAKE_INSTALL_PREFIX)
     add d2090a927 refine perf test configurations and high resolution times
     add 098c976f0 update config file for each with fastrun
     add 5d34b50c7 add support for network message batching
     add da3538f44 add support of rpc message batching on linux
     add 821d9a7d8 dd support for message batching on freebsd
     add 8a7bf633e perf opt: spin locks are costly when confliction is high
     add e874bd599 Merge pull request #69 from imzhenyu/master
     add a5726a08d Merge pull request #2 from Microsoft/staging
     add 44e6816c6 replace tab with 4-space
     add 23cd199fc fix dsn.cmake install problem
     add 84fa4ce0d Merge pull request #70 from qinzuoyan/staging
     add f8ac5fbe8 add comments for dsn_address_t byte order
     add c4a9533fb some small fixes
     add bedae9990 Merge pull request #71 from qinzuoyan/staging
     add 16bd1daab Merge remote-tracking branch 'upstream/staging'
     add 8d4a5608e use queryperformancecounter for high resolution time with good performance (std version runs quite slow)
     add 2d47e0417 use test duration instead of round for test configuration
     add d394a016a add test for mutation log based learning
     add 259a5ec45 using dsn_mimic_app instead of explicit app parameter for external-rDSN API calls so as to make sure there is no inconsistency between tls-dsn.node and user specified app
     add b64ca5305 remove app parameter in templates
     add 2318c5d65 avoid recursive call in mimic_app
     add d5502ddab add support for RPC message forwarding (client-side forwarding now, to be enhanced with server forwarding later)
     add 7853e94c9 (1). add dsn_group_ and rpc_group_address (tobe refined later for c interface) (2). add rpc_group_address (dsn_group)t) into rpc_address (3). embed rpc::call_replicated into rpc_engine using rpc_group_address
     add e5dad2a01 make group rpc call to a replication group (meta servers in this case) a first class support in rpc engine.
     add 1a3336a45 move rpc_group_address to seperated core internal header file so we don't have c interface problem
     add 70e5f4835 working on replication learning using private log (to be continued ...)
     add ed42f29a0 make sure we don't wait inside spin locks in task tracker
     add 9a82fe20b use filesystem::path_combine instead of simple string concatenation to get the full file paths
     add 239382a7c use 0x%x instead of %x in log stmts
     add f3a90b869 fix file traversal bug in file utilities (on windows, not sure others)
     add 14eb07979 enable commit-log and commit-log based learning
     add c74aa3c70 refine replication config files to start nfs to support file-based learning (logs, checkpoints, etc.)
     add 6bcc3b298 when primary dies, and it learns from a new primary, it is possible its commmit decree is larger but not greater than the prepare decree on the new primary. This is valid, and the learning should help commit the decree. (DDD to be handled)
     add 208ad137a (1) add task tracker hack to fix wait/cancel inside spin lock issue (to be fixed with more elegant approaches later) (2) add ref of request message for retrying rpc calls
     add 10f90846e update configurations for batch test of simple kv
     add eaeb2c405 add options for disabling shared prepare log to boost performance
     add d37f4fb95 Bug fixes for file tree walking: 1. Forget to visit sub-directories for non-recursive walking on Windows. 2. Forget to test FTW_DP in get_subdirectories(). 3. Add tests for get_subdirectories() and get_subpaths().
     add 524d5ccd4 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 537c34af6 Merge pull request #72 from imzhenyu/master
     add bc50ded59 Merge pull request #3 from Microsoft/staging
     add 9241cd7cc some refactors
     add b3e890a55 add use_ip_as_name and primary_interface in [network] config section
     add f74a20071 some refactors
     add cdaf35a24 rm replica::_primary_address
     add d8caa4906 add dsn_address_use_ip_as_name and dsn_address_local() in service_api_c.h
     add acf75de79 some fixes
     add c84efbd1c fix configuration bug
     add e43d8de0d smallfix
     add 018eae469 Merge pull request #73 from qinzuoyan/staging
     add 013190e7c Merge remote-tracking branch 'upstream/staging'; rollback some changes about primary address and local ip - will be fixed with the other way with changes to dsn_address
     add 865b2ea97 remove ipv6 support, make sure sizeof(dsn_address_t) == sizeof(uint64_t) == sizeof(rpc_address), simplify lots of address related arguments
     add f04d1bf21 fix compilation and test failure on ubuntu due to refactor
     add 02ed084cf fix C++ codegen due to refactor
     add 5733169bd update configuration ini due to refactor
     add 643ff5769 update app example csharp template due to system call change
     add 9cb2e54a0 Bug fixes for aio on BSD.
     add 4c967a921 pbytes may be null.
     add aa2b62b86 More failure handling in hpc_aio_provider::close().
     add dbc380257 1. Return 0 if failing to get ip from network interfaces. 2. Fix the bug that misses "%s" in printing network interface. 3. More error checking.
     add 65294f1f9 Check return value of gethostname().
     add 281024e66 freeifaddrs does not have return value.
     add 1320f13cf Correct the ip string order since ip is already in host byte order.
     add 1f7263f66 1. Add java support. 2. Check the existence of msbuild.exe or xbuild when building csharp projects.
     add 442240834 add blocking checkpointing support in replication
     add 920483c30 fix compilation error on ubuntu for replica_timer.cpp
     add 82d53b7cd (1). handle DDD by always selecting last dead (2). add more strict state checking for commit logs, prepare logs, and app states.
     add eec961cdb (1). simplify learning by making sure the learning mutation buffer for LearnWithPrepare can fit into prepare list (2). enhance commit log learning by learning buffered mutations as well and flush the current commit log on learning (3). fix commit logs using prepare log due to commit log buffering on process start
     add 5ecf31bb5 Check whether handler is nullptr.
     add 95c3c5fa1 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 318a3daf5 fix ubuntu compilation error
     add 71e9173ba Merge pull request #75 from imzhenyu/master
     add 95ed511dc Merge pull request #4 from Microsoft/staging
     add 62fa6764f rollback gtest cmake file
     add 3213f4d46 Merge pull request #74 from qinzuoyan/staging
     add ab0f9c676 Merge pull request #5 from Microsoft/staging
     add 684f28604 fix join_point bug
     add ef0c4a794 Merge pull request #76 from imzhenyu/master
     add 56159fa33 Merge pull request #77 from imzhenyu/master
     add cbeb57312 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add b54827616 use uintptr_t instead of long
     add 6691db91e Merge pull request #78 from qinzuoyan/staging
     add 37ba86bc7 Merge remote-tracking branch 'upstream/staging'
     add 58d6d2efd 1. fix a stupid bug for reversed if-condition 2. enable delta learning for simple kv for testing
     add 379eb9fe4 Merge pull request #79 from imzhenyu/master
     add 2b6c0c1e4 make sure ERR_OK always registered first as 0
     add 93f65714f make sure ERR_OK is always registered first as 0
     add c585452ec DO NOT USE _DEBUG for error code define switch, as the other projects (e.g., rocksdb) may not match the same macro definition when link against the libraries
     add 823f070bf Merge pull request #81 from imzhenyu/master
     add 8538af5b1 Merge pull request #1 from Microsoft/staging
     add 6bf68d3e6 rpc test cases
     add f1276184a Merge pull request #80 from shengofsun/staging
     add 24a643f64 fix some bugs
     add d9e647d68 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 55ab4c577 fix library_utils
     add 29d27d565 Merge pull request #82 from qinzuoyan/staging
     add 49030c473 fix mutation log test case as now commit log needs to specified explicitly in ctor
     add 7180855cb Fix a bug in the tutorial\counter.replication, changing lock type (non-recursive->recursive), otherwise the replicated version of counter will unexpectedly abort at the second run
     add 4cb159501 Fix a bug in the tutorial\counter.replication, changing lock type (non-recursive->recursive), otherwise the replicated version of counter will unexpectedly abort at the second run
     add 1b8751578 Merge pull request #1 from mcfatealan/changlou
     add c59bc3a9f Merge branch 'master' of github.com:imzhenyu/rDSN
     add c4a4d7f6a enhance group address related test case and api
     add d6a7b7e73 add dsn_msg_copy, and use this to fix the group rpc test to re-send a copied-request (instead of the old one) as the old request is still in sending status even that timeout handler is triggerred already
     add a1b184fdb copy _is_read on mesage copy
     add ac4d8917d Fix a bug in tutorial: counter.replication. The variable was moved before, causing the compiler error. Correct the name.
     add cf5b398b2 Add test and vtest tool to tutorial
     add 42382d26c Merge pull request #2 from mcfatealan/master
     add cd3b58d48 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 5a9ce838d remove unnecessary test code in replica_timer for long checkpoint time
     add 82c7a2854 add disk_file as the internal middle representation for a file handle (redirection layer)
     add 511bdc2ea enable auto batch and throttling for disk file operations per file
     add b519d9639 (1) refine aio test for disk write batching tests (2) remove log_batch_write option as it is now non-configurable in replication (3) fix bugs in disk engine due to io batching
     add 424815434 simplify work queue by not tracking running work items
     add 8e8942d23 make sure our .lib does not link winsock lib to avoid confliction with redis
     add 8f0135fe1 Merge pull request #83 from imzhenyu/master
     add 7d98acd3e Merge pull request #84 from imzhenyu/master
     add 19d225ce9 Merge pull request #6 from Microsoft/staging
     add c6c0496cc smallfix
     add 6831c61b4 add some unit-tests; fix some bugs
     add 5a308362b some fixes to code review
     add 40096a795 Merge pull request #85 from qinzuoyan/staging
     add c250d38e7 Merge remote-tracking branch 'upstream/staging'
     add 0451da716 (1) remove commit log, use prepare log for both shared and private log for simplicity (2) refine mutation_log so shared and private log are treated explicitly (with _shared_xxx, and _private_xxx members) (3) add new learning stage so private log is used for caching (instead of relying on delta state learning) (4) update configuration files for simple kv
     add 5486d40db 1. Bug fixes for get_file_name() and path_combine(). 2. Add unit tests for
     add 04a0d6599 Remove unnecessary get_normalized_path() calls.
     add 99923a738 Remove unnecessary get_normalized_path() calls.
     add 93a39ce0b Unit tests fixes.
     add 9d54a665b Winsock2.h is windows specific.
     add 2d47f20b9 Bug fixes for FreeBSD aio.
     add bd7e1772d Remove O_NONBLOCK when openning a file.
     add 08c217fd6 aio_read cleans aio->cb !
     add 5ad801ec2 1. Use int to store kqueue filters. 2. More parameter checking for bind_io_handle().
     add 9441248c0 1. Use "short" as the filter's type. 2. Let bind_io_handle() calls unbind_io_handle() when failures happen. 3. Remove cb from io sessions after filters are unregistered in unbind_io_handle(). 4. Code optimization.
     add dca3025b2 Nits.
     add 2a727b7bc Remove EV_ENABLE when registering kevents.
     add a73f57510 Merge branch 'master' of github.com:imzhenyu/rDSN
     add fc6a352ae fix bugs when file read failure injection is open - add validate log offset for both shared and private logs for each replica
     add d1fdcaebc fix linux compilation error for the last dev work on windows
     add c63b3f90e disable crash when dir and file op renaming for replica fails (due to NFS file handle caching) - relying on retry later instead of crash
     add 59a1e6936 enable state learning from 0 even when the learner state is longer than learnee state (Primary)
     add 66587cdd5 fix bug of learning from scratch when state is to be lost
     add 42d575ed4 (1) add more rigirous checking of the valid_start_offset in mutation log and app so they can check with each other. (2) fix bug about checkpoint task ptr clearance during learning (3). add more logs for replication debugging
     add ec238212c Add a "overwrite" parameter with default value false for dsn::utils::filesystem::rename_path().
     add 13762b97d 1. Add missing header <string>. 2. Add missing namespace for string.
     add 8ca4744b7 Nits.
     add ece86e027 Use the new rename_path() to overwrite the existed file/directory.
     add fd47153a1 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 15792e7e0 add interface for distributed lock svc and meta state svc
     add 961872830 add class sketch for lock service and meta state service
     add d1f1010e5 Merge remote-tracking branch 'upstream/staging'
     add ea19fa50f use single linked list instead of double linked list in task queue
     add 7f1e49397 use slist instead dlist for message queues
     add 4cea900ca Assert that the upcoming kevent should not be set EV_ERROR.
     add 63e770e18 Rewrite the aio callback and complete_aio().
     add 61f226786 Check whether _socket has been closed before unbind it.
     add 3782a7c78 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 495b5a4b9 OSX uses SO_NOSIGPIPE instead of MSG_NOSIGNAL.
     add 9f3f6c909 1. Rename static bool path_exists(const std::string& npath, int type) to path_exists_internal(). 2. Rename static inline bool get_stat(const std::string& npath, struct stat_& st) to get_stat_internal(). 3. When calling path_exists_internal() and get_stat_internal(), ensure that the path is normalized since the stat64() from VC 2013 runtime will fail on unnormalized paths.
     add 566d18a56 1. Properly initialize struct aiocb. 2. If the aio is still in progress, just return.
     add 237e85cdb On FreeBSD librt must be linked before libc so as to use posix aio APIs. Therefore we go back to the old solution that such system libraries are added as linking dependencies.
     add 126b56719 Add hpc_logger and tests for loggers
     add de1981cf5 Merge pull request #6 from mcfatealan/master
     add 6c66aeace Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 75b501294 System libraries such as rt, dl, aio and etc. should be put last.
     add d7b9e8da0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 2edbfec04 (1). optimize hpc_task_queue (2). enable message cancelling in rpc_session for resending
     add 558868a5d add new project - dsn.core.perf.tests; move logger test to this project.
     add 6a4c6828d fix bugs and add gc feature in hpc_logger
     add 843453f8c Add missing <errno.h>.
     add edc65823f Add missing override to avoid warnings.
     add 40bbbf389 Merge branch 'master' of github.com:imzhenyu/rDSN
     add f8c3e4ca7 (1) fix rpc message leak on failure (2) add more logs in network
     add 1c1e576cd fix ubuntu compile failure due to refactor (test ok)
     add 24271cbb4 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 6d561070f change rocksdb using the simple case, delta learning support is now paused for the time being due to internal complexity
     add 32cd4e060 Merge pull request #91 from imzhenyu/master
     add c8d56ac61 Merge branch 'staging'
     add 79b0e7c00 Merge remote-tracking branch 'upstream/staging'
     add 490f26e0d fix scratch buffer bug: when the buffer is used more than once but consumed together, the buffer is overwritten; enlarged to 4 maximum scratch buffers.
     add fe70dc0a2 (1). enable rpc message crc implementation (2). resend learning request when learner is already included
     add dc687ed3e Rewrite create_directory() to add more condition checkings.
     add 7a66e35c4 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add b5b845052 1. Replace the tabs with 4 spaces. 2. Let get_stat_internal() to return int error values instead of bool.
     add 561cfc99f Let get_normalized_path() return int error values instead of bool.
     add d39c63c97 Print more error information in create_file().
     add 445ebdb02 Let get_normalized_path() return int error values instead of bool.
     add eeec3d92b 1. Set rDSN version in the project() command directly. 2. Use CMAKE_BINARY_DIR instead of PROJECT_BINARY_DIR to set output path.
     add 4ad42ae0f Merge branch 'master' of github.com:imzhenyu/rDSN
     add 6b3888803 add logs when task queue is blocked due to throttling; fix throttling bug due to task queue size approximation
     add 0a2c78edf Merge pull request #3 from Microsoft/staging
     add 1fd8c3320 Merge branch 'staging' of https://github.com/Microsoft/rDSN into dist-api
     add 311e14418 interface for lock service and meta state service
     add d983e2c8c modify meta_state_service and distribute_lock_service
     add c6ac49fb7 small fix
     add b6412f284 small fix
     add 0bad9a889 Update meta_state_service.h
     add 7187cf532 Update meta_state_service.h
     add 7904923fb Modify the meta_state_service and distributed_lock service interfaces
     add c35e73de8 Merge branch 'staging' of https://github.com/Microsoft/rDSN into ms-rdsn
     add 6ae400bb2 add query_lock, and adjustment of other interfaces
     add 0f7a2d59c Merge pull request #90 from shengofsun/staging
     add 55b8e4fe6 Merge remote-tracking branch 'upstream/staging'
     add ff1b3a00c add cli commands as service api for upper queries
     add 363586704 fix wrong name in test case dump
     add b45b891d2 cmake 2.8.8 does not support version in project() command.
     add c0a6fd6f3 Merge branch 'master' of github.com:imzhenyu/rDSN
     add df81c5e3d fix ref count bug in nfs server; remove unnecessary fileds in copy response
     add d0246902c Merge pull request #92 from imzhenyu/master
     add 8b7347be4 Merge pull request #93 from imzhenyu/master
     add af86b23dd Merge remote-tracking branch 'upstream/staging'
     add 177685411 update file header so now file description and revision history are required
     add 3a6508cc8 Add file description and revision info.
     add 45dba4041 add description for existing code files (in progress)
     add ab5062770 add sketch for meta state service simple provider
     add a88a8ce48 add simple provider for distributed_lock_service
     add 13e2eac27 use path combine instead of simple + for path concatenation
     add 4bdbf21cf (1) update dsn_task_tracker_t related parameter - instead of assigning it on enqueue, we now make it happen on task create so that later async task enqueue is possible while the task can still be waited by a task tracker (2) update dist lock svc and meta state svc interface so their callback can be tracked (3) use dist lock svc simple and state svc simple in meta server (in progress) (4) update factory type definition - put them in those component interface classes inst [...]
     add c5e812fe7 1. Use dwarn instead of derror. 2. Move sys/stat.h and errno.h out of the platform macro. 3. Remove reference to sys/types.h on Windows since sys/stat.h includes it.
     add 1b185c57a Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 3653f79f1 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 067245042 update meta server so now meta state service and dist lock svc are used. compiled ok, wait for cc of meta state service simple to test.
     add 3b3e3dde9 work in progress (do not check out)
     add 689a3b682 refine lock svc interface, work in progress (do not checkout)
     add bfad6031e (1) add two staginged computation task (safe_late_task) in cpp dev lib (2) refine lock svc interface
     add f1b7afa4b update lock svc interface so each callback is called once. make all compile ok
     add 3fad79ec5 integrate lock svc and meta state svc with meta server (compile ok, to be tested)
     add fa7d84664 meta_state_service_simple implementation & bugfix in rpc address_from_string
     add 5c987519f Merge pull request #7 from glglwty/master
     add 51f18f215 integrate dist_lock-svc_simple, meta_state_svc_simple, and meta server, simulation test ok (without faults)
     add c99841eed simplify leader lock lease expire handling - simply crash
     add 4ceebda55 Added interface for web server to query profiling data
     add b0efcab86 Merge pull request #8 from mcfatealan/master
     add 9ec29e259 add dll version of simple kv
     add db0631c69 update node states on meta server start
     add b1c71f04d (1) add cluster_scheduler base interface draft (2) add kubernetes test project sketch
     add 70b982104 fix bug in getting local network interfaces under unbuntu
     add 24b162369 bugfix in server_state, meta_state_service_simple & a unit test of meta_state_service. Simple_kv is now runnable. (1) bugfix in server_state: deadlock, misconfiguration of tracker, missed lock and a off-by-one error (2) bugfix in meta_state_service: log recoverability, lifetime of file operation buffers, error code handling
     add f87a2f423 remove c++14 features to make it compile with legacy compilers
     add a5bd996bd refactored meta_state_server_simple and made everything more elegant
     add 6a8240176 Merge pull request #9 from glglwty/master
     add cb50b8e19 fix constexpr to const so old compiler can compile (e.g., vs2013)
     add c99613a3d add -fPIC to all projects so that simple kv so can be built on ubuntu
     add a22f5439d (1) add author info for meta state service simple; (2) boost performance of marshall/unmarshall for certain data structures in replication; (3) add load balancer placeholder files
     add 9bca85b9f add support for auto-batch of replicated write requests
     add 07b03dbe6 (1) add support for customized throttling (original admission_controller will be deleted later due to its unfriendly C++ interface and high overhead at runtime); (2) add throttling for replication and network send
     add 6254afa0c (1) fix bug due to using partition_update_request instead of partition configuration # untyped object is dangerous (2) using working directory in replication app
     add c8ebf3ddf fix bug of increasing last commit decree in replication app as now the commit decree is fully controlled by eon
     add 19a6f4016 Merge pull request #94 from imzhenyu/master
     add 710539e03 Merge pull request #96 from imzhenyu/master
     add 74a819370 Merge pull request #4 from Microsoft/staging
     add 8c9f4cd27 inititialize the last_prepare_decree_on_new_primary when assign primary
     add ca40c19c6 Merge pull request #95 from shengofsun/staging
     add 7d0b93506 Merge pull request #97 from imzhenyu/master
     add 10bb8a08e Merge remote-tracking branch 'upstream/staging'
     add 0d241b051 relax the post-conditions of work queues as they may be not satified in certain cases
     add 33315eb9b (1) add batch support in replication app base (2) add base interface for explorer
     add c1e0c1574 Added sample interface (by Zhenyu),and refactor all interfaces for rDSN.Monitor
     add a448632c0 Fixed some typos in the comments and misleading hint info
     add 77977af5f Merge pull request #10 from mcfatealan/master
     add 384ff4f90 Merge pull request #99 from imzhenyu/master
     add fb3127326 Merge pull request #7 from Microsoft/staging
     add b0e6aafd7 merge from xiaomi's team
     add 796ba680c merge from xiaomi's team - continued
     add f15413ac6 merge from xiaomi's team - continued
     add ca4227926 merge from xiaomi's team - continued
     add 6f6bdfa1b merge from xiaomi's team - continued
     add 1961ec28c merge from xiaomi's team - continued
     add c49da49e0 Merge pull request #100 from qinzuoyan/staging
     add 2dc616932 Merge remote-tracking branch 'upstream/staging'
     add db68eddda add rpc method in meta_service for testing; some memory leak bug
     add 5dfff2f07 code format refactor: transfer tab to spaces; change "<::" to "< ::"
     add fb2156211 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add b1830c367 Merge pull request #101 from qinzuoyan/staging
     add a31d623ee Merge remote-tracking branch 'upstream/staging'
     add 16788f2c1 fix issues that won't compile on windows so that simple kv can still compile. TODO: replication test compile on windows does not work due to cross-dll boundary linkage for the test_injector tool.
     add 287bd0de1 fix a set of TODOs introduced by Zuoyan
     add 76f177288 fix dsn_module_init
     add 2c38add3b Merge branch 'master' of github.com:imzhenyu/rDSN
     add de38ed9f5 fix make files so that it can compile on windows
     add 095d8ec48 (1) disable project dsn.rep_tests as it cannot compile on windows due to dll export restrictions (2) make repli tool compile success on windows
     add a79dfc911 Merge pull request #102 from imzhenyu/master
     add 37a072c07 Merge pull request #8 from Microsoft/staging
     add 7032000e9 fix compile problem on linux
     add e559adf71 some refactors
     add df95e4975 Set _WIN32_WINNT=0x0600 since we are going to use some new APIs available on Vista and later.
     add bd8394cb0 Implement get_process_image_path(), get_current_process_image_path() and corresponding unit tests.
     add 2553182a0 Bug fixes on Windows.
     add ea0665606 Defind a macro TLS_PATH_BUFFER_SIZE to represent the size of tls_path_buffer.
     add ca5c1e757 Fix build break on FreeBSD: 1. include sys/user.h 2. link libutil.
     add fe259e346 On FreeBSD, ki_comm is the command name. Therefore return the absolute path.
     add eda733fd4 Move definitions of THREAD_POOL_TEST_SERVER_2, LPC_AIO_TEST and LPC_AIO_TEST2 out of __linux__ macro.
     add 5728d1cc5 Include <cstdlib> to fix build break on FreeBSD.
     add 799bb63e8 Merge branch 'staging' of https://github.com/linmajia/rDSN-mc into staging
     add 4a9b368e1 checkpoint may not be allowed in certain cases.
     add 18a9855d6 Merge pull request #103 from imzhenyu/master
     add 26d33d71f Merge remote-tracking branch 'upstream/staging' into staging
     add ec87b6ad4 Merge pull request #104 from linmajia/staging
     add 2c78b3af0 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 300545e20 fix CMakeLists.txt
     add ac68b623d Merge pull request #105 from qinzuoyan/staging
     add a95ce9023 fix a bug due to replication throttling (make sure failure handling is done before any commit to reset the membership for later rounds of replication)
     add a9da9ef2d Merge remote-tracking branch 'upstream/staging'
     add 17e2b0cc2 fix a bug for unwanted commit when the current replica state is already potential secondary, which happens when the learning msg is lost (e.g., by fault injection)
     add 566c6394e Merge pull request #106 from imzhenyu/master
     add d5220c668 make sure things compile ok on windows for gflags and gtest
     add 73610d410 Merge pull request #107 from imzhenyu/master
     add b6ccb2095 Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 94feb2624 delete pjs
     add 58ee9c273 description revise
     add ac153865e Merge pull request #108 from zjc95/master
     add ba506b492 fix three bugs: (1) filesystem::rename_path use ::rename incorrectly (2) loggers failed to gc log files which causes recursive execution and eventually stack overflow (3) all 2pc replication request to potential secondaries should be attached with learning signature to ensure they are not sent to earlier learning instances (a consequence as we don't increase ballot number for new potential secondaries)
     add e7420c8e2 The type of decree is int64_t, so use %lld instead of %llu in printf.
     add 6d7ab1102 Include <cerrno>, <cstdint> and <inttypes.h> in ports.h
     add ddbf034eb Use %PRIu64 to print uint64_t instead of %llu.
     add d979ab5c8 Use %PRId64 to print int64_t instead of %lld
     add 2ca82eb46 Cast time_t to int64_t and use %PRId64 in printf.
     add 1d1769a1b Merge pull request #110 from linmajia/staging
     add 5c6336ba6 Merge remote-tracking branch 'upstream/staging'
     add fe31c7a1f using task_ptr instead of auto for return value from create_late_task to avoid non-referenced object
     add f52cdcefe fix a bug caused by replication throttling - reset running writes counter on reconfiguration
     add 489fe9f90 (1) fix how to compute concurrent 2pc requests (2) add more checks on learning success
     add 39e966515 tolerate concurrent op number inaccuracy due to fail-over in replication
     add fe404ac8f Merge pull request #9 from Microsoft/staging
     add fb5680b36 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add b027b5c4d add more cases in rep_tests; some refactors
     add 7101d2c31 smallfix
     add 63c0212f8 fix rep_tests CMakeLists.txt to make it not use libdsn.core.so
     add fb8952543 fix deadlock problem in simple_logger
     add a0bbddae1 fix bug: new created task should be received into ptr, or it may be destroyed before return
     add b7a64206d fix meta state problem: pending request may conflict on same ballot
     add efef87fa3 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 8a416f9e2 Use %PRId64 to print int64_t instead of %lld
     add 7d45d5a59 fix build.sh and test.sh
     add eb135f225 improve _pending_requests in server_state
     add 316ebafc1 fix build.sh and test.sh
     add 27cb9e4c3 Merge pull request #109 from qinzuoyan/staging
     add 283615a63 Merge remote-tracking branch 'upstream/staging'
     add c0e3f794a added vector write and its test
     add bb85faf89 mutation log now uses vector_IO. Added mutation_log batch configuration. Fixed bugs in private log learning. Removed log job canceling in mutation_log.
     add 568dc3fe1 Merge pull request #11 from glglwty/master
     add 6e509d8d3 reset work queue on reconfiguration to fix the issue where the work queue running op count is not consistent with what we see in prepare list
     add 61d10c6c4 fix learing with private log, as the log is now not commit log but for prepare as in shared log.
     add c93c2ce38 add more logs for replication
     add 81b729530 copy checkpoint from secondary for primary (work in progress)
     add d7b6f9b25 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add e6cdc8eda Merge branch 'master' of github.com:imzhenyu/rDSN
     add 0c27dff82 fix code generator php
     add 3997520d0 Merge pull request #111 from imzhenyu/master
     add 1d589a310 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 6708da8ad fix simple_logger bug
     add b8addc601 Merge pull request #112 from qinzuoyan/staging
     add db33401f1 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 88d518780 improve CMakeLists.txt to add dependencies
     add fd979b315 fix commit_log tests
     add b4ea7c0d4 fix according to code review
     add 98019e683 Merge pull request #113 from qinzuoyan/staging
     add 7d040a653 Merge remote-tracking branch 'upstream/staging'
     add 62add20cc Updated new hint info, added counter_raw interface
     add 646343979 Fix some bugs and update help info
     add 35937ff95 Add new interface for real-time counter query
     add f8992c37e Rename fstFlag and use type instead of find(ACK)
     add ba5f3b9e2 Merge pull request #12 from mcfatealan/master
     add abe6e62fd fixed mutation_log tests
     add 77d43b380 Merge pull request #13 from glglwty/master
     add c97e158ff enable primary to copy checkpoints from secondary to avoid unnecessary ballot increase
     add f5254e20c add learn_type to identify different learning types
     add 247e44849 Merge branch 'staging' of github.com:Microsoft/rDSN into staging
     add 04cb9da30 Merge pull request #114 from qinzuoyan/staging
     add c6179354b Merge remote-tracking branch 'upstream/staging'
     add 8ccd06370 enable compilation of rep-tests on windows; fix simple_kv.server.impl in rep-tests due to base class change
     add 3019936b4 Create .travis.yml
     add 779002b97 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 4a146abf0 do not use %zu as it causes exceptions on windows
     add 5287e9500 Merge pull request #115 from imzhenyu/master
     add b70055338 add test_gcov.sh
     add fe2013cc0 Merge pull request #116 from qinzuoyan/staging
     add 08eedc14c some refactors
     add 8d703cc58 Merge pull request #117 from qinzuoyan/staging
     add 2b15659f8 finish adding learning signature to the replica config structure so as to check for learning
     add a2cd770dc add options for checkpoint (TODO: last checkpoint time in replicated app)
     add 3321216f3 fix replication test case 001
     add 871de12f5 avoid dsn exits failure (coredump), which confuses the test driver in replication test
     add d6aaad99a Merge pull request #118 from imzhenyu/master
     add c2c16864a fix learning error in both code and test scripts
     add c9ffe0705 Add dsptr to perf_counter and derived classes
     add 8fbf56569 Merge pull request #14 from mcfatealan/master
     add 70d6eb905 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 24d639cd4 write travis file for ci
     add e1715f764 add appveyor.yml for auto-compile and test on windows machines
     add ab9101739 Update Release Note.txt
     add 73a13b5a4 Update .travis.yml
     add c810157d0 Update .travis.yml
     add a5e05ebd0 update cmakelists.txt to git travis
     add b6cc270d4 update travis file to use compilers with C++11 support
     add f9ef5cfb9 Update .travis.yml
     add 217c7e3c2 Update README.md
     add 60503621b Merge branch 'master' of github.com:imzhenyu/rDSN
     add 7d5bd0302 use spaces instead of tabs for appveyor.yml
     add ff1b5e355 Update appveyor.yml
     add b5d84b7b4 Update appveyor.yml
     add 4dd0b2450 Update appveyor.yml
     add a8c2fe755 Update appveyor.yml
     add c6cfdbc05 Update appveyor.yml
     add 636babfbe Update appveyor.yml
     add a2084bc72 Update appveyor.yml
     add c1c9bb405 use appveyor provided file downloader
     add 4483cecb9 Update appveyor.yml
     add 04e359bb2 Update appveyor.yml
     add 6a3dd5969 using nmake instead of vs
     add 9fb5351cb appveyor does not support nmake
     add 8b77c57b2 build_script reuses work dir of before_build?
     add b2ca5b94b Merge pull request #119 from imzhenyu/master
     add 419bfd243 fix replica_chkpt.cpp bug
     add 95850dcb0 Merge pull request #15 from qinzuoyan/staging
     add 224b2bbf9 using msbuild options instead of two instances of compilation
     add 1c75c3286 remove gflags as it is not used
     add c14f449ed add appveyor status
     add 861726502 - enable checkpoint_async use in replication - make sure write_internal return value is always checked
     add 70fda5522 add rdsn docker image build scripts
     add 264941dff add tutorial docker image build for cpp single
     add dbfb1ef88 modify deploy/docker directory structure
     add 784f9aeb6 Merge pull request #17 from goksyli/master
     add 20ec34e84 Merge branch 'master' of github.com:imzhenyu/rDSN into imzhenyu
     add 22bb65724 fix data race bug in nfs client
     add 936909ba2 (1) fix module_init issue that cause uninitialized app registration in simple_kv.module.dll (2) disable link warning in VS for replication test
     add f568c2bb2 Merge branch 'imzhenyu' of github.com:imzhenyu/rDSN into imzhenyu
     add bdb5d1a89 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 75dc6ecc8 Merge branch 'master' of github.com:imzhenyu/rDSN into imzhenyu
     add 4a6aec289 Merge pull request #121 from imzhenyu/master
     add 26e33bcb3 Merge branch 'staging'
     add 4937890a8 Update README.md
     add ae0bf411d Update README.md
     add f7ba5bc4a disable link warning for replication test
     add 71664b610 add missing for core auto-init
     add 849d61b03 (1) add app bridge feature for starting apps in python from core. (2) add more apis for library/symbol load/unload;
     add 7b298bd22 fixed the gap between private_log and pending_buffer in learning
     add 4806d138e Merge pull request #20 from glglwty/master
     add 7f3298332 Merge branch 'master' into imzhenyu
     add 83be4935c Merge pull request #5 from Microsoft/staging
     add f66ee208d Merge branch 'ms-rdsn' into staging
     add eb10cb95b first compiled version of zookeeper provider
     add b2230f5ed add test case for zookeeper provider
     add 9b3dccaa1 rely on zookeeper client on github
     add c186c2dc9 merge with zhengyu.rdsn
     add 90d154f6b merge
     add ab164c224 fix possibly compiled error on windows
     add 5727ca264 smallfix on zookeeper/CMakeLists.txt
     add 02b68ad47 add comments
     add 331a4fa2f Merge branch 'zy' into zk-dev
     add f025887e5 Merge branch 'zy' into zk-dev
     add 253204de7 smallfix on tests
     add 621d28904 Merge branch 'zy' into zk-dev
     add 54fe02d2e Merge pull request #19 from shengofsun/zk-dev
     add f7ff5f4fc make zookeeper provider compiled on windows (git of zk_client is set to imzhenyu/zookeeper_client_c, will changed it back once the pull request is accepted)
     add 7d71ec1a9 with > 1 external projects, it is impossible to have them all build in the same lib dir. We now make it compile on windows with certain drawbacks (result binaries for external projects not installed on windows)
     add 22f313f9d add missing include file for external projects
     add 988ac77b1 remove release build in appveyor to reduce compile time
     add 997a58fe7 fix install command for external projects
     add 0e89b3dcb disable installation for external project (to be fixed later)
     add 94f9a66cb Merge branch 'windows-may-not-compile'
     add f99670806 add ERR_NO_NEED_OPERATE
     add 560b07842 Merge pull request #122 from imzhenyu/master
     add 8ae142d2a Merge branch 'master' of github.com:Microsoft/rDSN into staging
     add b202042cc Merge branch 'master' of github.com:imzhenyu/rDSN
     add 04df1cef6 smallfix
     add dd6166700 Merge pull request #21 from qinzuoyan/master
     add 8d33eacc5 (1). add dsn_get_current_app_info api for better dsn_mimic_app (2). add dsn_app_loader_signal/wait for python/C++ synchronization
     add 032a0a6ea fix dsn_mimic_app() usage in zookeeper_session::init_non_dsn_thread
     add d8fe9d7a1 remove useless app_name in config.ini
     add 06cf590c8 standard terms defination in rDSN
     add 5a5fce849 standard terms defination in rDSN - continued
     add 06854b216 standard terms defination in rDSN - continued
     add c6981cf3d Merge pull request #22 from qinzuoyan/master
     add 8fb237fbf added asio_udp_provider and its test. Fixed dsn.core.tests on windows.
     add 79fbe7f15 fixed a bug in mutation_log due to new-introduced issued_write
     add 72d485bb9 use asio_udp_provider as the default udp provider for fastrun
     add 3f1c1a214 added udp channel in all failure detector configuration
     add 1f403c157 Merge pull request #48 from glglwty/master
     add a78a8e0c0 add check_format.sh to check tab/space
     add ffcf001c1 Merge pull request #57 from qinzuoyan/master
     add ea0de711c fix some rep_tests
     add 4e71288d0 add zk server for test
     add 618b6b4df some smallfix
     add c083df49e add cluster_root for dist_lock and meta_state_service
     add 783227d75 create lock_root when distributed_lock_service_zookeeper initialized
     add c73583f2c Add some log
     add 56b5f06bd refactor zookeeper related config and code
     add 1f56e839c fix core tests
     add 932f71fe5 smallfix core tests
     add 50ea117be (1) refine FD with group addresses as master (2) sync .thrift and data structures for replication
     add 1202dfc77 update \tab as spaces (4)
     add 1589ec977 Merge remote-tracking branch 'Microsoft/staging'
     add 391ec623a Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add b8ec383da Merge branch 'master' into imzhenyu
     add 3fcbd53dd Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 14d3b4620 Merge branch 'master' into imzhenyu
     add 50d481cf6 update leader in group address once the fd master responses so.
     add c086a14dc automatically update group address leader under certain conditions
     add 005f8c4b1 enable install cmd for external project for both windows and linux
     add 65142009b fix external project auto-build and install
     add 16dfa5282 Added new interfaces for selectDisplay
     add c4960bc83 Moved counter query interface to perf_counters
     add 47321bc20 Changed name again to show conventions :D
     add 82a4ca38e Merge pull request #53 from mcfatealan/master
     add 34e537ce5 Merge branch 'master' of github.com:imzhenyu/rDSN into imzhenyu
     add 42fd217e1 add dependenceis to zk for replicated apps and code templates
     add 90c54661b Merge branch 'master' of github.com:imzhenyu/rDSN
     add b0ff45e07 smallfix
     add 1271b5ad1 fix core tests
     add 93af45b9d improve travis.yml to print gdb trace info
     add 7cb9a9295 smallfix
     add 14b07c672 smallfix
     add e04b0f147 add [network] explicit_host_address option to support explicit host naming (e.g., service API in kubernets)
     add ff4ed3f85 fix a bug in file utils test
     add b70a51f9d Merge pull request #60 from imzhenyu/imzhenyu
     add ff4d96e90 Merge branch 'master' of github.com:imzhenyu/rDSN
     add ae63817fb smallfix
     add c11c6659e Merge pull request #61 from qinzuoyan/master
     add de104afc8 refactor meta service and zookeeper config
     add 245391dd9 refactor zookeeper config - continued
     add 0fc52761f ensure meta server responses incoming requests (most importantly, tell who is the leader) even when it is in the process of competing for the leader lock
     add 65c7abc26 when response FD workers with new leaders, lock is missing
     add e65364345 Merge pull request #65 from imzhenyu/imzhenyu
     add 8e7228715 Fix the dll load flag for Linux
     add bc7316fa8 Merge pull request #66 from mcfatealan/master
     add 43a203977 fix windows ext copy command as the date/time format on windows may vary
     add c08141bdb enable separated [core]data_dir for all logs/coredumps/app data.
     add ef2041098 Merge pull request #74 from imzhenyu/imzhenyu
     add 972022477 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 9bb0e8599 improve test script to enable gdb
     add ec2da900b fix wild pointer bug caused by auto
     add fa98ab545 more fixes to avoid wild pointer hanger
     add e3e3bc18b improve test scripts
     add f9eeea0b0 Merge pull request #67 from qinzuoyan/master
     add 18ec25f56 enable task cancellation callback to avoid memory leak in cpp dev lib when safe tasks are cancelled by task-tracker which does not explicitly call safe_task::cancel
     add 17cf3b8e1 remove unnecessary virtual function
     add 2553bd4b2 fix build break due to task_c constructor change
     add 4acbb466a register DSN_ROOT automatically so that other projects such as rDSN.Python knows where to use and install the libraries
     add 2b1234c05 Merge pull request #75 from imzhenyu/imzhenyu
     add 6387d6f42 fix meta_service to avoid coredump on starting; add dsn.replication.simple_kv in test
     add 980475896 fix meta_service to register rpc handler before acquire leader lock
     add be78203ea Merge pull request #76 from qinzuoyan/master
     add bf5d41f7f change zookeeper service config to argc/argv approach
     add 1ff2d8ed2 fix compile problem on windows
     add a78de4a82 make sure tasks are referenced before dsn_task_call etc., so as to avoid the situation where a task execution is so fast that it is deleted before the tasks are returned and hold by ref_ptr.
     add 7230a3b08 rollback ref_ptr<safe_late_task> to safe_late_task* as C++ allows at most one implicit cast which causes compilation failure on linux (VS actually can accept this)
     add 1f1a1e8ef Merge pull request #78 from imzhenyu/imzhenyu
     add f1267b5c2 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 7f55212ee Merge pull request #77 from qinzuoyan/master
     add fea2d927f add deployment scripts on windows
     add 46fcf6dce improve scripts to add single entry run.sh
     add 965d34de4 added cli interface for dumping replication info. changed cli register interface in service_api
     add 0875b0c62 fixed some unexpected dreference in meta_server initialization
     add b8a4909d1 fix gcc compile issues
     add 860ac0910 minor change to meta_service initialization
     add 9156fd617 Merge pull request #81 from glglwty/master
     add cc751f34e Merge branch 'master' of github.com:imzhenyu/rDSN
     add 62b6be456 fix verbose option in scripts
     add 771cebd9f export DSN_ROOT when install
     add 086c7fd62 fix travis.yml
     add d67498426 Merge pull request #83 from qinzuoyan/master
     add f9010c078 Merge branch 'master' into imzhenyu
     add f7ce0fe96 fix format of flushenv
     add befd61f81 Merge pull request #86 from imzhenyu/imzhenyu
     add b0aba5531 fix bugs of failure detector
     add b821626e6 small fix to make the code more elegant
     add d5c3b6854 small fix
     add c18692ca2 disable fault_injector for some test cases
     add 89627639d fix .travis, add custom source.list
     add 8fb3ae7bd Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add be409b413 Merge pull request #84 from shengofsun/developing
     add 488a8ac31 added rpc for cli commands
     add 866c68361 Merge pull request #87 from glglwty/master
     add 8f52c9134 combine test.sh and build.sh into one
     add 8f56ceb94 Merge branch 'master' of github.com:imzhenyu/rDSN
     add cafe1b451 Merge pull request #88 from qinzuoyan/master
     add 2f6ed7af5 add support for automatic external rDSN call support by starting a default mimic app for automated dsn_mimic_app calls.
     add fe1aa9c4c add configuration change/set support in code
     add f7640a7b0 add test case for configuration
     add eef22b82e add build.cmd on windows
     add d0a1bcc6d add run scripts for publish deploy start stop clean
     add 706518c4e make clean some scripts of in scripts directory
     add 781399378 Merge pull request #90 from goksyli/master
     add 5f675dda5 exposed perf_counter interface to apps. refactored some perf_counter code
     add 9ef2db525 Merge pull request #95 from glglwty/master
     add f2aa04687 Merge pull request #92 from imzhenyu/imzhenyu
     add 646ca9349 Merge branch 'master' into imzhenyu
     add 71bb956ed Merge pull request #98 from imzhenyu/imzhenyu
     add 677ba5841 (1) fix perf_counter* to perf_counter_ptr to avoid race issues (2) add sample performance counters in replication (TODO: more in replica, meta, network, rpc, disk, computation engine, etc.)
     add de859f30a fix bugs: (1) perf_counter::set can be used by only those percentil counters; (2) zero out the perf counter array in profiler;
     add 671cd7a68 remove redundant friend class declaration in replica_stub
     add 5422c63fe fix timer bug in perf counters
     add d02d76e8d make deploy script more general and one can run start.sh without runtime info
     add 104f04635 remove useless deploy.simple_kv.sh
     add e8ad01508 Merge pull request #100 from goksyli/master
     add 3ff963b10 added multiple app support in the launch args
     add 971954cb0 (Corrected) Updated comments and hints for multiple app launch support
     add fe94cbea8 Changed , to ; as seperators in app_list args
     add 6a170a025 Merge pull request #96 from mcfatealan/master
     add cb0c25792 fix some rep_tests; some refactors
     add 2e7c713cb fix some rep_tests; some refactors - continued
     add fd6394e56 fix some rep_tests; some refactors - continued
     add 4c0c85460 Merge branch 'master' of github.com:imzhenyu/rDSN into fix-rep-tests
     add 842f18445 fix bug
     add 61bcf3545 Merge pull request #102 from qinzuoyan/fix-rep-tests
     add 28e5a2e40 Merge branch 'master' into imzhenyu
     add e69beddb3 Update .travis.yml
     add d8b6766de added vc14 support in windows build script
     add 10b59be2a Merge pull request #104 from glglwty/master
     add 7aafec4d8 disable ppa as it contiguous fail
     add 52e32f992 Merge branch 'master' into imzhenyu
     add c9f2abd85 fix task reference count related test cases
     add 988dfdc3b Merge pull request #103 from imzhenyu/imzhenyu
     add 064e0dcee add gitter link
     add 0c001600c remove gitter as it is public
     add 03118de82 fixed uninitialized array bug in profiler, changed simple_kv deploy script matching the newest cli syntax
     add 09774b7fa Merge pull request #109 from glglwty/master
     add b905d618a add configtool program to get config.ini key value
     add bb7b47b5d Merge pull request #119 from goksyli/master
     add c4b96190f some refactors
     add bf1badb73 improve rep_tests
     add fe00e388d refactor mutation log - to be continued
     add 381ef0e01 fix compiler problem on windows of snprintf
     add 0eab9b1ef fix compiler problem on windows of snprintf
     add 8fe22305c Merge branch 'master' of github.com:imzhenyu/rDSN into fix-rep-tests
     add a5db9bbd0 fix compile warning; improve log
     add f7a51974a Merge pull request #107 from qinzuoyan/fix-rep-tests
     add 67887053b merge configtool into tools/repli
     add 5bf4dcdf8 some refactors
     add a4bcaee9e Added "-m" parameter to publish.cmd and publish.simple_kv.cmd, now users can publish apps with rDSN.Monitor enabled
     add 5aa2afa29 Added zip and unzip for deploy
     add 14dd578d3 Fixed the relative issue in scripts and deleted the task after finished
     add b8bd97ce5 Fixed some bugs in the practial tests of deploy.cmd and publish.cmd
     add c6cc406ba fix some issues in the publish and deploy scripts
     add 23badb94b Added republish and quick-cleanup(done by zhenyu), improved deploy process
     add 6bfa139af Merge pull request #110 from mcfatealan/master
     add 72e78c5ca disable rep_tests because it always fail
     add 304c0317b Merge pull request #120 from qinzuoyan/master
     add 78c26c3d8 Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add badfe510d smallfix
     add 16319cdf4 (1) add pre-require|test|install commands for run (2) add test into appveyor
     add e98106b8c remove unnecessary slash at the end of DSN_ROOT
     add 27b35e91d fix missed boost dependency in pre-require
     add 23dd615a7 add test support in run
     add b95866500 update boost pkg url
     add 08a069512 change dsn_terminate to dsn_exit with exit code to avoid coredump during service engine destruction
     add cc007edfe fix test path for dsn.tests
     add e73800c1f using dsn_exit to return exit code when process exits
     add 39475d620 add DSN_ROOT to PATH for library load
     add cfa100921 Merge branch 'master' into imzhenyu
     add edeab38b1 Merge pull request #117 from imzhenyu/imzhenyu
     add 4d763c3c0 Fixed a bug in the deploy.md happens when dst folder name is different from src folder name
     add 371b10f47 Merge pull request #121 from mcfatealan/master
     add eeea76f20 fix link problem on window; add a TODO comment
     add 8e1caa189 Merge pull request #122 from qinzuoyan/master
     add ef8ed8086 Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add 049bf8b2d change return code of replication_app_base from int to dsn::error_code
     add 103b65e6c change return code of replication_app_base from int to dsn::error_code
     add ea1bb3f1d fix compile warnings
     add 0ce300cf3 fix travis.yml, use pre-downloaded package
     add 5b02e06dd fix failure_detector, add test_cases
     add 50800278d Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add c7d074101 fix on appveyor.yml
     add b670c8cf4 fix compile error on Windows of atomic_int
     add 874e8b4b9 fix on failure_detector
     add f7fb45346 Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add c368b7f10 Client auto fetch partition count
     add f78dc8ac9 add public key for source.lst
     add c6b10d304 try fix public key again
     add 6b7b28cb1 using key hash instead std::function when calculating partition index
     add 78738c498 use 64 bit hash function for client app and remove replication_client_base.*
     add 5427a218a update tutorial && remove partition index passed into replication_app_client_base request_context
     add 2862c170e remove unnecessary functions in replication_app_client_base
     add 5c11a11c5 Merge pull request #91 from xiaotz/master
     add 0d240db75 (1) remove unnecessary code (2) make group address thread safe
     add ef3628f94 Merge pull request #123 from imzhenyu/imzhenyu
     add d5c5355e7 Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add 07973718c Merge pull request #106 from shengofsun/developing
     add d43c0191e refine replication app client lib and related (e.g., avoid unnecessary timer cost)
     add fa31d87c1 Merge pull request #124 from imzhenyu/imzhenyu
     add 7f2fc5555 turn off run.cmd debugging
     add e04472809 update path automatically on setup dsn_root on windows
     add a3b630edf fix bug in mutation log and debugging log providers
     add 82e5a5e0b Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add bc753d538 some refactors
     add c7665b4f4 using atomic lock instead of std::call_once as the latter has bug on WinSrv2008 + vs 2013
     add 6254051e1 fix mutation log replay condition as the log may still be written when used for learning
     add 9c3147472 fix mutation log bug as current file may be empty
     add e82e98b1b fix : atomic(const atomic&) = delete; on linux
     add 30cf7e2a2 Merge pull request #126 from qinzuoyan/refactor
     add bfcc18cc5 Merge branch 'master' into imzhenyu
     add 317363061 Merge pull request #127 from imzhenyu/imzhenyu
     add 47ef79be4 Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add 0a8b232b6 (1) simplify deploy scripts on windows (2) auto-deump perf result after testing
     add 07824e5be change the semantic of quick-cleanup (not reset task, from Tianyi)
     add cfeca04bf fix budget for appveyor
     add 5074d8929 various fix in random number generation, task_queue and deploy script
     add 96c8b2efe Merge pull request #130 from glglwty/master
     add c3262ef37 Merge branch 'master' into imzhenyu
     add 1d07f1fef Merge pull request #131 from imzhenyu/imzhenyu
     add 067d70e4e further refine deployment scripts
     add e2628b3e2 Merge branch 'imzhenyu'
     add 632eab76b add windows version of start_zk and stop_zk
     add 48c169bc5 Merge branch 'imzhenyu'
     add d9e8c71fc Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add 20e140c07 fix private log data lose problem
     add 3f7bf54e0 fixed bugs in failure_detector tests & added time measurement for mutition_log replaying
     add c8b0b4282 Merge pull request #132 from glglwty/master
     add ce4179621 (1) add native support for virtual nodes in rpc engine; (2) refine message header for next-step integration of layer 1&2
     add 57f95fcda Merge branch 'imzhenyu' of https://github.com/imzhenyu/rDSN into imzhenyu
     add 6106a3c1d (1) fix bug in mutation_log (TODO: allow multiple writes to increase throughput?) (2) refine logs in replication client and network (3) refine msg options interface
     add f600f204a Merge pull request #134 from imzhenyu/imzhenyu
     add 72a23cea5 add sds support for stop-deploy-start
     add c17ccd223 fix private log data lose problem - continued
     add b1422ec73 fix performance counter bug with explicit section name  + refine jason_helper so everyone in any namespace can use
     add efcb7b3e0 Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add 2c3549148 Modify "pq counter_calc" to accept percentile parameter
     add 092a5eb70 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 3d608946e (done by zhenyu) fix counter.value bug
     add d29da2cad Merge branch 'master' of github.com:imzhenyu/rDSN into refactor
     add fbea6da66 fix private log data lose problem - continued
     add face13537 Merge pull request #136 from qinzuoyan/refactor
     add 7bb1a2e94 (1). add app/section  parameter to perf counter create , now the perf counters are in three layers: app => section => counter name (2). fix mutation log close hang bug by setting thread pool for log_flush (3). enhance perf counter performance by writing specific factories according to given type
     add 1149e2108 add json parser
     add ccab9c084 tmp add
     add c2a797dcc fix marshall and unmarshall server_state
     add a20fb0da7 remove meta_fd's query, add new api in dist_lock, and fix meta_server
     add b490af49e Merge branch 'jsoninfo' into developing
     add 7da24e6cc compiled on windows
     add fd62d5748 bug fix of meta_server_failure_detector
     add 4d5f95e9c fix meta fd
     add 4cf383a3d small fix
     add 45c78a22b Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add b7a4bf487 refactor of meta_service_failure_detector
     add 44cf6bd86 #137 - reference issues in commit messages test
     add 83391e638 Merge pull request #138 from qinzuoyan/master
     add 8fb9f0a15 just for close #137
     add fead3e9ab Merge pull request #139 from qinzuoyan/master
     add 89e4de82b Merge branch 'master' of https://github.com/imzhenyu/rDSN into developing
     add ddc67e86a remove gitignore
     add bce6d992b Merge pull request #129 from shengofsun/developing
     add 95e77dbfe Merge branch 'master' into imzhenyu
     add ebfe555ec fix perf counter cli argument count check
     add 359c8abcd Merge pull request #140 from imzhenyu/imzhenyu
     add 721e51b87 (1) add get-samples for perf counter v2; (2) add mutation queue counter in replication
     add a97d72f67 add ENABLE_GCOV macro to not call dsn_exit when exiting the process
     add 90c32b11a improve scripts
     add 842cb4300 Merge branch 'master' of github.com:imzhenyu/rDSN
     add a81485660 fix mutation_log write bug; add lb_interval_ms option; fix rep_tests
     add 7502f42f0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 8f3855d5a Merge pull request #142 from qinzuoyan/master
     add cd9761640 Merge branch 'master' into imzhenyu
     add 8953109c0 reimplemented log replaying to boost performance
     add e6bf91b9c renamed members in file_streamer
     add c16b87027 Merge pull request #143 from glglwty/master
     add e1eb656a9 Merge branch 'master' into imzhenyu
     add ad062fb55 add server_load_balancer base class and make it a factory for meta server
     add b3c87cfeb fix init_prepare bug which may discard mutation, and fixes #41 rep_tests
     add 02d11b4be improve mutation_log_learn test to make it run faster
     add 41ae3c305 Merge pull request #144 from imzhenyu/imzhenyu
     add 6ed36626f Merge branch 'master' of github.com:imzhenyu/rDSN
     add a3111d09c Merge pull request #145 from qinzuoyan/master
     add 63889b3fc Merge branch 'master' into imzhenyu
     add 2dd717d62 add dequeue_batch_size option for configurable trade-off between dequeue overhead and load balancing among workers
     add 39a897fce (1) return batch size for task_queue::dequeue (2) ifdef _DEBUG => ifndef NDEBUG for portability
     add c664cc934 Merge pull request #147 from imzhenyu/imzhenyu
     add 370c7d30c add parameters description of failure_detector in config-zk.ini, fix misc.sh to support other shells
     add a88babf08 add comments on failure_detector's parameters
     add 0a5b385b3 fix the comments
     add 56d22d0e5 Merge pull request #151 from shengofsun/developing
     add a2199c9f2 Merge branch 'master' into imzhenyu
     add 05a696d56 Merge pull request #152 from imzhenyu/imzhenyu
     add 749f3bdbc add rep_tests case 204/205/206 for learning test; some refactors
     add f59a4d8c0 add rep_tests case 207/208
     add fd2d2b241 optimize performance counter query performance by adding quick access array
     add ab5f85b3e Merge branch 'master' into imzhenyu
     add aaa07bdc8 change comments for new cli commands; zero out new array on create
     add 0cd6b110c fix bug in slist::pop_batch that leads to inconsistent batch sizes from what is reported and what is counted
     add 1c1ff63a4 (1) fix bugs in replication learning context cleanup (2) assert more pre-conditions in replication
     add df2cd3d8f (1) fix bug in mutation log when all logs are applicable for gc (2) change it++ to ++it for better performance
     add 5abf343b8 Merge pull request #154 from imzhenyu/imzhenyu
     add 7be58b9d4 add run scripts for publish_docker
     add 69fca0c48 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 957108469 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 4fc60ab32 add start.sh scritps template for docker
     add 2285d2abd Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 4c0792080 fix bug for run scripts
     add 027aa1297 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add ff7f9e2ba add failure info output before logger is created
     add 0a56845ec add kubernets deploy and undeploy in run scripts
     add ba1a74feb Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add dcd8d90ff fix tab problem in logging.cpp
     add 4ff0c1119 fix some bug and add republish subcommand
     add 8a0384fda make republish and republish_docker subcommands descriptions more clear
     add d222e9d76 Merge pull request #150 from goksyli/master
     add 50b041aec Merge branch 'master' into imzhenyu
     add 1a48bc72a Merge pull request #158 from imzhenyu/imzhenyu
     add e0796ecc5 refine windows scripts so as to deploy all roles in one command for simple-kv
     add 8ad3f7c34 Merge pull request #160 from imzhenyu/imzhenyu
     add 08f8a9906 Merge branch 'master' of github.com:imzhenyu/rDSN
     add c99ac1068 smallfix
     add f515a5630 smallfix
     add fa9b91343 add rep_tests case 210 for issue #52
     add 501895a49 fix prepare_list bug which may break assert
     add 0e1c25eb7 some fixes according to code review
     add 03f710e5f add rep_tests case 211, fix #52
     add 4245c8c34 Add transaction interface
     add 45dfd726d refactor UT for meta_state_service
     add 6935fb57e compiled on windows
     add f3256fadc Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add d32170f2c Merge pull request #161 from shengofsun/staging
     add 6e2c99c8c Merge branch 'master' of github.com:imzhenyu/rDSN
     add 32f2e0774 fix according to code review
     add 8f89979de improve rep_tests 211, for fix #52
     add 6f1878aac (1) add separated timer for beacon send in FD; (2) refine deployment scripts on windows
     add 9198adc4b Merge pull request #162 from imzhenyu/imzhenyu
     add 853a6d0cf implementation table_api
     add 838a00f4b continue to implement table_api
     add 02412eb62 fix app_path, add test case for transaction
     add 3deedf53d remove query_app_status rpc interface, modify the query_configuration_by_index
     add 6b32b75bd forget to add 1 for app_id from the index _apps
     add f861344ee fix app_status when initializing
     add fec476865 bug fix
     add cfe5dd612 bug fix of create_table
     add 16bf2ee68 bug fix
     add cf3205b78 add ddl client for create/drop app in command line.
     add 3a7c92abf fix win build error
     add d44610723 fix win error
     add 423ef8ce9 refactor ddl client
     add d1b8010a4 fix win error
     add 0792711cd fix win build error
     add a23c79f33 refactor function name
     add bf0e25f9a refactor ddl client
     add 96367e313 refine ddl client code
     add 12422ae9f change param to const &
     add 0ac3f92b3 Merge pull request #155 from xiaotz/table_api
     add 05d11fc78 rpc&aio perf test
     add 69be68d98 make simple_kv not to ignore payload_bytes in perf.test
     add dd4bfc7b8 added license & throughput output
     add f766e7029 Merge pull request #164 from glglwty/master
     add 139d1e0c8 Merge pull request #163 from qinzuoyan/master
     add aaf99d131 Merge branch 'master' of github.com:imzhenyu/rDSN
     add ae4a58023 add rep_tests case 209/209, for fix #52
     add 048d3257c improve rep_tests 211, for fix #52
     add 4cc428a03 add rep_tests case 212/213, for fix #52
     add 0d6e60650 small fix on fd and fd test
     add 5331f17a8 Merge branch 'master' of https://github.com/imzhenyu/rDSN into staging
     add 8c33174d4 fix fd test
     add b50bfd950 Merge pull request #166 from shengofsun/staging
     add 9fe627f55 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 3597a587f fix prepare_list
     add 48ac5a770 add rep_tests case 214, for fix #52
     add 5b2d39fc1 improve learning; add rep_tests case 215, for fix #52
     add 4db1ac4f8 Restrict Json format
     add 9f811af05 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 7df69de06 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 0570a29ae Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 9aaa5c715 Merge pull request #165 from qinzuoyan/master
     add 192c9d2e3 fix some bugs
     add 6598a2298 Merge pull request #168 from xiaotz/table_api
     add b2eeb8d74 fix nits on script/simple-kv::open/asio.udp
     add 084a2e81a Merge branch 'master' into imzhenyu
     add 59f8c74cd add hpc_task_priority_queue
     add 1a95d14cb fetch tasks with pri order in hpc task pri queue
     add e04411761 fix compilation failure on linux
     add c72b2a816 Merge pull request #167 from imzhenyu/imzhenyu
     add 047815800 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 68ab499ef Modified counter.sample and counter.value, added query time in the result. Now it returns a json containing time str and query result instead of a single number
     add 369d480c7 Changed time return type from str to uint64
     add 402579de6 Merge pull request #170 from mcfatealan/addtimetocounter.sample
     add 1269f390c refactor replica role context cleanup code, add more checks on close
     add 4855d525e fix cleanup when the cleanup is inside target task to be cleaned up
     add f4b987d37 cleanup primary states when replica is in transient inactive state
     add 10018ca29 cleanup learn task ptr manually to avoid unncessary cleanup failure in reconfiguration
     add b4de8ef95 add new tasking::enqueue API which ensures task handle is assigned BEFORE the task is enqueued to avoid possible data race when the task handle is going to be checked in other threads
     add 92645144d use dedicated task code and variable for catch_up_with_private_logs
     add 7739569e4 refactor the context for secondary && move blocking cleanup to replica-close to avoid blocking replication threads
     add 60dd914aa Merge pull request #169 from imzhenyu/imzhenyu
     add cf9cd4c1d Merge branch 'master' of github.com:imzhenyu/rDSN
     add 00f899147 fix CMakeLists.txt
     add 85bab58ac fix rep_tests case 214/215, for fix #52
     add 60398f297 fix rep_tests case 216, for fix #52
     add cc811a318 Merge pull request #173 from qinzuoyan/master
     add 2a4753d78 fix some build error on centos
     add 2adb2bbce Merge pull request #176 from xiaotz/table_api
     add a3b9f989c save rpc code as string in replication log to ensure data can be reused across different versions of replication code
     add 5e97bcad1 Merge pull request #178 from imzhenyu/imzhenyu
     add c77cc04e9 add stop scripts for stopping deployment unit
     add df76c9512 make a gerenal scripts stop.sh for stop on deployment and specify cluster_scheduler interface
     add 878ae3a4b Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 75f7ad42b Merge pull request #179 from goksyli/master
     add 72dade3de fix mutation log write bug, and add test case, for fix #175
     add 8c220e67f Merge branch 'master' of github.com:imzhenyu/rDSN
     add 1f37a5dc5 fix test
     add 8fdf2218a add log_shared_force_flush/log_private_force_flush option; improve rep_tests; for fix #175
     add 9352f8ca2 Merge pull request #177 from qinzuoyan/master
     add 2a9d8c89d fix that: while running dsn.cg.bat without point out its full path but via the enviroment variable of %PATH%, the variable %CODEGEN_ROOT% will be set to a wrong value.
     add 140c94312 Merge pull request #181 from ykwd/master
     add 7f70c8e8b remote storage data backup & fix on multi-meta.sh
     add e7de77c01 Merge branch 'master' of https://github.com/imzhenyu/rDSN into staging
     add a00928432 Merge branch 'master' of https://github.com/imzhenyu/rDSN into staging
     add 3cb43abc0 Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 718f699c3 register cli command for dump_server, and some bug fix
     add 1b6e02a4c register cli command for dump_server, and some bug fix
     add dcbf80700 Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 5e9a9a60d Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 10ccad537 Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add e89dd1b1c Merge pull request #174 from shengofsun/staging
     add 85e41b9d1 smallfix
     add 47f0bc104 fix configuration, to support both ; and ,
     add 0b359966f add vtest.sh, modify -cargs splitter from ; to ,
     add 6cc7172be add vtest.sh, modify -cargs splitter from ; to ,
     add c56997adb fix space format error
     add 40c6cc450 Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 9200a5593 Merge pull request #182 from shengofsun/staging
     add 8df81a081 serveral small performance fixes. copy pdb in publish.cmd
     add 5aeba41f0 Merge pull request #183 from glglwty/master
     add e95484624 Fixed a bug in pq counter_sample, when size is 0
     add cbe6ad0d8 Merge pull request #184 from mcfatealan/fixcountersample
     add 34a0c6ab9 enable google test
     add e79dac0af Merge pull request #185 from xiaotz/table_api
     add 06e61e08f add sketch code for cluster scheduling service and providers
     add 78dcbf092 implement deployment service (in progress)
     add 60518cfca Merge branch 'master' into imzhenyu
     add b99c0bbe2 implement deploy service (done) TODO: json format cli registration for service calls from web app store
     add 3bbfad40e Merge pull request #186 from imzhenyu/imzhenyu
     add 558ef50fb fix bug when cl command env is initialized multiple times .
     add 4a3414b0b remove redundant cl init in build.cmd
     add 7e0b8faed add scripts for performance test for simple-kv
     add ec09556ac Merge pull request #187 from imzhenyu/imzhenyu
     add 26cbcd820 Merge branch 'master' into imzhenyu
     add 4faae86b8 inline certain AIO tasks to boost the performance; dump config file as well with perf result
     add b3750aeb8 Merge pull request #189 from imzhenyu/imzhenyu
     add 69fc52d22 Merge branch 'master' of https://github.com/imzhenyu/rDSN into staging
     add 790784ee2 bug fix
     add 92714892e Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 7c80eb6f7 small fix of simple_logger
     add 65d8b6f63 fix on simple_logger and test
     add d9a363ebf fix simple_logger
     add 15a8e7e88 fix bug of not gc in hpc_logger
     add c3593ee87 Merge pull request #191 from shengofsun/staging
     add bd301ee53 Merge branch 'master' into imzhenyu
     add c0b5c233b fix case-005 as now we use LPC_WRITE_REPLICATION_LOG_WITHOUT_FLUSH instead of LPC_WRITE_REPLICATION_LOG_FLUSH for shared replication  log
     add 6677b9259 Merge pull request #193 from imzhenyu/imzhenyu
     add cf412779d added moodycamel/concurrentqueue as the default task queue provider for fastrun. Fixed unnecessary seq_cst sync in task::task_state. added benchmark for task_queue.
     add 7b657bfe2 Merge pull request #192 from glglwty/master
     add a16619a81 Added a new command for counter: counter.getindex, to convert counter name to index
     add eb3489888 Revised inconsistences in comment of 'counter.getindex'
     add 38e72d521 Merge pull request #190 from mcfatealan/countergetindex
     add 9cec650ac fix compilation error with VS 2013
     add 050e9a4d2 disable inline when the callback is not enqueued from io-thread, as in this case, a dead lock may happen when the enqueue is inside a lock
     add 06602d1fa disable all toollets in perf tests
     add b88bf5860 fix compile error on linux
     add e226bf129 linux and windows has differnt return type for std::chrono::steady_clock::now(), use decltype with static member function; fix tcp/udp configuration error in perf test config
     add 1efb1403c Merge pull request #194 from imzhenyu/imzhenyu
     add 979f6dced Merge branch 'master' of github.com:imzhenyu/rDSN
     add 493e2938a add coredump handling with posix signals
     add 16ac7f3f9 Merge pull request #196 from shengofsun/staging
     add d9ff3c244 upgrade to VS 2015 and remove VS 2013 support
     add 13c95aee7 Merge pull request #197 from imzhenyu/imzhenyu
     add 294ce947a allow deployment to use registered client commond
     add fe3fbb217 modify the function of unmarshall rpc_address
     add eb7e27a8c change Monitor release url
     add ca2751b0c add kubernetes scheduler unschedule
     add a557370f5 merge from imzhenyu master
     add 269fe0268 add docker scheduler provider and register them in the deployment service
     add 41a99894e Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 9d1d3dfdd add provider instalation funciton and a perf result scripts
     add 9a956d75d fix bugs of docker_scheduler providers
     add b5095f387 remove popen in windows and change to tasking::enqueue funciton
     add be224dca4 Merge pull request #199 from goksyli/master
     add fd6ea4ec5 no modification, just for a merge
     add 46f424624 Merge pull request #200 from ykwd/master
     add 7d0552805 fix wrong dependecy in cmakelist.txt of deploymentservice
     add bc04301af Merge pull request #205 from imzhenyu/cmakelist-patch-1
     add fcda3f437 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 229ae1996 smallfix
     add 2b0b6f315 refactored dynamic dispatching in cpp lib & modified relavant services and codegen
     add 49d9f4621 Merge pull request #202 from glglwty/master
     add cf4f24d0d refine admission control mechanism to provider fine-grain control of throttling; copy pdb for dsn.core when publish
     add 163dae041 Merge pull request #201 from imzhenyu/imzhenyu
     add e04bcbfe7 Quickfix of memory leak & removed some unused code
     add 4c8a12ce0 Merge pull request #209 from glglwty/master
     add cca3868d0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add b23d6b56a modify the json format for cli cmd : change cluster type from int to string
     add 0e4162482 fix some bug in src/dist/deployment_service/deploy_svc.server.impl.cpp
     add a03251074 fix a bug that json string should use double quote mark instead of single quote mark
     add 4b55a6e7f add some spaces
     add 13b46d522 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add fa458343f register enum_to_string for cluster_type
     add a7100e2ba add cluster_type::invalid
     add dbbc060d8 Merge pull request #206 from ykwd/master
     add 5ed1ee3d0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 91ff5671d [[noreturn]] cannot compile in C (_Noreturn in c is not supported in VS 2015)
     add 93d4aecff Merge branch 'master' into imzhenyu
     add e7e4616c8 fix crash bug in rpc_engine::call_ip when msg is re-sent while it is still in sending queue
     add b5193b2f8 Merge branch 'master' into imzhenyu
     add a61388fa0 Merge pull request #212 from imzhenyu/imzhenyu
     add f47393868 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 727b29c6b reinvent boost::optional
     add 97d62ded4 fixed a type
     add d9b0111ab Merge pull request #213 from glglwty/master
     add fb39fc212 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 859993811 fix crash bug in hpc_logger and hpc_tail_logger when log entry is too long
     add cc219e717 Merge branch 'master' into imzhenyu
     add 516c730dd fix hpc logger for reserving one bytes for end '\n' char
     add 77b880160 Merge pull request #214 from imzhenyu/imzhenyu
     add 0d4b91a2c Merge branch 'master' of github.com:imzhenyu/rDSN
     add 213a7df33 Merge pull request #217 from qinzuoyan/master
     add faf2dd131 Merge branch 'master' of https://github.com/ykwd/rDSN
     add f257d498a Merge branch 'master' of https://github.com/ykwd/rDSN
     add 14d11a42b Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 0e898ffcf fix bugs of service deployments and scheduler
     add 8c3a9263d 1. fix a bug: the interface between server and monitor does not match \n2. together with a bug fixed by guoxi
     add 1f23e990b fix some bugs which occured when monitor try to deploy apps
     add ac49fbbbe Merge branch 'master' of https://github.com/ykwd/rDSN
     add b6db388ce fix bugs of deployment and scheduler
     add 139198d84 Merge pull request #216 from goksyli/master
     add d022a9829 improve run.sh
     add cb06b5245 fix client_ddl request_meta bug
     add 6facade7f remove client_ddl.h out from include
     add 1e9605216 fix hpc logger crash at exit
     add 7c8b1ec65 fix mus-understanding of return value of vsnprintf, add test case
     add 8dfa9c12c set minidump to dump full memory on windows to make debugging easier
     add e6104e5ad Merge pull request #218 from imzhenyu/imzhenyu
     add c3c9fb536 fix crash bug when the stress is high about mutation queue
     add 9dcc5e9fd Merge pull request #223 from imzhenyu/imzhenyu
     add 6211b5bf0 Merge pull request #221 from qinzuoyan/master
     add 2b5128503 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 749213d92 Merge pull request #224 from qinzuoyan/master
     add 7bfdfb29d implement network failure model so that our network fault injection is realistic
     add d93816e50 Merge pull request #228 from imzhenyu/network-fail-model
     add 78e4109f4 add rpc retry logic for rpc requests not responsed for some time before timeout (however, this is not really the right solution for tcp alike session based networks, but useful to address data-gram alike networks, or our fault injection where messages can be dropped individually)
     add 9a5d641c0 add ref to rpc response call in on_rpc_timeout to ensure the pointer is valid during re-send
     add 5caad7eab change timeout_ms to timeout_ts_ms in rpc matcher to make it more precise
     add 25877d502 Merge pull request #225 from imzhenyu/rpc-retry
     add adc88cc1a fix rpc_session bug; fix zk distributed lock bug; fix some mismatched new[]/delete to avoid unexpected problem
     add caa4bcd0e Merge pull request #231 from shengofsun/staging
     add 1751691ab fix issue #299 to fail rpc call fast when the server does not exist
     add b9d519bcb mimic failure for non-sending msgs as well in rpc session's sending queue
     add 65cfc8d77 comment fix according to code review
     add 88974557d Merge pull request #230 from imzhenyu/rpc-fail-fast
     add 3b832b056 Refactored tasking interface
     add 36f12e4b1 refactored clientlet aio interface
     add 98a6297f7 added empty_callback type
     add b0d4547b1 huge refactor to codegen & cpp interface
     add 06c82d12d Merge pull request #234 from glglwty/master
     add f619b1124 code template fix due to clientlet api refactor
     add bab8bd804 Merge pull request #235 from imzhenyu/template-refactor
     add c38a30f00 fix throttling, add throttling test config for simple-kv
     add 1bd445589 (1) using perf counter in task queue for queue length (2) fix nit in fd test
     add 2929cdb87 Merge branch 'master' into throttling
     add f09e245e5 (1) add repeat command in cli (2) add rpc rejection methods in task queue
     add 133ba8d88 unfix a bug to let merge doable first.
     add 88c2855fb Merge pull request #236 from imzhenyu/throttling
     add 8d5a824e3 graduate replication framework from app to dist directory
     add 8662e772f Merge branch 'throttling' into imzhenyu
     add 7a78cfe89 Merge branch 'master' into imzhenyu
     add 6cbc98f92 Merge pull request #237 from imzhenyu/imzhenyu
     add c94ec320c Add checker for aio callback. Some modification to the usage of shared_ptr
     add b95764780 reordered operation order in simple_kv perf test
     add 2d835401f Merge pull request #239 from glglwty/master
     add 2540dd18c refactor replication.thrift; add recompile_thrift.sh
     add 6f7735030 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 03002a181 add recompile_thrift.sh to auto-generate replication.type.h; improve mutation marshall/unmarshall
     add 1bbe67d0a fix case-302.act
     add 7ba54f010 make task_code contruct explicitly from dsn_task_code_t to avoid risk
     add ed8bdd2d3 Merge pull request #238 from qinzuoyan/master
     add 52c62d6ea fix mutation murshall bug, fixes #238
     add 2361ce443 support mutiple data directories, fixes #240
     add 517eb89d3 (1) use on-stack message parser for asio udp provider as the parser is created for each send udp message (2) use std::unique_ptr instead of std::shared_ptr for message parser (3) use strong typed tool and toollet provide type instead of integer
     add e461df923 Merge branch 'master' of github.com:imzhenyu/rDSN into imzhenyu
     add 96e06ccd0 Problem:    task wait time is not stable which leads to many timeout Solution:    (1) per-task-code wait time weight instead of global weight    (2) separated wait time approximation for different priorities of tasks in the same queue
     add 55d263b37 Merge pull request #242 from qinzuoyan/master
     add a9297ecdd fix linux compilation error
     add 01c5b21c7 Merge pull request #241 from imzhenyu/imzhenyu
     add fffa837bb Merge branch 'master' of github.com:imzhenyu/rDSN into throttling2
     add 8b936ea4c Merge pull request #243 from imzhenyu/throttling2
     add 9fa58263a Merge branch 'master' of github.com:imzhenyu/rDSN into multi-dir
     add c2d547408 Merge pull request #246 from qinzuoyan/multi-dir
     add 8111d6db0 (1) remove on_task_dequeue and recv_ts_ns update in task to reduce cost on each task (as the throttling rejection mechanism on timeout approximation is not used now) (2) performance optimization for private log callbacks which blocks the shared log callback to be executed and leads to timeout in stress test
     add 18c146f97 refactor enums in replication.thrift; add list_nodes command in ddl_client
     add 802821de1 smallfix
     add ad1b1d3e7 Merge pull request #247 from qinzuoyan/master
     add dabadb221 fix rpc_group_address leader reset bug
     add 55b26b969 disable reconnect logic
     add 52b55ceb7 remove AS_ALL and NS_ALL to avoid misuse by user
     add d0d9dc1e6 improve failure_detector
     add 6237879a3 format "<::" to "< ::"
     add 4d40b058c remove assert in on_gc() to avoid coredump when file operation failed
     add 4511ee87c improve client_dll to print table creating process
     add 4699e7b0b Merge pull request #249 from qinzuoyan/master1
     add 0009af96b bug fix of replica_chkpt.cpp & refactor some scripts
     add 502ebad77 bug fix in checkpoint
     add dde9743ff Merge branch 'master' of https://github.com/imzhenyu/rDSN into staging
     add 9aceb7785 refactor meta server, bug fix in checkpoint
     add 97ad097d9 Merge remote-tracking branch 'zy/master' into staging
     add 7d3429c1b bug fix in message parser
     add 4dadc657a compiled on windows
     add 67d0588bb Merge pull request #251 from shengofsun/staging
     add 49cdf183b Merge branch 'master' of github.com:imzhenyu/rDSN into master1
     add b899cd5ae improve create_table command of ddl_client
     add a82e21f9f Merge pull request #254 from qinzuoyan/master
     add d0ab5155a small fix
     add 1e09101bc fix a bug about monitor's page of service
     add 31b1e1de2 Merge branch 'master' of https://github.com/ykwd/rDSN
     add 876b5932d fix deployment scripts and add service url to cluster_scheduler
     add 6cff136e0 add deployment service unschedule
     add 8460a31a4 fix deployment service undeploy and multi-instance name conflict
     add e84910753 add undeploy callback and fix some bugs
     add c10b8ff64 fix k8s deployment scripts and deployment service bugs
     add b5b1f6165 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 2abafa4ce add pool manager to docker scheduler
     add e06e5ab2e Merge remote-tracking branch 'upstream/master'
     add e4a8299bb add machine pool manager
     add 17d0cda24 add sample config for machine pool manager
     add b4eb0e7e7 merge from ykwd master
     add 13e501114 add config file 'nodes' for deployment service
     add 569c71246 Merge branch 'master' of https://github.com/ykwd/rDSN
     add 0a8ade34f fix bugs of scheduler provider
     add b1955bf7a add machine pool init
     add b91e5eef7 change some interfaces of machine_pool_mgr to integerate with cluster scheduler
     add a959810a7 merge from ykwd master
     add f154b8366 fix bugs
     add 3bb372967 fix some bugs : 1. fix a bug when long term operation such as deployment or undeployment block other cli call; 2. remove the use of a stale iterator in case of potential modification to the container; 3. add a feature so that monitor can display 'UNDEPLOYING' state
     add 78acce2b3 merge to upstream/master, fix a bug of upstream/master
     add 6e0eaf61d 1. optimize : change the write file method from system call 'echo' to std::ofstream at docker cluster scheduler; 2. fix a bug : the remote directory is undefined when docker cluster undeploy a service; 3. fix a bug : a missing return value of function get_machines of machine_pool_mgr will cause core dump
     add 63f402c96 Merge remote-tracking branch 'upstream/master'
     add f69969200 Merge pull request #245 from ykwd/master
     add d5dfe3408 Merge branch 'master' of github.com:imzhenyu/rDSN into perf-opt
     add 81ba79c73 fix #249 according to review
     add 3369aa7eb Merge pull request #256 from qinzuoyan/master
     add e918fad69 Merge branch 'master' of github.com:imzhenyu/rDSN into perf-opt
     add 83534aec3 implement rpc forwarding
     add 04b1d60e9 add more log for replication learning time measurement
     add d1c5f8f9e Merge pull request #257 from imzhenyu/rpc-forwarding
     add d028eebe1 Merge branch 'master' of github.com:imzhenyu/rDSN into learn-measure
     add c05138bb4 Merge pull request #258 from imzhenyu/learn-measure
     add f5fb2c2c2 add key-space-size support in perf test to NOT enlarge memory size without upper limit
     add 123e930fd Merge pull request #259 from imzhenyu/key-space
     add da7b38e3a (1) fix network race of sending_message_queue (should be cleared only when write is completed, otherwise the buffer for sending is not hold by the msgs in sending queue) (2) refine app replication base internal handler map for better performance (3) print task queue length in logs on each enqueue
     add 631fdaf4a fix message count on send queue clearance
     add b276798ff clear sending queue as well on connect failure
     add 1fc4cdb3a (1) enable thread safety of the rpc handler map in both rpc engine and local app replication base (2) fix rpc session failure without write & connect ops initiated (e.g., no send ops on server)
     add 79939c126 add more logs for task type check
     add 788b1c835 fix ref bug in system internal rpc handler registration due to handler refactor
     add 8f1615323 fix method ptr execution failure on linux as sizeof(method) on linux == 16 instead of 8 on windows
     add d99e0e3e8 Merge pull request #260 from imzhenyu/perf-opt
     add a69e02291 fix memory leak due to stupid field overwrite (mostly because of automated git merge)
     add 41e10f194 Merge pull request #266 from imzhenyu/mem-leak
     add 4a319cfa0 Added a 2-phase rpc call (create message -> call) interface to solve move-into-lambda problem.
     add 343dc1259 merge 2-phase rpc from Tianyi's commit; fix bugs about data usage before std::move in replication learn; note this is an example usage, we can have more changes later regarding to this usage to avoid unnecessary shared_ptr and malloc/free.
     add 4523ffe39 Merge pull request #272 from imzhenyu/2-phase-rpc
     add 7e70b507b randomize timer so that they are not executing simultaneously
     add ee6478dd5 set default option of timer randomization as false for all task code; users can set it to true in configuration files on demand
     add 808c84478 Merge pull request #271 from imzhenyu/timer-randomization
     add 558652af3 move from_address into rpc message header so that when forwarded, the initiation site is remembered
     add 66dd65bd8 Merge pull request #267 from imzhenyu/rpc-forwarding-named-port
     add c8ff98674 memory malloc/free optimization for frequently malloc/free-ed objects including tasks, safe-tasks, and messages to boost performance
     add c4bda562f Merge pull request #273 from imzhenyu/object-pool
     add 94af8e8f9 add on disk log file count configuration for simple-logger and hpc-logger
     add 9b0858785 Merge pull request #274 from imzhenyu/log-gc
     add 29cfd361f refactor code generator format
     add d347dbc7f fix failure_detector bug
     add ab687b49e fix network bug: _matcher should not be null in both server and client session
     add 5d1c15984 Merge branch 'rpc-forwarding-named-port' into forward
     add ed7dc7300 refactor code of forwarding rpc, and fix some bug
     add 80c80fc6e fix codes according to code review in #263
     add 7ed8b953c Merge pull request #263 from qinzuoyan/master
     add 99e5dbca0 fix recv message callback request & response decision
     add c16e2f599 add comment back for recv reply in rpc sessions
     add 2c7418477 Merge pull request #275 from imzhenyu/rpc-reply-fix2
     add d92a7196a fix message_ex::copy_and_prepare_send() bug; diable update_leader_on_rpc_forward of meta_servers
     add bd8108091 fix according to code review of #276
     add dcbace61a Merge pull request #276 from qinzuoyan/master
     add c73195f47 (1) merge allow_inline and fast_execution_in_network_thread so that allow_line is applicable to all tasks (2) remove throttling by execution time estimation and rejection, since its runtime overhead is too high and there is risks where estimation is not precise which leads to lots of false positives; (3) recover throttling mechanism by delaying receiving rpc session's recv ops. Now for edge services, we can use reject, and for internal services, we can use delay. (4) al [...]
     add b5d3362eb restore rpc request drop before execution when its queueing time is already larger than its timeout
     add a6a904e50 Merge pull request #278 from imzhenyu/throttling
     add 8eba1d2a2 avoid string map inquery when the binary versions of rpc client/server are the same, i.e., using interger instead to accelerate rpc handler inquery.
     add a2af00c14 Merge pull request #281 from imzhenyu/rpc-query-improve
     add ad72e911c 1. add feature : deploy service on windows cluster via app store; 2. modify machine_pool_mgr's get_machine method to allow more flexible options. 3. change the line ending of mahcine_pool_mgr.cpp/.h from CR LF to LF
     add 56e192322 Merge pull request #265 from ykwd/master
     add 7dbbcbeb8 separate service API in C into multiple files.
     add 4f3eb885c add comment in code for V1, and generate document using doxgen (TODO: some modules such as extensions are still incomplete)
     add 7e48d41d7 add missing api-common.h
     add 122734db7 init code base for layer 3
     add c8dd4ce46 add pack pragmas for structures in c service API so as to make sure serialization across languages is correct
     add 27e79e622 move csharp dev library and example from rDSN.CSharp repo to the main repo to easier layer3 development
     add 199124296 Merge pull request #283 from imzhenyu/v1
     add d56f80d94 add pack pragmas for structures in c service API so as to make sure serialization across languages is correct
     add 1c56df77f Merge pull request #284 from imzhenyu/v1
     add b65c8f9e9 Merge branch 'master' of github.com:imzhenyu/rDSN into layer3
     add e91b277e4 add comments in machine pool manager
     add 43262052e Merge branch 'master' of github.com:imzhenyu/rDSN
     add fb825d947 remove unnessary interface in cluster scheduler; add method interface in meta server
     add 5e3e27339 add is-stateful in create-app-opts to prepare for support of stateless apps; remove unused proposal structure
     add 6b97a9eaf Merge branch 'layer2' of github.com:imzhenyu/rDSN into layer3
     add f4a8e4788 add C# meta server client in layer 3 for connecting from generated code to layer 2 meta server
     add 4df01da43 add license and file header for layer 3 code
     add a60a8886d update protoc using v3 proto format
     add e0ba4123b implement gproto_helper for cpp with format of binary and of json.
     add b807f043a implement gproto_helper for csharp with format of binary and of json.
     add b5ba77ae1 to integrate on linux
     add 037447c11 for counter example
     add 72278717c add discussion notes for layer 3
     add 74b68b065 small fix
     add 97b1c8283 refine documents for v1
     add dd4f3232e update v1 document
     add 3bf27ab31 fix format error and strip full path name of the source code
     add 2999107cb fix tab format error in doc
     add 28f978e7c Merge pull request #286 from imzhenyu/v1
     add 32e5d3070 fix codegen in single app example
     add a3b8653a1 Merge pull request #296 from glglwty/master
     add 79b20b3e3 Merge remote-tracking branch 'zy/master' into staging
     add 38ede145c load balancer
     add 7c5d121f0 modify lb
     add 8f7ea9d23 continue lb
     add 7c2ed0222 implement a load balancer, code refactor of meta server
     add 64c2ce978 Merge branch 'lb' into staging
     add ea88087d6 command change in ddl_tool
     add 2cf4f647f sometimes rpc may timeout on travis, and fix this
     add 69ae78d17 fix comments, and add command in script multi-meta.sh
     add f124c7aee fix some bugs
     add 01da379b5 fix bugs
     add 7b40d7c01 move the judgement into replica_stub::close()
     add 3ad4e7cf1 Merge pull request #295 from xiaotz/bugfix
     add 0fafffcf4 smallfix test to decrease running time
     add 2d2f3842e improve group_address::possible_leader() to set _leader_index
     add 63f5a5a84 add cli command command-list
     add fd8ab2b5a add query_replica_info service in replica server
     add d8b8cee6e Merge branch 'master' of github.com:imzhenyu/rDSN
     add 31289f63c Merge pull request #297 from qinzuoyan/master
     add 3e8a7ad83 Merge remote-tracking branch 'zy/master' into staging
     add d99f230c9 regenerate the replication.types.h
     add 604df047e thrift marshall/unmarshall
     add cce47b927 A compiled version of thrift serialization
     add a16e9b8d1 modified templates of thrift serialization, make it more elegant
     add 9361aec72 fix compile python script
     add 96e9a498f move thrift a thirdparty project
     add e35d7d15c fix : 1. codegen 2. docker scheduler
     add 2b241e369 Merge pull request #300 from ykwd/master
     add dd453d6d4 expose local-hash as a config so developers can optionally enable fast rpc lookup optimization
     add c16ad7a8b change local-hash to local_hash
     add e47e71f5c Merge pull request #299 from imzhenyu/rpc-fast-lookup-fix
     add 2b9de2bc1 Merge pull request #298 from shengofsun/staging
     add b306e578d add eon overview
     add 56888bcaa add service API interface change due to layer 2 requirement
     add 731820883 fix request hash naming in replication app base
     add 8e7227ce7 fix name change of thread_hash to request_hash
     add 7c0fb838d Merge pull request #302 from imzhenyu/layer2-api-change
     add 14c8eb108 add http parser
     add 1c5b19241 Merge pull request #303 from glglwty/master
     add ece226ae5 correct http_message_parser
     add eb3607060 Merge pull request #304 from glglwty/master
     add abfaca357 Merge remote-tracking branch 'zy/master' into thrift
     add d57aaf07d runnable thrift
     add df6c785b6 move core init in the dsn_run
     add f4c3d91e7 Merge pull request #307 from shengofsun/staging
     add 4eb442312 Merge remote-tracking branch 'zy/master' into thrift
     add eaf60de13 fix thrift cmake
     add ea4247ef0 fix prefix of cluster_type
     add 0647eb3f2 Merge pull request #308 from shengofsun/thrift
     add f5e5d691c Merge branch 'master' of github.com:imzhenyu/rDSN into layer3
     add f6a00d4ce index on layer2: 56888bc add service API interface change due to layer 2 requirement
     add 98d23e18c WIP on layer2: 56888bc add service API interface change due to layer 2 requirement
     add f4349ce98 layer2 client ready, server running
     add d28e41ae8 (1) enable both old replication client and the new transparent replication client, see macro TRANSPARENT_LAYER2_CLIENT; (2) add is_stateful in meta state for preparing support of stateless services
     add 4c3c028fd (1) fix uri address test case bug as the uri address internal changed; (2) add pragma for constexpr used in http msg parser to avoid compilation errors with VS 2015
     add 0232d8cee Merge branch 'layer2' of github.com:imzhenyu/rDSN into layer3
     add 7e329f738 Merge remote-tracking branch 'upstream/layer3' into layer3
     add 7d91b0546 fix build and install process for protobuf
     add 0b49df99d Merge pull request #311 from ykwd/layer3
     add eae53d398 enable meta server and add new daemon service, for managing stateless apps on Windows, need more work on Linux and fail-over part
     add d21b523c1 add new (& missing) projects deamon and fd_multimaster
     add cefe08f1a fix L2 client for supporting stateless services; refine partition_configuration reuse for stateless services.
     add be2bf0734 rename simple_stateful_load_balance to simple_load_balancer as it is now supporting both
     add 65e84a424 Merge pull request #316 from imzhenyu/layer2
     add 57ad7eef4 fix CSharp dev lib due to layer 2 support in rDSN service API
     add 43f2bd1ae fix client rpc code generation so it supports both L1 and L2 apps
     add a9f8fb79e fix client cs template so csharp running passed for counter example
     add 2daf1407b fix gproto helper so that cross-lang communication is ok (e.g., C++ and C#)
     add 13eb579df add support for Layer2 access in rpc client code generation  (C++ & CSharp)
     add c2f7873bb changed the output of counter.value/sample/valuei/samplei, now results include counter_name and counter_value
     add aad50287b (Done by Zhenyu) fixed a bug that after replica's learning process ended, the decree counter wan't properly set
     add dd36797c0 Merge pull request #318 from mcfatealan/layer3
     add eb8c40e5b add cli handler in meta-server for crate/drop app query apps/nodes query node/app partition configurations
     add d2ce602aa add json unmarshall for meta_service
     add c253b01a8 add kill-partition cli command for daemon and replica
     add def06e4a9 Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add 24841e59f add thrift helper for csharp
     add 1aeacb23e Merge pull request #319 from ykwd/layer3
     add a7007d09c new project to make dsn.meta_server a dynamic library for easier testing
     add a0811fbd1 add missing make file for new meta-server dll project
     add 08a0262d0 add macro to avoid meta-server app auto-register in static libs
     add a208116dc Merge pull request #320 from imzhenyu/layer3-imzhenyu
     add 35cb31b18 fix for meta service
     add 2451d3543 Merge pull request #321 from ykwd/layer3
     add 3bdb9ed0b first runnable version of layer3
     add 5018da78c Merge pull request #322 from glglwty/layer3
     add 3df7cfd8d fix a bug of unmarshall request for meta_servcie
     add 3848bc8d8 Merge pull request #323 from ykwd/layer3
     add 01df31ef9 clean up unnecessary code in layer3
     add 61f0b9434 Fixed broken flow. partial protobuf implementation
     add 86a311f88 Merge pull request #324 from glglwty/layer3
     add 3b8d6d280 add layer3 code generation & layer3 search example
     add f9e54c3da add missing file due to rename
     add bb37b856e (1) fix daemon using one layer package id as the package dir (note compression for app publish must be done inside the dir now) (2) add templates to generate run.cmd and config file for publish
     add 7fa5604fe change uncompress parameters so that packages can be zipped at the directory (e.g., zip dir xyz as xyz.7z)
     add 4e37912a4 proto & thrift works
     add 0493b0efe Merge pull request #325 from glglwty/layer3
     add dae11c987 add support for multiple app auto-initialization in meta server config file ``` [meta_server.apps.1] app_name = counter.instance0 app_type = counter partition_count = 1 max_replica_count = 3 stateful = false package_id = counter-v1
     add e341ead02 fix nits about log information in meta server
     add 2a9203746 refactored layer3 codegen
     add b43fac4a0 Merge pull request #326 from glglwty/layer3
     add 715345a3c add thrift_helper for cpp, both json and binary, can be auto-installed on windows
     add 8353152a8 Merge pull request #327 from ykwd/layer3
     add ba947a600  1. fix a bug of code generation for thrift. 2. change then name of the parameter so that it would not collide with the type name.
     add b1daad35e 1. modify thrift.exe to fix a bug of codegen. 2. remove thrift.exe from this repo and use wget to fetch it before build. 3. create an empty file to keep the dir bin\Windows not removed from git.
     add 77f7537f8 tidy cmake code for install thrift and protobuf
     add b610431a6 make generated cpp code more user-friendly
     add 451869d45 make generated csharp code more user-friendly
     add 3019e0a23 fix a bug of code gen
     add 7dfa933da assure the layer3's service's type being consistent
     add beafe53bd add php support for appveyor.yml
     add 7f8dbe065 add unit test for code generation on Windows
     add e9f7b88c0 add unit test code generation on Linux
     add 00f6fbba3 let travis install php
     add 17c2b8243 unify the name of the generated libprotobuf with different build type
     add bcb335478 use xcopy to speed up installing boost's headers and invoke boost installing only when target boost dir does not exist
     add ec7e9fe37 1. allow msbuild to run parallelly; 2. download thrift.exe on appveyor 3. modify .cmd file for changed interface of idl tests 4. specify DSN_CMAKE_BUILD_TYPE explicitly on appveyor 5. add php location to PATH on appveyor
     add 46283861a allow to specify marshall and marshall method on message headers
     add a30ba1da9 Merge pull request #328 from ykwd/layer3
     add d2b710c9f fix code generation issues when multiple services are defined in one spec file
     add 6feb81567 Merge branch 'layer3' of https://github.com/ykwd/rDSN into layer3
     add bfaa9d67e Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add 95154bfde Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add 4d24a9012 Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add a8eab259e Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add 40088a0c6 Fixed that kill_partition cannot work properly
     add 590845287 Merge pull request #330 from mcfatealan/layer3
     add ea96db532 Merge pull request #331 from ykwd/layer3
     add 0ead8ab13 - add configuration sync between daemon and meta server - improve support on meta server for stateless services
     add 2e1226589 Merge pull request #335 from imzhenyu/stateless-failover
     add 4ccf9b495 Modified some profiler command response format and modified windows publish/deploy scripts for monitor renaming to webstudio
     add f8b00957f Merge pull request #338 from mcfatealan/layer3
     add 242e08149 http request functionality
     add 22f7c1359 Merge pull request #339 from glglwty/layer3
     add 823d65451 implement same server-side application model for layer 1 and layer 2
     add 4aa5458ba Merge branch 'layer2' into layer3
     add ece2c434a modified dsn_cli_run in C++ side
     add 2f08745f2 Merge pull request #313 from mcfatealan/master
     add 38892e762 improve dsn_ipv4_local()
     add 92c4ef55a Merge pull request #329 from qinzuoyan/master
     add cf81a7e2e improve dsn_ipv4_local()
     add cc1eb4aad Merge pull request #333 from qinzuoyan/master
     add ad2cecfa9 make cmake more user-friendly
     add f19321b1b Merge pull request #332 from ykwd/master
     add 6c48eb753 mv idl_helper to /include/dsn/idl
     add 4a69b687c Merge pull request #334 from ykwd/master
     add a54d66341 separate ddlclient lib
     add f773e5e0f add clear_zk command in run.sh
     add 4b20badb5 Merge pull request #341 from qinzuoyan/master
     add 4f7cd5d5b Merge branch 'master' of github.com:imzhenyu/rDSN
     add 2aeee9a61 Merge branch 'master' of github.com:imzhenyu/rDSN into layer3
     add 81e125cb6 implement same application model for layer 1 and layer 2; see src/apps/skv/config.l1.ini and config.l2.ini for how to run in both layer 1 and layer 2 with the same code base
     add e8773f69a fix http message parser
     add d7f11360b Merge commit '7dfa933daead6eb4e3598ace0b8da1be3da0da77' into layer3
     add e090c815b removed commonspec
     add 8f1032673 Merge pull request #343 from glglwty/layer3
     add dea95224f Merge branch 'layer3' of github.com:imzhenyu/rDSN into layer3-app-model
     add c1faa5f95 when crc failed, close the socket
     add f0b5d2fba bug fix, add comments
     add e9e917d6c small refactor on message_parser & move crc config from whole network to per rpc_message
     add 3285c72f3 fix run.sh
     add dfe15ac8b remove useless files
     add 84d2c715a tiny modification, make the code tidy
     add 6e6c3e665 smallfix according to code review
     add a2b7638d6 Merge pull request #342 from shengofsun/check_crc
     add 929f3743f Merge branch 'master' of github.com:imzhenyu/rDSN into layer3-app-model
     add 824c53d4a setup app-info on ctor to avoid nullptr of app-info
     add bca477092 fix app-info init timing
     add 02eed033e Merge pull request #344 from ykwd/layer3
     add 6184982dd Merge branch 'layer3' of github.com:imzhenyu/rDSN into layer3-app-model
     add ffb76f9d9 fix rep-test with new app model
     add 81c0794ad add module name on module init, to avoid function name pollution on linux
     add 68765c129 (1) update configuration files; (2) change configuration for layer 2 from layer2_handler to hosted_type
     add 53e9ba08d register replica as frameworks instead of normal apps
     add 6230c866c fix learn state bug due to refactoring
     add 7aeda617c fix replication test configuration due to code change
     add 4e3735604 fix RPC_REPLICATION_CLIENT_READ as RPC_SIMPLE_KV_SIMPLE_KV_READ as now we use layer 1 app rpc code directly for replication ops
     add 3caeb8684 remove unnecessary local var declaration
     add 3afcf401f add retry on replica failure to avoid failing read/write unnecessarily
     add 4765cc142 make reply error from replica_stub as system error so as to pass case-207
     add e5a224e4a do not close layer 1 app context when destroy routine fails
     add b7f721921 change hash to thread_hash. now the destination of a request is determined using a thread_hash + partition_hash
     add 56e8f204c fix configuration for vconfig
     add 18235b94c Merge pull request #346 from imzhenyu/layer3-app-model
     add db2b6a801 Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add a5a503955 refactor thrift serialization
     add 3cfd61002 Merge pull request #345 from shengofsun/serialization
     add 616c87f83 Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add 46bc677c8 static_cast<int>(request->header->client.hash)
     add d5e1bfe17 enable batching with the new application model at L2
     add 226c172dc Merge pull request #349 from imzhenyu/layer3-merge-hash
     add c3d623f3b Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add 76482b32b Using thrift to serialize variables for rdsn's internal rpc. Users can specify either thrift or protobuf for their applications, supporting a per-task granularity
     add 66ea8de57 fix for compilation on linux
     add 43d577bd0 new composition stub gen && compiler, resolve type confilicts, some automatic refactoring disabled corrupted message tests
     add c31bb2c77 Merge pull request #351 from glglwty/layer3
     add c3fd9ea97 Merge branch 'layer3' of https://github.com/imzhenyu/rDSN into layer3
     add ce58f9408 fix for compilation on linux
     add 8d937bfbf Merge pull request #353 from ykwd/layer3
     add 74e097134 move common data strucures used by layer 2 into dsn.layer2.thrift and fix bugs in rep-test for new thrift serialization
     add 5159cfdeb rename replica app-info file after temp store
     add 9cdba6430 fix format issue; make sure all proposals sent from meta server contains full app info
     add ce5d7535d bug fix & refactor
     add 4499a60fd fix dead lock
     add 66a458624 tiny modification, make the code easier to read
     add 403c2c976 Merge remote-tracking branch 'zy/master' into staging
     add e77b406ad revert the config.ini toollets to the default
     add a138dcd6f Merge pull request #347 from shengofsun/staging
     add 439ea0098 fix thrift cmake file to specify user boost
     add a24dcb03b bug fix of perfect fd & extension object
     add 2ddefb616 Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 6aa24bfa5 fix config.ini parameter
     add 35b5a0411 fix failure detector
     add f6a1a860b Merge pull request #348 from shengofsun/staging
     add 124d4b4d7 partially merge the update in master branch into layer3-thrift branch
     add 80d9ba706 Merge pull request #354 from imzhenyu/layer3-thrift
     add 90ed32e5e prevent spinning when meta server is down/fix bug when meta server update configuration
     add 2ea1ae342 fix compile
     add de6815eb9 Merge pull request #355 from shengofsun/staging
     add 25b632c59 Merge branch 'master' of github.com:imzhenyu/rDSN into layer3-thrift
     add 20167c7bf Merge pull request #356 from imzhenyu/layer3-thrift
     add e1cba8bbe 1. fix some bugs for code generation; 2. add some test cases for dsn.idl.tests
     add 5043626c2 add bond support
     add 7c7456b02 add missing bond spec provider
     add c48851eca Merge pull request #357 from imzhenyu/layer3
     add eddef5ff4 serch made compilable
     add 3d203e427 Merge pull request #358 from glglwty/layer3
     add 8340c920a Merge branch 'master' of github.com:imzhenyu/rDSN into layer3-thrift
     add 75377593c Merge pull request #359 from imzhenyu/layer3-thrift
     add 248b4e534 Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add 171bf11d4 add default value for the parameter $id of 2 functions in type.php
     add 0f37731a9 for compilation on linux
     add fcdc00a20 Merge pull request #360 from ykwd/layer3
     add 07b29675b add serialization format support in http message parser
     add 676240e80 parse additinoal parameters in http message parser
     add ade82670e search made runnable
     add 6309505f9 Merge pull request #361 from glglwty/layer3
     add a1cd07113 add CPP state support for easier get-checkpoint implementation
     add 9500f7697 add thrift json helper for js
     add 271537ed2 refactor the interface for js idl helper
     add 4c6bbec79 Merge branch 'js' of https://github.com/ykwd/rDSN into layer3
     add 9b8db96f1 Merge pull request #1 from glglwty/layer3
     add e7366f857 Merge branch 'layer3' of https://github.com/ykwd/rDSN into layer3
     add ae4f6d232 Merge pull request #2 from glglwty/layer3
     add c667b9528 Merge branch 'layer3' of https://github.com/ykwd/rDSN into layer3
     add 9b235c546 make js helper work for thrift json
     add 568a64311 Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add 1b5e60d0e Merge pull request #362 from ykwd/layer3
     add 9c61106d0 Merge branch 'master' of github.com:imzhenyu/rDSN
     add 49a812b70 Merge pull request #363 from imzhenyu/master-cpp-learn
     add cd3e9f7b3 fix a section name of config file
     add 096644bf7 Merge pull request #365 from ykwd/layer3
     add 6e730b22b Add fine-grained profiler config
     add 3a9193829 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add b982ff058 Merge pull request #364 from mcfatealan/master
     add 76a21a0ad Fix codegen template typo for app dll generation
     add aaa25a332 Merge pull request #366 from mcfatealan/master
     add 8f5cc8f7b fix task_tracker bug which may lead invalid read to deleted wait_event
     add 8e2e4cf3e Merge pull request #368 from qinzuoyan/master
     add c98925d30 simplify the model to ensure app does not call any function or var belong to layer 2
     add 353e2c2c6 add physical error support; add local commit decree during get checkpoint for on-demand checkpint
     add 403af73b6 fix a bug about new physical error get
     add 313863a1c Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 31ab681c7 Add layer 1 automatic perf test scripts, tested MemCached for now
     add 71cb930c2 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add be7d94aa5 Add layer 2 automatic perf test scripts on windows, tested on leveldb, memcached, thumbnail, xlock. Sample data is recorded on online doc.
     add 7d13f5c76 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add d9ad7c91d improve the exp scripts
     add 06fe4f984 Merge pull request #369 from mcfatealan/master
     add 8ad82eff4 add rw-lock.tryLockReader and tryLockWriter support
     add e91498f68 Merge pull request #371 from imzhenyu/master-try-lock
     add 42e6364aa make protobuf's library installation location fixed
     add a3202bc31 Merge pull request #372 from ykwd/master
     add d307210c3 Merge branch 'master' of github.com:imzhenyu/rDSN into master-cpp-learn
     add 4a0636f3a Refine exp scripts
     add e6e6c27ed Improve exp scripts: add ALL_TEST mode, improve fetch log method , improve UI
     add 224884b03 add setting.ini for variable config
     add 04aa727f4 improve exp scripts and fix some bugs
     add c2e8f3b1e change perf test config to support hybrid mode
     add dfc206eb6 fix perf-test for echo and deploy-svc due to perf-test config change
     add c5e44bcbb refine perf-test by putting start_test in base class
     add 0cd9ba68e Merge pull request #373 from imzhenyu/master-perf-hybrid
     add 3549ee978 Modified bond related code to make mafia composible
     add 9cce903b0 Merge pull request #374 from glglwty/layer3
     add e05238161 (done by zhenyu) add a new counter 'task.inqueue' to see the number of tasks remaining in queue to help profiling
     add 163476a8b Merge branch 'master' of https://github.com/mcfatealan/rDSN
     add c49cd750c Merge branch 'master' of https://github.com/mcfatealan/rDSN
     add 002bdc171 replace tabs with spaces to pass travis test
     add 6416eff65 Merge pull request #376 from mcfatealan/master
     add aa251914c improve performance for private log
     add de4a5c1d2 (1) add mutation ref when private log use null callback; (2) fix commit/durable decree set bug
     add e5e26b71c Merge pull request #377 from imzhenyu/improve-private-log
     add 8302028b0 (done by zhenyu) 1.fix a bug about fastrun timer default set 2. fix a bug that make LPC_RPC_TIMOUT inqueue count wrong
     add f766c3500 (done by zhenyu) fix the previous inqueue counter issue
     add 666a2d2e5 Merge pull request #380 from mcfatealan/master
     add 175d49c86 add ratios for rpc message delay
     add 9683b98d6 Merge branch 'master' of github.com:imzhenyu/rDSN into master-cpp-learn
     add 70bab9ffd fix build break due to interface change
     add 7d6d92440 refine app and framework models
     add 024d14f7e WIP for debugging on another powerful machine
     add 257b4c116 add xiaomi git source
     add fd78944f2 use error_code.end_tracking() to avoid unnecessary complain
     add 7a0c54a7e improve network session management
     add d67adb892 fix according to code review in #370
     add ad89ef977 forward leader automatically if rpc failed on group_address
     add 49a58a4e5 Merge pull request #370 from qinzuoyan/master
     add d45e3c8b1 Merge pull request #381 from imzhenyu/master-cpp-learn
     add d86b2aa98 Merge branch 'master-cpp-learn' of github.com:imzhenyu/rDSN into master-cpp-learn
     add 399655b89 mutation log performance opt
     add a5a0d2034 perf opt nits
     add 7ae0ef3a9 fix tab format error
     add b983a3075 fix log learning bug where the learned buffer may be invalid
     add 426fd846e fix format error
     add f774320df commit private logs more aggresively to reduce memory pressure
     add 06ec3458a Merge pull request #382 from imzhenyu/master-cpp-learn
     add 355a081b7 fix a bug in exp scripts
     add 9c3d9cf15 replace tabs with spaces to pass travis test
     add 5320a57bd Merge branch 'master' of https://github.com/mcfatealan/rDSN
     add 2d6a4b883 Merge branch 'master' of https://github.com/mcfatealan/rDSN
     add 5c0baa8b1 Merge branch 'master' of https://github.com/imzhenyu/rDSN
     add 24490223a Renamed Monitor to WebStudio and updated README
     add c9dbb0957 Updated the main page background picture and color
     add eb5d07074 Update README.md
     add ce6516e9b Merge branch 'master' of https://github.com/mcfatealan/rDSN.Python
     add 91b6019b9 Refactored store, now it's in Vuejs.
     add cbd5c4bd6 Refactored Analyzer, now it's in VueJs
     add 3f2427b3e Added register_state watch in store. Move name duplicate check to the moment selecting pack.
     add 7988f41bd Refactored table, now it's in Vuejs.
     add 7216cd14f Refactored queue, now it's in VueJs
     add 61eaff43b Added missing file: table.js
     add 4ec51542f Removed task_code jump and fix a bug in queue
     add b4debbf37 Added task_analyzer (half-implemented)
     add 597f54145 Added sample, value, breakdown in task analyzer
     add a2df57478 Made a few improvements on webstudio, and add remote machine support
     add 713dc4c31 updated config.ini for layer3
     add d9ba7ae21 change cli command to RPC, add light mode for webstudio, now we no longer need to deploy webstudio on remote machines to do profiling
     add 9dc66b8d0 remove unrelated files to minimize rDSN.WebStudio
     add decf49b65 fix the bug that refreshing counterview will always redirect to the latest view
     add 8d5793c5e move path
     add a4f4dd4c9 add webstudio
     add af3d09fc6 fix some removed files in webstudio
     add a91688c9a Delete Presentation1.pptx
     add f6361b37e Update README.md
     add d447ab4ea Merge branch 'master' of https://github.com/mcfatealan/rDSN
     add 594865715 Merge pull request #384 from mcfatealan/master
     add 0c137b439 Merge branch 'master' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add 407853e8f remove unnecessary files from rDSN web studio
     add d4597f627 minor fix around rpc and queues. 5% performance enhance in rpc benchmark
     add 29d8695ff performance fix in ref_ptr, queue, replication tasks
     add 96a58e3c2 Merge pull request #383 from glglwty/master
     add d938a3965 Merge branch 'master' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add 14f37e46e fix warnings and lock granularity issue in server state
     add b4c568f5f fix a bug in dlock test due to async exec flow
     add d90f2d2b1 adjust lock so that no dangling lock exits when simulator enters scheduler
     add 185453834 Merge pull request #385 from imzhenyu/master-cpp-learn
     add 01eec618f fix inconsistent last_drops maintenance bug in meta server due to missing filled info in configuration_update_request
     add b9e1aba64 Merge pull request #386 from imzhenyu/master-cpp-learn
     add d52cd3025 fix a bug about rpc timeout task exposed by fault injection
     add a9f0c6efb Merge pull request #387 from imzhenyu/master-cpp-learn
     add 546e1e2d9 - fix failure handling for rpc sessions about _sending_buffer access - ensure fault injection is safe for asio sockets
     add 15f913f7b Merge pull request #388 from imzhenyu/master-cpp-learn
     add 05b2de3e8 fix a bug about nfs client (exposed by failure inject)
     add e27d8cf4f enable FIFO for the tasks from the same source (at least) in hpc task queue
     add f722e7dde Merge branch 'master-cpp-learn' of github.com:imzhenyu/rDSN into master-cpp-learn
     add 22804e961 fix error handling in linux and bsd network to avoid crash due to external failure
     add 0ce22d4f1 Merge pull request #390 from imzhenyu/master-cpp-learn
     add a82e5e5e8 Remove the unnecessary dependency, more clear installation guide and improve display on small screen
     add 7c91435a7 Merge pull request #391 from mcfatealan/master
     add 209193496 improve install script
     add 87a23b4b5 fixed queue length perf counter in task_queue.h
     add 3cd4bf5f9 Merge pull request #394 from glglwty/master
     add 113aef565 close istream before return
     add 7218299ea Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add 4175096ad Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add d18b145ce Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add c5cd9c28f modify thrift serialization to : 1. be consistent with v0.95; 2. support map and list
     add 56c134d0b change js serialization helper to make it compatible with v.95
     add db5738303 add json support for error_code and task_code
     add 8a7c56350 fix a bug about apply checkpoint
     add 873e7be33 Merge branch 'layer3' of https://github.com/ykwd/rDSN into layer3
     add 17285dc75 Merge branch 'master' of https://github.com/imzhenyu/rDSN into layer3
     add 406c928f5 make it compilable on linux
     add f7dc30204 Merge pull request #393 from ykwd/layer3
     add 834082afa This commits merges the log improvements in replication by Zuoyan at folloiwng commits:
     add 3945048ed Merge branch 'master-cpp-learn' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add cff7ecca7 Merge branch 'master' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add 6aa11dea4 fix learning failure exposed by failure injection - t0: B is learning from primary A - t1: a group check request (with learning signature X) from A to B is delayed to time tx, where tx >> t1 (by FJ) - t2: during learning-with-prepare, a prepare msg is dropped (by FJ) - t3: A kicks out B from its learner list - t4: A adds B back to its learner list with new learning signature Y - t5: B learns from A with signature Y until it succeeds - t6: A gets notified that B has lear [...]
     add 2ff79e37d improve logging in mutation logs
     add 0af21b1ef avoid unnecessary wait for new config proposals in primary assignment and learner catch-up
     add 98760cdb9 now a potential secondary will not put itself into error state  if an error happens at the remote side to avoid unnecessary state transition - fix act scripts accordingly for this change.
     add 291d5a05b fix testing scripts as now replica sync will not cause replicas being set to error state immediately if they are not present on meta server
     add bebdef555 Merge pull request #392 from imzhenyu/master-cpp-learn
     add a8c1834ed implements thrift rpc
     add db553eb9d support thrift rpc
     add 8c08a2b51 fix thrift rpc
     add 7eaa22be7 fix thrift rpc
     add 81374841c refactor thrift compile
     add 9cbb8a246 fix thrift compile
     add 319152ee3 Merge remote-tracking branch 'origin/staging' into staging
     add dc9459239 add macro defines for windows
     add 93616fc2c Merge branch 'staging' of github.com:shengofsun/rDSN into staging
     add 6ba77eb24 change thrift repo to url to make the download faster
     add 06072efcb fix compile of thrift
     add 134bcb131 fix portable issue of endian convert
     add a86117b55 Merge branch 'staging' into upstream
     add 418837d30 refactor thrift marshall & thrift rpc
     add 1d9deeb28 small fix, add some files which are ignored by git
     add 4dcd086b3 Fix windows compile
     add f08367fde fix windows compile
     add a015ea333 fix windows compile
     add d5449708b add comment for dsn_message_context_t
     add 6791335e0 refactor thrift rpc
     add a77faf66b improve thrift serialization; add --git and --serialize options in build.sh
     add f9347d18e Merge remote-tracking branch 'origin/upstream' into thrift-rpc
     add 776ab7eb1 change thrift marshall with on-stack transport
     add 31746795e remove redundant header
     add 4e53d36a0 remote old useless code, try to fix the git source problem in windows
     add 0c45077c2 fix appveyor.yml
     add 9d886e293 refactor the serialization
     add 86e4c8f07 Merge branch 'upstream' into thrift-rpc
     add 3a5254e58 Merge branch 'thrift-rpc' into v0.95 & refactor on the header_type
     add 925c1854f Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add 9da6cb9c6 Merge branch 'master' of github.com:imzhenyu/rDSN into thrift-rpc
     add 8c5d6a5ba improve code generator
     add 93ca14293 refactor thrift message header
     add 1369891a4 Merge branch 'thrift-rpc' of github.com:shengofsun/rDSN into v0.95
     add 78bd9dfe8 bug fix in extensible_object & fd & delay
     add 94167738e smallfix
     add 7b4703e19 Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add d541f8823 smallfix
     add 20c1c9458 fix thrift cmake file to specify user boost
     add 881a6109a add xiaomi git source for zookeeper
     add 66ebf8ea3 add cluster_info support in meta_server
     add ff1481c94 add licence & small fix on thrift rpc
     add 0704dc10d change meta_servers config
     add 62a4b2698 improve cluster_info
     add 05d07b0bf improve replication_ddl_client tool
     add 5dbb38858 small fix on dsn.cmake
     add b87617202 Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add c0e374c47 Merge branch 'v0.95' of github.com:imzhenyu/rDSN into v0.95
     add ab252dc47 change default read_semantic to ReadLastUpdate
     add 3fb45f205 smallfix
     add 7b8039d75 improve log
     add 795f80924 smallfix
     add 10bed887b fix failure detector
     add 6c1b8f27e Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add e96c97362 enable compiler optimization when compile thrift
     add 03d731653 add perf counter
     add 574626d63 add virtual destructor for apps
     add f69ffd1f1 update json helper
     add 875f6e891 fix endl bug
     add 69014de11 remove tab
     add 0ed79449f Merge pull request #350 from xiaotz/v0.95
     add dced870b5 Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add 424f2ab9c Merge branch 'v0.95' of github.com:imzhenyu/rDSN into v0.95
     add 0672fb41c improve log
     add 26c0d9cd1 bug fix in meta server & fix spin in replica_server update cfg
     add 08f54b375 init last_prepare_decree_on_new_primary
     add 8b841e75c handle error and retry after some time.
     add 4591b442d Merge pull request #352 from xiaotz/v0.95
     add 432e3cdd8 improve replication_app_client_base to avoid too frequent retry
     add e648e37fe Merge branch 'v0.95' of https://github.com/imzhenyu/rDSN into v0.95
     add f339968ea fix compile
     add cad2b4015 fix load balancer, delay when assign new secondaries
     add d5a339028 fix lock use, and improve logging
     add 0e5f326dc improve logging
     add e136d92fc improve greedy_load_balancer
     add 3e4831eae improve logging
     add e6d86b307 fix find_minimal_load_machine to exclude primary/secondray nodes
     add 6f754a67c improve logging
     add 0f289470d fix partition_assists bug
     add a1e3ef317 fix task_tracker bug which may lead invalid read to deleted wait_event
     add 9d702e222 use error_code.end_tracking() to avoid unnecessary complain
     add c7156cbfd improve network session management
     add 61d0353b7 improve group_address; improve rpc retry strategy for replication_app_client_base and replication_ddl_client
     add d6cf313a5 smallfix
     add c240ff028 fix ddl_client
     add 08cf3468e revert rpc retry strategy
     add 37386f81d mark current ballot and decree when do commit
     add b33898192 add replication_app_base::get_ballot()
     add 0e3761d8b fix self-connection problem
     add 19a525f81 improve logging
     add cd68e880b improve logging; do not clear replica when get_replica()
     add 5b5a0e3e6 improve replica_init_info logging
     add b945fc7e2 delay to close replica when do config sync on init
     add 648e14600 allow resending of ADD_LEARNER request to potential secondary
     add e68da1f41 improve list_app to show replica_count by node
     add c598c288d improve gc of shared log to discard more; filter useless files when replay private log
     add 33777a187 fix several network bugs exposed by fault injection
     add 72aba999d Merge pull request #389 from imzhenyu/v0.95-netfix
     add 36223ef89 smallfix logging
     add 4ade484e0 improve learn logging
     add 4d4c0c748 merge master and v0.95, compiled
     add b903a51c0 Merge branch 'master-merge' of github.com:imzhenyu/rDSN into master-merge
     add 1f39c7c61 fix mutation_log_private::flush() to wait all writing done
     add 3fc6c5071 use meta_servers section to get meta server list
     add 05c427d07 read meta server address list from [meta_server].server_list in config
     add 8d6e14844 fix some problems introduced by merging
     add 730615aba refactor api
     add 462f4cece small refactors
     add 96386238b more merge and refactor
     add d084e1d5a fix for thrift rpc
     add 6b23fce40 Merge remote-tracking branch 'zy/master-merge' into master-merge & enable compile warnings & add serialiation_type in mutation_update
     add 598f8a6bd Merge branch 'master-merge' of github.com:imzhenyu/rDSN into master-merge
     add 64ffd60e6 smallfix
     add 07d23dc33 fix compile error as reported by @egmkang with issue #312
     add 1e939d26d Merge branch 'master' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add fd1aa8de7 make git source and git tag configurable at gitsource.cmake
     add 53ae87bcc now user can specify his own git source file, which contains the git souce location for external projects
     add 14318751d add json serialization for rpc_address and gpid
     add 6d48c4181 To use thrift.exe from pre-built version.   To use downloading php.
     add 0930efec7 fix a bug with code gen
     add e033f84a3 make code gen more user friendly
     add d71666d5d transfer external projects' git sources from ykwd to imzhenyu
     add 0050d3022 Merge pull request #395 from ykwd/layer3
     add 2c93494b3 webstudio: fix saving view bug and improve display
     add 7f5ccaaf1 webstudio: improve hint information for setting and multicmd
     add af485c359 Merge branch 'layer3' of https://github.com/ykwd/rDSN
     add 61b53220b webstudio:change commands with meta server to RPC(not tested)
     add 4c6b61226 webstudio: test appstore/service/machine, add response parsing and display. Now meta server RPC is totally supported.
     add fd7b55fc4 Merge pull request #396 from mcfatealan/master
     add f0e3feb4f webstudio:fix incompatible of cli.client.js (re-codegen), and change jquery cdn from google to official site so users won't suffer from GFW blocking
     add faf798636 Merge pull request #398 from mcfatealan/master
     add f17bf046b Merge branch 'master' of https://github.com/imzhenyu/rDSN into master-cpp-learn
     add c54ea3eb4 add batched rpc request support in layer 2 for scenarios such as atomic batched processing of these requests are required in replication
     add 883755c5a Merge pull request #399 from imzhenyu/master-cpp-learn
     add 7115d4bad Merge branch 'master' of github.com:imzhenyu/rDSN into master-merge-2 and change replicated_service_app_type_1 interface
     add d4041488d fix code bug
     add 89a41d5e5 fix mutation_update write_to/read_from log bug
     add 28d595a2b add private mutation log max pending buffer count limit to avoid using too much memory
     add 704ef993d Merge pull request #401 from imzhenyu/master-cpp-learn
     add 3f6d5022b Merge branch 'master' of github.com:imzhenyu/rDSN into master-merge-2
     add 911b0730a fix add potential secondary
     add daf6458d5 Merge branch 'master-merge-2' of github.com:imzhenyu/rDSN into master-merge-2
     add 4d068289d fixes to code review
     add 1d0c1cbc8 enable empty mutation to commit old mutations when there are no more incoming requests
     add 5bfbf9d6d add replication.write_empty_enabled option, default is true. It is set false in act tests.
     add fb1e21794 Merge pull request #402 from imzhenyu/master-cpp-learn
     add 0177c4d66 refine web studio - restructure the layout - rename the setting keys - fix bugs about service membership - other nits
     add a08fa17b3 Merge pull request #404 from imzhenyu/master-cpp-learn
     add da2d68629 Merge remote-tracking branch 'zy/master' into master-merge-2
     add 0c0869cb4 merge new version of meta, compiled version
     add ca0a3fb25 merge refactored meta & fix some tests
     add 3abfbab23 fix some act tests & add meta's test module
     add f6ca9bff5 Merge branch 'master-merge-2' of github.com:imzhenyu/rDSN into master-merge-2
     add 176a36f54 fix to code review
     add d0f7b14dd fix logging failure that causes crash
     add 45b188ed6 Merge branch 'master-cpp-learn' of github.com:imzhenyu/rDSN into master-cpp-learn
     add 7c158bc16 Merge pull request #406 from imzhenyu/master-cpp-learn
     add 5f0a4105b Merge branch 'master' of github.com:imzhenyu/rDSN into master-merge-2
     add 7a6e0af52 fix deploy svc gpid bug of mis-using gpid::gpid()
     add 411fa1a1a Merge pull request #407 from imzhenyu/master-deploy-fix
     add 6548c9fe6 Merge branch 'master' of github.com:imzhenyu/rDSN into master-merge-2
     add 05fbfd3a9 fix message_ex bug
     add 72fe600e7 add general message parser support
     add 5fdbc2b22 improve general parser support
     add a219720ca bug fix in: thrift_parse, create_received_message in framework layer & add license in some file
     add 6fb8b8ec5 Merge branch 'master-merge-parser' of github.com:imzhenyu/rDSN into master-merge-parser
     add cc33cbe9b refactor on serialization & meta server
     add 90f6cfd6c Merge branch 'master-merge-3' into master-merge-2
     add 79836c6b6 fix with master branch
     add a89c24ffd fix thrift_helper to work with web studio & add missed patch from original master branch
     add d996d6fd3 - fix improper core-only header file usage outside rDSN core - fix windows build break
     add 331b6deb2 Merge pull request #408 from imzhenyu/master-merge-2-windows-fix
     add 6acc6b738 remove zookeeper info from meta which breaking the modularity
     add b11b71db6 add support for copy but change the message send to recv to avoid meta test failure with dsn_msg_copy
     add 14a945ca2 fix unit test for meta
     add 402c39274 - fix json encoding for missing int64 support - add clone_content parameter to dsn_msg_copy
     add 56363a552 try to fix windows compile. Coz no __int64 & no app_state's json serialization method
     add 49f73b277 Merge branch 'master-merge-2' into master-merge-fix2
     add 551c6ae34 fix thrift base type marshall/unmarshall windows build break for uint64 type
     add 888065658 Merge pull request #403 from imzhenyu/master-merge-2
     add b64b66aa4 - fix memory leak in replication due to improper use of messages in local computation task instead of rpc_request_task     - use rpc_request_task for framework rpc handler so that all tools work properly     - add task_spec::on_task_create join-point to track task dependencies more precisely     - propagate uint64 in extensible objects during msg transmission (for simulator only, TODO for other networks)     - add explorer toollet which collect task dependencies automatically
     add 6aabb0218 Merge pull request #409 from imzhenyu/master-cpp-learn
     add 76b1d45f6 fix warning as error when built with rocksdb
     add ea647f1cb fix uninitialized error of ctrl flag in meta service
     add 5a100117d Merge pull request #410 from imzhenyu/imzhenyu
     add 350450dd5 fix wrong callback type in app model
     add fa5cd7a1d Merge pull request #411 from imzhenyu/imzhenyu
     add 0b4d761b7 fix web studio break due to serialization format definition change
     add 30891cc97 Merge pull request #412 from imzhenyu/imzhenyu
     add db39ebddb Merge branch 'master' of github.com:imzhenyu/rDSN into master-merge-parser
     add abc0fa3fa improve http message parser
     add f7c5ff5bf reserve hdr_crc32 and body_crc32 in thrift_message_header
     add 9c99ac25c add getter for fast code field in message_ex
     add 4429b4cca not create message_parser on stack because it is referenced by message_ex::parser
     add 3d57b4348 fix sim_network_provider to support general parser, test passed
     add 4b5478610 add message_ex::hdr_format for fast access; add from_address field in http message header
     add 8d4cfd936 - fix thrift message parser - fix create_received_message_with_standalone_header
     add fb6346560 fix non-persisted mutations during learning in replication which causes state lost during failures
     add 8091bdd8e Merge pull request #414 from imzhenyu/imzhenyu
     add cd516c6ca fix rpc reply handling when fd is applied
     add a8fe10fdf Merge pull request #416 from imzhenyu/imzhenyu
     add 216e71c15 Merge branch 'master' into master-merge-parser2
     add 699a358e1 remove message_parser::on_create_response()
     add 84393651f Merge branch 'master-merge-parser2' into master-merge-parser
     add a7c08c02d smallfix to code review of #413
     add 28aff4781 fix config.ini
     add f6fc0fde6 fix compile error on windows
     add 06da99b9d fix unit-test
     add 825945ccc Merge pull request #413 from imzhenyu/master-merge-parser
     add 9cfd2024f fix bug #403 - state lost due to improper use of update_init_info
     add b8c2cdc13 Merge pull request #417 from imzhenyu/imzhenyu
     add eb902a15e bug fix in thrift parse & gpid hash's inconsistent
     add 0a853af28 Merge pull request #423 from shengofsun/staging
     add 8704f0dd8 code reformat and remove/fix certain TODOs (no logic change)
     add fbf11de7b fix improper array enumeration in js (TODO: more should be fixed but no problems exposed yet)
     add 3b3de7564 Merge pull request #421 from imzhenyu/imzhenyu
     add 9689ad2d1 use lock free atomic to replace lock
     add be8e2c022 Merge pull request #424 from imzhenyu/qinzuoyan
     add 6d6090938     fix http message parser due to:
     add fa1a54df6 fix JavaScript code generation and libraries due to http message parser change
     add 04d58594e Merge pull request #425 from imzhenyu/imzhenyu
     add 1a1c64f9d -fix compile_thrift.py -smallfix in code generator -other small bug fix -compile options from "c++11" to "c++1y" to enable some c++14 features
     add afeafc510 Merge pull request #428 from shengofsun/staging
     add 1e838a6d8 fix fd primary check race on meta server (rpc_forward to itself)
     add 888b1eed2 Merge pull request #430 from imzhenyu/imzhenyu
     add c59fbe050 enable compile_thrift.py running on Windows as well
     add b487f71ea Merge pull request #432 from imzhenyu/imzhenyu
     add ef3950ec0 fix bug of receving rpc request when task_engine is not started
     add 294cf2555 Merge pull request #431 from imzhenyu/qinzuoyan
     add 6fa8f4f43 fix bug of asio_net_provider; change config write_empty_enabled to empty_write_disabled
     add b9508360c Merge pull request #434 from imzhenyu/qinzuoyan
     add 2d4bcfb19 print trace_id in logs consistently as 016PRIx64 so that we can easily grep
     add 7023a0939 Merge branch 'imzhenyu' of github.com:imzhenyu/rDSN into imzhenyu
     add 8bc11e3e5 Merge pull request #433 from imzhenyu/imzhenyu
     add bbada7d19 print learn signature in logs as 016PRIx64
     add 8f820ffec Merge pull request #437 from imzhenyu/qinzuoyan1
     add e5c273c2d improve call_uri and partition_resolver_simple
     add e8825ffa5 Merge pull request #438 from imzhenyu/qinzuoyan2
     add c85d1e9bf When applications use sync calls for layer 2 rpc calls, the underlying retry becomes useless as the applications always get error code from the initial call. This commit fixes this issues by allowing reusing the same task with additional set_retry method. This is a continue thread for #438
     add 61a71eea0 Merge pull request #439 from imzhenyu/imzhenyu
     add 6ba1f69ac better retry policies for layer 2 rpc retries
     add ae0363937 Merge pull request #441 from imzhenyu/qinzuoyan
     add 2bda278e8 add make_shared_array() to wrap a dynamic array in std::shared_ptr<T>
     add cc31ff87e Merge pull request #446 from imzhenyu/qinzuoyan1
     add c42e33b2c add support for organizing source code with directories in IDEs(tested in VS)
     add 02a6cbe6f Merge pull request #448 from imzhenyu/linmajia
     add ff372e059 fix bug of not setting io_session when send
     add 183f6b5c8 Merge pull request #449 from imzhenyu/qinzuoyan
     add 962667bed move dsn message integrity checking into dsn_message_parser
     add 247588aa2 Merge pull request #447 from imzhenyu/qinzuoyan2
     add de864978b add join point for network connect and disconnect (for connection-oriented networks)
     add dcecb6ca3 Merge pull request #455 from imzhenyu/add-net-hook2
     add a404c9f81 decouple message parsers from the core to enable later plugins as such raw-message-parsers
     add 834a058ae Merge pull request #454 from imzhenyu/add-net-hook
     add e0920b1fb fix invalid memory access in zookeeper_session::visit
     add 509f39869 Merge pull request #456 from shengofsun/fix_zookeeper
     add d37d67410 improve API documentation and doxygen
     add 21b7d3b5c Merge pull request #452 from imzhenyu/imzhenyu
     add 551afc7c8 align with the new documentation
     add bc6f76a28 Update README.md
     add f96fe117a Merge pull request #123 from imzhenyu/master
     add 8a0e094fb Merge pull request #124 from imzhenyu/master
     add 5f24d5156 Merge pull request #125 from imzhenyu/master
     add 9b544032c Merge pull request #126 from imzhenyu/master
     add 0415c0d6c Merge pull request #127 from imzhenyu/master
     add 7df8b14db Merge pull request #131 from imzhenyu/master
     add 6a6073d12 Merge pull request #132 from imzhenyu/master
     add 835930bf9 Merge pull request #133 from imzhenyu/master
     add 68d81e595 Update README.md
     add d3c4453cf Merge pull request #134 from imzhenyu/master
     add 03ee4e0c5 Merge pull request #136 from imzhenyu/master
     add 60b7950bb Merge pull request #137 from imzhenyu/master
     add e345a10c6 Merge pull request #138 from imzhenyu/master
     add 0957971f5 Merge pull request #139 from imzhenyu/master
     add b538746e1 Merge pull request #140 from imzhenyu/master
     add ab6c5aebb Merge branch 'master' of https://github.com/Microsoft/rDSN
     add 19822b229 add support for raw mesage
     add f3958befb Merge pull request #453 from shengofsun/staging
     add d8c137540 fix spell
     add 24f164a30 fix nits around RAW_MESSAGE_PARSER
     add 64ecbc485 Merge pull request #458 from imzhenyu/add-net-hook2
     add b71ac4a62 Update README.md
     add 3295efba5 Merge pull request #462 from imzhenyu/imzhenyu
     add ce816a185 fix build break with cmake .. and make on Linux
     add 4839971ee Merge pull request #460 from imzhenyu/add-net-hook
     add 2e43e94bb fix allow_inline bug; remove fast_execution_in_network_thread in config
     add be6d8b899 Merge pull request #461 from imzhenyu/qinzuoyan
     add ea7d9ad61 update tool API documentation
     add cdd7590e0 Merge pull request #463 from imzhenyu/imzhenyu
     add c38d3d285 create parser on demand in asio_udp_provider; fix memory leak in rpc_session::on_recv_message(); only notify disconnect for server session
     add 28dd73b39 Merge pull request #464 from imzhenyu/qinzuoyan
     add 7be955ed6 cleanup the header files for tool-api and utility, remove internal dir (no logic change)
     add ac9bc7bee separate non-rDSN-dependent utilities from dev.cpp into dev.utility to avoid circular dependency (not compile on linux)
     add db13c3107 add CMakeLists.txt for the new dev.utility project and fix proj deps
     add d3dca614e Merge pull request #465 from imzhenyu/imzhenyu
     add 05a56d551 some refactors
     add b3e1ba498 Merge pull request #467 from imzhenyu/qinzuoyan
     add 2b5bb1f09 export tool-api to prepare for make tool modules as dynamic libraries (no logic change)
     add acb0fd0a2 Merge pull request #466 from imzhenyu/imzhenyu
     add 25bc90ff9 fix primary_context init bug
     add 90789bdaa fix print format
     add d3087224a fix shared replication log by using sequential writes instead of concurrent writes; the latter may lead to log file holes.
     add 1999ee87c fix mutation_log write bug, just like #142
     add 1c85fa17b improve mutation log: remove useless variable; use atomic_bool instead of volatile bool
     add 7a2ed7430 disable shared log flush
     add ddb0cd869 improve mutation log: remove useless variable; use atomic_bool instead of volatile bool
     add f49140a22 add config [core.logging_flush_on_exit]
     add 4616f36c2 fix print format bug
     add 648c36425 only print commit log on primary; improve learn logging
     add f4c42daad fix bug in replication_app_base::get_checkpoint()
     add a8e1ddf7f fix learn_dir check bug: learn_dir may be not exist on load
     add f5555d8fb fix invalid memory order crash on windows
     add ad2cfb921 concurrently load replicas on init, refer to #491
     add 49bdc10dc fix message_count debug in rpc_session
     add 0b21e0cd4 fix improper set_delay logic in on_recv_request() and on_recv_reply()
     add a51bda2da improve retry update configuration logic
     add 7adf4426d fix bug in http message parser; fix documentation
     add 5013bf5b4 bug fix in learn, primary seond a prepared mutation with old ballot, but learner has newer ballot
     add 3c4de1e8d improve mutation_data write_to/read_from to marshall task_code as string
     add 690cb4157 fix bug when prepare fail for file operation failure reason, refer to #505
     add 4308c138c Bug fix: replica server may do config sync before the config update finished, which breaks the perfect-FD
     add a60ce22fe add options of log_private_batch_buffer_count and log_shared_force_flush
     add bdfbc9fb1 split hash to thread_hash and partition_hash, refer to #508
     add 360ed006d make sure the configuration keys are exposed in in-configuration-file order
     add 9bb963114 improve dsn_gpid_to_thread_hash() and do more strict check of thread_hash
     add b9bc3c579 add verbose_log_on_commit option
     add f768d0003 improve use of verbose_log_on_commit option
     add a3742221f improve strategy of computing thread_hash
     add 60852b1e6 bug fix when learnee's mutations ballot are the same with learner's
     add f2fbac54f remove useless _issued_write_task variable in mutation_log, which is not protected by lock when assigning
     add 7919ce819 add delay_for_fd_timeout_on_start option, refer to #522
     add 368c4212b when old crashed primary is elected, force to increase ballot
     add a593e91ac tiny fix in code generator
     add 37438e4dd improve meta server to reply ERR_BUSY for config sync if is updating config to zk, refer to #504
     add 1d1b3da95 improve private log learning to trigger private file switch if necessary, refer to #528
     add 631665edb add learn_stat.py for replica learning log statistics
     add 22624ea6e fix coredump caused by ERR_INCOMPLETE_DATA, which is caused by imcompleted checkpointing during learning, refer to #5
     add fb8aadb7f record and return total file size in nfs_client_impl, and print copy_file_size when learning
     add 379b047e5 improve private log learning to trigger private file switch if necessary, refer to #528
     add 13b4f81f1 1. fix thrift cmakelist to enable custom boost 2. force sync checkpoint in every stage of replica learn to enable the mutations are continuous, ref #13 in imzhenyu/rDSN.dist.service 3. add some debug logs in meta server 4. fix replica_stub's bug, which may lead to coredump in act test
     add 96050af2c Move some mem allocation and copy operation outside of lock
     add 4db6d4b37 fix arc & gitignore
     add 59e40cb26 Move some mem allocation and copy operation outside of lock, continued
     add 870e9c25c reset some change by 13b4f81f17bb58096a8c8c901bf6532fdf53637b, and clear out replica when there is a failure during load
     add 99273e651 improve scripts
     add 23ba00314 fix uri resolver for stateless services, sync from github
     add 2bf4600c2 fix logging; sync with github rDSN#539
     add 4f8ca209c add dsn version; fix unit-test fail
     add 6c6fd2694 fix rpc reply, which may get wrong profiling result
     add cb33c11ec fix dsn rcsid
     add 404e375d2 fix framework for stateless services, sync from rDSN.dist.service#15
     add fab115aca change git source default to xiaomi; sync with github rDSN.dist.service#16
     add 4c1795238 add profiler when task is created to get a more accurate data for some tasks
     add 253264313 fix by coverity checker
     add 6e30e7a72 fix coredump bug when drop table
     add 8502a3972 small fix to make the compiler happy
     add f15af9ca0 install gtest as an ext project
     add f1039e998 update perf counter name for owl
     add d0dad0991 add NODELAY option for asio tcp socket; improve tracer
     add 9320c3953 implement the load balancer per app & test it
     add d5dbb3c93 fix cure in load balancer, make (re)assigning replicas are balanced
     add 745c3c64a tiny fix in test case
     add 8af496759 fix test
     add 46ad8bcc2 add rpc_request_is_write_allow_batch option for task code
     add 57973a47b disable command_manager test for unknown failure
     add c03aa765c bug fix of print log & add log in failure_detector
     add c8218f21e add cli command flush-log
     add ddda50a6a modify logdir from logs to log
     add 1c3af8eca fix time_ms_to_string to use localtime
     add 8803ce11c fix bug of add watcher multiple times when zk time out
     add ebefb341b tiny fix, downgrade the list_app log's level
     add fd030620a tiny fix for logging
     add 69b741930 add log when got request & prepare
     add ee47c1480 do sync_checkpoint on init to gc shared log
     add 21f101749 trigger memtable flushing when shared log is too large
     add 28836a9fa improve replication_ddl_client to add another list_nodes method
     add 5c0b0683d mv cli.client.h from src to include
     add 5c6cc594a improve replication_ddl_client
     add 2dbd88c8d fix logging print bug
     add f7ca0cb81 add command reset-log-start-level
     add 9e91c7b29 fix meta_server_failure_detector to sleep 1 second before retry acquiring leader lock
     add ddb4adb14 make rdsn support timestamp
     add b81540423 fix mutation_header serialize problem & improve mutation_log::replay's callback to add log_length param
     add c167c3740 add gcc option -g on release & add BUILD_TYPE in version str
     add 98a823ef0 fix time_ms_to_date bug
     add 029cfa5a6 modify counter name to make it clear, remove redudant ip address in app's counter name
     add 613507d1b fix log print
     add c671bb6af meta don't suicide when zk connecting & add test scripts
     add 3dc2b70a0 fix time compare in failure_detector
     add 9c59e5bdf assert it when uri not config & remove idl_test module & other tiny fix in tests
     add 1f920c748 implement soft delete: 1. add a recall rpc on meta server 2. modify the config-sync rpc, in which replica server can report the replicas to meta, and meta can tell replica servers to gc useless replicas 3. refactor the load balancer of meta...
     add 5ef6d806e modify default reserve seconds for dropped app & remove useless option
     add f73894a07 move expire_seconds of dropped app to int64 & add level to control meta
     add 623a1d6a5 bug fix of control_meta_level
     add 7f1965819 add option meta_server.meta_function_level_on_start & improve replication_ddl_client
     add 1805696b9 don't commit requests if there is only primary
     add c25c316a7 fix test
     add 7f0390c9c fix log & fix perf counter name
     add 0dfc9e22c add cold-recovery & refactor meta & add comments
     add 8895eff8e fix print format of ddl client
     add 0067c5ecd fix compile error when use empty_callback
     add 014b92352 some refactors for cold-recovery
     add 8ebd033a8 fix profiler for debug
     add f29fadca8 disable boost asio exception
     add 5fe8546de reply rpc when rpc code not handled
     add df7680042 improve ddl client to add more info
     add c7c30385d embed build hostname into rcsid; print date in log header; improve logging
     add c050325c8 made execution of safe_late_task nullable
     add ab8436690 1.fix shared_log_lost bug 2.let a reinitialized replica has ballot from log 3.select a proper primary in DDD-state 4.adjust config_context::dropped vector of meta 5.add more log in meta. 6.add test
     add 6a715edf4 add mutation_log_tool; change LPC_REPLICATION_ERROR code type
     add ee1344441 some refactors; add LPC_WRITE_REPLICATION_LOG_COMMON code to execute callback in default thread pool
     add de86fa67e small fix of remove space from zk_hosts
     add ef01418f0 fix bug in replica::on_prepare() & add show_all/detailed param in ddl_client::list_apps
     add 6a8ac0d6d fix dsn_group_destroy bug in partition_resolver_simple.cpp & make dsn_group_build/dsn_group_destroy using matched
     add b72841759 1.pass newest last_drops to replica server in case that a replica server resend a update-req 2.fix test
     add e331ddb34 fix time_ms_to_string; improve logging
     add 427f74156 fix learning bug caused by out-of-order rpc & add regression testing
     add be3584d13 some fixes to make valgrind to complain less
     add ce1cf5d74 fix ptofiler to add assert
     add f567f1682 improve profiler to optimize performance
     add 9f401ed7e small fix reset-log-start-level implement
     add d664bf27d add compile options
     add 6225e7ee2 bug fix: adjust dropped size when add replicas
     add 45016feb6 fix app name format
     add 43c53c1ef fix unit test
     add a35fdc716 fix unit test
     add 8d5f5d876 fix replication_ddl_client::list_apps()
     add 8d8e99b6b 1. bug fix: reduce the last_drops.size() when drop a partition 2. add more log in DDD. 3. add useful macros 4. make max_replicas_in_group configurable
     add bac9c6292 fix unit test
     add 9cf42615c fix unit test
     add ae7f71afc add deny-client cli command; disable check in replica::check_state_completeness()
     add cb497e66f add log_private_reserve_max_size_mb/log_private_reserve_max_time_seconds options
     add 5aa4eda6e add deny_client_on_start options; check app dir and type on load; improve logging
     add 3fa03d7ea bug fix: adjust meta_data's prefered_dropped when config change
     add 520a3d696 1. [feature]check stability of replica server 2. [refactor]refactor meta server fd
     add fe8fe9086 remove high performance index shit in perf-counters
     add 461b93868 add perf counters for node/partition liveness on meta server
     add 96f3a55dd change meta_function_level_on_start default value from lively to steady; use dsn_runtime_init_time_ms() instead of _create_time_ms
     add 31a6ca2f5 add data_dirs_white_list_file option
     add 667db6a48 fix unit-test
     add 7bdb9cc90 add log_private_batch_buffer_flush_interval_ms option
     add 72f92a4a1 1.remove useless counters for replica. 2.fix perf_counter_ to prevent the misuse
     add 9157cb4b5 fix message_ex::create_response() bug: old hdr.rpc_name may be null; optimize rpc_engine::reply()
     add 6d1edf550 fix bug: reset prepare list when learn APP/LOG done; add test
     add ee753d1cf disable mutation_queue::_current_op_counter for performance reason
     add 93c906dd7 fix DDD handle: when recently dropped node don't have most amount of data, then do nothing
     add 80109d89d output more info, when dassert
     add 7502e53da make recover command support -o
     add 0c5ab97e2 add reserve_seconds for dropping app
     add 77a90e566 improve fix DDD handle; fix unit-test
     add 8fcc9b979 add remote command trigger-checkpoint
     add 1926b7040 improve replica-server:1. optimize learning to learn private log as possible;2. improve shared log garbage collection strategy;3. change replica init info file from binary to json; 4. improve logging
     add 234a268cd improve meta server: 1. add follow control and priority support when add secondary 2. improve strategy of choosing node when add secondary; 3. improve logging
     add ff8ef01f3 adjust code format with clang-format
     add de690f758 sync partition_config.last_dropped to config_context.dropped when init meta server
     add 0a1252f06 fix beacon timeout to make failure detection more robust
     add 69ed97764 improve logging
     add fa53ded6f update replica's ballot when config changed
     add 449c9cf08 bug fix of DDD handle & compare prepared_decree instead of committed_decree with meta's committed_decree
     add 6558fc2de add perf count type VOLATILE_NUMBER; add recent_beacon_fail_count; add recent_disconnect_count/recent_update_config_count in meta-server; add statistics counters for learning
     add d23dfd94c add recent_prepare_fail_count
     add 510cbbcdb logging async_checkpoint used time
     add 99af1964b exec async_checkpoint in background thread
     add 867000fa8 fix unit-test
     add e08067984 add perf counter for replica directory operation
     add 438b59b76 modify DDD handling: ignore replicas which have been removed on replica server
     add 4919fcbf8 1.add log when ignore a request task. 2.fix bug: a delay set by fault-injector doesn't work
     add 2e237e0ee bug fix: don't crash when two successive learn_completion_notify sent by learner
     add 1edc6c1bb exec replica::garbage_collection() in background thread
     add e60bb1904 optimize nfs implementation to use less memory
     add 15ed02535 add perf counter and improve logging for nfs service
     add 0746c52ef add counter replicas.learning.recent.learn.fail.count and replicas.learning.recent.learn.succ.count
     add 8983a303a support priority in nfs service
     add 10518f86d add config learn_app_max_concurrent_count to control learning app concurrency
     add 6ee4b0e4e fix replica dir gc bug; add counter replicas.recent.replica.remove.dir.count
     add 7b260a890 add max_buffered_local_writes in nfs service to limit copy and write speed gap
     add 61eb473a3 add counter recent_partition_change_unwritable_count in meta-server
     add 377b41a75 improve prepare retry logic to avoid unnecessary prepare failure; improve logging
     add 21854b9fb fix nfs service implementation bug which may cause wild pointer access
     add e767b464b fix private log garbage collection multi-thread bug; improve logging
     add 130d3a25d add counter recent_choose_primary_fail_count in meta-server
     add eabd44772 add config gc_disk_garbage_replica_interval_seconds
     add bccc2930c use recursive lock for simple logger to avoid dead lock
     add 300c3e8a1 add verbose-client-log and verbose-commit-log remote command
     add 06a35e025 fix nfs service implement bug
     add 162e25384 improve logging
     add 789485876 set to_decree_included when learning private log
     add 160f14d95 add counter replicas.error.replica.dir.count replicas.garbage.replica.dir.count
     add da3cf1ea3 bug fix: command_manager use relased memory in unregister
     add 22cdc81ae bugfix: remove from config_context::dropped only when it's not empty
     add eb334a74a fix learning boundary check problem
     add d360c816a feature: considering the replica count of each disk when bind disk to replica
     add 32f10253b add disk stat counters
     add f183e6eb5 fix last commit fault
     add 302d2a58b improve disk stat
     add 86a831920 improve greedy_balancer to consider the disk position of replicas
     add fd20b4af6 fix wrong description and comments
     add 1f4dfe8b5 keep enum print functions consistent with thrift & comment deprecated fields in thirft
     add a4478f1b5 fix ext/gtest/CMakeLists.txt
     add 3c3541f48 don't do balancer if haven't collected all replica infos
     add 3c188a348 remove proposal TTL & try to find learning failed situations & other fix in meta
     add 58346abb8 add option for resolve ip to name-server in ddl-client
     add 9776249bb take the build process of thirdparty libraries apart & refactor the include path convention
     add a124ad0fa 1. skip profiler in fs_manager test module 2. remove useless dependencies
     add f65a988fc small fix in json & fix comment format
     add be0677f16 remove modules: app_daemon, flow, cluster_scheduler, deployment_service, ddlclient, csharp/js serialization, docker, csharp layer2, web studio, deploy scripts
     add 6687d0c1e build core functions into a static lib runtime
     add 2fcffd31d fix thirdparty build: assign compiler explicitly, generate PIC code for thrift static lib
     add 568e504bb fix thirdparty download & build: only do unfinished things, skip finished things; add depedency of libevent
     add d198a2480 add cold backup feature and some fix
     add efd119fda core: add rpc_holder and make_unique
     add 99f445589 core/rpc_holder: fix rpc_holder build error.
     add 5891b5894 improve shell for shell under rdsn
     add c60a3ac49 change the way that passing envs to storage engine
     add 4365cf1ec compute the total size of backup and write it to fds
     add 8ef801eaf remove useless brace
     add 5adcf734c allow replica pass some extra envs to storage engine when opening app
     add 23ddba3f4 refactor the process of generate backup checkpoint
     add e2429a32c fix the drift of the start time of backup policy
     add d1df52f16 remove layer2 app model of rDSN
     add 22fe25b1d fix test of policy_context
     add 52e17864f add meta-server remote command lb.assign_delay_ms
     add c5878a8f3 ignore replication.app section if app_name is not specified
     add aa2170799 separate registering control commands for load balancer from constructor of simple_load_balancer and greedy_load_balancer
     add a55bdcae9 remove c api for perf_counter
     add 87194db30 remove cli commands registry of c api
     add f84c913c2 fix commands format in greedy_load_balancer
     add 7f8408233 change task tracker task_bucket_count default value as 1 to avoid some bugs
     add d8ac3cfa8 remove layer1 app_model's c api, remove dynamically load module feature, remove global checker's c api
     add d5a8448e5 remove dmodule load in config files, remove useless services for windows
     add fe7eeb3ba refactor: seperate utils to different headers, remove c interface of crc32
     add 3e7171247 fix backup bug: checkpoint decree not consistent; wait checkpoint for long time
     add cc815fc8c refactor: move function_traits & optional to utils directories
     add 021ead879 refactor: remove c interface of threadpool code
     add 0eaaa5b87 refactor: remove c api of error_code
     add 3c46af2ec write mutation log into private log after committed
     add ea5dc99ec revert: write mutation log into private log after committed
     add 2b3cbff75 add remote command lb.add_secondary_enable_flow_control and lb.add_secondary_max_count_for_one_node
     add f0d0fa241 fix memory leak when new replica
     add 97c9e5939 fix bug in replica_stub::on_disk_stat && improve logging
     add 21202ac5f add copy_time_used for learning remote files && fix int out-of-bound bug of copy_file_size && improve logging
     add 366dccc15 improve nfs: fix wild pointer bug which causes aio core; use smart pointer instead of raw pointer; add copy retry on failure; use random robin queue for low priority copy request
     add ea063387d refactor: remove c interface of task_code
     add e19cce692 travis: use zookeeper lib downloaded in thirdparty in start/stop/clear_zk commands; use prebuilt thirdparth when run travis ci; clean verbose msg in simple_kv's test
     add be1bdfe95 rdsn/utils: add function pipe_execute
     add c1e43b4e0 remove __TITLE__ macro for logging
     add 06ce27dce improve shell: return app_not_exist when access app that not exist
     add 1e7e2837d optimize lock use in replica_stub
     add 9a702c8bc optimization: avoid useless memory copy; optimize error_code::try_get()
     add dce57a996 logging create log file elapsed time
     add dddfc6814 remove unused header file client_load_balancer.h
     add d3508d734 rdsn/perf_counter_wrapper: enable multiple perf-counter-wrapper objs sharing a perf-counter instance
     add cfa024ddc refactor: remove c interface of gpid, add parse_from & to_string in gpid
     add 9bb960ef4 smallfix for aio_task
     add b7c4f52f9 rdsn/lib: don't commit_hard when learner's committed decree bigger than primary's; and try to commit mutations for primary reconciliation, regardless of replica count in group
     add 601a9f084 fix ddl: allow create table with max_replica_count = 2
     add 8339c697c rdsn/core: fix bug of dsn_ipv4_local
     add dc3a3eeea rdsn/meta_server: improve simple_load_balancer by comparing total partition count when find a node for replica
     add f0ec07834 manual compact support
     add 2358ba662 improve manual compact: add manual_compact_min_interval_seconds; improve remote command
     add cbd0b227b fix log for cold backup
     add 53fb01eb9 fix unit test
     add 388b88e0d fix unit-test
     add 282694fa6 refactor: move auto_codes.h to tool-api dir, remove safe_handler module
     add 43bc2a447 docs: add contribution guide
     add 96ea582a3 *: introduce some utilities && rewrite bad old code using modern cpp techniques
     add 849417c9c Merge branch 'master' of https://github.com/xiaomi/rdsn
     add 81bcb6ab4 make easy functions constexpr
     add b361a9bfe bugfix: error_s::copy moves the content when info_ is null
     add 0e1c040e6 Merge pull request #3 from neverchanje/master
     add 7f543c44f rpc_address: remove c interface of dsn_address_t
     add 82e5a89a1 rpc_address: small code refactor
     add ba089ace5 rpc_address: remove clone, rename address.cpp
     add dd7d4e9bf rpc_address: remove useless WIN32 macros. rpc_message: fix comments
     add 4b535d3a3 rpc_address: fix comments
     add 16c0d1678 rpc_message: fix comments about message header
     add 46a98c222 rpc_message: fix comments
     add 7b84a6e23 Merge pull request #4 from shengofsun/master
     add ee4300526 meta_backup_service: fix incorrect useage of std::chrono::seconds
     add 0952fbb2e replication_test: fix case 603
     add 9002c0369 rpc_address: fix bug of signed & unsigned char compare
     add 9cf596e7e Merge pull request #7 from shengofsun/master
     add 4f2d3f5ef meta_backup_service: modify backup_info's status when deleting it
     add e336f1e61 meta_backup_service: fix wrong variable name
     add 675b8e7c7 Merge pull request #10 from LoveHeat/master
     add c63518040 meta_backup_service: modify cold_backup_constant and backup_restore_constant
     add b66756ca3 replica_server: reimplement uniq_timestamp generator
     add 5d921a6d0 uniq_timestamp_us: fix variable name
     add c0669dacc Merge pull request #8 from shengofsun/master
     add 576de1763 meta_service & server_state: support set/del/clear envs for app (#13)
     add a934fb590 failure_detector_multimaster: add missing header cinttypes (#14)
     add 3d9e39e90 replica_server: support update_app_envs by config sync (#12)
     add 0fb2a6b60 thirdparty: check package's md5sum after download it (#15)
     add f7b051101 refactor: merge duplicate code (#16)
     add af9aaee6e meta_server_test: print more correct message when running unit test failed (#17)
     add 9916b92cf replica_server&meta_server: do not persistent app info envs to local and backup file (#18)
     add faf8a0a27 change default build type to release (#19)
     add 59b4689dd fds_service: delete file and remove path directly on fds, not enter t… (#20)
     add 14bb779c3 logging: use dsn_unlikely in dassert (#21)
     add 6519aedca simple_load_balancer: support black list (#22)
     add 1e4dacf07 travis: download build dependencies from repo of XiaoMi (#24)
     add 76733c190  utility: introduce pipeline library (#23)
     add a1cb64b1b utility: refactor tls memory allocator (#25)
     add 4da429599 replica_server: add opts for manual compact (#26)
     add 0d3559863 rpc: several refactors for rpc (#27)
     add 655e8b7a2 task_spec: assign THREAD_POOL_DEFAULT for storage rpc response (#30)
     add 5a4c4b0f8 set from_address when handle request in storage_serverlet (#29)
     add 71eb82145 sync_checkpoint/async_checkpoint do not return ERR_NO_NEED_OPERATE (#31)
     add 64fa1dd6e fix incorrect set of last_checkpoint_generate_time_ms; improve remote command (#34)
     add 19211a5b3 replication: add replica_base, dont repeat get_gpid() and replica_name() for every one-per-replica classes (#35)
     add 64e387c19 thirdparty: fix download thirdparty script (#43)
     add 12d57b4de pegasus_server: cancel or wait background checkpoint when close replica (#37)
     add 279043c10 fix bad logging; change default value of config learn_app_max_concurrent_count (#45)
     add f187c7b6d task_tracker: refactor on task_tracker (#41)
     add 67feae370 shell: improve print info of listing app healthy stat (#46)
     add c7ec17ab2 duplication: define thrift structs and add some utilities (#47)
     add 3dbda5154 task: remove task's c interface (#48)
     add e9b1dde4c task: reimplement safe_late_task with future task (#53)
     add bda73a1de configuration: refactor configuration related APIs (#54)
     add e70db4717 configuration: add dsn_config_get_value_int64 back (#56)
     add c13bc603d Manual compact: automatically execute manual compact by set envs. (#50)
     add 4e5c073a5 replication: some rename refactors (#57)
     add 9e06d6f25 replication: fix build error for PRId64/PRIu64 (#59)
     add 15cc23114 core: remove useless memory provider (#60)
     add 5a8db120a replica_server: wait tracked tasks and avoid invalid access when closing replica (#61)
     add 2c803caf4 replica_server: some refactors for replica_stub (#63)
     add e42cc1008 replication: add replication_ddl_client::get_app_envs() (#64)
     add 660d4b0f0 meta: add utilities for meta_state_service (#51)
     add 781714801 thirdparty: add gperftools as a 3rdparty dependency (#65)
     add e77b7bb6d ddl_lib: fix get_app_envs bug (#66)
     add 2aa02055d script: fix download-thirdparty.sh (#67)
     add f19ad49dd replication: gc shared log depends on last_flushed_decree; add counter of recent.trigger.checkpoint.count (#68)
     add 9f5c4144a script: fix test script (#71)
     add f56d19faa configuration: bugfix of uint64 config overflow (#72)
     add f2fadaf1f replica_server: fix random delay of trigger checkpoint on gc to avoid flush peek (#73)
     add 7ee3ce84c replication: revert gc shared log to depend on last_durable_decree (#75)
     add 3a1506ee5 replication: make interval trigger checkpoint random to avoid flush peek (#76)
     add e78790a4a utils: support decoding json into a const object (#82)
     add 9cc711cc2 json_helper: bug fix (#79)
     add 343e2e72e script: improve build script to add --clear_thirdparty option (#84)
     add 14d8ba6e0 meta_server: introduce get_children for mss::meta_storage (#83)
     add b6475ed90 test: when a task return by wait, it may not have been released (#88)
     add afc240e48 scripts: not exit -1 but exit 1; fix core unit test script (#87)
     add 5eee50d81 meta: change backup policy node on zookeeper to handle json compatibility (#89)
     add ad87a6df9 meta: logging when set/del/clear app envs (#90)
     add 9377c4caf json: bug fix of json decode & encode (#86)
     add 190e2a248 replication: change thread priority of RPC_GROUP_CHECK to TASK_PRIORITY_HIGH (#96)
     add da996703f replication: add caused_by param in handle_remote_failure() for logging; print appro_data_bytes in replica_2pc logging (#95)
     add 2abdd1f61 json: parse int as double; support true/false in json standard (#98)
     add 7be488e5d scripts: fix compile_thrift.py; remove useless file (#100)
     add b35cf2699 scripts: add --compiler option for build; fix clang compile error (#103)
     add 829f23670 *: force compiler to detect uninitialization (#104)
     add f7cad36ad scripts: speed up compilation and travis using ccache (#105)
     add acc798c4b scripts: fix clang warning due to ccache (#107)
     add 459af210d *: fix compilation err on clang-5 (#109)
     add ea6541c54 utility: add defer (#110)
     add 044ce7240 rdsn: fix asio_rpc_session bug which may cause double free (#115)
     add 1b3d33616 rpc_session: do some refactor (#116)
     add 44d329597 Geo: geo library support (#94)
     add dab2ea502 Remove fastrun (#117)
     add acf7545f6 perf_counter: code refactor (#119)
     add 8f0ff1581 replication: add is_idempotent attr for task code; add allow_non_idempotent_write in replication option (#122)
     add 87d5bc2e6 util: add fail point implementation  (#120)
     add 3125d111b clientlet: remove class clientlet, add new class thread_access_checker (#121)
     add d72a91d24 rpc: mock rpc_holder reply (#125)
     add 392ac591e utils: implement string_view::find (#128)
     add 2ad8cf6e8 core: remove useless test suites (#127)
     add 915cba584 modify s2 library dependence (#129)
     add 6ce6d435e rpc: minor refactoring on message parser (#131)
     add 33d35d178 rpc: remove message_parser::factory2 & char_ptr (#132)
     add 5a273a600 bugfix: fix bug of calculating shared log size (#135)
     add a2549457a perf-counter: bug fix & refactor (#134)
     add 0a1eb681f utility: refactor on blob (#136)
     add a1060c331 replication: rename clientlib to common (#137)
     add d4fb0990d bugfix: fix buf2signed/buf2unsigned/buf2double bug (#138)
     add a8c2d4656 rpc_address: fix site local address judgement & add docker address judgement (#140)
     add eba8a567f thirdparty: install gflags-2.2.1 (#143)
     add 82e6d5334 Compile error fix (#144)
     add 75e6719e0 ddl: add cluster_name() method (#146)
     add 54770a2d4 *: support clang-tidy and fix warnings in string_conv_test (#145)
     add 25b4b00a5 nfs: remove nfs from service engine, refactor nfs to a single module (#142)
     add 9bd165b31 IDL: adapt thrift compilation script to refactored code (#147)
     add f53c6cf5c filesystem: bug fix & code refactor (#148)
     add ae92a2d22 return ERR_HANDLER_NOT_FOUND if task code not exist or not handled (#149)
     add e53c6822b cold_backup: some bug fix to support hdfs-fuse as storage media (#150)
     add 89edcc632 http: embed http server in both meta and replica (#139)
     add 9585c3c01 misc: reduce build time (#152)
     add b613aad32 replica_server: fix learn_app_concurrent_count increment bug (#153)
     add 184e7beae rpc: remove c interface of dsn message (#151)
     add 0ccfd9736 meta: extend app_info to add create_seconds/drop_seconds (#154)
     add 16addfc0a meta: support ddd_diagnose (#155)
     add fd0a34c95 service_api: remove useless code (#157)
     add eda8d7e88 scripts: remove windows specific code in dsn.cmake (#160)
     add a25bc1c0b cli: refactor cli related code (#156)
     add 4d47b8d9f serialization: completely remove protobuf support (#161)
     add 22e294324 tools: remove repli (#162)
     add f923ee9c7 util: make rand a standalone util decoupled from rdsn runtime (#163)
     add 737dd9b65 misc: refactor cmake scripts to support gcov (#165)
     add ca2b88e41 *: remove *.types.h files (#164)
     add 0b6b42d04 scripts: minor fixes on cmake (#166)
     add c57f83325 *: remove useless files (#167)
     add c6a90f624 fix build-thirdparty and build failure on gcc-5.4 (#168)
     add 137fa533e rpc: fix pegasus-186 (#169)
     add 18688e842 utility: move hpc_locks to utility (#171)
     add 06b106eaf scripts: disable tcmalloc to support valgrind memcheck (#170)
     add 91a6befff scripts: revert "shift" on some options in run.sh (#176)
     add 2b197844c valgrind: use function-local initialization to implement singleton (#174)
     add 6d433558a *: expose disk_file that was hidden under dsn_handle_t (#172)
     add 9fdc118cd valgrind: use static-allocated array to store mapping from task_code to task_spec (#173)
     add f2beaded4 core: remove lock from c api (#177)
     add 0d8b427a4 valgrind: fix leaks of messgae_utils (#179)
     add c1a976ec6 fixed periodically (#184)
     add 85ef19bae valgrind: fix leaks of aio_provider (#180)
     add e6167ce0e valgrind: fix leaks of task_worker (#181)
     add 3a2fc899a valgrind: fix leaks of rpc_engine (#182)
     add f01cc7e81 scripts: refactor compile_thrift.py (#186)
     add f2ee43a40 valgrind: fix leaks of service_engine (#183)
     add 06b9d95bd core: refactor utility (#185)
     add 6f7da7635 restore_app: add table name validation (#187)
     add a9479d629 scripts: if 64-bit, find_library() should search the lib64 (#189)
     add 2d490e711 replica: miscellaneous refactoring and fixes (#188)
     add c9856eeab config: remove useless max_input_queue_length (#191)
     add eb8458581 rpc: fix rpc_session::delay_recv (#192)
     add bb2fb74be thirdparty: place thirdparties on aliyun oss (#193)
     add 50595fee1 support to disable write on table by set environment variable on table (#194)
     add faa8bf06d apps/simple_kv: move it to storage_engine dir, remove some useless scripts and do some renaming (#195)
     add 55d7b36a8 scripts: add compile flag -fno-omit-frame-pointer (#196)
     add 254106639 replica-server: add config-options and perf-counter for shared log throttling (#197)
     add 808c7ad0d test/simple_kv: use code template from storage_engine/simple_kv (#199)
     add d03071ded remove functions useless in class replica (#198)
     add 178165a02 shell: improve ls command to statistics total counts (#202)
     add 9f98a0070 aio: use io_prep_pwritev to avoid memory copy (#203)
     add 62ad5b7a2 replica-server: support table level write throttling (#204)
     add deaba4fd8 travis: add option to skip building thirdparties (#206)
     add 57ef116eb scripts: improve build scripts (#207)
     add 1e5d529eb travis: run clang-format before building (#208)
     add 38d7c02c8 rpc: remove uri resolver; move partition resolver to replication/client (#205)
     add 40eda9fc2 meta: return forward address in configuration_query_by_index_response (#212)
     add 72b516e37 fd: fix failure detection bug (#213)
     add a173cbc2a replica-server: support remote command useless-dir-reserve-seconds (#215)
     add 813824f71 meta: re-implement returning forward address in configuration_query_by_index_response (#217)
     add 3a2a05490  replica-server: remove checkpoint dirs when cold backup completed (#216)
     add 243899b6e replica-server: add counters of recent_read_fail_count and recent_write_fail_count (#218)
     add 7507e4ca1 scripts: use find_package to find system libs & optimize 3rdparty download logic (#219)
     add fa3138686 add cluster balance indicator (#214)
     add 38df49e0f shell: refactor table data output method (#220)
     add fa251e291 shell: column alignment is configurable for table data output tool (#221)
     add 46e4c48b1 bugfix: link tcmalloc by default (#222)
     add 03976025d utility: `table_printer` support output in json mode. (#223)
     add ddaa1ad71 meta: support white list of replica-servers & add remote cmd to ctrl live_percentage (#226)
     add 36607b75e rpc: support sending rpc_holder through partition_resolver (#227)
     add 0e6ddece7 http: support tcmalloc heap profiler and growth profiler (#225)
     add f9bb246fe add unit test of whitelist & fix bug (#228)
     add b46426745 remote-cmd: make HANDLE_CLI_FLAGS a short line of macro (#229)
     add a493678b1 config: add configuration duplication_disabled (#230)
     add fc0f32486 utils: test format utilities (#231)
     add 12bc3a513 replication: update thrift definitions for duplication (#232)
     add 52de15faa replica: add unit tests for mutation log replay (#233)
     add 450ff1822 ddl_client: add duplication related commands (#235)
     add ca636f200 Server connection threshold (#234)
     add c475299d1 fix perf_counter_info::timestamp (#239)
     add 0048ae420 *:fix Semaphore bug & Compile warnings (#238)
     add e946645a8 blob: add function size() (#240)
     add 888be520a perf-counter: support P999 for percentile type (#236)
     add 0314a38d4 meta: add duplication_info and refactor test utils (#237)
     add c0d480f71 duplication: add meta_duplication_service (part 0) (#242)
     add 0ce8e602b fix too many ERR_BUSY logs problem when write throttling enabled (#243)
     add bb844bdf2 duplication: add meta_duplication_service (part 1) (#244)
     add 8b9c59e01 duplication: add meta_duplication_service (part 2) (#245)
     add 764271d89  duplication: add meta_duplication_service (part 3) (#246)
     add 837945369 maintenance: record p99 rpc byte size (#247)
     add 80cb2c352 dup: add change_duplication_status on meta_server (#248)
     add 3989922cd rpc: minor refactoring on thrift_messsage_parser (#251)
     add 270a42cb6 rpc: minor refactoring on message_reader (#252)
     add 245060e9a replication_app_base: add is_primary() function (#253)
     add 0ebf10947 ddl_client: json output for list_app and cluster_info (#254)
     add 7e6af96f4 simple_logger: fix gc log file problem (#258)
     add 89eb36095 use c++14 mode for compilation (#257)
     add 00190135b fd: update failure detection log (#256)
     add d3309b2a9 http: bugfix on http_message_parser (#259)
     add 11a714333 doc: remove stale doc files and run.cmd (#260)
     add 4915f385b Revert "use c++14 mode for compilation (#257)" (#262)
     add b8bfc1ce5 perf-counter: add remote command to get perf-counters by substr/prefix/postfix (#261)
     add 36fd568c8 rpc: fix asio bug that causes coredump (#263)
     add 83959dacc utils: fix a bug in table_printer and add several unit tests (#265)
     add 886edf7c5 http: move http as a submodule of dist (#266)
     add e726a817e replication: fix cold backup bug & config loading (#267)
     add 314cd90aa bugfix: fix error handling in filesystem::file_tree_walk (#268)
     add 75029e092 fd: fix ingeter overflow (#272)
     add 5dbe92f38 duplication: bugfix on pause_dup (#273)
     add f600f78e7 fd: improve failure detector to avoid getting now time out of lock (#277)
     add 907355971 configs: remove useless configs (#276)
     add e9006a3c2 utils: periodically memory release of tcmalloc (#278)
     add ac0bc9e9f fd: fix unit test (#279)
     add 01b7cb4ea minor refactoring on replica-server and meta-server (#282)
     add 7c1ecf52e *: remove DSN_IN_CORE, improve BOOST linking, fix build.sh (#283)
     add 05f6c5317 dup: add duplication_sync_timer (#281)
     add d8e5bab13 add prometheus to thirdparty (#284)
     add 95d5d540c thirdparty: add curl to help build prometheus (#287)
     add 9ab094246 build curl :add without-ssl (#288)
     add d3b015b02 utils: add test utils on meta server (#289)
     add 16e633245 HTTP service for meta & replica server (#280)
     add 975c50dc8 split: meta start partition split (#286)
     add 5836aeaab CMake: remove MY_PROJ_LIB_PATH (#285)
     add ca192faee dup: add duplication recovery on meta server (#249)
     add c4379febb dup: complete implementation of replica_duplicator_manager (#292)
     add 47a8e5415 utility: enhance fail point functionality (#293)
     add 012b7f6ca utils: add unlikely for dverify/dreturn/dstop macros (#294)
     add fb3ed3bc5 build: fix dsn.cmake to add thirdparty/output/lib64 into link directories (#295)
     add a9ab6c0f1 http: improvement on http api (#296)
     add ca6dd5a0e split: parent replica create child replica (#291)
     add 7ff1140d4 feat(dup): implement duplication_sync on meta server side (#297)
     add c3c132690 fix(network): use derror rather than dwarn for failed network bootstrap (#300)
     add a50fc84e5 build: remove MY_PROJ_INC_PATH (#303)
     add 83f4d021c add unit tests for task (#305)
     add 43478e298 build: change thrift compiler, set default 3rdlibs (#307)
     add 5e28a05df feat(dup): add interface mutation_duplicator & duplication procedure (#304)
     add 1a66d5fa3 feat(split): parent replica prepare states (#299)
     add ec725ed51 refactor: remove empty_aio_provider and posix aio_provider (#310)
     add f4947c481 refactor: introduce mutation_log::replay_block (#302)
     add 4049f325e refactor: rename disk_aio to aio_context (#311)
     add f3d00315b feat(throttle): support size-based write throttling (#298)
     add 782adba1a feat(dup): implement ship_mutation stage and mutation_batch (#312)
     add b8c5adf91 feat(dup): verify private log validity before starting to duplicate (#315)
     add da71dbdf3 feat(split): child replica learn parent prepare list and checkpoint (#309)
     add 6eff71368 feat: support table-level slow query on meta server (#314)
     add 4928fa566 feat(dup): implement procedure load_from_private_log (#317)
     add 16d7f3fbb refactor: move replay related codes to mutation_log_replay (#324)
     add 4a576a8ed feat(http): add http interface for get_app_envs (#321)
     add 2b8147a07 fix(coldbackup): delay clean request when chkpting (#327)
     add 88bead792 refactor: remove useless functions from binary_reader (#326)
     add dfe95f40c refactor: move aio tests out from service_api_c (#323)
     add 41670570b feat(http): support CPU profiling using gperf (#290)
     add 4fd2cbeaf fix: meta unnecessary assert (#332)
     add 304c11747 feat: add table level latency perf counters (#336)
     add a15faf64f fix(bug): resolve static initialization order problem of s_storage_rpc_req_codes (#340)
     add 7e3b0421a feat(shell): support resolve IP address in dsn/utility (#337)
     add b904de6f5 feat: optimize tcmalloc release memory (#343)
     add d926d3a26 fix: fix log bug in fmt logging (#346)
     add 0de9e3948 fix(meta): bind task_tracker for each task in meta server (#344)
     add 503fdf693 feat(dup): protect private log from missing when duplication is enabled (#320)
     add f73980b83 refactor: refine replica restart by adding func get_replay_start_decree (#348)
     add fdb19b1a9 fix: fix the bug that threads don't stop when shared_io_service is released (#350)
     add daff2f906 feat: add http interface to get perf counter info (#349)
     add b5b3b0eb0 fix: fix meta response state to client during configuration query  (#354)
     add 33b459e20 feat(dup): implement is_duplicating (#356)
     add ca49482a5 feat(http): add HTTP interfaces to query backup info (#342)
     add 962257487 fix(http): add uri decoder for http_server (#357)
     add 55634c4e8 build: add sanitizer support (#359)
     add 809578626 fix: sanitizer options don't take effect  (#360)
     add f1ea1e910 refactor: remove unused function in greedy_load_balancer (#362)
     add 1e1e6e0e7 fix(asan): global-buffer-overflow in string_conv_test (#363)
     add 03a8ef91d fix(asan): pointer used after free in autoref_ptr_test (#361)
     add b0af59193 refactor: move load balance related tests under another test suite (#365)
     add c3f2cd448 feat(http): print help info on root path of the http server (#367)
     add 7fc0b2574 feat(dup): preserve data consistency during replica learn (#355)
     add 1c0c4b9e7 feat(dup): implement load_mutation (#370)
     add 9a5feec63 refactor: remove aspects for dsn runtime (#371)
     add c47c919ed feat(dup): add is_duplicating API on replication_app_base (#374)
     add 7b370383b fix(asan): heap-use-after-free in simple_lb_cure_test.cpp (#375)
     add d9c285996 fix(asan): heap-buffer-overflow in meta_test_base.h (#377)
     add a9ad6747e refactor: remove useless files (version.h, coredump.win.cpp, ReleaseNote) (#379)
     add a429dfbfe fix(asan): fix heap-use-after-free in replica_split_test (#381)
     add 766edefcb refactor(network): refine codes and comments (#380)
     add d0dab501c feat: add check for app envs (#353)
     add d4240883e fix(lsan): memory leak in perf_counter_atomic.h (#384)
     add 7353e2198 fix(thrift): add start_time_ns for structure mutation_update in thrift file (#387)
     add 0941e768a refactor(util): make time_utils decoupled from utils.cpp (#388)
     add 2efa13d3f refactor(rpc): refactor request meta & add support for backup request (#255)
     add 0db7b3684 fix(utils): fix bug in time_utils (#395)
     add baa3e91db feat(split): child replica apply private logs, in-memory mutations and catch up parent (#319)
     add ef73706ce refactor: make clock decoupled from rdsn runtime (#398)
     add 7a46628cb feat(dup): add metrics for duplication (#393)
     add 162602bff feat(split): add partition_version (#394)
     add b0cd3cc93 feat(dup): respond with hint when add_dup failed (#407)
     add 789faa7ee fix: weak constraint of ipv4 and incorrect code logic in hostname_from_ip (#406)
     add f6604cbda refactor(utils): make logger decoupled from dsn runtime (#403)
     add a6857588c feat: refine mlog_dump output (#408)
     add e2a945b54 feat(dup): support HTTP API to inspect duplication state (#401)
     add 3a2691e01 feat(split): child notify parent catch up (#390)
     add 6af76cfcc feat: forbid large-size-value writes to Pegasus (#414)
     add bda453c0a feat(dup): support replica http api for duplication state query (#415)
     add eb5c1ac3b feat(split): re-implement function split_replica_exec (#399)
     add 2ed6d362f feat: add perf-counter for backup request (#419)
     add 94d2db4f3 refactor: delete unused log in replica::on_config_sync (#420)
     add 558cfc7cb feat: add query_disk_info support for replica_server (#409)
     add 0c3fbcf2e feat(dup): handle non-idempotent writes during duplication (#411)
     add 67012ed15 feat: add query_disk_info api for shell command (#416)
     add 9b4cae8f3 fix: fix memory leak in tls_transient_memory_t (#422)
     add e8b02b124 feat(dup): rename change_dup_status to modify_dup (#423)
     add b82dbe619 feat: add a new app_env to limit scan time (#421)
     add 9d7b731a7 feat(dup): add dsn_replica_dup_test to CI testing and fix http outputs (#424)
     add b0e20fd2c fix(dup): multiple fixes on replica duplication (#425)
     add 7df14f069 fix(backup): use https to access fds, instead of http (#428)
     add 3b1133b26 refactor: move log_block class from mutation_log.h to separated file (#427)
     add 6ecdd9088 feat(dup): support multiple fail modes for duplication (#429)
     add d537748aa refactor: move log-block-writing-related codes from mutation_log to log_block (#431)
     add 89cd12b5d refactor(backup): delay the removal of checkpoint files produced by cold backup (#430)
     add 1571b8a16 refactor(backup): make backup clear decoupled from on_cold_backup (#432)
     add de9bb3b86 refactor(backup): move collect_backup_info to replica_backup_manager (#434)
     add 54df4bbda feat: tcmalloc memory release improvements (#435)
     add d5f06db11 refactor: simplify mutation_log write_pending_mutations (#436)
     add a0ecf81b6 feat: append mlog in fixed-size blocks using log_appender (#418)
     add 52bf9759f fix(asan): heap-use-after-free caused by using string_view in fail_point (#446)
     add 275c3ced0 feat(util): add token bucket for rate limit
     add bfabb1c13 feat(split): register child partition (#391)
     add d790be212 feat(util): add restore_read function in rpc_message (#442)
     add ce5fad415 fix(asan): memory leak in local_service.cpp (#447)
     add d9eededa6 feat(hotkey): add replication.codes about hotkey detect (#441)
     add fea614642 fix: fix memory leak in meta test (#449)
     add e2d33eb65 feat: update the way to get heap profile (#433)
     add 9a1a997fe fix(dup): don't GC by valid_start_offset during duplication & add app_name to replica_base (#448)
     add eca4d32e5 refactor(util): use flags to define configurations (#275)
     add cf0971c43 fix: fix memory leak in meta_state_service_simple (#451)
     add 966c04de9 feat(dup): optimize time-lag by reducing repeat delay (#450)
     add b9e2bbebb feat(bulk-load): add meta_bulk_load_service and some structures (#445)
     add 294e0c9d3 fix: fix memory leak in meta_load_balance_test (#452)
     add 5c3e19f06 fix: fix bug in local_service (#455)
     add 612767611 feat: update rpc_holder (#456)
     add 54b4dda66 feat(cold-backup): add rate limit for fds (#443)
     add 8d5d321c9 feat(bulk-load): meta server start bulk load (#454)
     add c0ee1f611 feat(bulk-load): meta server send bulk load request (#457)
     add 704e1f0b0 fix: fix the bug in restore (#459)
     add 4df5d0636 improvement(third-party): Update the concurrentqueue to a stable release version (#462)
     add e2e74e70c feat(bulk-load): group bulk load request in replica group (#460)
     add 303625608 refactor: change large write size request forbiden log (#458)
     add 41814016e feat(thirdparty): Introduce readerwriterqueue util (#453)
     add 466bca2e8 feat(bulk-load): meta handle bulk_load_response (#463)
     add c8e1a8019 feat: add rate limit for learning and support remote-command (#461)
     add d7ec01b9f feat(bulk-load): bulk load download part1 - replica start download (#465)
     add 3669f6fbd fix: fix bug in hpc_task_queue (#468)
     add 749f5e24e refactor(bulk-load): add replica_bulk_loader class (#467)
     add c586820cf fix: fix bug in download-thirdparty (#469)
     add a769521b3 fix: fix memory leak in dsn_message_parser (#470)
     add cd53ad6e3 feat(task): add an interface to query thread info (#464)
     add f5ab808df refactor: make aio decoupled from dsn_runtime (#466)
     add 98f5e22bc refactor: use rpc_holder to reimplement on_query_configuration_by_index (#474)
     add 4ebbd1b03 fix(dup): reject add_dup if remote address incorrect (#472)
     add 5aabc57de fix: use reference instead of value (#476)
     add d5c97d400 feat(bulk-load): bulk load download part2 - replica download files (#471)
     add 965f32a92 fix: fix memory leak in asio_udp_provider (#477)
     add c9d5c2239 fix: fix memory leak in unit test netprovider.cpp (#478)
     add 88dd590d9 feat(bulk-load): bulk load download part3 - replica parse metadata, verify files and update progress (#475)
     add c682bf177 feat(bulk-load): bulk load download part4 - replica report download status and progress (#479)
     add 0fa841a78 refactor: simplify remote-command rpc (#473)
     add fb4eb4c44 fix(dup): convert type of failure perf-counter to VOLATILE_NUMBER (#481)
     add 990ae61db build: add rocksdb as thirdparty (#483)
     add 4e9bbc62d refactor: refactor block service manager (#480)
     add 1383eac12 build: fix build failure when compiling pegasus (#484)
     add 2efeb02b1 feat(bulk-load): bulk load download part5 - meta handle download status and progress (#482)
     add addd64f1d refactor: use rpc holder to reimplement rpc interface of meta server (#487)
     add 1a026a565 feat(bulk-load): bulk load ingestion part1 - meta start ingestion (#486)
     add e5e360338 refactor: use rpc holder to reimplement rpc interface of replica server (#489)
     add c88bc006c refactor: move function verify_file to file_system (#491)
     add 003f52f1e refactor: use flag api to load the config in nfs module (#488)
     add 94764cd93 feat(bulk-load): bulk load ingestion part2 - replica handle ingestion request (#490)
     add f98f32df2 refactor: use flag api to load the config in block_service module (#494)
     add 5394be5d1 feat(bulk-load): bulk load ingestion part4 - meta handle ingestion response (#493)
     add c5e1e671f feat: add perf counter for group check failure (#495)
     add 5522d9bb0 refactor: refactor restore progress (#492)
     add f0efbd285 feat(bulk-load): bulk load ingestion part5 - replica handle bulk load request during ingestion (#496)
     add 33afe0ec1 fix: fix RPC_CHECK_STATUS incorrect usage in meta_service  (#497)
     add 4dd9b15d9 refactor: use check_status to reimplement some rpc interfaces of meta_service (#501)
     add 6f55b21b7 feat: support adding ignored apps for load balancer (#498)
     add 11e1becc8 feat(bulk-load): bulk load ingestion part6 - meta handle bulk_load_response during ingestion (#500)
     add aa3616f91 refactor: add a interface of rpc_holder in storage_serverlet #505
     add d731a58ee feat(bulk-load): bulk load succeed part1 - replica handle bulk load succeed (#502)
     add 065c1edb3 refactor: move rpc module to a separated directory (#504)
     add 73b1bba44 refactor: use DSN_REGISTER_COMPONENT_PROVIDER to register aio_provider (#507)
     add 07618f377 refactor: remove the unused struct io_engine (#512)
     add ed267e21c feat(bulk-load): bulk load succeed part2 - meta handle bulk load succeed (#508)
     add c7bfaa76a fix: dassert if shared log is damaged when replica server init (#513)
     add 062bedc14 refactor(aio): refine code style of aio module (#516)
     add c9944f390 refactor: move task to a seperated directory (#515)
     add 1b0888b5b feat(bulk-load): pause bulk load part1 - add control_bulk_load rpc and start to pause bulk load (#514)
     add bdc6aa009 fix: revert "dassert if shared log is damaged when replica server init" commit (#519)
     add 2ecb77fc6 add pause bulk load (#518)
     add a53199d2b feat(thirdparty): Update rocksdb to rocksdb-6.6.4-compatible (#523)
     add 43c564634 refactor: make command manager decoupled from dsn_runtime (#522)
     add 62a2d7429 build: use regex to find rocksdb depend module path (#525)
     add f76b3e2c0 refactor(log): separate log_file from mutation_log (#521)
     add 261d6a99d fix(scripts): change the download source of zookeeper (#526)
     add 002eb4bdd refactor(aio): simplify disk_engine interfaces (#528)
     add 4375bc019 feat(bulk-load): restart bulk load (#524)
     add 0de9e4d35 refactor: decouple sys_exit_type with dsn_runtime (#529)
     add 60761bb78 feat(bulk-load): cancel bulk load (#531)
     add aa37a2b46 handle bulk load failed and app unavailable (#532)
     add 89247b70e refactor: make simple logger decoupled from dsn_runtime (#530)
     add 24f55240a feat(bulk-load): replica handle errors during bulk load (#534)
     add b73d1aad1 refactor: move aio module from src/core/aio to src/aio (#533)
     add 4a20c17d2 refactor: move http module from src/dist/http to src/http (#537)
     add f14e7e65a feat(bulk-load): handle recoverable errors during bulk load (#535)
     add f8886e406 refactor: move block_service module from src/dist/block_service to src/block_service (#536)
     add 1a5b8ed70 refactor: move nfs module from src/dist/nfs to src/nfs (#538)
     add d39c94f3b refactor: move remote_cmd module from src/dist/cmd to src/remote_cmd (#539)
     add 04c9c8efc refactor: combine src/dist/failure_detector and src/dist/failure_detector_multimaster into src/failure_detector (#540)
     add 5e888b366 refactor: delete replication_checker which is unused (#546)
     add 2d74258f0 refactor: move perf_counter module from src/core/perf_counter to src/perf_counter (#541)
     add 49d3f715f feat(bulk-load): replica validate status (#543)
     add d641c4a66 refactor: make throttle controller decoupled from dsn_runtime (#545)
     add 4d6561d38 refactor: combine src/dist/replication/client and src/dist/replication/ddl_lib into src/client (#547)
     add 975a6d8d5 refactor: move zookeeper module from src/dist/replication to src/zookeeper (#549)
     add 2214820f3 refactor: move common module from src/dist/replication/common to src/common (#550)
     add 581f2d2f6 fix: compile thrift error (#551)
     add 2caf22811 fix: fix compile thrift error in compile_thrift.py (#552)
     add 70552935b feat(bulk-load): small update for meta bulk load service (#548)
     add 0fb1bed77 refactor: move meta module from src/dist/replication/meta_server to src/meta (#554)
     add 21c04ddf0 feat(bulk-load): sync bulk load from remote storage (#553)
     add db2a3e61b refactor: move replica module from src/dist/replication/lib to src/replica (#555)
     add bfea15b44 feat(bulk-load): add query bulk load (#556)
     add ee58e2981 refactor: change tests module name to test (#557)
     add e4151ac1c refactor: move tools module from src/dist/replication/tool_lib to src/tools (#558)
     add 298c30b8c refactor: use DSN_REGISTER_COMPONENT_PROVIDER to register logger (#562)
     add f13589e57 feat(bulk-load): continue bulk load while meta server start part1 (#559)
     add 0c424fbf6 feat(bulk-load): continue bulk load while meta server start part2 (#563)
     add 31637897e refactor: make utils decoupled from dsn_runtime (#517)
     add da4669643 feat(bulk-load): add bulk load ddl client interface (#565)
     add e32ce21c0 fix: cleaup lock in ut abnormal_api_call (#560)
     add d5ba2c499 feat(bulk-load): check app bulk load states while sync app from remote storage (#564)
     add 95002ff53 refactor: move runtime module from src/core/core to src/runtime (#566)
     add 9d1059eb6 feat(bulk-load): add perf-counter (#567)
     add 113e7e601 perf(slog): Use a special thread pool for slog write callback (#568)
     add 8a56c9596 fix(bulk-load): update cleanup download task (#570)
     add aef76b192 build(deps): use cmake ExternalProject to manage dependencies (#438)
     add 36c519eb3 feat(bulk-load): ignore bulk loading app while load balance (#571)
     add cbf4dd6ef build(ci): refine build scripts (#574)
     add 9eada4b5b fix(bulk-load): fix bug while check app bulk load states (#576)
     add adeb3e9b9 refactor: reduce compilation size for building each meta test (#577)
     add 3d0f7c0ad fix(bulk-load): fix bug while check_all_partitions (#579)
     add d8f593b6c feat(security): start negotiation when a rpc connection is established (#575)
     add 11876e472 fix: remote-command max_copy_rate_megabytes failed when set "DEFAULT" (#580)
     add 409c846ff fix: fix building errors by clang-9 (#578)
     add 89d78d59d fix(bulk_load): fix bug of clear_bulk_load_states_if_needed (#583)
     add a12241981 feat(utils): add latency trace tool (#510)
     add b55e08100 refactor: make read batch size of fds configurable (#584)
     add 258b7ef29 fix(bulk-load): fix bug about concurrent downloading count (#581)
     add 59064e99a fix(bulk-load): fix bug during ingestion (#587)
     add 4fdc0dfe7 feat(security): implement start_negotiate function (#582)
     add 40d86f7f7 fix(bulk-load): fix bug while rolling back to downloading (#572)
     add 53f6d75e0 refactor: move http_server.h to dsn/http (#592)
     add 6549c5ba7 feat(http): support parsing content-type of HTTP request (#593)
     add b0c18d244 feat(security): handle SASL_LIST_MECHANISMS by server_negotiation (#588)
     add 96f32ce77 build: use nodejs/http_parser as a external dep (#591)
     add 38095a4c0 feat(security): init kerberos (#585)
     add 27c1d6bce feat(security): make network support security negotiation (#589)
     add 9d2c78c7f feat(security): receive mechanisms which are supported by server_negotiation (#595)
     add abd93ac1b feat(security): select mechanism (#600)
     add c51db3e45 refactor: use member func instead of macro RPC_CHECK_STATUS (#598)
     add 1859305f7 feat(security): init sasl (#599)
     add f6f0eb4b6 feat: add point for write using latency_tracer tool (#511)
     add e057876bc refactor(security): close the connection when something is wrong with sever_negotiation (#606)
     add 9dee4d239 refactor(http): replace service/method with simple HTTP path (#594)
     add 8139d6388 feat(security): add unit test for negotiation_service (#609)
     add 807cef6f3 feat(security): add unit tests for server_negotiation (#607)
     add 31054344f feat(security): implement sasl_wrapper which is a wrapper to operate sasl (#604)
     add 8ca22deba feat(dup): clear data on meta when duplication removed (#611)
     add b3220675d feat(security): add unit tests for client_negotiation (#608)
     add 84dbf0d53 refactor: hide http_server from http api (#610)
     add fafbd599d feat(security): client_negotiation handle mechanism selected response (#612)
     add 4f4ba5354 chore: remove usages of rdsn git commit (#614)
     add 4058664be feat(security): server_negotiation handle SASL_INITIATE request (#613)
     add be8975a46 fix(security): fix bug in building cyrus-sasl (#616)
     add 079d6afaf feat(security): client_negotiation handle challenge (#617)
     add 44257039c feat(security): server_negotiation handle challenge response (#618)
     add 6d4f9c4ee refactor(http): add http handler without creating http service (#615)
     add 0e5e6d46b refactor(backup): move cold_backup_context out to standalone file (#619)
     add bf610ce4e refactor(security): refactor the send func of client_negotiation (#620)
     add 8ec8ba6a1 refactor(security): use blob instead of std::string as the type for msg member of negotiation_request (#622)
     add 7868d6459 fix: set the tracer type when init (#621)
     add 4ce58d80a refactor(backup): move common utils out to backup_utils (#623)
     add 5b9e626b6 refactor(backup): move backup rpc handling to replica_backup_server (#625)
     add 20eed6fbc refactor(fds_service): clean up duplicate code (#627)
     add 519f20295 refactor(split): move replica split functions into replica_split_manager class (#624)
     add e794dec36 refactor(security): add join point to start negotiation (#626)
     add a4fd26a99 refactor(security): add join point to filter received message (#628)
     add 78c34ff82 refactor(security): add join point to filter the sending message (#629)
     add f90bbfc81 refactor(block_service): remove rebundant functions (#630)
     add 69102a786 feat: send hotkey_detect_request in ddl_client (#632)
     add ccecd5996 feat(hotkey): Add an interface of on_detect_hotkey (#634)
     add 2597bfcd2 fix: fix fds_service_test (#635)
     add 537b8106b refactor(security): make send/recv message allowed when mandatory_auth is false (#639)
     add d063842c8 feat(split): small refactor and fix of replica split (#636)
     add 7601254a6 refactor(split): refactor meta start partition split (#638)
     add 299e24f92 refactor: refactor replica split unit tests (#637)
     add 91f9f4e4d feat(split): add start_partition_split interface (#640)
     add 216130099 feat(split): implement child_handle_split_error (#642)
     add 2c7148dd3 feat(split): add split_status (#641)
     add a975bd65b perf: optimizing write latency using independent IO queues replace of libaio (#633)
     add a64c2f6f6 feat(split): update register_child with split_status (#643)
     add af60c5d54 refactor: reduce netprovider unit test executing time (#644)
     add 3679a2dd8 refactor(backup): straighten the execution path of download_file (#631)
     add 18120226e fix: plog aio tasks are assigned replica long thread pool will cause close app block (#649)
     add 48ad9b8d1 feat(split): add update_child_group_partition_count (#645)
     add 9bf457113 fix(split): fix split register child unit test (#648)
     add bf94cbd60 feat(split): parent group update partition count (#654)
     add 1863cf9f0 fix(security): fix bug in negotiation_service::on_negotiation_request when rpc_session is closed (#652)
     add ec47b0cfd chore: migrate ci from travis to github actions (#658)
     add fd90dd624 refactor: update detail disk info (#651)
     add 2b18805a0 fix(backup): use existing block_service_manager when add backup policy (#661)
     add 81b10053b fix(http): fix message buffers size check (#662)
     add 82e10a2ff fix(http): fix parse path from message (#663)
     add 501fe552f feat(disk_balance): support and validate disk migration rpc (#660)
     add 6f8b2ade7 refactor: refactor app operation unit tests (#646)
     add b07c35ce7 fix: local_service compile error loading file metadata (#666)
     add b1b586641 feat(backup): add hdfs as an alternative backup provider (#647)
     add 788926995 feat(security): implement meta server access controller (#655)
     add 3d9fb4b2a feat(security): implement replica server access controller (#670)
     add 5be3e47b0 fix: update thirdparty fmtlib version (#671)
     add f80fba8fb fix: time utils overflow, meta_split_service lock (#665)
     add c99930564 feat(disk_balance): add `do_disk_migrate_replica` to support migrate origin data (#664)
     add 8c2b6d7f9 feat(split): add splitting_replicas while on_config_sync (#653)
     add bed1e63b7 fix: fmtlib incompatibility problems from 7.1.3 to 5.3.0 (#674)
     add d850ee749 fix: downgrade hadoop version to 2.8.4 (#673)
     add dfce62020 feat(security): implement reset interface for replica access controller (#672)
     add 64b9e1170 refactor: use THREAD_POOL_BLOCK_SERVICE ro replace THREAD_POOL_FDS_SERVICE/THREAD_POOL_LOCAL_SERVICE (#677)
     add 65edf61e3 feat(split): secondary start split (#675)
     add d9926a93b feat(split): child copy mutation asynchronously (#676)
     add 0ae7a55aa refactor: remove support_write_vec in aio_task (#680)
     add 7edc7adf7 feat(security): enable access replica when appenv `replica_access_controller.allowed_users` is empty (#683)
     add 929c6588f feat(bulk-load): add query bulk load http interface (#687)
     add c7ce07f1d fix: compile error of zookeeper 3.4.10 on gcc9 (#685)
     add 7743f5afc fix: add `#pragma once` to defer.h (#688)
     add c372f6e6b feat(bulk-load): support user-define remote storage root path (#686)
     add 8e6a087b5 fix: zk compile cflag no warn format errors (#689)
     add d4f45be9f fix(hdfs): fix 'libjvm.so not found' error (#691)
     add 67e06d2c5 feat(security): treat negotiation succeed if server is old version (#694)
     add 1d88c1db7 feat(bulk_load): add start bulk load http interface (#693)
     add f6d218a40 feat: support to modify configs without restart (#682)
     add 354a1e507 fix(block_service): download file when local file is different from remote file (#692)
     add ba19d042b fix: add hash for flag_tag to compatible with gcc < 6.1 (#698)
     add 29c6ccca8 feat(hotkey): Change RPC to query hotkey (#700)
     add 1b6bb629e fix(scripts): fix zk version in zk scripts (#705)
     add ee8d76be0 feat(security): make enable_acl and mandatory_auth mutable (#702)
     add 12c8cad57 feat: add query app data_version interface (#706)
     add 2218324a0 feat(bulk_load): add update compaction envs http interface (#695)
     add 37a13a915 refactor(security): remove mandatory on client side (#708)
     add 00e3d98bb feat: add update rocksdb scenario interface (#707)
     add 2abd68a46 fix: block service download file return error when file exists (#703)
     add f27decf2e refactor: fix typo and add comments to security (#699)
     add 60831d6ec feat: support to build a portable rocksdb binary (#690)
     add 2dd3b75c4 feat(bulk_load): add query compaction status http interface (#696)
     add b92ba6d5b fix(test): add gtest framework to meta tests (#709)
     add 57e7a34f9 feat(hdfs_service): make hdfs_read_batch_size_bytes/hdfs_write_batch_size_bytes mutable (#710)
     add 1fd9cd571 feat: update query partition data version (#713)
     add 16e158272 feat: add validation for value updating through http api (#714)
     add 4f5fcb98c fix(security): make mandatory_auth to be a server side config (#712)
     add bcc0e6a2f BREAKING CHANGE(backup): remove 'policy_name' from backup files' path (#716)
     add 0ffd3ed0e feat: add http interface to get all configs (#704)
     add 00bb36867 fix(hotkey): add replication_enums of `detect_action::QUERY` (#718)
     add c31024a5e refactor(backup): refactor add_backup_policy (#717)
     add 5fe7ff16a feat: add http interface to get a specified config (#719)
     add 76cdc503b feat: add read limiter for hdfs (#720)
     add 6666355f8 refactor: refactor backup_test (#721)
     add 34df5b3d8 refactor: delete find package libaio dependency when build (#723)
     add ec34633e4 refactor: don't resend message if it is rejected by server (#722)
     add ab9520df9 fix: multiple asan errors (#715)
     add 20b2dfc6e feat(split): add meta control split (#679)
     add bd254db53 fix(split): message header should not be empty (#725)
     add 2ddad7d3b feat(split): replica server handle pause and cancel status (#681)
     add 5c8de1986 fix(asan):  heap-use-after-free caused by replica_test_base::create_test_mutation (#733)
     add cddaec7c7 fix: fix the usage of service_engine::get_all_nodes() (#730)
     add d71b5171e fix(perf_counter): remove static map from counter_info (#735)
     add 035b5263c fix(hdfs): do not call hdfsDisconnect() after jvm exited (#736)
     add ea2d2ac43 feat: remove transient_object which is implemented by tls memory (#737)
     add 5232ae819 fix(asan): heap-use-after-free in rpc_read_stream (#738)
     add 84ddb727d feat: add throttling for read size and read qps (#728)
     add 9cc9b5d4f refactor:  remove the dependency of tls memory for some member functions in message_ex (#739)
     add d876ac16e feat(split): add notify_stop_split rpc (#731)
     add ae163055b refactor: reimplement join point with less code (#711)
     add 7404376b4 fix(split): add flush_memtable for copy_checkpoint_to_dir (#729)
     add eabef24fa feat(split): add query split status interface (#726)
     add fe49315f7 fix: fix lock in notify_stop_split (#744)
     add c5101b76c feat(split): add app_env split_validate_partition_hash (#745)
     add 5774892ab fix: error reported in build process of pegasus-docker (#746)
     add 4c9b6efd0 fix(command_manager): avoid using std::remove to erase elements from std::vector (#734)
     add 0a7ee9392 fix: fix log print (#748)
     add d8cbbe598 fix(asan): memory leak in command_manager (#751)
     add f9b9961e2 refactor: remove the dependency of tls memory for message_ex (#749)
     add 447155a92 feat(split): replica add validate_partition_hash (#747)
     add 46042aa74 fix: set burst_size of _write_token_bucket in fds_service to double max (#755)
     add cf8a42040 fix: delete unused flags `rocksdb_target_file_size_base` and `rocksdb_write_buffer_size` (#756)
     add 124b02655 fix: memory leak in nfs test (#757)
     add 198962f1b feat(split): supplement some case after implementing pause cancel split (#742)
     add a057ce5c7 fix: cluster_name of ddl client from zk root (#678)
     add 6d13c072e fix(perf_counter_wrapper): avoid using invalid perf_counters::instance() to remove counter (#750)
     add d3997ddc5 fix: make disk_engine destructed after service_engine destructed (#752)
     add 824b4d2c5 fix: do not call unregister_rpc_handler when exiting progress (#753)
     add ee1026d89 refactor: remove generated thrift srcs from repo (#758)
     add f7c6de463 refactor: remove thrift generated files of fd/simplekv (#759)
     add 9261ca10f refactor: use shared_ptr to replace raw pointer (#754)
     add 660bf0627 feat(disk_balance): close origin replica and update replica dir (#668)
     add c057d35c9 refactor: separate files from replication.thrift (#760)
     add a1a6c2f67 feat(split): add child copy mutation synchronously (#727)
     add ac17c6e43 fix(split): add special check for on_config_sync (#766)
     add 81ddcf139 refactor(split): add app splitting() function (#767)
     add 4b63f42f2 fix(security): doesn't reject request even if it's rejected by access controller (#768)
     add 610c35635 feat(split): add check state task for split context (#743)
     add ded2abde1 feat(split): add split check when drop app (#765)
     add c53d84e15 feat(split): ignore splitting partition during load balance (#763)
     add f8aefb476 fix: enable config runtime-update using flag for disk_cleaner (#770)
     add 7d6f56b61 refactor: move primary's learning preparation of cache into another function (#368)
     add d47275814 refactor: simplify nfs client and nfs server (#771)
     add 6528eb661 fix(asan): fix heap-use-after-free in perf_counters (#773)
     add bd60a1487 fix: use dsn::tools::native_aio_provider as default value of FLAGS_aio_factory_name (#774)
     add 64c331c7b feat(one-time backup): part-1 meta server handle rpc and init backup (#772)
     add baf31b521 fix: fix compilation errors (#780)
     add b6d1a7ac7 refactor:  remove the unused parameter 'async' for native_linux_aio_provider::aio_internal (#777)
     add c62e59248 feat(split): add query_child_state rpc (#762)
     add 4b8742e2f fix: fix core while running simple_kv unit test (#782)
     add e2368a0a8 fix: update bool app envs (#781)
     add d7185608d fix(split): register update_child_partition_count rpc handler (#783)
     add 7956f7b2c feat(split): add child partition execute mutation (#784)
     add 2582a5c8f refactor: make aio decoupled from dsn_runtime (#778)
     add 4a9a50cb6 feat: support uint8_t for data_output and data_input (#792)
     add a6b1c6cf3 feat(one-time backup): part-2 backup app metadata and send rpc to partition primary (#775)
     add 2ebdfcec6 feat(split): meta failover during partition split (#764)
     add e2bf7c740 fix(cmake): define `ENABLE_GCOV` when build with `--enable_gcov` (#793)
     add 5fcd16e66 refactor: remove config aio_factory_name (#794)
     add d39b10932 feat(split): add split related perf-counter (#789)
     add b039499d2 feat(one-time backup): part-3 meta server handle rpc response (#776)
     add 30ff569ab feat(split): parent clear split context while config changed (#791)
     add 83f18ccc2 feat(split): add split state check while assign primary (#790)
     add fc6093c87 feat(split): ignore split garbage partition while load replicas (#787)
     add 53c8c63eb feat(split): clear split context while close replica (#786)
     add 140548388 feat(split): add child partition check during config_sync (#788)
     add 290a8116d refactor(split): add function parent_handle_split_error (#795)
     add d0892d0f5 feat(one-time backup): add query backup status function (#796)
     add add5fbd47 feat(one-time backup): add unit tests (#785)
     add c8d9d80c2 feat(split): update some split related perf-counter (#797)
     add 7630322c6 fix: remove read size throttling (#799)
     add a736920c7 fix: modify the ouput format for configs http api (#800)
     add 259779b3f feat(http): update query data version (#801)
     add 081707ad7 build: fix compilation errors on clang-10 (#803)
     add 72c207be2 feat(http): update query manual compaction interface (#805)
     add f5084283e fix: compilation errors on clang-9 (#806)
     add d1caa1304 fix: incorrect help info of meta/replica remote commands (#808)
     add 77c0917b2 refactor: remove profiler related remote commands (#810)
     add 646a8b1ff fix(backup_policy): do not try again when got fs errors (#807)
     add 89f2fabe5 fix(one_time_backup): mark a backup failed when write backup info failed (#813)
     add 4ee361b3f refactor: remove explorer from rdsn (#811)
     add 03a441a6a feat(one-time backup): support user specified backup path (#814)
     add 41f1fa882 feat(restore): support user specified restore path (#816)
     add c951226dd feat(ddl_client): support backup app and query backup (#817)
     add fdf00762c chore: update license to alv2 (part1) (#819)
     add 552169e0b chore: update license to alv2 (part2) (#821)
     add 1ff27d55d fix(restore): fix not found error when restore app metadata (#822)
     add c49e6fdd8 fix(bulk_load): fix remove_local_bulk_load_dir() (#823)
     add ad9d61dfe fix: add /version http api (#824)
     add b4b9a4ecc fix: support retry when io write incompletely (#818)
     add 510d7c91a fix(bulk_load): redownload file if local file damaged (#826)
     add 5fd3c2788 fix(bulk_load): remove possible old directory when start bulk load (#828)
     add 788f4eaab feat(bulk_load): add bulk load max rollback count (#827)
     add 6693cf7f2 feat(bulk_load): meta server adds bulk load ingestion concurrent count restriction (#829)
     add fb752f7b8 test: add workflow for new tag creation and regular build (#820)
     add 2c8404175 feat(split-client): c++ client split related implementation (#798)
     add cd0a237b2 feat: add remote command to get tcmalloc status (#832)
     add 0cdb0495c fix: fix a compile error on clang (#835)
     add e52e9a0d9 chore: update license to alv2 (part3) (#825)
     add f95606514 fix: fix github actions not run when reopen a PR (#836)
     add ea1d8f3d7 refactor: remove unused adminssion controller (#684)
     add 6200adaf1 fix: update bulk load download thread pool (#837)
     add 5b8e4f6a6 feat(disk): reject write if disk space is insufficient (#833)
     add 78aefe141 refactor: refactor replication_options initialize function (#831)
     add f1827ecab feat(disk): add broken disk check while initialize (#834)
     add fdb1a029a fix: fix a compilation error on clang (#842)
     add 87ad76351 fix(backup_policy): ignore current backup when policy is diabled (#840)
     add fbdfba7f4 chore: support markdown link check action (#844)
     add 9bc6be3eb fix: add a destructor for `join_point` (#841)
     add e70d40676 fix(graceful_exit): adjust the destructing order (#843)
     add 60769c466 fix: plog may be lost on going duplicating when replica re-open and then learn (#838)
     add 76577b2a4 fix: implement reset_from to fix plog loss when duplicating with learning (#845)
     add fc224a425 feat: add env check for user specified compaction (#849)
     add 6ca65c78c fix(client): client not retry while receive splitting or disk insufficient error (#852)
     add aedc98836 fix(disk): fix disk space insufficient bug (#851)
     add 41b5d3df0 feat: add partition guardian to keep one primary and two secondaries (#847)
     add 1275b1bfe feat: add rate limiter for backup request (#855)
     add e31d49ca6 refactor: move on_redundant_secondary from simple_load_balancer to partition_guardian (#854)
     add 11c8b5fa7 feat: add flag to enable cluster load balance (#853)
     add e5a793f2d feat: implement move primary for cluster load balancer (#857)
     add 47871ebd7 feat: add perf-counter to record dropped timeout rpc count (#859)
     add 31ad7e98e feat(disk): support add disk rpc (#839)
     add 3858fdc00 fix(duplication): reset confirmed_decree to delete secondary private log after remove duplication (#860)
     add 7e3eab786 feat: throw exception if reads corrupt data (#863)
     add df46be2c5 fix(duplication): force wait confirmed_decree sync complete when start duplication (#861)
     add 9cd9991d9 feat(duplication): derror and add perf-counter if mutation loss instead of dassert for duplication (#862)
     add 7b164b89b feat:  add balance type for cluster load balance (#858)
     add 6de24307f feat: supporting release all tcmalloc reserved but not used memory (#864)
     add e3e24f7fd feat: add an env to enable or disable block cache of an app (#865)
     add a530ef4ec feat: update dropped-timeout-rpc-count counter type (#867)
     add 3bda0ba8a fix(sanitizer): fix heap-use-after free in hdfs client test (#868)
     add 633f08e5a fix(sanitizer): coredump in meta_service_test.check_status_failure (#869)
     add 196df9a45 fix: init app before start tests (#870)
     add 8530b9f6f fix(sanitizer): coredump in replica test (#871)
     add 4bddefebd feat: add function to get cluster migration info (#866)
     add e89df8dd6 feat: add implementation of get next move (#872)
     add 8a5bb4d8e fix: fix replica::init_table_level_latency_counter metric name error (#830)
     add 68df0e9a7 feat: make token bucket in fds configurable (#874)
     add 2b7cbf529 feat: add a new thread pool to process slow query (#856)
     add dca521f14 fix: don't build  HDFSClientTest.test_remove_path_while_writing if sanitizer is defined (#875)
     add 6db3165fc fix: update mutation tracer name to mutation->name() (#876)
     add f52a6a977 fix(split): adapt java client 2.0 version requests (#877)
     add c5968c755 feat: implement greedy_load_balancer::pick_up_move (#873)
     add 7599275ad feat: add sanitizer test for pull request (#880)
     add f5ecd5e97 feat: implement greedy_load_balancer::pick_up_partition (#881)
     add 384b19af6 feat: implement greedy_load_balancer::apply_move (#882)
     add 73004ebb0 feat: add copy secondary for cluster balance (#883)
     add 0cc61f04b refactor: move from_proposals from simple_load_balancer to partition_guardian (#884)
     add cc19f418d refactor: move on_missing_primary from server_load_balancer to partition_guardian (#885)
     add 14269f2db refactor: move on_missing_secondary from simple_load_balancer to partition_guardian (#886)
     add 021d9f4da refactor: move finish_cure_proposal from simple_load_balancer to partition_guardian (#887)
     add 6135e4596 feat(split): add split reject counters (#891)
     add 6604f6ae3 refactor: move register_ctrl_commands from simple_load_balancer to partition_guardian (#890)
     add abca81199 feat(bulk_load): add replica-level bulk load reject write counter (#895)
     add a63f4531c refactor: move collect_replica from simple_load_balancer to meta_data (#892)
     add a054d88f9 refactor: move construct_replica from simple_load_balancer to meta_data (#893)
     add 88eea17cb refactor: move reconfig from simple_load_balancer to partition_guardian (#896)
     add a33c9c987 refactor: move get_ddd_partitions from server_load_balancer to partition_guardian (#897)
     add 3bcff61f1 refactor: remove simple_load_balancer (#899)
     add d4ccfbdcf fix: add virtual to destructor of partition_guardian (#900)
     add 2cec8899a feat: support nfs server rate limit (#901)
     add d0ff0a99b feat(perf_counter): add a perf_counter of server session (#894)
     add 865c8390b fix: fix bug that didn't copy primary in cluster load balancer (#904)
     add 4cce7804e feat(load-balance): update selection strategy for max load disk (#916)
     add cafadac53 feat: make secondary commit asynchronously (#909)
     add eff1acb47 feat: support jemalloc (#910)
     add cad437c09 feat(task): add dynamic control of task queue length (#902)
     add 77a45ea53 feat: support single replica (#932)
     add d84c5ad6f fix: mutation_log_test failed when compile with debug type (#933)
     add bc774d482 feat(thirdparty): change galaxy-fds-sdk-cpp download source (#888)
     add 7cd5e4b6b feat: add an interface for rpc_holder to set error (#939)
     add 796cba14e feat(utils): add the token buckets wrapper to get bucket by name (#943)
     add 410fd5621 feat: add a token_bucket_throttling_controller  (#941)
     add 1e8b2ba0d feat: add rate limiter for per disk when nfs copy data (#944)
     add 1f56bd56d fix: add TokenBucket header in the `token_bucket_throttling_controller.h` header (#946)
     add baa8a467e feat: add new codes in env to support `READ_SIZE_THROTTLING` (#948)
     add af2b0486c feat: add an interface for app_base to get replica info (#947)
     add 667d84d40 feat: support perfcounter and more information trace log (#945)
     add fc41809ce refactor: add an interface for checking if the bucket is empty (#950)
     add f61fed719 fix: the nfs copy config of remote-command is error  (#954)
     add 71c40b4b4 refactor: use latest latency tool to add point for write process (#951)
     add 815888ad4 fix: partitions are unbalanced after the table is created (#957)
     add 137938e19 feat(bulk_load): async create connection with remote file provider (#952)
     add 9f1408813 feat(bulk_load): not rollback to downloading if bulk load meet error in succeed stage (#958)
     add a7e723079 refactor(bulk_load): update some bulk load logs (#960)
     add 9f8c067a0 feat(bulk_load): remove bulk load request short interval avoid unnecessary timeout (#959)
     add 1be690523 fix: bug in learn that can't complete (#961)
     add 9546c4634 refactor(bulk_load): refactor get_app for bulk_load_service (#962)
     add cba16ed58 feat(bulk_load): add unhealthy partition check (#964)
     add a81b31ce7 fix: break execute some method when disable latency tracer (#965)
     add 3eaf8e47f fix: remove bulk_load_meta_service::check_partition_status useless this (#967)
     add 2bf7cb216 refactor: merge load balance refactor code (#974)
     add 990bdfd47 feat: support to count alive nodes (#968)
     add 0cd47dd21 fix: drop redundant recent_choose_primary_fail_count (#980)
     add 3b7756b53 feat(manual_compaction): replica report status part1. add function query_compact_status (#981)
     add 72ea4ffac fix: add pragma once in backup_engine.h (#982)
     add 2b08ee72e feat(op_status_lock): add an operation status lock for meta (#977)
     add 455822bbe feat(manual_compaction): replica report status part3 (#983)
     add 58e0627a5 fix: the join point name of on_rpc_create_response (#984)
     add 4039144ec fix: add app_info duplicating initial value (#976)
     add e06691a9e feat: implement grouped flag validators (#978)
     add fedb845d0 feat: change the nfs limiter diable by default (#985)
     add f845d8cbe feat: restrict the replication factor while creating app (#963)
     add fac96a316 feat(manual_compaction): meta server support querying compaction status (#987)
     add e8cee5591 feat(manual_compaction): meta server support starting compaction (#989)
     add af568d8cc feat(backup): add write limiter for hdfs (#988)
     add 24bf38117 refactor: move func get_current_cluster_name out of duplication_common.h (#992)
     add 982c2bd18 feat(bulk_load): add bulk load manager for meta (#986)
     add 2dc8a2bef refactor: move bulk load common types to a seperate file (#995)
     add d12b2ac62 refactor: move partition split common types to a seperate file (#996)
     add f9700bc64 refactor: move manual compaction common  types to a seperate file (#997)
     add 3e1734e9f refactor: move backup common types to backup_common.h (#998)
     add 452104ae6 fix(rocksdb): upgrade rocksdb to fix NotifyOnFlushCompleted() for atomic flush (#1001)
     add 75fe34221 refactor: remove unused function in replication_common.h (#1000)
     add 08af400e3 feat(online_migration):part1 - add new app_envs to control rocksdb allow_ingest_behind (#991)
     add 93fe4c4f4 feat(online_migration): part2 - add ingest_behind option for bulk load (#1002)
     add fa3e86ba2 fix(bulk_load): fix replica validate status check (#1004)
     add 6af2c3204 refactor: add a new function to store app_info into file (#1003)
     add f8d632f95 fix: make is_bulk_loading filed optional in query_bulk_load_response (#1009)
     add b54fb9d8e build: require add issue reference in description using github action (#1010)
     add 3d1c98872 fix: message body size unset after parsed which leads to large io throughputs (#1008)
     add a7c5c9db9 refactor: simplify code by macros (#1012)
     add 298769147 refactor: remove deprecated replica .info file (#1015)
     add ac8f8de2c fix: use fsync() to prevent .app-info/.init-info lost risk on XFS after power outage (#1017)
     add 0cb88e200 fix(bulk_load): update ingestion error handling with move_files mode (#1011)
     add 5269c50cc refactor: avoid to call add_point in latency_tracer (#1023)
     add 1c71765ed feat: add dsn_unlikely in macro ADD_POINT (#1029)
     add 33d4bbb1f feat(bulk_load): add verify_before_ingest option (#1027)
     add 34a3b26d8 refactor(bulk_load): rename update_partition_status_on_remote_storage (#1031)
     add 210b944ec refactor: remove dump dir which is useless (#1030)
     add 5cc805ae6 refactor: change the type of prepare_list from raw pointer to std::unique_ptr (#1032)
     add 0de7523b1 feat: add tracer point in plog (#993)
     add ede63db98 feat: support callback for plog append (#994)
     add 6678c3723 feat: add force flush option for private log (#999)
     add 3ce03b1da feat: remove unused options in privated log (#1005)
     add ca939034e feat: write private log synchronously (#1007)
     add fa58cd7fc fix: stack overflow in duplication test (#1022)
     add 058f9474d fix: remove unused judgement of FLAGS_enable_latency_tracer in private log (#1028)
     add daa758518 feat(build): support to build on MacOS (#1034)
     add e805bf429 feat(bulk_load): avoid unecessary repeated ingestion (#1018)
     add 582c8bbd2 fix(network): use multi io_services in asio (#1016)
     add 96d4409d4 fix(one-time backup): fix bug when backup request is timeout (#990)
     add df4af63bf fix(build): fix higher version cmake produce filename as 'compiler_depend.ts' bug (#1036)
     add f2084d446 feat(bulk_load): support disk_level ingesting restriction part1 - add ingestion_context class (#1035)
     add dc8d6e0b4 fix: remove min_live_node_count_for_unfreeze from meta_options to ensure it can be correctly updated dynamically (#1037)
     add 2dd67e088 feat(bulk_load): support disk_level ingesting restriction part2 implementation (#1039)
     add 9843e3cea fix: fail_point is failed when use `FAIL_POINT_INJECT_VOID_F` (#1047)
     add 82aadea33 feat: make option empty_write_disable mutable (#1048)
     add 8c310b95f fix: shutdown error while close replica (#1052)
     add 89dc34f0e fix(build): update GCC and CMake checker  (#1041)
     add 111e8ce38 refactor: drop redundant config_status::pending_proposal (#1050)
     add a9ace87a4 refactor: delete some useless code in `replica_chkpt` (#1058)
     add d60c17c9f refactor: use the corrent cast operation (#1062)
     add 4fbd324a9 refactor: make ctor/dtor of singleton classes to be private (#1068)
     add f45c76f14 feat(direct_io): download files from hdfs with direct I/O (#1069)
     add 3244262c7 fix: add a decree check when replica server receive the assign_primary request (#1044)
     add b8942ecdd feat(verify_file): update the file validation logic for bulk load downloading to avoid io-read workload (#1074)
     add f27254203 feat(dup_enhancement#1): add new dup status to support new dup   (#1038)
     add 942eae3f6 feat(dup_enhancement#2): add more follower's info for master meta (#1040)
     add 0559ef8f3 feat(dup_enhancement#3): update load_meta_servers to avoid crush when duplication config is wrong (#1045)
     add cc4d6b1dc feat(dup_enhancement#4): implement `create_follower_app_for_duplication` function (#1046)
     add 4e91f3644 feat(dup_enhancement#5): add and support updating `checkpoint_prepared`  (#1049)
     add 203bb54b7 feat(dup_enhancement#6): implement `check_follower_app_if_create_completed` function (#1051)
     add 33f8fceea feat(dup_enhancement#7): implement `prepare_dup` function in replica side for  meta `DS_PREPARE` status (#1053)
     add 5083015cc feat(dup_enhancement#8): master replica sync info to meta support `checkpoint_has_prepared` (#1055)
     add 2dd71c6d3 feat(dup_enhancement#9): master replica support `on_query_last_checkpoint_info` rpc for follower replica (#1056)
     add 78aaf3542 fix(dup_enhancement#10): follower meta need return `ERR_APP_EXIST` when receive create same app (#1059)
     add 57e92c370 feat(dup_enhancement#11): follower replica add `replica_follower` to support duplicate checkpoint when open replica (#1060)
     add 1c66a00c2 feat(dup_enhancement#12): follower replica add framework and implement the main function (#1063)
     add 81eeee19a feat(dup_enhancement#13): follower replica support query and update master partition config (#1064)
     add b44ae7917 feat(dup_enhancement#14): follower replica support nfs copy checkpoint (#1065)
     add 5575547b0 fix(dup_enhancement#15): follower replica add `duplciation_dir` in `replica_app_base` (#1066)
     add 7752c70d9 fix(dup_enhancement#16): change some `replica_app_base` function to virtual for polymorphism (#1067)
     add f18711cc5 fix(dup_enhancement#19): change checkpoint status after manual checkpoint completed (#1071)
     add 516ff0c60 fix(dup_enhancement#20): put `async_duplicate_checkpoint_from_master_replica` into `DEFAULT_POOL` to avoid thread lock (#1076)
     add 997c2dc84 fix(dup_enhancement#21): add batch replay log to support batch send mutation (#1080)
     add 3f8882a69 refactor(dup_enhancement#22): delete useless `freezed` argument (#1084)
     add ea9210614 fix(dup_enhancement#23): update code after rebase master
     add 7f02509f2 feat(dup_enhancement#25): add `-s | --sst` argument to support ignoring checkpoint when duplicate (#1085)
     add d03b2b933 feat: add deny table env to reject client read/write request (#1086)
     add 258dfa4ff feat: zookeeper client support kerberos (#979)
     add 6cf41ac5c fix: update disk state when disk migrate completed (#1088)
     add f4c572431 chore: separate cpp and non-app changes to save CI time (#1096)
     add 727d90982 chore: Use official apache/pegasus repo of DockerHub (#1093)
     add da843900f ci: fix syntax errors in action yaml files (#1098)
     add 9bc95d152 feat: support aarch64 (#1097)
     add 47fd85c29 fix: enable clang build for BuildPegasusRegularly job (#1100)
     add 3f0c632ca fix: crash when huge write (#1099)
     add f75c4bb15 fix: fix md5 lack during block service download (#1101)
     add 51900ced7 fix(bulk_load): fix bug that poping all committed mutations ineffective (#1102)
     add 3eb720b28 feat(bulk_load): support clear last bulk load state rpc (#1103)
     add e38b5ffde feat(bulk_load): update downloading to avoid blocking default thread pool (#1104)
     add 608c3cef8 feat(bulk_load): support different tables can execute bulk load concurrently (#1105)
     add 5010f4959 feat(update_replication_factor#1): support to get the replication factor of each table (#1061)
     add 9037e7687 feat(update_replication_factor#2): add RPC for setting the replication factor of each table (#1072)
     add ff514dfef feat(update_replication_factor#3): support to set the replication factor for all partitions of each table (#1077)
     add 76ca08af8 feat(update_replication_factor#4): support to set env for the replication factor (#1087)
     add a31eef752 feat(update_replication_factor#5): support to set the replication factor for app-level metadata of each table (#1107)
     add f620ecadf feat(update_replication_factor#6): sync max_replica_count from meta server into .app-info file for each replica (#1108)
     add 6171fcc07 feat(update_replication_factor#7): replace cluster-level max_replicas_in_group with max_replica_count of each replica (#1109)
     add fe0a5dd34 feat(update_replication_factor#8): recover uncompleted update of replication factor during initialization of meta service (#1110)
     add 61e3890ba feat(update_replication_factor#9): merge max_replica_count_rebased_dev into master branch
     add 6519e256c chore: Add license header check action (#1111)
     add 0cba7eb22 Revert "chore: Add license header check action (#1111)" (#1117)
     add d25e7f812 fix: drop unused 'this' from lambda capture for unit-tests that verify replication factor (#1118)
     add a0b7e6dfe chore: Add MIT license header check action (#1119)
     add b0232a07b chore: Add MIT license header check action (p2) (#1120)
     add 0cf803455 chore: Add license declaration to LICENSE file (#1122)
     add c56307908 fix: assert is not necessary when the table config is updated (#1121)
     add bf76b99a2 feat(new_metrics): merge prometheus-dev into master branch (#1127)
     add 0afb557cb chore: move source code to rdsn sub-directory before merging to Pegasus (#1128)
     add 2610598f4 Merge branch xiaomi/rdsn prepare_merge_to_pegasus-dev into Pegasus
     add fb8c784ff chore: necessary modifications after rdsn been merged to Pegasus
     add f9a2e61b3 chore(rdsn): Merge sub-project rdsn from XiaoMi/rdsn
     add fd4d73405 build(deps): bump cryptography from 3.2 to 3.3.2 in /python-client

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (88a8773ea)
            \
             N -- N -- N   refs/heads/dependabot/pip/python-client/cryptography-3.3.2 (fd4d73405)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .github/workflows/check_license_header.yaml        |   16 +-
 ...ull-request.yaml => lint_and_test_pegasus.yaml} |    2 +-
 ...yaml => lint_and_test_pegasus_always_pass.yaml} |    4 +-
 .github/workflows/lint_and_test_rdsn.yaml          |  237 ++
 ...ss.yaml => lint_and_test_rdsn_always_pass.yaml} |   37 +-
 .github/workflows/rdsn_cron_compile_jobs.yaml      |   73 +
 ...erfile_linter.yml => standardization_lint.yaml} |   40 +-
 .licenserc.yaml                                    |  597 +++
 LICENSE                                            |  183 +-
 README.md                                          |    4 -
 docker/ci-env/Dockerfile                           |    4 +-
 docker/thirdparties-bin/Dockerfile                 |    4 +-
 docker/thirdparties-src/Dockerfile                 |    4 +-
 rdsn                                               |    1 -
 rdsn/.clang-format                                 |  119 +
 rdsn/CMakeLists.txt                                |   65 +
 rdsn/CONTRIBUTING.md                               |   69 +
 rdsn/README.md                                     |  104 +
 rdsn/bin/FindDL.cmake                              |   91 +
 rdsn/bin/FindJemalloc.cmake                        |   81 +
 rdsn/bin/FindRT.cmake                              |   91 +
 rdsn/bin/compiler_info.cmake                       |   48 +
 rdsn/bin/dsn.cmake                                 |  433 +++
 rdsn/bin/thrift_utils.cmake                        |   79 +
 rdsn/compile_thrift.py                             |  241 ++
 rdsn/include/dsn/c/api_common.h                    |   61 +
 rdsn/include/dsn/c/api_layer1.h                    |  274 ++
 rdsn/include/dsn/c/api_task.h                      |   87 +
 rdsn/include/dsn/c/api_utilities.h                 |  161 +
 rdsn/include/dsn/c/app_model.h                     |  102 +
 rdsn/include/dsn/cpp/json_helper.h                 |  658 ++++
 rdsn/include/dsn/cpp/message_utils.h               |   77 +
 rdsn/include/dsn/cpp/pipeline.h                    |  302 ++
 rdsn/include/dsn/cpp/rpc_holder.h                  |  381 ++
 rdsn/include/dsn/cpp/rpc_stream.h                  |  131 +
 rdsn/include/dsn/cpp/serialization.h               |  104 +
 .../cpp/serialization_helper/dsn.layer2_types.h    |  467 +++
 .../dsn/cpp/serialization_helper/dsn_types.h       |   29 +
 .../dsn/cpp/serialization_helper/thrift_helper.h   |  715 ++++
 rdsn/include/dsn/cpp/serverlet.h                   |  249 ++
 rdsn/include/dsn/cpp/service_app.h                 |  105 +
 rdsn/include/dsn/dist/block_service.h              |  411 ++
 rdsn/include/dsn/dist/common.h                     |   28 +
 rdsn/include/dsn/dist/distributed_lock_service.h   |  179 +
 rdsn/include/dsn/dist/failure_detector.h           |   38 +
 .../dsn/dist/failure_detector/failure_detector.h   |  234 ++
 rdsn/include/dsn/dist/failure_detector/fd.client.h |   96 +
 .../dsn/dist/failure_detector/fd.code.definition.h |   57 +
 rdsn/include/dsn/dist/failure_detector/fd.server.h |   68 +
 .../dsn/dist/failure_detector_multimaster.h        |   88 +
 rdsn/include/dsn/dist/fmt_logging.h                |   84 +
 rdsn/include/dsn/dist/meta_state_service.h         |  188 +
 rdsn/include/dsn/dist/nfs_node.h                   |   94 +
 rdsn/include/dsn/dist/remote_command.h             |   39 +
 rdsn/include/dsn/dist/replication.h                |   40 +
 .../dsn/dist/replication/duplication_common.h      |   86 +
 .../dsn/dist/replication/meta_service_app.h        |   64 +
 .../dsn/dist/replication/mutation_duplicator.h     |   87 +
 .../dsn/dist/replication/mutation_log_tool.h       |   56 +
 .../dsn/dist/replication/partition_resolver.h      |  139 +
 rdsn/include/dsn/dist/replication/replica_base.h   |   61 +
 rdsn/include/dsn/dist/replication/replica_envs.h   |   69 +
 .../dsn/dist/replication/replica_test_utils.h      |   52 +
 .../dsn/dist/replication/replication.codes.h       |  222 ++
 .../dsn/dist/replication/replication_app_base.h    |  300 ++
 .../dsn/dist/replication/replication_ddl_client.h  |  335 ++
 .../dsn/dist/replication/replication_enums.h       |  160 +
 .../dsn/dist/replication/replication_other_types.h |   97 +
 .../dsn/dist/replication/replication_service_app.h |   75 +
 .../dsn/dist/replication/replication_types.h       |   28 +
 .../dsn/dist/replication/storage_serverlet.h       |  137 +
 rdsn/include/dsn/http/http_server.h                |  130 +
 rdsn/include/dsn/perf_counter/perf_counter.h       |  127 +
 rdsn/include/dsn/perf_counter/perf_counter_utils.h |   50 +
 .../dsn/perf_counter/perf_counter_wrapper.h        |  111 +
 rdsn/include/dsn/perf_counter/perf_counters.h      |  175 +
 rdsn/include/dsn/service_api_c.h                   |   94 +
 rdsn/include/dsn/service_api_cpp.h                 |   44 +
 rdsn/include/dsn/tool-api/aio_task.h               |  121 +
 rdsn/include/dsn/tool-api/async_calls.h            |  227 ++
 rdsn/include/dsn/tool-api/auto_codes.h             |   41 +
 rdsn/include/dsn/tool-api/command_manager.h        |  102 +
 rdsn/include/dsn/tool-api/env_provider.h           |   62 +
 rdsn/include/dsn/tool-api/file_io.h                |   95 +
 rdsn/include/dsn/tool-api/future_types.h           |   36 +
 rdsn/include/dsn/tool-api/global_config.h          |  200 +
 rdsn/include/dsn/tool-api/gpid.h                   |  102 +
 rdsn/include/dsn/tool-api/group_address.h          |  215 ++
 rdsn/include/dsn/tool-api/logging_provider.h       |  103 +
 rdsn/include/dsn/tool-api/message_parser.h         |  136 +
 rdsn/include/dsn/tool-api/network.h                |  356 ++
 rdsn/include/dsn/tool-api/rpc_address.h            |  228 ++
 rdsn/include/dsn/tool-api/rpc_message.h            |  237 ++
 rdsn/include/dsn/tool-api/task.h                   |  603 +++
 rdsn/include/dsn/tool-api/task_code.h              |  192 +
 rdsn/include/dsn/tool-api/task_queue.h             |  108 +
 rdsn/include/dsn/tool-api/task_spec.h              |  327 ++
 rdsn/include/dsn/tool-api/task_tracker.h           |  237 ++
 rdsn/include/dsn/tool-api/task_worker.h            |  115 +
 rdsn/include/dsn/tool-api/thread_access_checker.h  |   47 +
 rdsn/include/dsn/tool-api/threadpool_code.h        |   61 +
 rdsn/include/dsn/tool-api/threadpool_spec.h        |  123 +
 rdsn/include/dsn/tool-api/timer_service.h          |   79 +
 rdsn/include/dsn/tool-api/uniq_timestamp_us.h      |   61 +
 rdsn/include/dsn/tool-api/zlocks.h                 |  198 +
 rdsn/include/dsn/tool/nativerun.h                  |   53 +
 rdsn/include/dsn/tool/node_scoper.h                |   60 +
 rdsn/include/dsn/tool/providers.common.h           |   44 +
 rdsn/include/dsn/tool/simulator.h                  |   79 +
 rdsn/include/dsn/tool_api.h                        |  218 ++
 rdsn/include/dsn/toollet/fault_injector.h          |  103 +
 rdsn/include/dsn/toollet/profiler.h                |   66 +
 rdsn/include/dsn/toollet/tracer.h                  |  113 +
 rdsn/include/dsn/utility/TokenBucket.h             |  507 +++
 .../dsn/utility/absl/base/internal/invoke.h        |  218 ++
 rdsn/include/dsn/utility/absl/utility/utility.h    |  207 +
 rdsn/include/dsn/utility/alloc.h                   |   84 +
 rdsn/include/dsn/utility/apply.h                   |   35 +
 rdsn/include/dsn/utility/autoref_ptr.h             |  181 +
 rdsn/include/dsn/utility/binary_reader.h           |  106 +
 rdsn/include/dsn/utility/binary_writer.h           |  126 +
 rdsn/include/dsn/utility/blob.h                    |  167 +
 rdsn/include/dsn/utility/casts.h                   |   47 +
 rdsn/include/dsn/utility/chrono_literals.h         |   78 +
 rdsn/include/dsn/utility/clock.h                   |   45 +
 rdsn/include/dsn/utility/config_api.h              |  132 +
 rdsn/include/dsn/utility/config_helper.h           |  142 +
 rdsn/include/dsn/utility/configuration.h           |  234 ++
 rdsn/include/dsn/utility/crc.h                     |   75 +
 rdsn/include/dsn/utility/customizable_id.h         |  212 ++
 rdsn/include/dsn/utility/defer.h                   |   64 +
 rdsn/include/dsn/utility/dlib.h                    |   52 +
 rdsn/include/dsn/utility/endians.h                 |  155 +
 rdsn/include/dsn/utility/enum_helper.h             |  127 +
 rdsn/include/dsn/utility/error_code.h              |  160 +
 rdsn/include/dsn/utility/errors.h                  |  227 ++
 rdsn/include/dsn/utility/exp_delay.h               |  130 +
 rdsn/include/dsn/utility/extensible_object.h       |  242 ++
 rdsn/include/dsn/utility/factory_store.h           |  169 +
 rdsn/include/dsn/utility/fail_point.h              |   84 +
 rdsn/include/dsn/utility/filesystem.h              |  155 +
 rdsn/include/dsn/utility/fixed_size_buffer_pool.h  |   56 +
 rdsn/include/dsn/utility/flags.h                   |  175 +
 rdsn/include/dsn/utility/function_traits.h         |  122 +
 .../include/dsn/utility/hpc_locks/autoresetevent.h |   68 +
 .../dsn/utility/hpc_locks/autoreseteventcondvar.h  |   56 +
 rdsn/include/dsn/utility/hpc_locks/benaphore.h     |  117 +
 rdsn/include/dsn/utility/hpc_locks/bitfield.h      |  163 +
 rdsn/include/dsn/utility/hpc_locks/readme.txt      |    2 +
 rdsn/include/dsn/utility/hpc_locks/rwlock.h        |  172 +
 rdsn/include/dsn/utility/hpc_locks/sema.h          |  237 ++
 rdsn/include/dsn/utility/join_point.h              |  129 +
 rdsn/include/dsn/utility/link.h                    |  206 +
 rdsn/include/dsn/utility/long_adder.h              |  237 ++
 rdsn/include/dsn/utility/math.h                    |   29 +
 rdsn/include/dsn/utility/metrics.h                 |  746 ++++
 rdsn/include/dsn/utility/nth_element.h             |  128 +
 rdsn/include/dsn/utility/optional.h                |  104 +
 rdsn/include/dsn/utility/output_utils.h            |  228 ++
 rdsn/include/dsn/utility/ports.h                   |  111 +
 rdsn/include/dsn/utility/preloadable.h             |   39 +
 rdsn/include/dsn/utility/priority_queue.h          |  148 +
 rdsn/include/dsn/utility/process_utils.h           |   77 +
 rdsn/include/dsn/utility/rand.h                    |   66 +
 rdsn/include/dsn/utility/safe_strerror_posix.h     |   35 +
 rdsn/include/dsn/utility/singleton.h               |   45 +
 rdsn/include/dsn/utility/singleton_store.h         |  133 +
 rdsn/include/dsn/utility/smart_pointers.h          |  130 +
 rdsn/include/dsn/utility/string_conv.h             |  164 +
 rdsn/include/dsn/utility/string_splitter.h         |  247 ++
 rdsn/include/dsn/utility/string_view.h             |  428 +++
 rdsn/include/dsn/utility/strings.h                 |   85 +
 rdsn/include/dsn/utility/synchronize.h             |  182 +
 rdsn/include/dsn/utility/sys_exit_hook.h           |   43 +
 rdsn/include/dsn/utility/timer.h                   |   62 +
 rdsn/include/dsn/utility/utils.h                   |  135 +
 rdsn/include/dsn/utility/work_queue.h              |  109 +
 rdsn/include/dsn/utils/latency_tracer.h            |  191 +
 rdsn/include/dsn/utils/time_utils.h                |  129 +
 .../dsn/utils/token_bucket_throttling_controller.h |   97 +
 rdsn/include/dsn/utils/token_buckets.h             |   41 +
 rdsn/resources/arch.png                            |  Bin 0 -> 49169 bytes
 rdsn/resources/config.png                          |  Bin 0 -> 70768 bytes
 rdsn/resources/rdsn-layer1.jpg                     |  Bin 0 -> 57857 bytes
 rdsn/resources/rdsn-layer2.jpg                     |  Bin 0 -> 26394 bytes
 rdsn/resources/rdsn-layer3.jpg                     |  Bin 0 -> 34388 bytes
 rdsn/resources/rdsn-state-all.jpg                  |  Bin 0 -> 229503 bytes
 rdsn/resources/rdsn.jpg                            |  Bin 0 -> 22704 bytes
 rdsn/resources/viz.png                             |  Bin 0 -> 45911 bytes
 rdsn/run.sh                                        |  417 +++
 rdsn/scripts/linux/build.sh                        |  237 ++
 rdsn/scripts/linux/clear_zk.sh                     |   45 +
 rdsn/scripts/linux/install.sh                      |   69 +
 rdsn/scripts/linux/learn_stat.py                   |  127 +
 rdsn/scripts/linux/run-clang-format.py             |  431 +++
 rdsn/scripts/linux/run-clang-format.sh             |   32 +
 rdsn/scripts/linux/start_zk.sh                     |  105 +
 rdsn/scripts/linux/stop_zk.sh                      |   43 +
 rdsn/src/CMakeLists.txt                            |   18 +
 rdsn/src/aio/CMakeLists.txt                        |   19 +
 rdsn/src/aio/aio_provider.cpp                      |   47 +
 rdsn/src/aio/aio_provider.h                        |   85 +
 rdsn/src/aio/aio_task.cpp                          |   73 +
 rdsn/src/aio/disk_engine.cpp                       |  277 ++
 rdsn/src/aio/disk_engine.h                         |   92 +
 rdsn/src/aio/file_io.cpp                           |  141 +
 rdsn/src/aio/native_linux_aio_provider.cpp         |  169 +
 rdsn/src/aio/native_linux_aio_provider.h           |   52 +
 rdsn/src/aio/test/CMakeLists.txt                   |   24 +
 rdsn/src/aio/test/aio.cpp                          |  284 ++
 rdsn/src/aio/test/clear.sh                         |   27 +
 rdsn/src/aio/test/config.ini                       |   45 +
 rdsn/src/aio/test/copy_source.txt                  |   10 +
 rdsn/src/aio/test/main.cpp                         |   30 +
 rdsn/src/aio/test/run.sh                           |   33 +
 .../src/block_service/CMakeLists.txt               |   38 +-
 rdsn/src/block_service/block_service_manager.cpp   |  189 +
 rdsn/src/block_service/block_service_manager.h     |   83 +
 rdsn/src/block_service/directio_writable_file.cpp  |  132 +
 rdsn/src/block_service/directio_writable_file.h    |   53 +
 rdsn/src/block_service/fds/CMakeLists.txt          |   18 +
 rdsn/src/block_service/fds/fds_service.cpp         |  716 ++++
 rdsn/src/block_service/fds/fds_service.h           |  143 +
 rdsn/src/block_service/hdfs/CMakeLists.txt         |   23 +
 rdsn/src/block_service/hdfs/hdfs_service.cpp       |  550 +++
 rdsn/src/block_service/hdfs/hdfs_service.h         |  112 +
 rdsn/src/block_service/local/CMakeLists.txt        |   17 +
 rdsn/src/block_service/local/local_service.cpp     |  565 +++
 rdsn/src/block_service/local/local_service.h       |  100 +
 .../src/block_service/test/CMakeLists.txt          |   42 +-
 .../test/block_service_manager_test.cpp            |  124 +
 rdsn/src/block_service/test/block_service_mock.h   |  216 ++
 .../src/block_service/test/clear.sh                |   16 +-
 rdsn/src/block_service/test/config-test.ini        |   59 +
 rdsn/src/block_service/test/fds_service_test.cpp   |  810 ++++
 rdsn/src/block_service/test/hdfs_service_test.cpp  |  390 ++
 rdsn/src/block_service/test/local_service_test.cpp |   86 +
 rdsn/src/block_service/test/main.cpp               |   52 +
 .../src/block_service/test/run.sh                  |   26 +-
 rdsn/src/client/CMakeLists.txt                     |   17 +
 rdsn/src/client/partition_resolver.cpp             |  127 +
 rdsn/src/client/partition_resolver_manager.cpp     |   77 +
 rdsn/src/client/partition_resolver_manager.h       |   53 +
 rdsn/src/client/partition_resolver_simple.cpp      |  457 +++
 rdsn/src/client/partition_resolver_simple.h        |  124 +
 rdsn/src/client/replication_ddl_client.cpp         | 1744 +++++++++
 rdsn/src/common/CMakeLists.txt                     |   74 +
 rdsn/src/common/backup.thrift                      |  206 +
 rdsn/src/common/backup_common.cpp                  |  126 +
 rdsn/src/common/backup_common.h                    |  188 +
 rdsn/src/common/bulk_load.thrift                   |  234 ++
 rdsn/src/common/bulk_load_common.cpp               |   28 +
 rdsn/src/common/bulk_load_common.h                 |   43 +
 rdsn/src/common/common.cpp                         |   29 +
 rdsn/src/common/consensus.thrift                   |  199 +
 rdsn/src/common/duplication.thrift                 |  162 +
 rdsn/src/common/duplication_common.cpp             |  173 +
 rdsn/src/common/fs_manager.cpp                     |  369 ++
 rdsn/src/common/fs_manager.h                       |  143 +
 rdsn/src/common/manual_compact.h                   |   30 +
 rdsn/src/common/meta_admin.thrift                  |  404 ++
 rdsn/src/common/metadata.thrift                    |  107 +
 rdsn/src/common/partition_split.thrift             |  180 +
 rdsn/src/common/partition_split_common.h           |   32 +
 rdsn/src/common/replica_admin.thrift               |  158 +
 rdsn/src/common/replication_common.cpp             |  639 ++++
 rdsn/src/common/replication_common.h               |  135 +
 rdsn/src/common/test/CMakeLists.txt                |   18 +
 rdsn/src/common/test/common_test.cpp               |   28 +
 rdsn/src/common/test/config-test.ini               |  102 +
 rdsn/src/common/test/duplication_common_test.cpp   |   48 +
 rdsn/src/common/test/fs_manager_test.cpp           |   60 +
 rdsn/src/common/test/main.cpp                      |   61 +
 rdsn/src/common/test/replication_common_test.cpp   |  124 +
 rdsn/src/common/test/run.sh                        |   36 +
 rdsn/src/dsn.layer2.thrift                         |  103 +
 rdsn/src/dsn.thrift                                |   52 +
 rdsn/src/failure_detector/CMakeLists.txt           |   27 +
 rdsn/src/failure_detector/failure_detector.cpp     |  610 +++
 .../failure_detector_multimaster.cpp               |  146 +
 rdsn/src/failure_detector/fd.thrift                |   52 +
 rdsn/src/failure_detector/test/CMakeLists.txt      |   34 +
 rdsn/src/failure_detector/test/clear.sh            |   27 +
 rdsn/src/failure_detector/test/config-test.ini     |  135 +
 .../test/config-whitelist-test-failed.ini          |  136 +
 .../test/config-whitelist-test.ini                 |  136 +
 .../src/failure_detector/test/failure_detector.cpp |  723 ++++
 rdsn/src/failure_detector/test/gtest.filter        |    3 +
 rdsn/src/failure_detector/test/main.cpp            |   85 +
 rdsn/src/failure_detector/test/run.sh              |   54 +
 .../src/http/CMakeLists.txt                        |   28 +-
 rdsn/src/http/builtin_http_calls.cpp               |  110 +
 rdsn/src/http/builtin_http_calls.h                 |   48 +
 rdsn/src/http/config_http_service.cpp              |   72 +
 rdsn/src/http/http_call_registry.h                 |   76 +
 rdsn/src/http/http_message_parser.cpp              |  252 ++
 rdsn/src/http/http_message_parser.h                |  105 +
 rdsn/src/http/http_server.cpp                      |  252 ++
 rdsn/src/http/http_server_impl.h                   |   38 +
 rdsn/src/http/perf_counter_http_service.cpp        |   57 +
 rdsn/src/http/pprof_http_service.cpp               |  504 +++
 rdsn/src/http/pprof_http_service.h                 |   81 +
 rdsn/src/http/service_version.cpp                  |   24 +
 rdsn/src/http/service_version.h                    |   32 +
 rdsn/src/http/test/CMakeLists.txt                  |   20 +
 rdsn/src/http/test/http_server_test.cpp            |  330 ++
 .../http/test/perf_counter_http_service_test.cpp   |   73 +
 rdsn/src/http/test/run.sh                          |   32 +
 rdsn/src/http/test/uri_decoder_test.cpp            |   91 +
 rdsn/src/http/uri_decoder.cpp                      |   82 +
 rdsn/src/http/uri_decoder.h                        |   31 +
 rdsn/src/meta/CMakeLists.txt                       |   41 +
 rdsn/src/meta/app_balance_policy.cpp               |  206 +
 rdsn/src/meta/app_balance_policy.h                 |   72 +
 rdsn/src/meta/app_env_validator.cpp                |  214 ++
 rdsn/src/meta/app_env_validator.h                  |   52 +
 rdsn/src/meta/backup_engine.cpp                    |  369 ++
 rdsn/src/meta/backup_engine.h                      |  110 +
 rdsn/src/meta/cluster_balance_policy.cpp           |  550 +++
 rdsn/src/meta/cluster_balance_policy.h             |  178 +
 rdsn/src/meta/distributed_lock_service_simple.cpp  |  311 ++
 rdsn/src/meta/distributed_lock_service_simple.h    |  104 +
 rdsn/src/meta/dump_file.h                          |  154 +
 rdsn/src/meta/duplication/duplication_info.cpp     |  248 ++
 rdsn/src/meta/duplication/duplication_info.h       |  257 ++
 .../meta/duplication/meta_duplication_service.cpp  |  637 ++++
 .../meta/duplication/meta_duplication_service.h    |  137 +
 rdsn/src/meta/greedy_load_balancer.cpp             |  257 ++
 rdsn/src/meta/greedy_load_balancer.h               |  101 +
 rdsn/src/meta/load_balance_policy.cpp              |  789 ++++
 rdsn/src/meta/load_balance_policy.h                |  288 ++
 rdsn/src/meta/meta_backup_service.cpp              | 1713 +++++++++
 rdsn/src/meta/meta_backup_service.h                |  397 ++
 rdsn/src/meta/meta_bulk_load_ingestion_context.cpp |  195 +
 rdsn/src/meta/meta_bulk_load_ingestion_context.h   |   92 +
 rdsn/src/meta/meta_bulk_load_service.cpp           | 2075 +++++++++++
 rdsn/src/meta/meta_bulk_load_service.h             |  505 +++
 rdsn/src/meta/meta_data.cpp                        |  729 ++++
 rdsn/src/meta/meta_data.h                          |  586 +++
 rdsn/src/meta/meta_http_service.cpp                |  868 +++++
 rdsn/src/meta/meta_http_service.h                  |  158 +
 rdsn/src/meta/meta_options.cpp                     |  179 +
 rdsn/src/meta/meta_options.h                       |   97 +
 rdsn/src/meta/meta_rpc_types.h                     |   67 +
 rdsn/src/meta/meta_server_failure_detector.cpp     |  317 ++
 rdsn/src/meta/meta_server_failure_detector.h       |  148 +
 rdsn/src/meta/meta_service.cpp                     | 1310 +++++++
 rdsn/src/meta/meta_service.h                       |  343 ++
 rdsn/src/meta/meta_service_app.cpp                 |  110 +
 rdsn/src/meta/meta_split_service.cpp               |  580 +++
 rdsn/src/meta/meta_split_service.h                 |   84 +
 rdsn/src/meta/meta_state_service_simple.cpp        |  510 +++
 rdsn/src/meta/meta_state_service_simple.h          |  270 ++
 rdsn/src/meta/meta_state_service_utils.cpp         |  108 +
 rdsn/src/meta/meta_state_service_utils.h           |   79 +
 rdsn/src/meta/meta_state_service_utils_impl.h      |  311 ++
 rdsn/src/meta/meta_state_service_zookeeper.cpp     |  430 +++
 rdsn/src/meta/meta_state_service_zookeeper.h       |  121 +
 rdsn/src/meta/partition_guardian.cpp               |  781 ++++
 rdsn/src/meta/partition_guardian.h                 |  102 +
 rdsn/src/meta/server_load_balancer.cpp             |  202 +
 rdsn/src/meta/server_load_balancer.h               |  204 +
 rdsn/src/meta/server_state.cpp                     | 3942 ++++++++++++++++++++
 rdsn/src/meta/server_state.h                       |  412 ++
 rdsn/src/meta/server_state_restore.cpp             |  245 ++
 rdsn/src/meta/test/CMakeLists.txt                  |   49 +
 rdsn/src/meta/test/backup_test.cpp                 |  841 +++++
 .../meta/test/balancer_simulator/CMakeLists.txt    |   24 +
 .../test/balancer_simulator/balancer_simulator.cpp |  200 +
 rdsn/src/meta/test/balancer_validator.cpp          |  357 ++
 rdsn/src/meta/test/clear.sh                        |   26 +
 rdsn/src/meta/test/cluster_balance_policy_test.cpp |  537 +++
 rdsn/src/meta/test/config-test.ini                 |  146 +
 rdsn/src/meta/test/copy_replica_operation_test.cpp |  273 ++
 rdsn/src/meta/test/dummy_balancer.h                |   41 +
 rdsn/src/meta/test/dump_file.cpp                   |  139 +
 rdsn/src/meta/test/duplication_info_test.cpp       |  308 ++
 rdsn/src/meta/test/ford_fulkerson_test.cpp         |  282 ++
 rdsn/src/meta/test/json_compacity.cpp              |  165 +
 rdsn/src/meta/test/main.cpp                        |  108 +
 rdsn/src/meta/test/meta_app_envs_test.cpp          |  190 +
 rdsn/src/meta/test/meta_app_operation_test.cpp     |  802 ++++
 rdsn/src/meta/test/meta_backup_test.cpp            |  354 ++
 .../meta/test/meta_bulk_load_ingestion_test.cpp    |  390 ++
 rdsn/src/meta/test/meta_bulk_load_service_test.cpp | 1642 ++++++++
 rdsn/src/meta/test/meta_data.cpp                   |  455 +++
 .../meta/test/meta_duplication_service_test.cpp    |  868 +++++
 rdsn/src/meta/test/meta_http_service_test.cpp      |  400 ++
 rdsn/src/meta/test/meta_mauanl_compaction_test.cpp |  195 +
 .../src/meta/test/meta_partition_guardian_test.cpp |  922 +++++
 rdsn/src/meta/test/meta_service_test.cpp           |  124 +
 rdsn/src/meta/test/meta_service_test_app.h         |  191 +
 rdsn/src/meta/test/meta_split_service_test.cpp     |  819 ++++
 rdsn/src/meta/test/meta_state/CMakeLists.txt       |   32 +
 rdsn/src/meta/test/meta_state/clear.cmd            |   29 +
 rdsn/src/meta/test/meta_state/clear.sh             |   27 +
 rdsn/src/meta/test/meta_state/config-test.ini      |  113 +
 rdsn/src/meta/test/meta_state/gtest.filter         |    1 +
 rdsn/src/meta/test/meta_state/main.cpp             |   99 +
 .../meta/test/meta_state/meta_state_service.cpp    |  303 ++
 rdsn/src/meta/test/meta_state/run.sh               |   54 +
 .../meta/test/meta_state_service_utils_test.cpp    |  182 +
 rdsn/src/meta/test/meta_test_base.cpp              |  233 ++
 rdsn/src/meta/test/meta_test_base.h                |   85 +
 rdsn/src/meta/test/misc/misc.cpp                   |  421 +++
 rdsn/src/meta/test/misc/misc.h                     |  121 +
 rdsn/src/meta/test/run.sh                          |   33 +
 rdsn/src/meta/test/server_state_restore_test.cpp   |  164 +
 rdsn/src/meta/test/server_state_test.cpp           |  206 +
 rdsn/src/meta/test/state_sync_test.cpp             |  393 ++
 rdsn/src/meta/test/suite1                          |   19 +
 rdsn/src/meta/test/suite2                          |   20 +
 rdsn/src/meta/test/update_configuration_test.cpp   |  511 +++
 rdsn/src/nfs/CMakeLists.txt                        |   23 +
 rdsn/src/nfs/nfs.thrift                            |   68 +
 rdsn/src/nfs/nfs_client_impl.cpp                   |  605 +++
 rdsn/src/nfs/nfs_client_impl.h                     |  307 ++
 rdsn/src/nfs/nfs_code_definition.h                 |   52 +
 rdsn/src/nfs/nfs_node.cpp                          |  105 +
 rdsn/src/nfs/nfs_node_impl.cpp                     |   76 +
 rdsn/src/nfs/nfs_node_simple.h                     |   64 +
 rdsn/src/nfs/nfs_server_impl.cpp                   |  288 ++
 rdsn/src/nfs/nfs_server_impl.h                     |  142 +
 rdsn/src/nfs/test/CMakeLists.txt                   |   25 +
 rdsn/src/nfs/test/clear.sh                         |   27 +
 rdsn/src/nfs/test/config.ini                       |   42 +
 rdsn/src/nfs/test/main.cpp                         |  186 +
 rdsn/src/nfs/test/nfs_test_file1                   |  121 +
 rdsn/src/nfs/test/nfs_test_file2                   |  101 +
 rdsn/src/nfs/test/run.sh                           |   33 +
 rdsn/src/perf_counter/CMakeLists.txt               |   17 +
 rdsn/src/perf_counter/builtin_counters.cpp         |   51 +
 rdsn/src/perf_counter/builtin_counters.h           |   32 +
 rdsn/src/perf_counter/perf_counter.cpp             |   63 +
 rdsn/src/perf_counter/perf_counter_atomic.h        |  465 +++
 rdsn/src/perf_counter/perf_counters.cpp            |  374 ++
 rdsn/src/perf_counter/test/CMakeLists.txt          |   22 +
 rdsn/src/perf_counter/test/clear.sh                |   27 +
 rdsn/src/perf_counter/test/main.cpp                |   25 +
 rdsn/src/perf_counter/test/perf_counter_test.cpp   |  171 +
 rdsn/src/perf_counter/test/perf_counters_test.cpp  |  349 ++
 rdsn/src/perf_counter/test/run.sh                  |   33 +
 rdsn/src/remote_cmd/CMakeLists.txt                 |   13 +
 rdsn/src/remote_cmd/command.thrift                 |   33 +
 rdsn/src/remote_cmd/remote_command.cpp             |   62 +
 rdsn/src/replica/CMakeLists.txt                    |   67 +
 rdsn/src/replica/backup/cold_backup_context.cpp    | 1075 ++++++
 rdsn/src/replica/backup/cold_backup_context.h      |  373 ++
 rdsn/src/replica/backup/replica_backup_manager.cpp |  198 +
 rdsn/src/replica/backup/replica_backup_manager.h   |   50 +
 rdsn/src/replica/backup/replica_backup_server.cpp  |   86 +
 rdsn/src/replica/backup/replica_backup_server.h    |   46 +
 rdsn/src/replica/backup/test/CMakeLists.txt        |   25 +
 rdsn/src/replica/backup/test/config-test.ini       |   58 +
 rdsn/src/replica/backup/test/main.cpp              |   52 +
 .../backup/test/replica_backup_manager_test.cpp    |   47 +
 rdsn/src/replica/backup/test/run.sh                |   35 +
 rdsn/src/replica/bulk_load/replica_bulk_loader.cpp | 1051 ++++++
 rdsn/src/replica/bulk_load/replica_bulk_loader.h   |  182 +
 rdsn/src/replica/bulk_load/test/CMakeLists.txt     |   22 +
 rdsn/src/replica/bulk_load/test/config-test.ini    |   99 +
 rdsn/src/replica/bulk_load/test/main.cpp           |   52 +
 .../bulk_load/test/replica_bulk_loader_test.cpp    |  915 +++++
 rdsn/src/replica/bulk_load/test/run.sh             |   35 +
 rdsn/src/replica/disk_cleaner.cpp                  |  129 +
 rdsn/src/replica/disk_cleaner.h                    |   73 +
 .../replica/duplication/duplication_pipeline.cpp   |  118 +
 .../src/replica/duplication/duplication_pipeline.h |   91 +
 .../replica/duplication/duplication_sync_timer.cpp |  196 +
 .../replica/duplication/duplication_sync_timer.h   |   84 +
 .../replica/duplication/load_from_private_log.cpp  |  283 ++
 .../replica/duplication/load_from_private_log.h    |  106 +
 rdsn/src/replica/duplication/mutation_batch.cpp    |  179 +
 rdsn/src/replica/duplication/mutation_batch.h      |   85 +
 .../src/replica/duplication/replica_duplicator.cpp |  242 ++
 rdsn/src/replica/duplication/replica_duplicator.h  |  169 +
 .../duplication/replica_duplicator_manager.cpp     |  176 +
 .../duplication/replica_duplicator_manager.h       |  119 +
 rdsn/src/replica/duplication/replica_follower.cpp  |  258 ++
 rdsn/src/replica/duplication/replica_follower.h    |   82 +
 rdsn/src/replica/duplication/test/CMakeLists.txt   |   28 +
 rdsn/src/replica/duplication/test/config-test.ini  |   55 +
 .../test/duplication_sync_timer_test.cpp           |  381 ++
 .../duplication/test/duplication_test_base.h       |   94 +
 .../test/load_from_private_log_test.cpp            |  423 +++
 .../test/log.1.0.all_loaded_are_write_empties      |  Bin 0 -> 405 bytes
 .../test/log.1.0.handle_real_private_log           |  Bin 0 -> 917 bytes
 .../test/log.1.0.handle_real_private_log2          |  Bin 0 -> 426 bytes
 rdsn/src/replica/duplication/test/main.cpp         |   52 +
 .../duplication/test/mutation_batch_test.cpp       |   96 +
 .../test/replica_duplicator_manager_test.cpp       |  206 +
 .../duplication/test/replica_duplicator_test.cpp   |  165 +
 .../duplication/test/replica_follower_test.cpp     |  250 ++
 .../duplication/test/replica_http_service_test.cpp |   69 +
 rdsn/src/replica/duplication/test/run.sh           |   35 +
 .../duplication/test/ship_mutation_test.cpp        |  121 +
 rdsn/src/replica/log_block.cpp                     |   55 +
 rdsn/src/replica/log_block.h                       |  130 +
 rdsn/src/replica/log_file.cpp                      |  415 +++
 rdsn/src/replica/log_file.h                        |  216 ++
 rdsn/src/replica/log_file_stream.h                 |  196 +
 rdsn/src/replica/mutation.cpp                      |  462 +++
 rdsn/src/replica/mutation.h                        |  242 ++
 rdsn/src/replica/mutation_cache.cpp                |  149 +
 rdsn/src/replica/mutation_cache.h                  |   73 +
 rdsn/src/replica/mutation_log.cpp                  | 1738 +++++++++
 rdsn/src/replica/mutation_log.h                    |  502 +++
 rdsn/src/replica/mutation_log_replay.cpp           |  209 ++
 rdsn/src/replica/mutation_log_utils.cpp            |   98 +
 rdsn/src/replica/mutation_log_utils.h              |   82 +
 rdsn/src/replica/prepare_list.cpp                  |  205 +
 rdsn/src/replica/prepare_list.h                    |   85 +
 rdsn/src/replica/replica.cpp                       |  585 +++
 rdsn/src/replica/replica.h                         |  644 ++++
 rdsn/src/replica/replica_2pc.cpp                   |  833 +++++
 rdsn/src/replica/replica_backup.cpp                |  720 ++++
 rdsn/src/replica/replica_check.cpp                 |  253 ++
 rdsn/src/replica/replica_chkpt.cpp                 |  425 +++
 rdsn/src/replica/replica_config.cpp                | 1206 ++++++
 rdsn/src/replica/replica_context.cpp               |  286 ++
 rdsn/src/replica/replica_context.h                 |  289 ++
 rdsn/src/replica/replica_disk_migrator.cpp         |  361 ++
 rdsn/src/replica/replica_disk_migrator.h           |   69 +
 rdsn/src/replica/replica_failover.cpp              |  120 +
 rdsn/src/replica/replica_http_service.cpp          |  156 +
 rdsn/src/replica/replica_http_service.h            |   78 +
 rdsn/src/replica/replica_init.cpp                  |  478 +++
 rdsn/src/replica/replica_learn.cpp                 | 1678 +++++++++
 rdsn/src/replica/replica_restore.cpp               |  494 +++
 rdsn/src/replica/replica_stub.cpp                  | 3003 +++++++++++++++
 rdsn/src/replica/replica_stub.h                    |  518 +++
 rdsn/src/replica/replica_test_utils.cpp            |   66 +
 rdsn/src/replica/replica_throttle.cpp              |  140 +
 rdsn/src/replica/replication_app_base.cpp          |  488 +++
 rdsn/src/replica/replication_service_app.cpp       |   91 +
 rdsn/src/replica/split/replica_split_manager.cpp   | 1518 ++++++++
 rdsn/src/replica/split/replica_split_manager.h     |  227 ++
 rdsn/src/replica/split/test/CMakeLists.txt         |   22 +
 rdsn/src/replica/split/test/config-test.ini        |   91 +
 rdsn/src/replica/split/test/main.cpp               |   52 +
 rdsn/src/replica/split/test/replica_split_test.cpp | 1010 +++++
 rdsn/src/replica/split/test/run.sh                 |   35 +
 rdsn/src/replica/storage/CMakeLists.txt            |    1 +
 rdsn/src/replica/storage/simple_kv/CMakeLists.txt  |   32 +
 rdsn/src/replica/storage/simple_kv/clear.sh        |   28 +
 rdsn/src/replica/storage/simple_kv/config.ini      |  184 +
 rdsn/src/replica/storage/simple_kv/run.sh          |   58 +
 .../storage/simple_kv/simple_kv.app.example.h      |  130 +
 .../replica/storage/simple_kv/simple_kv.client.h   |  158 +
 .../storage/simple_kv/simple_kv.code.definition.h  |   51 +
 .../replica/storage/simple_kv/simple_kv.main.cpp   |   63 +
 .../replica/storage/simple_kv/simple_kv.server.h   |  105 +
 .../storage/simple_kv/simple_kv.server.impl.cpp    |  290 ++
 .../storage/simple_kv/simple_kv.server.impl.h      |  117 +
 .../src/replica/storage/simple_kv/simple_kv.thrift |   33 +
 .../replica/storage/simple_kv/test/CMakeLists.txt  |   31 +
 rdsn/src/replica/storage/simple_kv/test/README.md  |   39 +
 rdsn/src/replica/storage/simple_kv/test/addcase.sh |   43 +
 .../replica/storage/simple_kv/test/case-000.act    |   65 +
 .../replica/storage/simple_kv/test/case-000.ini    |  199 +
 .../replica/storage/simple_kv/test/case-001.act    |  143 +
 .../replica/storage/simple_kv/test/case-001.ini    |  203 +
 .../replica/storage/simple_kv/test/case-002.act    |  143 +
 .../replica/storage/simple_kv/test/case-002.ini    |  203 +
 .../replica/storage/simple_kv/test/case-003.act    |  143 +
 .../replica/storage/simple_kv/test/case-003.ini    |  203 +
 .../replica/storage/simple_kv/test/case-004.act    |  143 +
 .../replica/storage/simple_kv/test/case-004.ini    |  203 +
 .../replica/storage/simple_kv/test/case-005.act    |   59 +
 .../replica/storage/simple_kv/test/case-005.ini    |  199 +
 .../replica/storage/simple_kv/test/case-006.act    |   92 +
 .../replica/storage/simple_kv/test/case-006.ini    |  204 +
 .../replica/storage/simple_kv/test/case-100.act    |   66 +
 .../replica/storage/simple_kv/test/case-100.ini    |  200 +
 .../replica/storage/simple_kv/test/case-101.act    |   66 +
 .../replica/storage/simple_kv/test/case-101.ini    |  200 +
 .../replica/storage/simple_kv/test/case-102.act    |   53 +
 .../replica/storage/simple_kv/test/case-102.ini    |  200 +
 .../replica/storage/simple_kv/test/case-103.act    |   56 +
 .../replica/storage/simple_kv/test/case-103.ini    |  202 +
 .../replica/storage/simple_kv/test/case-104.act    |   52 +
 .../replica/storage/simple_kv/test/case-104.ini    |  200 +
 .../replica/storage/simple_kv/test/case-105.act    |   57 +
 .../replica/storage/simple_kv/test/case-105.ini    |  200 +
 .../replica/storage/simple_kv/test/case-106.act    |   60 +
 .../replica/storage/simple_kv/test/case-106.ini    |  200 +
 .../replica/storage/simple_kv/test/case-107.act    |   62 +
 .../replica/storage/simple_kv/test/case-107.ini    |  200 +
 .../replica/storage/simple_kv/test/case-108.act    |   59 +
 .../replica/storage/simple_kv/test/case-108.ini    |  200 +
 .../replica/storage/simple_kv/test/case-109.act    |  112 +
 .../replica/storage/simple_kv/test/case-109.ini    |  200 +
 .../replica/storage/simple_kv/test/case-200.act    |   65 +
 .../replica/storage/simple_kv/test/case-200.ini    |  200 +
 .../replica/storage/simple_kv/test/case-201.act    |   67 +
 .../replica/storage/simple_kv/test/case-201.ini    |  200 +
 .../replica/storage/simple_kv/test/case-202-0.act  |   86 +
 .../replica/storage/simple_kv/test/case-202-0.ini  |  205 +
 .../replica/storage/simple_kv/test/case-202-1.act  |   51 +
 .../replica/storage/simple_kv/test/case-202-1.ini  |  205 +
 .../replica/storage/simple_kv/test/case-203-0.act  |   86 +
 .../replica/storage/simple_kv/test/case-203-0.ini  |  205 +
 .../replica/storage/simple_kv/test/case-204.act    |  131 +
 .../replica/storage/simple_kv/test/case-204.ini    |  198 +
 .../replica/storage/simple_kv/test/case-205.act    |  131 +
 .../replica/storage/simple_kv/test/case-205.ini    |  198 +
 .../replica/storage/simple_kv/test/case-206.act    |  156 +
 .../replica/storage/simple_kv/test/case-206.ini    |  198 +
 .../replica/storage/simple_kv/test/case-207.act    |  233 ++
 .../replica/storage/simple_kv/test/case-207.ini    |  198 +
 .../replica/storage/simple_kv/test/case-208.act    |  189 +
 .../replica/storage/simple_kv/test/case-208.ini    |  198 +
 .../replica/storage/simple_kv/test/case-209.act    |  188 +
 .../replica/storage/simple_kv/test/case-209.ini    |  198 +
 .../replica/storage/simple_kv/test/case-210.act    |  158 +
 .../replica/storage/simple_kv/test/case-210.ini    |  198 +
 .../replica/storage/simple_kv/test/case-211.act    |  190 +
 .../replica/storage/simple_kv/test/case-211.ini    |  198 +
 .../replica/storage/simple_kv/test/case-212.act    |  186 +
 .../replica/storage/simple_kv/test/case-212.ini    |  197 +
 .../replica/storage/simple_kv/test/case-213.act    |  186 +
 .../replica/storage/simple_kv/test/case-213.ini    |  198 +
 .../replica/storage/simple_kv/test/case-214.act    |  145 +
 .../replica/storage/simple_kv/test/case-214.ini    |  198 +
 .../replica/storage/simple_kv/test/case-215.act    |  152 +
 .../replica/storage/simple_kv/test/case-215.ini    |  198 +
 .../replica/storage/simple_kv/test/case-216.act    |  151 +
 .../replica/storage/simple_kv/test/case-216.ini    |  198 +
 .../replica/storage/simple_kv/test/case-300-0.act  |   65 +
 .../replica/storage/simple_kv/test/case-300-0.ini  |  200 +
 .../replica/storage/simple_kv/test/case-300-1.act  |   35 +
 .../replica/storage/simple_kv/test/case-300-1.ini  |  200 +
 .../replica/storage/simple_kv/test/case-300-2.act  |   45 +
 .../replica/storage/simple_kv/test/case-300-2.ini  |  200 +
 .../replica/storage/simple_kv/test/case-301.act    |   37 +
 .../replica/storage/simple_kv/test/case-301.ini    |  200 +
 .../replica/storage/simple_kv/test/case-302.act    |   58 +
 .../replica/storage/simple_kv/test/case-302.ini    |  202 +
 .../replica/storage/simple_kv/test/case-303.act    |   67 +
 .../replica/storage/simple_kv/test/case-303.ini    |  200 +
 .../replica/storage/simple_kv/test/case-304.act    |   59 +
 .../replica/storage/simple_kv/test/case-304.ini    |  200 +
 .../replica/storage/simple_kv/test/case-305.act    |   55 +
 .../replica/storage/simple_kv/test/case-305.ini    |  200 +
 .../replica/storage/simple_kv/test/case-306.act    |   61 +
 .../replica/storage/simple_kv/test/case-306.ini    |  200 +
 .../replica/storage/simple_kv/test/case-307.act    |   74 +
 .../replica/storage/simple_kv/test/case-307.ini    |  200 +
 .../replica/storage/simple_kv/test/case-400.act    |   47 +
 .../replica/storage/simple_kv/test/case-400.ini    |  200 +
 .../replica/storage/simple_kv/test/case-401.act    |   36 +
 .../replica/storage/simple_kv/test/case-401.ini    |  200 +
 .../replica/storage/simple_kv/test/case-402.act    |  214 ++
 .../replica/storage/simple_kv/test/case-402.ini    |  200 +
 .../replica/storage/simple_kv/test/case-600.act    |  114 +
 .../replica/storage/simple_kv/test/case-600.ini    |  204 +
 .../replica/storage/simple_kv/test/case-601.act    |   53 +
 .../replica/storage/simple_kv/test/case-601.ini    |  204 +
 .../replica/storage/simple_kv/test/case-602.act    |   44 +
 .../replica/storage/simple_kv/test/case-602.ini    |  204 +
 .../replica/storage/simple_kv/test/case-603.act    |   84 +
 .../replica/storage/simple_kv/test/case-603.ini    |  206 +
 rdsn/src/replica/storage/simple_kv/test/case.cpp   | 1403 +++++++
 rdsn/src/replica/storage/simple_kv/test/case.h     |  489 +++
 .../src/replica/storage/simple_kv/test/checker.cpp |  391 ++
 rdsn/src/replica/storage/simple_kv/test/checker.h  |  120 +
 rdsn/src/replica/storage/simple_kv/test/clear.sh   |   28 +
 rdsn/src/replica/storage/simple_kv/test/client.cpp |  184 +
 rdsn/src/replica/storage/simple_kv/test/client.h   |   71 +
 rdsn/src/replica/storage/simple_kv/test/common.cpp |  342 ++
 rdsn/src/replica/storage/simple_kv/test/common.h   |  189 +
 rdsn/src/replica/storage/simple_kv/test/config.ini |  212 ++
 .../replica/storage/simple_kv/test/injector.cpp    |  207 +
 rdsn/src/replica/storage/simple_kv/test/injector.h |   52 +
 .../replica/storage/simple_kv/test/rep_tests.pdf   |  Bin 0 -> 283434 bytes
 rdsn/src/replica/storage/simple_kv/test/run.sh     |  100 +
 .../storage/simple_kv/test/simple_kv.main.cpp      |   90 +
 .../simple_kv/test/simple_kv.server.impl.cpp       |  316 ++
 .../storage/simple_kv/test/simple_kv.server.impl.h |  118 +
 rdsn/src/replica/test/CMakeLists.txt               |   31 +
 rdsn/src/replica/test/backup_block_service_mock.h  |   73 +
 .gitmodules => rdsn/src/replica/test/clear.sh      |    6 +-
 rdsn/src/replica/test/cold_backup_context_test.cpp |  434 +++
 rdsn/src/replica/test/config-test.ini              |   95 +
 rdsn/src/replica/test/log_block_test.cpp           |  170 +
 rdsn/src/replica/test/log_file_test.cpp            |   87 +
 rdsn/src/replica/test/main.cpp                     |   71 +
 rdsn/src/replica/test/mock_utils.h                 |  454 +++
 rdsn/src/replica/test/mutation_log_learn_test.cpp  |  185 +
 rdsn/src/replica/test/mutation_log_test.cpp        |  587 +++
 rdsn/src/replica/test/open_replica_test.cpp        |   97 +
 .../src/replica/test/replica_disk_migrate_test.cpp |  369 ++
 rdsn/src/replica/test/replica_disk_test.cpp        |  291 ++
 rdsn/src/replica/test/replica_disk_test_base.h     |  257 ++
 rdsn/src/replica/test/replica_learn_test.cpp       |  172 +
 rdsn/src/replica/test/replica_test.cpp             |  480 +++
 rdsn/src/replica/test/replica_test_base.h          |   87 +
 .../replica/test/replication_service_test_app.h    |   52 +
 rdsn/src/replica/test/run.sh                       |   33 +
 .../replica/test/throttling_controller_test.cpp    |  131 +
 rdsn/src/runtime/CMakeLists.txt                    |   32 +
 rdsn/src/runtime/build_config.h                    |  171 +
 rdsn/src/runtime/core_main.cpp                     |   46 +
 rdsn/src/runtime/dsn.layer2_types.cpp              | 1126 ++++++
 rdsn/src/runtime/env.sim.cpp                       |   70 +
 rdsn/src/runtime/env.sim.h                         |   54 +
 rdsn/src/runtime/fault_injector.cpp                |  347 ++
 rdsn/src/runtime/global_config.cpp                 |  387 ++
 rdsn/src/runtime/message_utils.cpp                 |   49 +
 rdsn/src/runtime/nativerun.cpp                     |  105 +
 rdsn/src/runtime/profiler.cpp                      |  557 +++
 rdsn/src/runtime/profiler_header.h                 |   92 +
 rdsn/src/runtime/providers.common.cpp              |   79 +
 rdsn/src/runtime/rpc/CMakeLists.txt                |   21 +
 rdsn/src/runtime/rpc/asio_net_provider.cpp         |  415 +++
 rdsn/src/runtime/rpc/asio_net_provider.h           |  123 +
 rdsn/src/runtime/rpc/asio_rpc_session.cpp          |  204 +
 rdsn/src/runtime/rpc/asio_rpc_session.h            |   74 +
 rdsn/src/runtime/rpc/dsn_message_parser.cpp        |  213 ++
 rdsn/src/runtime/rpc/dsn_message_parser.h          |   66 +
 rdsn/src/runtime/rpc/message_parser.cpp            |  200 +
 rdsn/src/runtime/rpc/message_parser_manager.h      |   70 +
 rdsn/src/runtime/rpc/network.cpp                   |  827 ++++
 rdsn/src/runtime/rpc/network.sim.cpp               |  199 +
 rdsn/src/runtime/rpc/network.sim.h                 |  117 +
 rdsn/src/runtime/rpc/raw_message_parser.cpp        |  128 +
 rdsn/src/runtime/rpc/raw_message_parser.h          |   60 +
 rdsn/src/runtime/rpc/request_meta.thrift           |   37 +
 rdsn/src/runtime/rpc/rpc_engine.cpp                |  851 +++++
 rdsn/src/runtime/rpc/rpc_engine.h                  |  214 ++
 rdsn/src/runtime/rpc/rpc_message.cpp               |  512 +++
 rdsn/src/runtime/rpc/rpc_task.cpp                  |  135 +
 rdsn/src/runtime/rpc/thrift_message_parser.cpp     |  417 +++
 rdsn/src/runtime/rpc/thrift_message_parser.h       |  135 +
 rdsn/src/runtime/scheduler.cpp                     |  300 ++
 rdsn/src/runtime/scheduler.h                       |  153 +
 rdsn/src/runtime/security/CMakeLists.txt           |   25 +
 rdsn/src/runtime/security/access_controller.cpp    |   55 +
 rdsn/src/runtime/security/access_controller.h      |   57 +
 rdsn/src/runtime/security/client_negotiation.cpp   |  202 +
 rdsn/src/runtime/security/client_negotiation.h     |   48 +
 rdsn/src/runtime/security/init.cpp                 |   89 +
 rdsn/src/runtime/security/init.h                   |   30 +
 rdsn/src/runtime/security/kinit_context.cpp        |  325 ++
 rdsn/src/runtime/security/kinit_context.h          |   27 +
 .../runtime/security/meta_access_controller.cpp    |   69 +
 rdsn/src/runtime/security/meta_access_controller.h |   40 +
 rdsn/src/runtime/security/negotiation.cpp          |   72 +
 rdsn/src/runtime/security/negotiation.h            |   62 +
 rdsn/src/runtime/security/negotiation_manager.cpp  |  154 +
 rdsn/src/runtime/security/negotiation_manager.h    |   57 +
 rdsn/src/runtime/security/negotiation_utils.h      |   58 +
 .../runtime/security/replica_access_controller.cpp |   69 +
 .../runtime/security/replica_access_controller.h   |   42 +
 rdsn/src/runtime/security/sasl_client_wrapper.cpp  |   73 +
 rdsn/src/runtime/security/sasl_client_wrapper.h    |   38 +
 rdsn/src/runtime/security/sasl_init.cpp            |  152 +
 rdsn/src/runtime/security/sasl_init.h              |   27 +
 rdsn/src/runtime/security/sasl_server_wrapper.cpp  |   72 +
 rdsn/src/runtime/security/sasl_server_wrapper.h    |   35 +
 rdsn/src/runtime/security/sasl_wrapper.cpp         |   97 +
 rdsn/src/runtime/security/sasl_wrapper.h           |   52 +
 rdsn/src/runtime/security/security.thrift          |   69 +
 rdsn/src/runtime/security/server_negotiation.cpp   |  170 +
 rdsn/src/runtime/security/server_negotiation.h     |   52 +
 rdsn/src/runtime/service_api_c.cpp                 |  588 +++
 rdsn/src/runtime/service_engine.cpp                |  295 ++
 rdsn/src/runtime/service_engine.h                  |  145 +
 rdsn/src/runtime/sim_clock.h                       |   37 +
 rdsn/src/runtime/simulator.cpp                     |  134 +
 rdsn/src/runtime/task/CMakeLists.txt               |   13 +
 rdsn/src/runtime/task/hpc_task_queue.cpp           |   84 +
 rdsn/src/runtime/task/hpc_task_queue.h             |   61 +
 rdsn/src/runtime/task/simple_task_queue.cpp        |  110 +
 rdsn/src/runtime/task/simple_task_queue.h          |   71 +
 rdsn/src/runtime/task/task.cpp                     |  487 +++
 rdsn/src/runtime/task/task_code.cpp                |   89 +
 rdsn/src/runtime/task/task_engine.cpp              |  343 ++
 rdsn/src/runtime/task/task_engine.h                |  142 +
 rdsn/src/runtime/task/task_engine.sim.cpp          |  251 ++
 rdsn/src/runtime/task/task_engine.sim.h            |  147 +
 rdsn/src/runtime/task/task_queue.cpp               |  106 +
 rdsn/src/runtime/task/task_spec.cpp                |  309 ++
 rdsn/src/runtime/task/task_tracker.cpp             |  174 +
 rdsn/src/runtime/task/task_worker.cpp              |  244 ++
 rdsn/src/runtime/test/CMakeLists.txt               |   25 +
 rdsn/src/runtime/test/async_call.cpp               |  251 ++
 rdsn/src/runtime/test/clear.sh                     |   28 +
 rdsn/src/runtime/test/client_negotiation_test.cpp  |  195 +
 rdsn/src/runtime/test/command.txt                  |   10 +
 .../runtime/test/config-test-corrupt-message.ini   |  141 +
 rdsn/src/runtime/test/config-test-sim.ini          |  133 +
 rdsn/src/runtime/test/config-test.ini              |  156 +
 rdsn/src/runtime/test/corrupt_message.cpp          |   59 +
 rdsn/src/runtime/test/gtest.filter                 |    3 +
 rdsn/src/runtime/test/lpc.cpp                      |   55 +
 rdsn/src/runtime/test/main.cpp                     |   88 +
 rdsn/src/runtime/test/message_reader_test.cpp      |  112 +
 rdsn/src/runtime/test/message_utils_test.cpp       |   76 +
 .../runtime/test/meta_access_controller_test.cpp   |   99 +
 rdsn/src/runtime/test/negotiation_manager_test.cpp |  169 +
 rdsn/src/runtime/test/netprovider.cpp              |  308 ++
 rdsn/src/runtime/test/pipeline_test.cpp            |  134 +
 .../test/replica_access_controller_test.cpp        |   76 +
 rdsn/src/runtime/test/rpc.cpp                      |  247 ++
 rdsn/src/runtime/test/rpc_holder_test.cpp          |  182 +
 rdsn/src/runtime/test/rpc_message.cpp              |  224 ++
 rdsn/src/runtime/test/run.sh                       |   57 +
 rdsn/src/runtime/test/server_negotiation_test.cpp  |  249 ++
 rdsn/src/runtime/test/service_api_c.cpp            |  237 ++
 rdsn/src/runtime/test/sim_lock.cpp                 |  117 +
 rdsn/src/runtime/test/task_engine.cpp              |   95 +
 rdsn/src/runtime/test/task_test.cpp                |   83 +
 rdsn/src/runtime/test/test_utils.h                 |  143 +
 .../runtime/test/thrift_message_parser_test.cpp    |  432 +++
 rdsn/src/runtime/threadpool_code.cpp               |   53 +
 rdsn/src/runtime/tool_api.cpp                      |  174 +
 rdsn/src/runtime/tracer.cpp                        |  408 ++
 rdsn/src/runtime/zlocks.cpp                        |  231 ++
 rdsn/src/tools/CMakeLists.txt                      |   16 +
 rdsn/src/tools/mutation_log_tool.cpp               |   91 +
 rdsn/src/utils/CMakeLists.txt                      |   22 +
 rdsn/src/utils/alloc.cpp                           |   54 +
 rdsn/src/utils/binary_reader.cpp                   |  126 +
 rdsn/src/utils/binary_writer.cpp                   |  199 +
 rdsn/src/utils/clock.cpp                           |   37 +
 rdsn/src/utils/command_manager.cpp                 |  176 +
 rdsn/src/utils/config_api.cpp                      |  106 +
 rdsn/src/utils/configuration.cpp                   |  464 +++
 rdsn/src/utils/coredump.h                          |   50 +
 rdsn/src/utils/coredump.posix.cpp                  |   75 +
 rdsn/src/utils/crc.cpp                             |  481 +++
 rdsn/src/utils/error_code.cpp                      |   65 +
 rdsn/src/utils/fail_point.cpp                      |  171 +
 rdsn/src/utils/fail_point_impl.h                   |  134 +
 rdsn/src/utils/filesystem.cpp                      |  954 +++++
 rdsn/src/utils/flags.cpp                           |  395 ++
 rdsn/src/utils/gpid.cpp                            |   44 +
 rdsn/src/utils/latency_tracer.cpp                  |  289 ++
 rdsn/src/utils/lockp.std.h                         |  106 +
 rdsn/src/utils/logging.cpp                         |  184 +
 rdsn/src/utils/long_adder.cpp                      |  280 ++
 .../src/utils/long_adder_bench/CMakeLists.txt      |   38 +-
 .../utils/long_adder_bench/long_adder_bench.cpp    |  198 +
 rdsn/src/utils/math.cpp                            |   50 +
 rdsn/src/utils/memutil.h                           |   25 +
 rdsn/src/utils/metrics.cpp                         |  151 +
 rdsn/src/utils/output_utils.cpp                    |  188 +
 rdsn/src/utils/process_utils.cpp                   |  111 +
 rdsn/src/utils/rand.cpp                            |   34 +
 rdsn/src/utils/rpc_address.cpp                     |  218 ++
 rdsn/src/utils/safe_strerror_posix.cpp             |  116 +
 rdsn/src/utils/shared_io_service.cpp               |   60 +
 rdsn/src/utils/shared_io_service.h                 |   66 +
 rdsn/src/utils/simple_logger.cpp                   |  257 ++
 rdsn/src/utils/simple_logger.h                     |  105 +
 rdsn/src/utils/string_view.cpp                     |  100 +
 rdsn/src/utils/strings.cpp                         |  223 ++
 rdsn/src/utils/test/CMakeLists.txt                 |   30 +
 rdsn/src/utils/test/TokenBucketTest.cpp            |  127 +
 rdsn/src/utils/test/TokenBucketTest.h              |   28 +
 rdsn/src/utils/test/address.cpp                    |  223 ++
 rdsn/src/utils/test/autoref_ptr_test.cpp           |  575 +++
 rdsn/src/utils/test/binary_reader_test.cpp         |   73 +
 rdsn/src/utils/test/clear.sh                       |   27 +
 rdsn/src/utils/test/command_manager.cpp            |   80 +
 rdsn/src/utils/test/config-bad-section.ini         |   31 +
 rdsn/src/utils/test/config-dup-key.ini             |   32 +
 rdsn/src/utils/test/config-dup-section.ini         |   34 +
 rdsn/src/utils/test/config-empty.ini               |    0
 rdsn/src/utils/test/config-no-key.ini              |   31 +
 rdsn/src/utils/test/config-no-section.ini          |   30 +
 rdsn/src/utils/test/config-null-section.ini        |   31 +
 rdsn/src/utils/test/config-sample.ini              |   93 +
 rdsn/src/utils/test/config-unmatch-section.ini     |   31 +
 rdsn/src/utils/test/configuration.cpp              |  312 ++
 rdsn/src/utils/test/endian_test.cpp                |   70 +
 rdsn/src/utils/test/env.cpp                        |   52 +
 rdsn/src/utils/test/fail_point_test.cpp            |  168 +
 rdsn/src/utils/test/file_system_test.cpp           |   43 +
 rdsn/src/utils/test/file_utils.cpp                 |  906 +++++
 rdsn/src/utils/test/flag_test.cpp                  |  351 ++
 rdsn/src/utils/test/fmt_logging_test.cpp           |   48 +
 rdsn/src/utils/test/hostname_test.cpp              |  127 +
 rdsn/src/utils/test/join_point_test.cpp            |   87 +
 rdsn/src/utils/test/json_helper_test.cpp           |  497 +++
 rdsn/src/utils/test/latency_tracer_test.cpp        |  142 +
 rdsn/src/utils/test/lock.std.cpp                   |   61 +
 rdsn/src/utils/test/logger.cpp                     |  127 +
 rdsn/src/utils/test/logging.cpp                    |   80 +
 rdsn/src/utils/test/long_adder_test.cpp            |  265 ++
 rdsn/src/utils/test/main.cpp                       |   36 +
 rdsn/src/utils/test/memutil_test.cpp               |   31 +
 rdsn/src/utils/test/metrics_test.cpp               |  905 +++++
 .../utils/test/nth_element_bench/CMakeLists.txt    |   38 +-
 .../test/nth_element_bench/nth_element_bench.cpp   |  230 ++
 rdsn/src/utils/test/nth_element_test.cpp           |  288 ++
 rdsn/src/utils/test/nth_element_utils.h            |  180 +
 rdsn/src/utils/test/output_utils_test.cpp          |  204 +
 rdsn/src/utils/test/percentile_utils.h             |   88 +
 rdsn/src/utils/test/priority_queue.cpp             |  151 +
 rdsn/src/utils/test/rand_test.cpp                  |   82 +
 rdsn/src/utils/test/run.sh                         |   33 +
 rdsn/src/utils/test/sema.cpp                       |  112 +
 rdsn/src/utils/test/smart_pointers_test.cpp        |  112 +
 rdsn/src/utils/test/string_conv_test.cpp           |  311 ++
 rdsn/src/utils/test/string_view_test.cpp           |  436 +++
 rdsn/src/utils/test/time_utils_test.cpp            |  102 +
 .../token_bucket_throttling_controller_test.cpp    |  164 +
 rdsn/src/utils/test/token_buckets_test.cpp         |   54 +
 rdsn/src/utils/test/utils.cpp                      |  319 ++
 rdsn/src/utils/thread_access_checker.cpp           |   46 +
 rdsn/src/utils/throttling_controller.cpp           |  178 +
 rdsn/src/utils/throttling_controller.h             |   89 +
 rdsn/src/utils/time_utils.cpp                      |   49 +
 .../utils/token_bucket_throttling_controller.cpp   |  171 +
 rdsn/src/utils/token_buckets.cpp                   |   44 +
 rdsn/src/utils/utils.cpp                           |  194 +
 rdsn/src/utils/zlock_provider.h                    |  182 +
 rdsn/src/zookeeper/CMakeLists.txt                  |   22 +
 .../distributed_lock_service_zookeeper.cpp         |  289 ++
 .../zookeeper/distributed_lock_service_zookeeper.h |  122 +
 rdsn/src/zookeeper/lock_struct.cpp                 |  801 ++++
 rdsn/src/zookeeper/lock_struct.h                   |  126 +
 rdsn/src/zookeeper/lock_types.h                    |   51 +
 rdsn/src/zookeeper/test/CMakeLists.txt             |   31 +
 rdsn/src/zookeeper/test/clear.sh                   |   27 +
 rdsn/src/zookeeper/test/config-test.ini            |  121 +
 .../zookeeper/test/distributed_lock_zookeeper.cpp  |  235 ++
 rdsn/src/zookeeper/test/main.cpp                   |   85 +
 rdsn/src/zookeeper/test/run.sh                     |   49 +
 rdsn/src/zookeeper/zookeeper_error.cpp             |   60 +
 rdsn/src/zookeeper/zookeeper_error.h               |   43 +
 rdsn/src/zookeeper/zookeeper_session.cpp           |  394 ++
 rdsn/src/zookeeper/zookeeper_session.h             |  199 +
 rdsn/src/zookeeper/zookeeper_session_mgr.cpp       |   69 +
 rdsn/src/zookeeper/zookeeper_session_mgr.h         |   66 +
 rdsn/thirdparty/CMakeLists.txt                     |  380 ++
 rdsn/thirdparty/fix_fds_for_macos.patch            |   14 +
 rdsn/thirdparty/fix_s2_for_aarch64.patch           |   10 +
 rdsn/thirdparty/fix_thrift_for_cpp11.patch         |   53 +
 941 files changed, 179983 insertions(+), 148 deletions(-)
 rename .github/workflows/{ci-pull-request.yaml => lint_and_test_pegasus.yaml} (98%)
 copy .github/workflows/{ci-pull-request-always-pass.yaml => lint_and_test_pegasus_always_pass.yaml} (94%)
 create mode 100644 .github/workflows/lint_and_test_rdsn.yaml
 rename .github/workflows/{ci-pull-request-always-pass.yaml => lint_and_test_rdsn_always_pass.yaml} (66%)
 create mode 100644 .github/workflows/rdsn_cron_compile_jobs.yaml
 rename .github/workflows/{dockerfile_linter.yml => standardization_lint.yaml} (57%)
 delete mode 160000 rdsn
 create mode 100644 rdsn/.clang-format
 create mode 100644 rdsn/CMakeLists.txt
 create mode 100644 rdsn/CONTRIBUTING.md
 create mode 100644 rdsn/README.md
 create mode 100644 rdsn/bin/FindDL.cmake
 create mode 100644 rdsn/bin/FindJemalloc.cmake
 create mode 100644 rdsn/bin/FindRT.cmake
 create mode 100644 rdsn/bin/compiler_info.cmake
 create mode 100644 rdsn/bin/dsn.cmake
 create mode 100644 rdsn/bin/thrift_utils.cmake
 create mode 100755 rdsn/compile_thrift.py
 create mode 100644 rdsn/include/dsn/c/api_common.h
 create mode 100644 rdsn/include/dsn/c/api_layer1.h
 create mode 100644 rdsn/include/dsn/c/api_task.h
 create mode 100644 rdsn/include/dsn/c/api_utilities.h
 create mode 100644 rdsn/include/dsn/c/app_model.h
 create mode 100644 rdsn/include/dsn/cpp/json_helper.h
 create mode 100644 rdsn/include/dsn/cpp/message_utils.h
 create mode 100644 rdsn/include/dsn/cpp/pipeline.h
 create mode 100644 rdsn/include/dsn/cpp/rpc_holder.h
 create mode 100644 rdsn/include/dsn/cpp/rpc_stream.h
 create mode 100644 rdsn/include/dsn/cpp/serialization.h
 create mode 100644 rdsn/include/dsn/cpp/serialization_helper/dsn.layer2_types.h
 create mode 100644 rdsn/include/dsn/cpp/serialization_helper/dsn_types.h
 create mode 100644 rdsn/include/dsn/cpp/serialization_helper/thrift_helper.h
 create mode 100644 rdsn/include/dsn/cpp/serverlet.h
 create mode 100644 rdsn/include/dsn/cpp/service_app.h
 create mode 100644 rdsn/include/dsn/dist/block_service.h
 create mode 100644 rdsn/include/dsn/dist/common.h
 create mode 100644 rdsn/include/dsn/dist/distributed_lock_service.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector/failure_detector.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector/fd.client.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector/fd.code.definition.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector/fd.server.h
 create mode 100644 rdsn/include/dsn/dist/failure_detector_multimaster.h
 create mode 100644 rdsn/include/dsn/dist/fmt_logging.h
 create mode 100644 rdsn/include/dsn/dist/meta_state_service.h
 create mode 100644 rdsn/include/dsn/dist/nfs_node.h
 create mode 100644 rdsn/include/dsn/dist/remote_command.h
 create mode 100644 rdsn/include/dsn/dist/replication.h
 create mode 100644 rdsn/include/dsn/dist/replication/duplication_common.h
 create mode 100644 rdsn/include/dsn/dist/replication/meta_service_app.h
 create mode 100644 rdsn/include/dsn/dist/replication/mutation_duplicator.h
 create mode 100644 rdsn/include/dsn/dist/replication/mutation_log_tool.h
 create mode 100644 rdsn/include/dsn/dist/replication/partition_resolver.h
 create mode 100644 rdsn/include/dsn/dist/replication/replica_base.h
 create mode 100644 rdsn/include/dsn/dist/replication/replica_envs.h
 create mode 100644 rdsn/include/dsn/dist/replication/replica_test_utils.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication.codes.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_app_base.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_ddl_client.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_enums.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_other_types.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_service_app.h
 create mode 100644 rdsn/include/dsn/dist/replication/replication_types.h
 create mode 100644 rdsn/include/dsn/dist/replication/storage_serverlet.h
 create mode 100644 rdsn/include/dsn/http/http_server.h
 create mode 100644 rdsn/include/dsn/perf_counter/perf_counter.h
 create mode 100644 rdsn/include/dsn/perf_counter/perf_counter_utils.h
 create mode 100644 rdsn/include/dsn/perf_counter/perf_counter_wrapper.h
 create mode 100644 rdsn/include/dsn/perf_counter/perf_counters.h
 create mode 100644 rdsn/include/dsn/service_api_c.h
 create mode 100644 rdsn/include/dsn/service_api_cpp.h
 create mode 100644 rdsn/include/dsn/tool-api/aio_task.h
 create mode 100644 rdsn/include/dsn/tool-api/async_calls.h
 create mode 100644 rdsn/include/dsn/tool-api/auto_codes.h
 create mode 100644 rdsn/include/dsn/tool-api/command_manager.h
 create mode 100644 rdsn/include/dsn/tool-api/env_provider.h
 create mode 100644 rdsn/include/dsn/tool-api/file_io.h
 create mode 100644 rdsn/include/dsn/tool-api/future_types.h
 create mode 100644 rdsn/include/dsn/tool-api/global_config.h
 create mode 100644 rdsn/include/dsn/tool-api/gpid.h
 create mode 100644 rdsn/include/dsn/tool-api/group_address.h
 create mode 100644 rdsn/include/dsn/tool-api/logging_provider.h
 create mode 100644 rdsn/include/dsn/tool-api/message_parser.h
 create mode 100644 rdsn/include/dsn/tool-api/network.h
 create mode 100644 rdsn/include/dsn/tool-api/rpc_address.h
 create mode 100644 rdsn/include/dsn/tool-api/rpc_message.h
 create mode 100644 rdsn/include/dsn/tool-api/task.h
 create mode 100644 rdsn/include/dsn/tool-api/task_code.h
 create mode 100644 rdsn/include/dsn/tool-api/task_queue.h
 create mode 100644 rdsn/include/dsn/tool-api/task_spec.h
 create mode 100644 rdsn/include/dsn/tool-api/task_tracker.h
 create mode 100644 rdsn/include/dsn/tool-api/task_worker.h
 create mode 100644 rdsn/include/dsn/tool-api/thread_access_checker.h
 create mode 100644 rdsn/include/dsn/tool-api/threadpool_code.h
 create mode 100644 rdsn/include/dsn/tool-api/threadpool_spec.h
 create mode 100644 rdsn/include/dsn/tool-api/timer_service.h
 create mode 100644 rdsn/include/dsn/tool-api/uniq_timestamp_us.h
 create mode 100644 rdsn/include/dsn/tool-api/zlocks.h
 create mode 100644 rdsn/include/dsn/tool/nativerun.h
 create mode 100644 rdsn/include/dsn/tool/node_scoper.h
 create mode 100644 rdsn/include/dsn/tool/providers.common.h
 create mode 100644 rdsn/include/dsn/tool/simulator.h
 create mode 100644 rdsn/include/dsn/tool_api.h
 create mode 100644 rdsn/include/dsn/toollet/fault_injector.h
 create mode 100644 rdsn/include/dsn/toollet/profiler.h
 create mode 100644 rdsn/include/dsn/toollet/tracer.h
 create mode 100644 rdsn/include/dsn/utility/TokenBucket.h
 create mode 100644 rdsn/include/dsn/utility/absl/base/internal/invoke.h
 create mode 100644 rdsn/include/dsn/utility/absl/utility/utility.h
 create mode 100644 rdsn/include/dsn/utility/alloc.h
 create mode 100644 rdsn/include/dsn/utility/apply.h
 create mode 100644 rdsn/include/dsn/utility/autoref_ptr.h
 create mode 100644 rdsn/include/dsn/utility/binary_reader.h
 create mode 100644 rdsn/include/dsn/utility/binary_writer.h
 create mode 100644 rdsn/include/dsn/utility/blob.h
 create mode 100644 rdsn/include/dsn/utility/casts.h
 create mode 100644 rdsn/include/dsn/utility/chrono_literals.h
 create mode 100644 rdsn/include/dsn/utility/clock.h
 create mode 100644 rdsn/include/dsn/utility/config_api.h
 create mode 100644 rdsn/include/dsn/utility/config_helper.h
 create mode 100644 rdsn/include/dsn/utility/configuration.h
 create mode 100644 rdsn/include/dsn/utility/crc.h
 create mode 100644 rdsn/include/dsn/utility/customizable_id.h
 create mode 100644 rdsn/include/dsn/utility/defer.h
 create mode 100644 rdsn/include/dsn/utility/dlib.h
 create mode 100644 rdsn/include/dsn/utility/endians.h
 create mode 100644 rdsn/include/dsn/utility/enum_helper.h
 create mode 100644 rdsn/include/dsn/utility/error_code.h
 create mode 100644 rdsn/include/dsn/utility/errors.h
 create mode 100644 rdsn/include/dsn/utility/exp_delay.h
 create mode 100644 rdsn/include/dsn/utility/extensible_object.h
 create mode 100644 rdsn/include/dsn/utility/factory_store.h
 create mode 100644 rdsn/include/dsn/utility/fail_point.h
 create mode 100644 rdsn/include/dsn/utility/filesystem.h
 create mode 100644 rdsn/include/dsn/utility/fixed_size_buffer_pool.h
 create mode 100644 rdsn/include/dsn/utility/flags.h
 create mode 100644 rdsn/include/dsn/utility/function_traits.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/autoresetevent.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/autoreseteventcondvar.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/benaphore.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/bitfield.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/readme.txt
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/rwlock.h
 create mode 100644 rdsn/include/dsn/utility/hpc_locks/sema.h
 create mode 100644 rdsn/include/dsn/utility/join_point.h
 create mode 100644 rdsn/include/dsn/utility/link.h
 create mode 100644 rdsn/include/dsn/utility/long_adder.h
 create mode 100644 rdsn/include/dsn/utility/math.h
 create mode 100644 rdsn/include/dsn/utility/metrics.h
 create mode 100644 rdsn/include/dsn/utility/nth_element.h
 create mode 100644 rdsn/include/dsn/utility/optional.h
 create mode 100644 rdsn/include/dsn/utility/output_utils.h
 create mode 100644 rdsn/include/dsn/utility/ports.h
 create mode 100644 rdsn/include/dsn/utility/preloadable.h
 create mode 100644 rdsn/include/dsn/utility/priority_queue.h
 create mode 100644 rdsn/include/dsn/utility/process_utils.h
 create mode 100644 rdsn/include/dsn/utility/rand.h
 create mode 100644 rdsn/include/dsn/utility/safe_strerror_posix.h
 create mode 100644 rdsn/include/dsn/utility/singleton.h
 create mode 100644 rdsn/include/dsn/utility/singleton_store.h
 create mode 100644 rdsn/include/dsn/utility/smart_pointers.h
 create mode 100644 rdsn/include/dsn/utility/string_conv.h
 create mode 100644 rdsn/include/dsn/utility/string_splitter.h
 create mode 100644 rdsn/include/dsn/utility/string_view.h
 create mode 100644 rdsn/include/dsn/utility/strings.h
 create mode 100644 rdsn/include/dsn/utility/synchronize.h
 create mode 100644 rdsn/include/dsn/utility/sys_exit_hook.h
 create mode 100644 rdsn/include/dsn/utility/timer.h
 create mode 100644 rdsn/include/dsn/utility/utils.h
 create mode 100644 rdsn/include/dsn/utility/work_queue.h
 create mode 100644 rdsn/include/dsn/utils/latency_tracer.h
 create mode 100644 rdsn/include/dsn/utils/time_utils.h
 create mode 100644 rdsn/include/dsn/utils/token_bucket_throttling_controller.h
 create mode 100644 rdsn/include/dsn/utils/token_buckets.h
 create mode 100644 rdsn/resources/arch.png
 create mode 100644 rdsn/resources/config.png
 create mode 100644 rdsn/resources/rdsn-layer1.jpg
 create mode 100644 rdsn/resources/rdsn-layer2.jpg
 create mode 100644 rdsn/resources/rdsn-layer3.jpg
 create mode 100644 rdsn/resources/rdsn-state-all.jpg
 create mode 100644 rdsn/resources/rdsn.jpg
 create mode 100644 rdsn/resources/viz.png
 create mode 100755 rdsn/run.sh
 create mode 100755 rdsn/scripts/linux/build.sh
 create mode 100755 rdsn/scripts/linux/clear_zk.sh
 create mode 100755 rdsn/scripts/linux/install.sh
 create mode 100755 rdsn/scripts/linux/learn_stat.py
 create mode 100755 rdsn/scripts/linux/run-clang-format.py
 create mode 100755 rdsn/scripts/linux/run-clang-format.sh
 create mode 100755 rdsn/scripts/linux/start_zk.sh
 create mode 100755 rdsn/scripts/linux/stop_zk.sh
 create mode 100644 rdsn/src/CMakeLists.txt
 create mode 100644 rdsn/src/aio/CMakeLists.txt
 create mode 100644 rdsn/src/aio/aio_provider.cpp
 create mode 100644 rdsn/src/aio/aio_provider.h
 create mode 100644 rdsn/src/aio/aio_task.cpp
 create mode 100644 rdsn/src/aio/disk_engine.cpp
 create mode 100644 rdsn/src/aio/disk_engine.h
 create mode 100644 rdsn/src/aio/file_io.cpp
 create mode 100644 rdsn/src/aio/native_linux_aio_provider.cpp
 create mode 100644 rdsn/src/aio/native_linux_aio_provider.h
 create mode 100644 rdsn/src/aio/test/CMakeLists.txt
 create mode 100644 rdsn/src/aio/test/aio.cpp
 create mode 100755 rdsn/src/aio/test/clear.sh
 create mode 100644 rdsn/src/aio/test/config.ini
 create mode 100644 rdsn/src/aio/test/copy_source.txt
 create mode 100644 rdsn/src/aio/test/main.cpp
 create mode 100755 rdsn/src/aio/test/run.sh
 copy docker/thirdparties-src/Dockerfile => rdsn/src/block_service/CMakeLists.txt (50%)
 create mode 100644 rdsn/src/block_service/block_service_manager.cpp
 create mode 100644 rdsn/src/block_service/block_service_manager.h
 create mode 100644 rdsn/src/block_service/directio_writable_file.cpp
 create mode 100644 rdsn/src/block_service/directio_writable_file.h
 create mode 100644 rdsn/src/block_service/fds/CMakeLists.txt
 create mode 100644 rdsn/src/block_service/fds/fds_service.cpp
 create mode 100644 rdsn/src/block_service/fds/fds_service.h
 create mode 100644 rdsn/src/block_service/hdfs/CMakeLists.txt
 create mode 100644 rdsn/src/block_service/hdfs/hdfs_service.cpp
 create mode 100644 rdsn/src/block_service/hdfs/hdfs_service.h
 create mode 100644 rdsn/src/block_service/local/CMakeLists.txt
 create mode 100644 rdsn/src/block_service/local/local_service.cpp
 create mode 100644 rdsn/src/block_service/local/local_service.h
 copy docker/ci-env/Dockerfile => rdsn/src/block_service/test/CMakeLists.txt (54%)
 create mode 100644 rdsn/src/block_service/test/block_service_manager_test.cpp
 create mode 100644 rdsn/src/block_service/test/block_service_mock.h
 rename .github/workflows/ci-pull-request-markdown-links.yaml => rdsn/src/block_service/test/clear.sh (74%)
 mode change 100644 => 100755
 create mode 100644 rdsn/src/block_service/test/config-test.ini
 create mode 100644 rdsn/src/block_service/test/fds_service_test.cpp
 create mode 100644 rdsn/src/block_service/test/hdfs_service_test.cpp
 create mode 100644 rdsn/src/block_service/test/local_service_test.cpp
 create mode 100644 rdsn/src/block_service/test/main.cpp
 rename .github/workflows/ci-pull-request-title.yaml => rdsn/src/block_service/test/run.sh (69%)
 mode change 100644 => 100755
 create mode 100644 rdsn/src/client/CMakeLists.txt
 create mode 100644 rdsn/src/client/partition_resolver.cpp
 create mode 100644 rdsn/src/client/partition_resolver_manager.cpp
 create mode 100644 rdsn/src/client/partition_resolver_manager.h
 create mode 100644 rdsn/src/client/partition_resolver_simple.cpp
 create mode 100644 rdsn/src/client/partition_resolver_simple.h
 create mode 100644 rdsn/src/client/replication_ddl_client.cpp
 create mode 100644 rdsn/src/common/CMakeLists.txt
 create mode 100644 rdsn/src/common/backup.thrift
 create mode 100644 rdsn/src/common/backup_common.cpp
 create mode 100644 rdsn/src/common/backup_common.h
 create mode 100644 rdsn/src/common/bulk_load.thrift
 create mode 100644 rdsn/src/common/bulk_load_common.cpp
 create mode 100644 rdsn/src/common/bulk_load_common.h
 create mode 100644 rdsn/src/common/common.cpp
 create mode 100644 rdsn/src/common/consensus.thrift
 create mode 100644 rdsn/src/common/duplication.thrift
 create mode 100644 rdsn/src/common/duplication_common.cpp
 create mode 100644 rdsn/src/common/fs_manager.cpp
 create mode 100644 rdsn/src/common/fs_manager.h
 create mode 100644 rdsn/src/common/manual_compact.h
 create mode 100644 rdsn/src/common/meta_admin.thrift
 create mode 100644 rdsn/src/common/metadata.thrift
 create mode 100644 rdsn/src/common/partition_split.thrift
 create mode 100644 rdsn/src/common/partition_split_common.h
 create mode 100644 rdsn/src/common/replica_admin.thrift
 create mode 100644 rdsn/src/common/replication_common.cpp
 create mode 100644 rdsn/src/common/replication_common.h
 create mode 100644 rdsn/src/common/test/CMakeLists.txt
 create mode 100644 rdsn/src/common/test/common_test.cpp
 create mode 100644 rdsn/src/common/test/config-test.ini
 create mode 100644 rdsn/src/common/test/duplication_common_test.cpp
 create mode 100644 rdsn/src/common/test/fs_manager_test.cpp
 create mode 100644 rdsn/src/common/test/main.cpp
 create mode 100644 rdsn/src/common/test/replication_common_test.cpp
 create mode 100755 rdsn/src/common/test/run.sh
 create mode 100644 rdsn/src/dsn.layer2.thrift
 create mode 100644 rdsn/src/dsn.thrift
 create mode 100644 rdsn/src/failure_detector/CMakeLists.txt
 create mode 100644 rdsn/src/failure_detector/failure_detector.cpp
 create mode 100644 rdsn/src/failure_detector/failure_detector_multimaster.cpp
 create mode 100644 rdsn/src/failure_detector/fd.thrift
 create mode 100644 rdsn/src/failure_detector/test/CMakeLists.txt
 create mode 100755 rdsn/src/failure_detector/test/clear.sh
 create mode 100644 rdsn/src/failure_detector/test/config-test.ini
 create mode 100644 rdsn/src/failure_detector/test/config-whitelist-test-failed.ini
 create mode 100644 rdsn/src/failure_detector/test/config-whitelist-test.ini
 create mode 100644 rdsn/src/failure_detector/test/failure_detector.cpp
 create mode 100644 rdsn/src/failure_detector/test/gtest.filter
 create mode 100644 rdsn/src/failure_detector/test/main.cpp
 create mode 100755 rdsn/src/failure_detector/test/run.sh
 rename .github/workflows/ci-pull-request-issue.yaml => rdsn/src/http/CMakeLists.txt (62%)
 create mode 100644 rdsn/src/http/builtin_http_calls.cpp
 create mode 100644 rdsn/src/http/builtin_http_calls.h
 create mode 100644 rdsn/src/http/config_http_service.cpp
 create mode 100644 rdsn/src/http/http_call_registry.h
 create mode 100644 rdsn/src/http/http_message_parser.cpp
 create mode 100644 rdsn/src/http/http_message_parser.h
 create mode 100644 rdsn/src/http/http_server.cpp
 create mode 100644 rdsn/src/http/http_server_impl.h
 create mode 100644 rdsn/src/http/perf_counter_http_service.cpp
 create mode 100644 rdsn/src/http/pprof_http_service.cpp
 create mode 100644 rdsn/src/http/pprof_http_service.h
 create mode 100644 rdsn/src/http/service_version.cpp
 create mode 100644 rdsn/src/http/service_version.h
 create mode 100644 rdsn/src/http/test/CMakeLists.txt
 create mode 100644 rdsn/src/http/test/http_server_test.cpp
 create mode 100644 rdsn/src/http/test/perf_counter_http_service_test.cpp
 create mode 100755 rdsn/src/http/test/run.sh
 create mode 100644 rdsn/src/http/test/uri_decoder_test.cpp
 create mode 100644 rdsn/src/http/uri_decoder.cpp
 create mode 100644 rdsn/src/http/uri_decoder.h
 create mode 100644 rdsn/src/meta/CMakeLists.txt
 create mode 100644 rdsn/src/meta/app_balance_policy.cpp
 create mode 100644 rdsn/src/meta/app_balance_policy.h
 create mode 100644 rdsn/src/meta/app_env_validator.cpp
 create mode 100644 rdsn/src/meta/app_env_validator.h
 create mode 100644 rdsn/src/meta/backup_engine.cpp
 create mode 100644 rdsn/src/meta/backup_engine.h
 create mode 100644 rdsn/src/meta/cluster_balance_policy.cpp
 create mode 100644 rdsn/src/meta/cluster_balance_policy.h
 create mode 100644 rdsn/src/meta/distributed_lock_service_simple.cpp
 create mode 100644 rdsn/src/meta/distributed_lock_service_simple.h
 create mode 100644 rdsn/src/meta/dump_file.h
 create mode 100644 rdsn/src/meta/duplication/duplication_info.cpp
 create mode 100644 rdsn/src/meta/duplication/duplication_info.h
 create mode 100644 rdsn/src/meta/duplication/meta_duplication_service.cpp
 create mode 100644 rdsn/src/meta/duplication/meta_duplication_service.h
 create mode 100644 rdsn/src/meta/greedy_load_balancer.cpp
 create mode 100644 rdsn/src/meta/greedy_load_balancer.h
 create mode 100644 rdsn/src/meta/load_balance_policy.cpp
 create mode 100644 rdsn/src/meta/load_balance_policy.h
 create mode 100644 rdsn/src/meta/meta_backup_service.cpp
 create mode 100644 rdsn/src/meta/meta_backup_service.h
 create mode 100644 rdsn/src/meta/meta_bulk_load_ingestion_context.cpp
 create mode 100644 rdsn/src/meta/meta_bulk_load_ingestion_context.h
 create mode 100644 rdsn/src/meta/meta_bulk_load_service.cpp
 create mode 100644 rdsn/src/meta/meta_bulk_load_service.h
 create mode 100644 rdsn/src/meta/meta_data.cpp
 create mode 100644 rdsn/src/meta/meta_data.h
 create mode 100644 rdsn/src/meta/meta_http_service.cpp
 create mode 100644 rdsn/src/meta/meta_http_service.h
 create mode 100644 rdsn/src/meta/meta_options.cpp
 create mode 100644 rdsn/src/meta/meta_options.h
 create mode 100644 rdsn/src/meta/meta_rpc_types.h
 create mode 100644 rdsn/src/meta/meta_server_failure_detector.cpp
 create mode 100644 rdsn/src/meta/meta_server_failure_detector.h
 create mode 100644 rdsn/src/meta/meta_service.cpp
 create mode 100644 rdsn/src/meta/meta_service.h
 create mode 100644 rdsn/src/meta/meta_service_app.cpp
 create mode 100644 rdsn/src/meta/meta_split_service.cpp
 create mode 100644 rdsn/src/meta/meta_split_service.h
 create mode 100644 rdsn/src/meta/meta_state_service_simple.cpp
 create mode 100644 rdsn/src/meta/meta_state_service_simple.h
 create mode 100644 rdsn/src/meta/meta_state_service_utils.cpp
 create mode 100644 rdsn/src/meta/meta_state_service_utils.h
 create mode 100644 rdsn/src/meta/meta_state_service_utils_impl.h
 create mode 100644 rdsn/src/meta/meta_state_service_zookeeper.cpp
 create mode 100644 rdsn/src/meta/meta_state_service_zookeeper.h
 create mode 100644 rdsn/src/meta/partition_guardian.cpp
 create mode 100644 rdsn/src/meta/partition_guardian.h
 create mode 100644 rdsn/src/meta/server_load_balancer.cpp
 create mode 100644 rdsn/src/meta/server_load_balancer.h
 create mode 100644 rdsn/src/meta/server_state.cpp
 create mode 100644 rdsn/src/meta/server_state.h
 create mode 100644 rdsn/src/meta/server_state_restore.cpp
 create mode 100644 rdsn/src/meta/test/CMakeLists.txt
 create mode 100644 rdsn/src/meta/test/backup_test.cpp
 create mode 100644 rdsn/src/meta/test/balancer_simulator/CMakeLists.txt
 create mode 100644 rdsn/src/meta/test/balancer_simulator/balancer_simulator.cpp
 create mode 100644 rdsn/src/meta/test/balancer_validator.cpp
 create mode 100755 rdsn/src/meta/test/clear.sh
 create mode 100644 rdsn/src/meta/test/cluster_balance_policy_test.cpp
 create mode 100644 rdsn/src/meta/test/config-test.ini
 create mode 100644 rdsn/src/meta/test/copy_replica_operation_test.cpp
 create mode 100644 rdsn/src/meta/test/dummy_balancer.h
 create mode 100644 rdsn/src/meta/test/dump_file.cpp
 create mode 100644 rdsn/src/meta/test/duplication_info_test.cpp
 create mode 100644 rdsn/src/meta/test/ford_fulkerson_test.cpp
 create mode 100644 rdsn/src/meta/test/json_compacity.cpp
 create mode 100644 rdsn/src/meta/test/main.cpp
 create mode 100644 rdsn/src/meta/test/meta_app_envs_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_app_operation_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_backup_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_bulk_load_ingestion_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_bulk_load_service_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_data.cpp
 create mode 100644 rdsn/src/meta/test/meta_duplication_service_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_http_service_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_mauanl_compaction_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_partition_guardian_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_service_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_service_test_app.h
 create mode 100644 rdsn/src/meta/test/meta_split_service_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_state/CMakeLists.txt
 create mode 100644 rdsn/src/meta/test/meta_state/clear.cmd
 create mode 100755 rdsn/src/meta/test/meta_state/clear.sh
 create mode 100644 rdsn/src/meta/test/meta_state/config-test.ini
 create mode 100644 rdsn/src/meta/test/meta_state/gtest.filter
 create mode 100644 rdsn/src/meta/test/meta_state/main.cpp
 create mode 100644 rdsn/src/meta/test/meta_state/meta_state_service.cpp
 create mode 100755 rdsn/src/meta/test/meta_state/run.sh
 create mode 100644 rdsn/src/meta/test/meta_state_service_utils_test.cpp
 create mode 100644 rdsn/src/meta/test/meta_test_base.cpp
 create mode 100644 rdsn/src/meta/test/meta_test_base.h
 create mode 100644 rdsn/src/meta/test/misc/misc.cpp
 create mode 100644 rdsn/src/meta/test/misc/misc.h
 create mode 100755 rdsn/src/meta/test/run.sh
 create mode 100644 rdsn/src/meta/test/server_state_restore_test.cpp
 create mode 100644 rdsn/src/meta/test/server_state_test.cpp
 create mode 100644 rdsn/src/meta/test/state_sync_test.cpp
 create mode 100644 rdsn/src/meta/test/suite1
 create mode 100644 rdsn/src/meta/test/suite2
 create mode 100644 rdsn/src/meta/test/update_configuration_test.cpp
 create mode 100644 rdsn/src/nfs/CMakeLists.txt
 create mode 100644 rdsn/src/nfs/nfs.thrift
 create mode 100644 rdsn/src/nfs/nfs_client_impl.cpp
 create mode 100644 rdsn/src/nfs/nfs_client_impl.h
 create mode 100644 rdsn/src/nfs/nfs_code_definition.h
 create mode 100644 rdsn/src/nfs/nfs_node.cpp
 create mode 100644 rdsn/src/nfs/nfs_node_impl.cpp
 create mode 100644 rdsn/src/nfs/nfs_node_simple.h
 create mode 100644 rdsn/src/nfs/nfs_server_impl.cpp
 create mode 100644 rdsn/src/nfs/nfs_server_impl.h
 create mode 100644 rdsn/src/nfs/test/CMakeLists.txt
 create mode 100755 rdsn/src/nfs/test/clear.sh
 create mode 100644 rdsn/src/nfs/test/config.ini
 create mode 100644 rdsn/src/nfs/test/main.cpp
 create mode 100644 rdsn/src/nfs/test/nfs_test_file1
 create mode 100644 rdsn/src/nfs/test/nfs_test_file2
 create mode 100755 rdsn/src/nfs/test/run.sh
 create mode 100644 rdsn/src/perf_counter/CMakeLists.txt
 create mode 100644 rdsn/src/perf_counter/builtin_counters.cpp
 create mode 100644 rdsn/src/perf_counter/builtin_counters.h
 create mode 100644 rdsn/src/perf_counter/perf_counter.cpp
 create mode 100644 rdsn/src/perf_counter/perf_counter_atomic.h
 create mode 100644 rdsn/src/perf_counter/perf_counters.cpp
 create mode 100644 rdsn/src/perf_counter/test/CMakeLists.txt
 create mode 100755 rdsn/src/perf_counter/test/clear.sh
 create mode 100644 rdsn/src/perf_counter/test/main.cpp
 create mode 100644 rdsn/src/perf_counter/test/perf_counter_test.cpp
 create mode 100644 rdsn/src/perf_counter/test/perf_counters_test.cpp
 create mode 100755 rdsn/src/perf_counter/test/run.sh
 create mode 100644 rdsn/src/remote_cmd/CMakeLists.txt
 create mode 100644 rdsn/src/remote_cmd/command.thrift
 create mode 100644 rdsn/src/remote_cmd/remote_command.cpp
 create mode 100644 rdsn/src/replica/CMakeLists.txt
 create mode 100644 rdsn/src/replica/backup/cold_backup_context.cpp
 create mode 100644 rdsn/src/replica/backup/cold_backup_context.h
 create mode 100644 rdsn/src/replica/backup/replica_backup_manager.cpp
 create mode 100644 rdsn/src/replica/backup/replica_backup_manager.h
 create mode 100644 rdsn/src/replica/backup/replica_backup_server.cpp
 create mode 100644 rdsn/src/replica/backup/replica_backup_server.h
 create mode 100644 rdsn/src/replica/backup/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/backup/test/config-test.ini
 create mode 100644 rdsn/src/replica/backup/test/main.cpp
 create mode 100644 rdsn/src/replica/backup/test/replica_backup_manager_test.cpp
 create mode 100755 rdsn/src/replica/backup/test/run.sh
 create mode 100644 rdsn/src/replica/bulk_load/replica_bulk_loader.cpp
 create mode 100644 rdsn/src/replica/bulk_load/replica_bulk_loader.h
 create mode 100644 rdsn/src/replica/bulk_load/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/bulk_load/test/config-test.ini
 create mode 100644 rdsn/src/replica/bulk_load/test/main.cpp
 create mode 100644 rdsn/src/replica/bulk_load/test/replica_bulk_loader_test.cpp
 create mode 100755 rdsn/src/replica/bulk_load/test/run.sh
 create mode 100644 rdsn/src/replica/disk_cleaner.cpp
 create mode 100644 rdsn/src/replica/disk_cleaner.h
 create mode 100644 rdsn/src/replica/duplication/duplication_pipeline.cpp
 create mode 100644 rdsn/src/replica/duplication/duplication_pipeline.h
 create mode 100644 rdsn/src/replica/duplication/duplication_sync_timer.cpp
 create mode 100644 rdsn/src/replica/duplication/duplication_sync_timer.h
 create mode 100644 rdsn/src/replica/duplication/load_from_private_log.cpp
 create mode 100644 rdsn/src/replica/duplication/load_from_private_log.h
 create mode 100644 rdsn/src/replica/duplication/mutation_batch.cpp
 create mode 100644 rdsn/src/replica/duplication/mutation_batch.h
 create mode 100644 rdsn/src/replica/duplication/replica_duplicator.cpp
 create mode 100644 rdsn/src/replica/duplication/replica_duplicator.h
 create mode 100644 rdsn/src/replica/duplication/replica_duplicator_manager.cpp
 create mode 100644 rdsn/src/replica/duplication/replica_duplicator_manager.h
 create mode 100644 rdsn/src/replica/duplication/replica_follower.cpp
 create mode 100644 rdsn/src/replica/duplication/replica_follower.h
 create mode 100644 rdsn/src/replica/duplication/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/duplication/test/config-test.ini
 create mode 100644 rdsn/src/replica/duplication/test/duplication_sync_timer_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/duplication_test_base.h
 create mode 100644 rdsn/src/replica/duplication/test/load_from_private_log_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/log.1.0.all_loaded_are_write_empties
 create mode 100644 rdsn/src/replica/duplication/test/log.1.0.handle_real_private_log
 create mode 100644 rdsn/src/replica/duplication/test/log.1.0.handle_real_private_log2
 create mode 100644 rdsn/src/replica/duplication/test/main.cpp
 create mode 100644 rdsn/src/replica/duplication/test/mutation_batch_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/replica_duplicator_manager_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/replica_duplicator_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/replica_follower_test.cpp
 create mode 100644 rdsn/src/replica/duplication/test/replica_http_service_test.cpp
 create mode 100755 rdsn/src/replica/duplication/test/run.sh
 create mode 100644 rdsn/src/replica/duplication/test/ship_mutation_test.cpp
 create mode 100644 rdsn/src/replica/log_block.cpp
 create mode 100644 rdsn/src/replica/log_block.h
 create mode 100644 rdsn/src/replica/log_file.cpp
 create mode 100644 rdsn/src/replica/log_file.h
 create mode 100644 rdsn/src/replica/log_file_stream.h
 create mode 100644 rdsn/src/replica/mutation.cpp
 create mode 100644 rdsn/src/replica/mutation.h
 create mode 100644 rdsn/src/replica/mutation_cache.cpp
 create mode 100644 rdsn/src/replica/mutation_cache.h
 create mode 100644 rdsn/src/replica/mutation_log.cpp
 create mode 100644 rdsn/src/replica/mutation_log.h
 create mode 100644 rdsn/src/replica/mutation_log_replay.cpp
 create mode 100644 rdsn/src/replica/mutation_log_utils.cpp
 create mode 100644 rdsn/src/replica/mutation_log_utils.h
 create mode 100644 rdsn/src/replica/prepare_list.cpp
 create mode 100644 rdsn/src/replica/prepare_list.h
 create mode 100644 rdsn/src/replica/replica.cpp
 create mode 100644 rdsn/src/replica/replica.h
 create mode 100644 rdsn/src/replica/replica_2pc.cpp
 create mode 100644 rdsn/src/replica/replica_backup.cpp
 create mode 100644 rdsn/src/replica/replica_check.cpp
 create mode 100644 rdsn/src/replica/replica_chkpt.cpp
 create mode 100644 rdsn/src/replica/replica_config.cpp
 create mode 100644 rdsn/src/replica/replica_context.cpp
 create mode 100644 rdsn/src/replica/replica_context.h
 create mode 100644 rdsn/src/replica/replica_disk_migrator.cpp
 create mode 100644 rdsn/src/replica/replica_disk_migrator.h
 create mode 100644 rdsn/src/replica/replica_failover.cpp
 create mode 100644 rdsn/src/replica/replica_http_service.cpp
 create mode 100644 rdsn/src/replica/replica_http_service.h
 create mode 100644 rdsn/src/replica/replica_init.cpp
 create mode 100644 rdsn/src/replica/replica_learn.cpp
 create mode 100644 rdsn/src/replica/replica_restore.cpp
 create mode 100644 rdsn/src/replica/replica_stub.cpp
 create mode 100644 rdsn/src/replica/replica_stub.h
 create mode 100644 rdsn/src/replica/replica_test_utils.cpp
 create mode 100644 rdsn/src/replica/replica_throttle.cpp
 create mode 100644 rdsn/src/replica/replication_app_base.cpp
 create mode 100644 rdsn/src/replica/replication_service_app.cpp
 create mode 100644 rdsn/src/replica/split/replica_split_manager.cpp
 create mode 100644 rdsn/src/replica/split/replica_split_manager.h
 create mode 100644 rdsn/src/replica/split/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/split/test/config-test.ini
 create mode 100644 rdsn/src/replica/split/test/main.cpp
 create mode 100644 rdsn/src/replica/split/test/replica_split_test.cpp
 create mode 100755 rdsn/src/replica/split/test/run.sh
 create mode 100644 rdsn/src/replica/storage/CMakeLists.txt
 create mode 100644 rdsn/src/replica/storage/simple_kv/CMakeLists.txt
 create mode 100755 rdsn/src/replica/storage/simple_kv/clear.sh
 create mode 100644 rdsn/src/replica/storage/simple_kv/config.ini
 create mode 100755 rdsn/src/replica/storage/simple_kv/run.sh
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.app.example.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.client.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.code.definition.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.main.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.server.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.server.impl.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.server.impl.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/simple_kv.thrift
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/README.md
 create mode 100755 rdsn/src/replica/storage/simple_kv/test/addcase.sh
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-000.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-000.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-001.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-001.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-002.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-002.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-003.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-003.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-004.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-004.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-005.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-005.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-006.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-006.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-100.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-100.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-101.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-101.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-102.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-102.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-103.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-103.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-104.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-104.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-105.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-105.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-106.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-106.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-107.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-107.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-108.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-108.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-109.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-109.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-200.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-200.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-201.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-201.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-202-0.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-202-0.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-202-1.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-202-1.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-203-0.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-203-0.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-204.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-204.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-205.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-205.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-206.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-206.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-207.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-207.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-208.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-208.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-209.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-209.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-210.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-210.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-211.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-211.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-212.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-212.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-213.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-213.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-214.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-214.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-215.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-215.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-216.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-216.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-0.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-0.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-1.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-1.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-2.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-300-2.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-301.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-301.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-302.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-302.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-303.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-303.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-304.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-304.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-305.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-305.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-306.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-306.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-307.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-307.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-400.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-400.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-401.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-401.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-402.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-402.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-600.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-600.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-601.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-601.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-602.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-602.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-603.act
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case-603.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/case.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/checker.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/checker.h
 create mode 100755 rdsn/src/replica/storage/simple_kv/test/clear.sh
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/client.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/client.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/common.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/common.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/config.ini
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/injector.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/injector.h
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/rep_tests.pdf
 create mode 100755 rdsn/src/replica/storage/simple_kv/test/run.sh
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/simple_kv.main.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/simple_kv.server.impl.cpp
 create mode 100644 rdsn/src/replica/storage/simple_kv/test/simple_kv.server.impl.h
 create mode 100644 rdsn/src/replica/test/CMakeLists.txt
 create mode 100644 rdsn/src/replica/test/backup_block_service_mock.h
 rename .gitmodules => rdsn/src/replica/test/clear.sh (91%)
 mode change 100644 => 100755
 create mode 100644 rdsn/src/replica/test/cold_backup_context_test.cpp
 create mode 100644 rdsn/src/replica/test/config-test.ini
 create mode 100644 rdsn/src/replica/test/log_block_test.cpp
 create mode 100644 rdsn/src/replica/test/log_file_test.cpp
 create mode 100644 rdsn/src/replica/test/main.cpp
 create mode 100644 rdsn/src/replica/test/mock_utils.h
 create mode 100644 rdsn/src/replica/test/mutation_log_learn_test.cpp
 create mode 100644 rdsn/src/replica/test/mutation_log_test.cpp
 create mode 100644 rdsn/src/replica/test/open_replica_test.cpp
 create mode 100644 rdsn/src/replica/test/replica_disk_migrate_test.cpp
 create mode 100644 rdsn/src/replica/test/replica_disk_test.cpp
 create mode 100644 rdsn/src/replica/test/replica_disk_test_base.h
 create mode 100644 rdsn/src/replica/test/replica_learn_test.cpp
 create mode 100644 rdsn/src/replica/test/replica_test.cpp
 create mode 100644 rdsn/src/replica/test/replica_test_base.h
 create mode 100644 rdsn/src/replica/test/replication_service_test_app.h
 create mode 100755 rdsn/src/replica/test/run.sh
 create mode 100644 rdsn/src/replica/test/throttling_controller_test.cpp
 create mode 100644 rdsn/src/runtime/CMakeLists.txt
 create mode 100644 rdsn/src/runtime/build_config.h
 create mode 100644 rdsn/src/runtime/core_main.cpp
 create mode 100644 rdsn/src/runtime/dsn.layer2_types.cpp
 create mode 100644 rdsn/src/runtime/env.sim.cpp
 create mode 100644 rdsn/src/runtime/env.sim.h
 create mode 100644 rdsn/src/runtime/fault_injector.cpp
 create mode 100644 rdsn/src/runtime/global_config.cpp
 create mode 100644 rdsn/src/runtime/message_utils.cpp
 create mode 100644 rdsn/src/runtime/nativerun.cpp
 create mode 100644 rdsn/src/runtime/profiler.cpp
 create mode 100644 rdsn/src/runtime/profiler_header.h
 create mode 100644 rdsn/src/runtime/providers.common.cpp
 create mode 100644 rdsn/src/runtime/rpc/CMakeLists.txt
 create mode 100644 rdsn/src/runtime/rpc/asio_net_provider.cpp
 create mode 100644 rdsn/src/runtime/rpc/asio_net_provider.h
 create mode 100644 rdsn/src/runtime/rpc/asio_rpc_session.cpp
 create mode 100644 rdsn/src/runtime/rpc/asio_rpc_session.h
 create mode 100644 rdsn/src/runtime/rpc/dsn_message_parser.cpp
 create mode 100644 rdsn/src/runtime/rpc/dsn_message_parser.h
 create mode 100644 rdsn/src/runtime/rpc/message_parser.cpp
 create mode 100644 rdsn/src/runtime/rpc/message_parser_manager.h
 create mode 100644 rdsn/src/runtime/rpc/network.cpp
 create mode 100644 rdsn/src/runtime/rpc/network.sim.cpp
 create mode 100644 rdsn/src/runtime/rpc/network.sim.h
 create mode 100644 rdsn/src/runtime/rpc/raw_message_parser.cpp
 create mode 100644 rdsn/src/runtime/rpc/raw_message_parser.h
 create mode 100644 rdsn/src/runtime/rpc/request_meta.thrift
 create mode 100644 rdsn/src/runtime/rpc/rpc_engine.cpp
 create mode 100644 rdsn/src/runtime/rpc/rpc_engine.h
 create mode 100644 rdsn/src/runtime/rpc/rpc_message.cpp
 create mode 100644 rdsn/src/runtime/rpc/rpc_task.cpp
 create mode 100644 rdsn/src/runtime/rpc/thrift_message_parser.cpp
 create mode 100644 rdsn/src/runtime/rpc/thrift_message_parser.h
 create mode 100644 rdsn/src/runtime/scheduler.cpp
 create mode 100644 rdsn/src/runtime/scheduler.h
 create mode 100644 rdsn/src/runtime/security/CMakeLists.txt
 create mode 100644 rdsn/src/runtime/security/access_controller.cpp
 create mode 100644 rdsn/src/runtime/security/access_controller.h
 create mode 100644 rdsn/src/runtime/security/client_negotiation.cpp
 create mode 100644 rdsn/src/runtime/security/client_negotiation.h
 create mode 100644 rdsn/src/runtime/security/init.cpp
 create mode 100644 rdsn/src/runtime/security/init.h
 create mode 100644 rdsn/src/runtime/security/kinit_context.cpp
 create mode 100644 rdsn/src/runtime/security/kinit_context.h
 create mode 100644 rdsn/src/runtime/security/meta_access_controller.cpp
 create mode 100644 rdsn/src/runtime/security/meta_access_controller.h
 create mode 100644 rdsn/src/runtime/security/negotiation.cpp
 create mode 100644 rdsn/src/runtime/security/negotiation.h
 create mode 100644 rdsn/src/runtime/security/negotiation_manager.cpp
 create mode 100644 rdsn/src/runtime/security/negotiation_manager.h
 create mode 100644 rdsn/src/runtime/security/negotiation_utils.h
 create mode 100644 rdsn/src/runtime/security/replica_access_controller.cpp
 create mode 100644 rdsn/src/runtime/security/replica_access_controller.h
 create mode 100644 rdsn/src/runtime/security/sasl_client_wrapper.cpp
 create mode 100644 rdsn/src/runtime/security/sasl_client_wrapper.h
 create mode 100644 rdsn/src/runtime/security/sasl_init.cpp
 create mode 100644 rdsn/src/runtime/security/sasl_init.h
 create mode 100644 rdsn/src/runtime/security/sasl_server_wrapper.cpp
 create mode 100644 rdsn/src/runtime/security/sasl_server_wrapper.h
 create mode 100644 rdsn/src/runtime/security/sasl_wrapper.cpp
 create mode 100644 rdsn/src/runtime/security/sasl_wrapper.h
 create mode 100644 rdsn/src/runtime/security/security.thrift
 create mode 100644 rdsn/src/runtime/security/server_negotiation.cpp
 create mode 100644 rdsn/src/runtime/security/server_negotiation.h
 create mode 100644 rdsn/src/runtime/service_api_c.cpp
 create mode 100644 rdsn/src/runtime/service_engine.cpp
 create mode 100644 rdsn/src/runtime/service_engine.h
 create mode 100644 rdsn/src/runtime/sim_clock.h
 create mode 100644 rdsn/src/runtime/simulator.cpp
 create mode 100644 rdsn/src/runtime/task/CMakeLists.txt
 create mode 100644 rdsn/src/runtime/task/hpc_task_queue.cpp
 create mode 100644 rdsn/src/runtime/task/hpc_task_queue.h
 create mode 100644 rdsn/src/runtime/task/simple_task_queue.cpp
 create mode 100644 rdsn/src/runtime/task/simple_task_queue.h
 create mode 100644 rdsn/src/runtime/task/task.cpp
 create mode 100644 rdsn/src/runtime/task/task_code.cpp
 create mode 100644 rdsn/src/runtime/task/task_engine.cpp
 create mode 100644 rdsn/src/runtime/task/task_engine.h
 create mode 100644 rdsn/src/runtime/task/task_engine.sim.cpp
 create mode 100644 rdsn/src/runtime/task/task_engine.sim.h
 create mode 100644 rdsn/src/runtime/task/task_queue.cpp
 create mode 100644 rdsn/src/runtime/task/task_spec.cpp
 create mode 100644 rdsn/src/runtime/task/task_tracker.cpp
 create mode 100644 rdsn/src/runtime/task/task_worker.cpp
 create mode 100644 rdsn/src/runtime/test/CMakeLists.txt
 create mode 100644 rdsn/src/runtime/test/async_call.cpp
 create mode 100755 rdsn/src/runtime/test/clear.sh
 create mode 100644 rdsn/src/runtime/test/client_negotiation_test.cpp
 create mode 100644 rdsn/src/runtime/test/command.txt
 create mode 100644 rdsn/src/runtime/test/config-test-corrupt-message.ini
 create mode 100644 rdsn/src/runtime/test/config-test-sim.ini
 create mode 100644 rdsn/src/runtime/test/config-test.ini
 create mode 100644 rdsn/src/runtime/test/corrupt_message.cpp
 create mode 100644 rdsn/src/runtime/test/gtest.filter
 create mode 100644 rdsn/src/runtime/test/lpc.cpp
 create mode 100644 rdsn/src/runtime/test/main.cpp
 create mode 100644 rdsn/src/runtime/test/message_reader_test.cpp
 create mode 100644 rdsn/src/runtime/test/message_utils_test.cpp
 create mode 100644 rdsn/src/runtime/test/meta_access_controller_test.cpp
 create mode 100644 rdsn/src/runtime/test/negotiation_manager_test.cpp
 create mode 100644 rdsn/src/runtime/test/netprovider.cpp
 create mode 100644 rdsn/src/runtime/test/pipeline_test.cpp
 create mode 100644 rdsn/src/runtime/test/replica_access_controller_test.cpp
 create mode 100644 rdsn/src/runtime/test/rpc.cpp
 create mode 100644 rdsn/src/runtime/test/rpc_holder_test.cpp
 create mode 100644 rdsn/src/runtime/test/rpc_message.cpp
 create mode 100755 rdsn/src/runtime/test/run.sh
 create mode 100644 rdsn/src/runtime/test/server_negotiation_test.cpp
 create mode 100644 rdsn/src/runtime/test/service_api_c.cpp
 create mode 100644 rdsn/src/runtime/test/sim_lock.cpp
 create mode 100644 rdsn/src/runtime/test/task_engine.cpp
 create mode 100644 rdsn/src/runtime/test/task_test.cpp
 create mode 100644 rdsn/src/runtime/test/test_utils.h
 create mode 100644 rdsn/src/runtime/test/thrift_message_parser_test.cpp
 create mode 100644 rdsn/src/runtime/threadpool_code.cpp
 create mode 100644 rdsn/src/runtime/tool_api.cpp
 create mode 100644 rdsn/src/runtime/tracer.cpp
 create mode 100644 rdsn/src/runtime/zlocks.cpp
 create mode 100644 rdsn/src/tools/CMakeLists.txt
 create mode 100644 rdsn/src/tools/mutation_log_tool.cpp
 create mode 100644 rdsn/src/utils/CMakeLists.txt
 create mode 100644 rdsn/src/utils/alloc.cpp
 create mode 100644 rdsn/src/utils/binary_reader.cpp
 create mode 100644 rdsn/src/utils/binary_writer.cpp
 create mode 100644 rdsn/src/utils/clock.cpp
 create mode 100644 rdsn/src/utils/command_manager.cpp
 create mode 100644 rdsn/src/utils/config_api.cpp
 create mode 100644 rdsn/src/utils/configuration.cpp
 create mode 100644 rdsn/src/utils/coredump.h
 create mode 100644 rdsn/src/utils/coredump.posix.cpp
 create mode 100644 rdsn/src/utils/crc.cpp
 create mode 100644 rdsn/src/utils/error_code.cpp
 create mode 100644 rdsn/src/utils/fail_point.cpp
 create mode 100644 rdsn/src/utils/fail_point_impl.h
 create mode 100644 rdsn/src/utils/filesystem.cpp
 create mode 100644 rdsn/src/utils/flags.cpp
 create mode 100644 rdsn/src/utils/gpid.cpp
 create mode 100644 rdsn/src/utils/latency_tracer.cpp
 create mode 100644 rdsn/src/utils/lockp.std.h
 create mode 100644 rdsn/src/utils/logging.cpp
 create mode 100644 rdsn/src/utils/long_adder.cpp
 copy docker/ci-env/Dockerfile => rdsn/src/utils/long_adder_bench/CMakeLists.txt (55%)
 create mode 100644 rdsn/src/utils/long_adder_bench/long_adder_bench.cpp
 create mode 100644 rdsn/src/utils/math.cpp
 create mode 100644 rdsn/src/utils/memutil.h
 create mode 100644 rdsn/src/utils/metrics.cpp
 create mode 100644 rdsn/src/utils/output_utils.cpp
 create mode 100644 rdsn/src/utils/process_utils.cpp
 create mode 100644 rdsn/src/utils/rand.cpp
 create mode 100644 rdsn/src/utils/rpc_address.cpp
 create mode 100644 rdsn/src/utils/safe_strerror_posix.cpp
 create mode 100644 rdsn/src/utils/shared_io_service.cpp
 create mode 100644 rdsn/src/utils/shared_io_service.h
 create mode 100644 rdsn/src/utils/simple_logger.cpp
 create mode 100644 rdsn/src/utils/simple_logger.h
 create mode 100644 rdsn/src/utils/string_view.cpp
 create mode 100644 rdsn/src/utils/strings.cpp
 create mode 100644 rdsn/src/utils/test/CMakeLists.txt
 create mode 100644 rdsn/src/utils/test/TokenBucketTest.cpp
 create mode 100644 rdsn/src/utils/test/TokenBucketTest.h
 create mode 100644 rdsn/src/utils/test/address.cpp
 create mode 100644 rdsn/src/utils/test/autoref_ptr_test.cpp
 create mode 100644 rdsn/src/utils/test/binary_reader_test.cpp
 create mode 100755 rdsn/src/utils/test/clear.sh
 create mode 100644 rdsn/src/utils/test/command_manager.cpp
 create mode 100644 rdsn/src/utils/test/config-bad-section.ini
 create mode 100644 rdsn/src/utils/test/config-dup-key.ini
 create mode 100644 rdsn/src/utils/test/config-dup-section.ini
 create mode 100644 rdsn/src/utils/test/config-empty.ini
 create mode 100644 rdsn/src/utils/test/config-no-key.ini
 create mode 100644 rdsn/src/utils/test/config-no-section.ini
 create mode 100644 rdsn/src/utils/test/config-null-section.ini
 create mode 100644 rdsn/src/utils/test/config-sample.ini
 create mode 100644 rdsn/src/utils/test/config-unmatch-section.ini
 create mode 100644 rdsn/src/utils/test/configuration.cpp
 create mode 100644 rdsn/src/utils/test/endian_test.cpp
 create mode 100644 rdsn/src/utils/test/env.cpp
 create mode 100644 rdsn/src/utils/test/fail_point_test.cpp
 create mode 100644 rdsn/src/utils/test/file_system_test.cpp
 create mode 100644 rdsn/src/utils/test/file_utils.cpp
 create mode 100644 rdsn/src/utils/test/flag_test.cpp
 create mode 100644 rdsn/src/utils/test/fmt_logging_test.cpp
 create mode 100644 rdsn/src/utils/test/hostname_test.cpp
 create mode 100644 rdsn/src/utils/test/join_point_test.cpp
 create mode 100644 rdsn/src/utils/test/json_helper_test.cpp
 create mode 100644 rdsn/src/utils/test/latency_tracer_test.cpp
 create mode 100644 rdsn/src/utils/test/lock.std.cpp
 create mode 100644 rdsn/src/utils/test/logger.cpp
 create mode 100644 rdsn/src/utils/test/logging.cpp
 create mode 100644 rdsn/src/utils/test/long_adder_test.cpp
 create mode 100644 rdsn/src/utils/test/main.cpp
 create mode 100644 rdsn/src/utils/test/memutil_test.cpp
 create mode 100644 rdsn/src/utils/test/metrics_test.cpp
 copy docker/ci-env/Dockerfile => rdsn/src/utils/test/nth_element_bench/CMakeLists.txt (55%)
 create mode 100644 rdsn/src/utils/test/nth_element_bench/nth_element_bench.cpp
 create mode 100644 rdsn/src/utils/test/nth_element_test.cpp
 create mode 100644 rdsn/src/utils/test/nth_element_utils.h
 create mode 100644 rdsn/src/utils/test/output_utils_test.cpp
 create mode 100644 rdsn/src/utils/test/percentile_utils.h
 create mode 100644 rdsn/src/utils/test/priority_queue.cpp
 create mode 100644 rdsn/src/utils/test/rand_test.cpp
 create mode 100755 rdsn/src/utils/test/run.sh
 create mode 100644 rdsn/src/utils/test/sema.cpp
 create mode 100644 rdsn/src/utils/test/smart_pointers_test.cpp
 create mode 100644 rdsn/src/utils/test/string_conv_test.cpp
 create mode 100644 rdsn/src/utils/test/string_view_test.cpp
 create mode 100644 rdsn/src/utils/test/time_utils_test.cpp
 create mode 100644 rdsn/src/utils/test/token_bucket_throttling_controller_test.cpp
 create mode 100644 rdsn/src/utils/test/token_buckets_test.cpp
 create mode 100644 rdsn/src/utils/test/utils.cpp
 create mode 100644 rdsn/src/utils/thread_access_checker.cpp
 create mode 100644 rdsn/src/utils/throttling_controller.cpp
 create mode 100644 rdsn/src/utils/throttling_controller.h
 create mode 100644 rdsn/src/utils/time_utils.cpp
 create mode 100644 rdsn/src/utils/token_bucket_throttling_controller.cpp
 create mode 100644 rdsn/src/utils/token_buckets.cpp
 create mode 100644 rdsn/src/utils/utils.cpp
 create mode 100644 rdsn/src/utils/zlock_provider.h
 create mode 100644 rdsn/src/zookeeper/CMakeLists.txt
 create mode 100644 rdsn/src/zookeeper/distributed_lock_service_zookeeper.cpp
 create mode 100644 rdsn/src/zookeeper/distributed_lock_service_zookeeper.h
 create mode 100644 rdsn/src/zookeeper/lock_struct.cpp
 create mode 100644 rdsn/src/zookeeper/lock_struct.h
 create mode 100644 rdsn/src/zookeeper/lock_types.h
 create mode 100644 rdsn/src/zookeeper/test/CMakeLists.txt
 create mode 100755 rdsn/src/zookeeper/test/clear.sh
 create mode 100644 rdsn/src/zookeeper/test/config-test.ini
 create mode 100644 rdsn/src/zookeeper/test/distributed_lock_zookeeper.cpp
 create mode 100644 rdsn/src/zookeeper/test/main.cpp
 create mode 100755 rdsn/src/zookeeper/test/run.sh
 create mode 100644 rdsn/src/zookeeper/zookeeper_error.cpp
 create mode 100644 rdsn/src/zookeeper/zookeeper_error.h
 create mode 100644 rdsn/src/zookeeper/zookeeper_session.cpp
 create mode 100644 rdsn/src/zookeeper/zookeeper_session.h
 create mode 100644 rdsn/src/zookeeper/zookeeper_session_mgr.cpp
 create mode 100644 rdsn/src/zookeeper/zookeeper_session_mgr.h
 create mode 100644 rdsn/thirdparty/CMakeLists.txt
 create mode 100644 rdsn/thirdparty/fix_fds_for_macos.patch
 create mode 100644 rdsn/thirdparty/fix_s2_for_aarch64.patch
 create mode 100644 rdsn/thirdparty/fix_thrift_for_cpp11.patch


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pegasus.apache.org
For additional commands, e-mail: commits-help@pegasus.apache.org