Fix compile error with jemalloc (#4488)

Summary:
The "je_" prefix of jemalloc APIs presents only when the macro `JEMALLOC_NO_RENAME` from jemalloc.h presents.

With the patch I'm also adding -DROCKSDB_JEMALLOC flag in buck TARGETS.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4488

Differential Revision: D10355971

Pulled By: yiwu-arbug

fbshipit-source-id: 03a2d69790a44ac89219c7525763fa937a63d95a
This commit is contained in:
Yi Wu 2018-10-12 11:48:52 -07:00 committed by Facebook Github Bot
parent 6422356a27
commit 6f8d4bdff1

View File

@ -18,9 +18,11 @@ namespace rocksdb {
#ifdef ROCKSDB_JEMALLOC #ifdef ROCKSDB_JEMALLOC
#ifdef __FreeBSD__ #ifdef __FreeBSD__
#include <malloc_np.h> #include <malloc_np.h>
#define je_malloc_stats_print malloc_stats_print
#else #else
#include "jemalloc/jemalloc.h" #include "jemalloc/jemalloc.h"
#ifdef JEMALLOC_NO_RENAME
#define malloc_stats_print je_malloc_stats_print
#endif
#endif #endif
typedef struct { typedef struct {
@ -48,7 +50,7 @@ void DumpMallocStats(std::string* stats) {
std::unique_ptr<char[]> buf{new char[kMallocStatusLen + 1]}; std::unique_ptr<char[]> buf{new char[kMallocStatusLen + 1]};
mstat.cur = buf.get(); mstat.cur = buf.get();
mstat.end = buf.get() + kMallocStatusLen; mstat.end = buf.get() + kMallocStatusLen;
je_malloc_stats_print(GetJemallocStatus, &mstat, ""); malloc_stats_print(GetJemallocStatus, &mstat, "");
stats->append(buf.get()); stats->append(buf.get());
} }
#else #else