{"action":"opened","issue":{"url":"https://api.github.com/repos/grpc/grpc/issues/4664","labels_url":"https://api.github.com/repos/grpc/grpc/issues/4664/labels{/name}","comments_url":"https://api.github.com/repos/grpc/grpc/issues/4664/comments","events_url":"https://api.github.com/repos/grpc/grpc/issues/4664/events","html_url":"https://github.com/grpc/grpc/issues/4664","id":125925650,"number":4664,"title":"Memory leak in cpp async server","user":{"login":"pszemus","id":13220781,"avatar_url":"https://avatars.githubusercontent.com/u/13220781?v=3","gravatar_id":"","url":"https://api.github.com/users/pszemus","html_url":"https://github.com/pszemus","followers_url":"https://api.github.com/users/pszemus/followers","following_url":"https://api.github.com/users/pszemus/following{/other_user}","gists_url":"https://api.github.com/users/pszemus/gists{/gist_id}","starred_url":"https://api.github.com/users/pszemus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pszemus/subscriptions","organizations_url":"https://api.github.com/users/pszemus/orgs","repos_url":"https://api.github.com/users/pszemus/repos","events_url":"https://api.github.com/users/pszemus/events{/privacy}","received_events_url":"https://api.github.com/users/pszemus/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-01-11T11:43:33Z","updated_at":"2016-01-11T11:43:33Z","closed_at":null,"body":"I've modified \r\nhttps://github.com/grpc/grpc/blob/master/examples/cpp/helloworld/greeter_async_server.cc\r\na bit to expose a memory leak while creating & destroying an async cpp server (handling requests is commented out, protobuf library is properly deinitialized):\r\n```\r\ndiff --git a/examples/cpp/helloworld/greeter_async_server.cc b/examples/cpp/helloworld/greeter_async_server.cc\r\nindex d06e7c7..446ed93 100644\r\n--- a/examples/cpp/helloworld/greeter_async_server.cc\r\n+++ b/examples/cpp/helloworld/greeter_async_server.cc\r\n@@ -76,7 +76,7 @@ class ServerImpl final {\r\n     std::cout << \"Server listening on \" << server_address << std::endl;\r\n \r\n     // Proceed to the server's main loop.\r\n-    HandleRpcs();\r\n+    //HandleRpcs();\r\n   }\r\n \r\n  private:\r\n@@ -174,6 +174,7 @@ class ServerImpl final {\r\n int main(int argc, char** argv) {\r\n   ServerImpl server;\r\n   server.Run();\r\n+  google::protobuf::ShutdownProtobufLibrary();\r\n \r\n   return 0;\r\n }\r\n```\r\nAfter running this altered code valgrind reports a memory leak:\r\n```\r\n$ GRPC_TRACE=api valgrind --leak-check=full ./greeter_async_server\r\n==3078== Memcheck, a memory error detector\r\n==3078== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.\r\n==3078== Using Valgrind-3.10.0 and LibVEX; rerun with -h for copyright info\r\n==3078== Command: ./greeter_async_server\r\n==3078== \r\nI0111 12:42:30.160779565    3078 init.c:135]                 grpc_init(void)\r\nI0111 12:42:30.218741696    3078 completion_queue.c:121]     grpc_completion_queue_create(reserved=(nil))\r\nI0111 12:42:30.230137596    3078 init.c:135]                 grpc_init(void)\r\nI0111 12:42:30.230704277    3078 init.c:135]                 grpc_init(void)\r\nI0111 12:42:30.230907148    3078 completion_queue.c:121]     grpc_completion_queue_create(reserved=(nil))\r\nI0111 12:42:30.234991422    3078 server_create.c:49]         grpc_server_create(0xffefff790, (nil))\r\nI0111 12:42:30.248293714    3078 server.c:765]               grpc_server_register_completion_queue(server=0x7cfa610, cq=0x7cfa290, reserved=(nil))\r\nI0111 12:42:30.249892021    3078 server.c:765]               grpc_server_register_completion_queue(server=0x7cfa610, cq=0x7cf99e0, reserved=(nil))\r\nI0111 12:42:30.251688986    3078 server.c:845]               grpc_server_register_method(server=0x7cfa610, method=/helloworld.Greeter/SayHello, host=(null))\r\nI0111 12:42:30.255102858    3078 server_chttp2.c:96]         grpc_server_add_insecure_http2_port(server=0x7cfa610, addr=0.0.0.0:50051)\r\nI0111 12:42:30.295202473    3078 server.c:873]               grpc_server_start(server=0x7cfa610)\r\nI0111 12:42:30.301384151    3078 call_details.c:42]          grpc_call_details_init(cd=0x7dbc028)\r\nI0111 12:42:30.305630369    3078 server.c:1173]              grpc_server_request_call(server=0x7cfa610, call=0x7dbc008, details=0x7dbc028, initial_metadata=0x7dbc010, cq_bound_to_call=0x7cf99e0, cq_for_notification=0x7cf99e0, tag=0x7dbbfd0)\r\nServer listening on 0.0.0.0:50051\r\nI0111 12:42:30.379570672    3078 server.c:1006]              grpc_server_shutdown_and_notify(server=0x7cfa610, cq=0x7cfa290, tag=0x7dbc8e0)\r\nI0111 12:42:30.397324017    3078 completion_queue.c:448]     grpc_completion_queue_shutdown(cc=0x7cfa290)\r\nI0111 12:42:30.402464606    3078 completion_queue.c:291]     grpc_completion_queue_next(cc=0x7cfa290, deadline=gpr_timespec { tv_sec: 9223372036854775807, tv_nsec: 0, clock_type: 0 }, reserved=(nil))\r\nI0111 12:42:30.409047019    3078 completion_queue.c:328]     RETURN_EVENT[0x7cfa290]: OP_COMPLETE: tag:0x7dbc8e0 OK\r\nI0111 12:42:30.410720668    3078 completion_queue.c:291]     grpc_completion_queue_next(cc=0x7cfa290, deadline=gpr_timespec { tv_sec: 9223372036854775807, tv_nsec: 0, clock_type: 0 }, reserved=(nil))\r\nI0111 12:42:30.411803399    3078 completion_queue.c:328]     RETURN_EVENT[0x7cfa290]: QUEUE_SHUTDOWN\r\nI0111 12:42:30.413615559    3078 completion_queue.c:448]     grpc_completion_queue_shutdown(cc=0x7cf99e0)\r\nI0111 12:42:30.417069956    3078 completion_queue.c:291]     grpc_completion_queue_next(cc=0x7cfa290, deadline=gpr_timespec { tv_sec: 9223372036854775807, tv_nsec: 0, clock_type: 1 }, reserved=(nil))\r\nI0111 12:42:30.417458816    3078 completion_queue.c:328]     RETURN_EVENT[0x7cfa290]: QUEUE_SHUTDOWN\r\nI0111 12:42:30.418044570    3078 server.c:1072]              grpc_server_destroy(server=0x7cfa610)\r\nI0111 12:42:30.420888293    3078 completion_queue.c:467]     grpc_completion_queue_destroy(cc=0x7cfa290)\r\nI0111 12:42:30.421210864    3078 completion_queue.c:448]     grpc_completion_queue_shutdown(cc=0x7cfa290)\r\nI0111 12:42:30.422069781    3078 init.c:140]                 grpc_shutdown(void)\r\nI0111 12:42:30.422660930    3078 init.c:140]                 grpc_shutdown(void)\r\nI0111 12:42:30.424873125    3078 completion_queue.c:467]     grpc_completion_queue_destroy(cc=0x7cf99e0)\r\nI0111 12:42:30.424982933    3078 completion_queue.c:448]     grpc_completion_queue_shutdown(cc=0x7cf99e0)\r\nI0111 12:42:30.425084406    3078 init.c:140]                 grpc_shutdown(void)\r\n==3078== \r\n==3078== HEAP SUMMARY:\r\n==3078==     in use at exit: 5,244,979 bytes in 20 blocks\r\n==3078==   total heap usage: 1,065 allocs, 1,045 frees, 5,299,361 bytes allocated\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 1 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450E2: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AF5C: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 2 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450E2: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AFCA: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 3 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AFFE: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 4 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4329B7: grpc_channel_args_copy_and_add (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B03D: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 5 of 20\r\n==3078==    at 0x4C2BB4A: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x4436B9: gpr_realloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AE1A: grpc_server_register_completion_queue (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126CE: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 6 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450E2: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B19D: grpc_server_register_method (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x413B8F: grpc::Server::RegisterAsyncService(std::string const*, grpc::AsynchronousService*) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4127A4: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 16 bytes in 1 blocks are possibly lost in loss record 7 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B31F: grpc_server_start (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4147C7: grpc::Server::Start(grpc::ServerCompletionQueue**, unsigned long) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x412840: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 29 bytes in 1 blocks are possibly lost in loss record 8 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4452BE: gpr_strdup (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B1A9: grpc_server_register_method (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x413B8F: grpc::Server::RegisterAsyncService(std::string const*, grpc::AsynchronousService*) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4127A4: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 33 bytes in 1 blocks are possibly lost in loss record 9 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4452BE: gpr_strdup (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x43289B: ??? (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x432A23: grpc_channel_args_copy_and_add (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B03D: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 40 bytes in 1 blocks are possibly lost in loss record 10 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4329E3: grpc_channel_args_copy_and_add (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B03D: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 48 bytes in 1 blocks are possibly lost in loss record 11 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B135: grpc_server_register_method (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x413B8F: grpc::Server::RegisterAsyncService(std::string const*, grpc::AsynchronousService*) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4127A4: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 48 bytes in 1 blocks are possibly lost in loss record 12 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x4C2BACB: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x4436B9: gpr_realloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B807: grpc_server_shutdown_and_notify (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4150E4: grpc::Server::ShutdownInternal(gpr_timespec) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D9F7: grpc::Server::Shutdown() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DA69: ServerImpl::~ServerImpl() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D954: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 336 bytes in 1 blocks are possibly lost in loss record 13 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x420DC5: grpc_completion_queue_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x410ECF: grpc::CompletionQueue::CompletionQueue() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4120F2: grpc::ServerBuilder::AddCompletionQueue() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC09: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 336 bytes in 1 blocks are possibly lost in loss record 14 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x420DC5: grpc_completion_queue_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x410ECF: grpc::CompletionQueue::CompletionQueue() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414ED5: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 360 bytes in 1 blocks are possibly lost in loss record 15 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AEAA: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 712 bytes in 1 blocks are possibly lost in loss record 16 of 20\r\n==3078==    at 0x4C2A105: operator new(unsigned long) (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x414A99: grpc::Server::Start(grpc::ServerCompletionQueue**, unsigned long) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x412840: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 262,159 bytes in 1 blocks are possibly lost in loss record 17 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4436EE: gpr_malloc_aligned (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450FF: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AF5C: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 262,159 bytes in 1 blocks are possibly lost in loss record 18 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4436EE: gpr_malloc_aligned (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450FF: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AFCA: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 262,159 bytes in 1 blocks are possibly lost in loss record 19 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4436EE: gpr_malloc_aligned (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4450FF: gpr_stack_lockfree_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42B19D: grpc_server_register_method (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x413B8F: grpc::Server::RegisterAsyncService(std::string const*, grpc::AsynchronousService*) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4127A4: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== 4,456,448 bytes in 1 blocks are possibly lost in loss record 20 of 20\r\n==3078==    at 0x4C29BFD: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)\r\n==3078==    by 0x443689: gpr_malloc (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x42AFE8: grpc_server_create_from_filters (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4296D5: grpc_server_create (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x414F5E: grpc::Server::Server(grpc::ThreadPoolInterface*, bool, int, grpc::ChannelArguments const&) (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x4126A9: grpc::ServerBuilder::BuildAndStart() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40DC41: ServerImpl::Run() (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078==    by 0x40D93E: main (in /opt/WP/common.libs/grpc/examples/cpp/helloworld/greeter_async_server)\r\n==3078== \r\n==3078== LEAK SUMMARY:\r\n==3078==    definitely lost: 0 bytes in 0 blocks\r\n==3078==    indirectly lost: 0 bytes in 0 blocks\r\n==3078==      possibly lost: 5,244,979 bytes in 20 blocks\r\n==3078==    still reachable: 0 bytes in 0 blocks\r\n==3078==         suppressed: 0 bytes in 0 blocks\r\n==3078== \r\n==3078== For counts of detected and suppressed errors, rerun with: -v\r\n==3078== ERROR SUMMARY: 20 errors from 20 contexts (suppressed: 1 from 1)\r\n```"}}