As it turns out, allocating memory from the OS in a multi-threaded
environment is relatively costly.  With APR pools, this happens
every time we use a newly created root pool.

Therefore, teach svnserve to recycle the connection pools, keeping
those precious memory blocks allocated instead of disposing and
re-allocating them.

* subversion/svnserve/svnserve.c
  (connection_pools,
   connection_pools_mutex): new global data structures
  (initialize_connection_pools,
   acquire_connection_pool_internal,
   acquire_connection_pool,
   release_connection_pool): functions to init, get and recycle the pools
  (release_shared_pool,
   main): recycle!

git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1523465 13f79535-47bb-0310-9956-ffa450edef68