Skip to content

remove #include port/port.h in public header file#2336

Closed
lightmark wants to merge 3 commits intofacebook:masterfrom
lightmark:remove_include_internal_header
Closed

remove #include port/port.h in public header file#2336
lightmark wants to merge 3 commits intofacebook:masterfrom
lightmark:remove_include_internal_header

Conversation

@lightmark
Copy link
Copy Markdown
Contributor

break internal build

Copy link
Copy Markdown
Contributor

@yiwu-arbug yiwu-arbug left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

Copy link
Copy Markdown
Contributor

@yiwu-arbug yiwu-arbug left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please remove the include from iostat_context.h as well. Thanks!

@facebook-github-bot
Copy link
Copy Markdown
Contributor

@lightmark updated the pull request - view changes

@facebook-github-bot
Copy link
Copy Markdown
Contributor

@yiwu-arbug has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.

@facebook-github-bot
Copy link
Copy Markdown
Contributor

@lightmark updated the pull request - view changes - changes since last import

@facebook-github-bot
Copy link
Copy Markdown
Contributor

@lightmark has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.

@igorcanadi
Copy link
Copy Markdown
Contributor

This PR does not fully fix the issue. Public headers should not reference RocksDB-specific macros (like ROCKSDB_SUPPORT_THREAD_LOCAL in this case). When external projects are compiled against public headers, they do not have this macro defined.

This leads to a compile error such as this:

[2017/05/22 11:48:17.477] /opt/mongodbtoolchain/v2/lib/gcc/x86_64-mongodb-linux/5.4.0/../../../../x86_64-mongodb-linux/bin/ld.gold: error: /data/mci/dd5d58edfe22a7fe3dd43b2b9a7c4dda/rocksdb/librocksdb.a(instrumented_mutex.o): symbol 'rocksdb::perf_context' used as both __thread and non-__thread

@lightmark
Copy link
Copy Markdown
Contributor Author

@igorcanadi Yes, we realized that the introduction of this flag to public header files may be wrong. I have reverted it from 5.5 release. We need to figure out how to deal with it in master.

@lightmark
Copy link
Copy Markdown
Contributor Author

@igorcanadi #2380 may solve the problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants