[RocksJava] BackupableDBOptions alginment + 3.8

- Updated the BackupableDBOptions functionality to 3.8.0.
- Aligned Options implementation with remaining source code.
- Invented test-case.
[RocksJava] Backupable/Restorable DB update 3.8.0

- GarbageCollectMethod() available.
- GetCorruptedBackups() available.
[RocksJava] Improved BackupableDBTest

- Splitted methods to meaningful tests
- Added tests for additional functionality
- Covered missing parts
[RocksJava] Cleanup Backupable implementations

- Correct usage of isInitialized()
- Adjusted JavaDoc
[RocksJava] Lint adjustments
[RocksJava] Integrated changes from D29019.
Merge pull request #404 from fyrz/RocksJava-Backup-Restore-3.8

[RocksJava] Update BackupableDB and RestoreBackupableDB to 3.8.0.
Fix mac compile
Clean up StringSplit

Summary: stringSplit is not how we name our functions. Also, we had two StringSplit's in the codebase

Test Plan: make check

Reviewers: yhchiang, dhruba

Reviewed By: dhruba

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D29361
Provide default implementation of LinkFile, don't break the build

Summary: By providing default implementation of LinkFile, we don't break other implementations of Env.

Test Plan: none

Reviewers: rven, dhruba

Reviewed By: dhruba

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D29355
Improve listener_test by ensuring flushes are completed before assert.

Summary: Improve listener_test by ensuring flushes are completed before assert.

Test Plan: listener_test

Reviewers: ljin, sdong, igor

Reviewed By: igor

Subscribers: dhruba, leveldb

Differential Revision: https://reviews.facebook.net/D29319
Fixed iOS build caused by GetThreadList feature.

Summary:
Fixed iOS build caused by GetThreadList feature.
Fix db_bench on CLANG mode

Summary: "build all" breaks in Clang mode with db_bench. Fix it.

Test Plan: USE_CLANG=1 make all

Reviewers: ljin, rven, yhchiang, igor

Reviewed By: igor

Subscribers: leveldb, dhruba

Differential Revision: https://reviews.facebook.net/D29379
Make arena use hugepage if possible

Summary:
arena doesn't use huge page by default. This change will make it happen
if possible. A new paramerter is added for Arena(). If it's set, Arena
will use huge page always. If huge page allocation fails, Arena
allocation will fallback to malloc().

Test Plan:
Change util/arena_test to support huge page allocation.
Run below tests:
1. normal regression test:
  make check
2. Check if huge page allocation works
  echo 50 > /proc/sys/vm/nr_hugepages
  make check

Reviewers: sdong

Reviewed By: sdong

Subscribers: dhruba

Differential Revision: https://reviews.facebook.net/D28647