MB-12712 Update file pointer correctly

The spatial views use the native updater to update the ID b-tree. The spatial
views are *not* using the native updater, but are updated from within Erlang.

This means that both, the native updater in C as well as Erlang writes into
the same spatial view file. Hence the writing needs to be coordinated so that
they don't write to the file, while the other side is writing to the file.

The Erlang side is therefore waiting until the native updater is done with
processing the updates.

Change-Id: Ie3fbb78a3c9d2abf5abfe613d7b8f2b21a82dfd2
Reviewed-on: http://review.couchbase.org/43683
Tested-by: buildbot <build@couchbase.com>
Reviewed-by: Nimish Gupta <nimish@couchbase.com>