On the fsx-1.10 branch: Begin using the batch-fsync mechanism in FSX transactions.
On the fsx-1.10 branch:
Begin using the batch-fsync mechanism in FSX transactions.

This commit simply adds the BATCH instance and merely uses it for
fsync'ing the shard folder creation. It hardly speeds up anything
but puts the new code into action.

We also move the shard creation to the beginning of the commit process
to allow rev data files to be placed there from the start instead of
moving them there later on.  This does *not* introduce new temporary
on-disk state because we always can have a commit failing just after
creating the shard and before putting any data in it.

* subversion/libsvn_fs_x/transaction.c
  (auto_create_shard): New utility function to create shard folders.
  (commit_body): Call it here instead of using local code to do it.
                 Add the fsync BATCH instance.

git-svn-id: 40002ad72c45bcd78a61b73a7ab5afec77c4e304@1685991 13f79535-47bb-0310-9956-ffa450edef68

YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion,YueLinHo/Subversion