libpmemobj-cpp icon indicating copy to clipboard operation
libpmemobj-cpp copied to clipboard

concurrent_hash_map tests fail to compile with newset (2021) tbb

Open igchor opened this issue 4 years ago • 2 comments

ISSUE: concurrent_hash_map tests fail to compile with newset (2021) tbb

Environment Information

  • libpmemobj-cpp version(s): master
  • PMDK (libpmemobj) package version(s):
  • OS(es) version(s):
  • kernel version(s):
  • compiler, libraries, packaging and other related tools version(s):

and possibly:

  • TBB version(s): 2021
  • ndctl version(s):

Please provide a reproduction of the bug:

make

How often bug is revealed:

always

Details

In tbb 2021 name of some protected members in tbb:spin_rw_mutex::scoped_locke were change (is_write -> m_is_write). Since we use them in concurrent_hash_map in tests with tbb there is a compilation error.

Additional information about Priority and Help Requested:

Are you willing to submit a pull request with a proposed change? (Yes, No)

Requested priority: (Showstopper, High, Medium, Low)

igchor avatar Dec 07 '20 11:12 igchor

ideally, you'd remove the dependency on internal variables entirely since the alternative approach would be to include a compile-time version check.

pbalcer avatar Dec 07 '20 12:12 pbalcer

Yes, tbb should expose a public interface to query for the information we need (whether the lock is in read or write mode).

igchor avatar Dec 07 '20 13:12 igchor