facebook / mcrouter

Mcrouter is a memcached protocol router for scaling memcached deployments.
MIT License
3.26k stars 534 forks source link

mcrouter rpm on amazon linux 2023 #448

Open vj0303 opened 3 months ago

vj0303 commented 3 months ago

Please provide a rpm or procedure to compile a rpm for mcrouter ? The current method fails for all dependencies.

Looking for Mcrouter and all supporting rpms like folly, fizz, wangle .

Folly failed with errors

...failed updating 27 targets...
...skipped 5 targets...
...updated 17919 targets...
Command '['/tmp/fbcode_builder_getdeps-ZrootZfollyZbuildZfbcode_builder-root/extracted/boost-boost_1_83_0.tar.gz/boost_1_83_0/b2', '-j2', '--prefix=/tmp/fbcode_builder_getdeps-ZrootZfollyZbuildZfbcode_builder-root/installed/boost-KxwphNYZB5ehYEhfSNfHPYzR8fkPTi1q4I-1p8gQzhk', '--builddir=/tmp/fbcode_builder_getdeps-ZrootZfollyZbuildZfbcode_builder-root/build/boost-KxwphNYZB5ehYEhfSNfHPYzR8fkPTi1q4I-1p8gQzhk', '--with-atomic', '--with-chrono', '--with-container', '--with-context', '--with-contract', '--with-coroutine', '--with-date_time', '--with-exception', '--with-fiber', '--with-filesystem', '--with-graph', '--with-graph_parallel', '--with-iostreams', '--with-locale', '--with-log', '--with-math', '--with-mpi', '--with-program_options', '--with-python', '--with-random', '--with-regex', '--with-serialization', '--with-stacktrace', '--with-system', '--with-test', '--with-thread', '--with-timer', '--with-type_erasure', 'pch=off', 'link=static', 'runtime-link=shared', 'variant=release', 'threading=multi', 'debug-symbols=on', 'visibility=global', '-d2', 'install']' returned non-zero exit status 1.
!! Failed

[root@ip-1XX-XX-XX-XX folly]# sudo ./build/fbcode_builder/getdeps.py install-system-deps --recursive I don't know how to install any packages on this system linux-amazon-2023

vj0303 commented 2 months ago

We're able to get through above error but build of folly failed with error


/build/folly/folly/dynamic.cpp:326:3: note: in expansion of macro ‘FB_DYNAMIC_APPLY’
  326 |   FB_DYNAMIC_APPLY(t, FB_X);
      |   ^~~~~~~~~~~~~~~~
/build/folly/folly/dynamic.cpp: In member function ‘void folly::dynamic::destroy()’:
/build/folly/folly/dynamic.cpp:115:9: error: ‘CHECK’ was not declared in this scope
  115 |         CHECK(0);                     \
      |         ^~~~~
/build/folly/folly/dynamic.cpp:337:3: note: in expansion of macro ‘FB_DYNAMIC_APPLY’
  337 |   FB_DYNAMIC_APPLY(type_, FB_X);
      |   ^~~~~~~~~~~~~~~~
[222/987] Building CXX object CMakeFiles/concurrent_hash_map_test.dir/folly/concurrency/test/ConcurrentHashMapTest.cpp.o
In file included from /build/folly/folly/synchronization/Hazptr.h:21,
                 from /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:27,
                 from /build/folly/folly/concurrency/ConcurrentHashMap.h:23,
                 from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
In destructor ‘folly::hazptr_array<M, Atom>::~hazptr_array() [with unsigned char M = 2; Atom = std::atomic]’,
    inlined from ‘folly::hazptr_array<M, Atom> folly::make_hazard_pointer_array() [with unsigned char M = 2; Atom = std::atomic]’ at /build/folly/folly/synchronization/HazptrHolder.h:349:1,
    inlined from ‘folly::detail::concurrenthashmap::simd::SIMDTable<KeyType, ValueType, ShardBits, HashFn, KeyEqual, Allocator, Atom, Mutex>::Iterator::Iterator() [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; unsigned char ShardBits = 8; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; Atom = std::atomic; Mutex = std::mutex]’ at /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:1056:11,
    inlined from ‘folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator::ConstIterator(const folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>*, uint64_t) [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::simd::SIMDTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:608:44,
    inlined from ‘folly::Optional<folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator> folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::assign(Key&&, Value&&) [with Key = unsigned int&; Value = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value&; KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::simd::SIMDTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:384:19,
    inlined from ‘gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::<lambda()>’ at /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:746:9:
/build/folly/folly/synchronization/HazptrHolder.h:268:9: warning: ‘res.folly::ConcurrentHashMap<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody::big_value, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, 8, std::atomic, std::mutex, folly::detail::concurrenthashmap::simd::SIMDTable>::ConstIterator::it_.folly::detail::concurrenthashmap::simd::SIMDTable<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody::big_value, 8, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, std::atomic, std::mutex>::Iterator::hazptrs_.folly::hazptr_array<2, std::atomic>::empty_’ may be used uninitialized [-Wmaybe-uninitialized]
  268 |     if (empty_) {
      |         ^~~~~~
In file included from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
/build/folly/folly/concurrency/ConcurrentHashMap.h: In lambda function:
/build/folly/folly/concurrency/ConcurrentHashMap.h:384:19: note: ‘res’ declared here
  384 |     ConstIterator res(this, segment);
      |                   ^~~
In file included from /build/folly/folly/synchronization/Hazptr.h:21,
                 from /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:27,
                 from /build/folly/folly/concurrency/ConcurrentHashMap.h:23,
                 from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
In member function ‘void folly::hazptr_holder<Atom>::reset_protection(std::nullptr_t) [with Atom = std::atomic]’,
    inlined from ‘folly::hazptr_array<M, Atom>::~hazptr_array() [with unsigned char M = 2; Atom = std::atomic]’ at /build/folly/folly/synchronization/HazptrHolder.h:281:28,
    inlined from ‘folly::hazptr_array<M, Atom> folly::make_hazard_pointer_array() [with unsigned char M = 2; Atom = std::atomic]’ at /build/folly/folly/synchronization/HazptrHolder.h:349:1,
    inlined from ‘folly::detail::concurrenthashmap::simd::SIMDTable<KeyType, ValueType, ShardBits, HashFn, KeyEqual, Allocator, Atom, Mutex>::Iterator::Iterator() [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; unsigned char ShardBits = 8; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; Atom = std::atomic; Mutex = std::mutex]’ at /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:1056:11,
    inlined from ‘folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator::ConstIterator(const folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>*, uint64_t) [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::simd::SIMDTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:608:44,
    inlined from ‘folly::Optional<folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator> folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::assign(Key&&, Value&&) [with Key = unsigned int&; Value = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value&; KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::simd::SIMDTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:384:19,
    inlined from ‘gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody()::<lambda()>’ at /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:746:9:
/build/folly/folly/synchronization/HazptrHolder.h:157:5: warning: ‘*(folly::hazptr_holder<std::atomic>*)((char*)&res + offsetof(folly::ConcurrentHashMap<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody::big_value, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, 8, std::atomic, std::mutex, folly::detail::concurrenthashmap::simd::SIMDTable>::ConstIterator, folly::ConcurrentHashMap<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody::big_value, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, 8, std::atomic, std::mutex, folly::detail::concurrenthashmap::simd::SIMDTable>::ConstIterator::it_.folly::detail::concurrenthashmap::simd::SIMDTable<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::simd::SIMDTable> >::TestBody::big_value, 8, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, std::atomic, std::mutex>::Iterator::hazptrs_.folly::hazptr_array<2, std::atomic>::raw_[0])).folly::hazptr_holder<std::atomic>::hprec_’ may be used uninitialized [-Wmaybe-uninitialized]
  157 |     hprec_->reset_hazptr();
      |     ^~~~~~
In file included from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
/build/folly/folly/concurrency/ConcurrentHashMap.h: In lambda function:
/build/folly/folly/concurrency/ConcurrentHashMap.h:384:19: note: ‘res’ declared here
  384 |     ConstIterator res(this, segment);
      |                   ^~~
In file included from /build/folly/folly/synchronization/Hazptr.h:21,
                 from /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:27,
                 from /build/folly/folly/concurrency/ConcurrentHashMap.h:23,
                 from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
In destructor ‘folly::hazptr_array<M, Atom>::~hazptr_array() [with unsigned char M = 3; Atom = std::atomic]’,
    inlined from ‘folly::hazptr_array<M, Atom> folly::make_hazard_pointer_array() [with unsigned char M = 3; Atom = std::atomic]’ at /build/folly/folly/synchronization/HazptrHolder.h:349:1,
    inlined from ‘folly::detail::concurrenthashmap::bucket::BucketTable<KeyType, ValueType, ShardBits, HashFn, KeyEqual, Allocator, Atom, Mutex>::Iterator::Iterator() [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody()::big_value; unsigned char ShardBits = 8; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; Atom = std::atomic; Mutex = std::mutex]’ at /build/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h:555:11,
    inlined from ‘folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator::ConstIterator(const folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>*, uint64_t) [with KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::bucket::BucketTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:608:44,
    inlined from ‘folly::Optional<folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::ConstIterator> folly::ConcurrentHashMap<KeyType, ValueType, HashFn, KeyEqual, Allocator, ShardBits, Atom, Mutex, Impl>::assign(Key&&, Value&&) [with Key = unsigned int&; Value = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody()::big_value&; KeyType = long unsigned int; ValueType = gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody()::big_value; HashFn = std::hash<long unsigned int>; KeyEqual = std::equal_to<long unsigned int>; Allocator = std::allocator<unsigned char>; unsigned char ShardBits = 8; Atom = std::atomic; Mutex = std::mutex; Impl = folly::detail::concurrenthashmap::bucket::BucketTable]’ at /build/folly/folly/concurrency/ConcurrentHashMap.h:384:19,
    inlined from ‘gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody()::<lambda()>’ at /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:746:9:
/build/folly/folly/synchronization/HazptrHolder.h:268:9: warning: ‘res.folly::ConcurrentHashMap<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody::big_value, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, 8, std::atomic, std::mutex, folly::detail::concurrenthashmap::bucket::BucketTable>::ConstIterator::it_.folly::detail::concurrenthashmap::bucket::BucketTable<long unsigned int, gtest_suite_ConcurrentHashMapTest_::assignStressTest<MapFactory<folly::detail::concurrenthashmap::bucket::BucketTable> >::TestBody::big_value, 8, std::hash<long unsigned int>, std::equal_to<long unsigned int>, std::allocator<unsigned char>, std::atomic, std::mutex>::Iterator::hazptrs_.folly::hazptr_array<3, std::atomic>::empty_’ may be used uninitialized [-Wmaybe-uninitialized]
  268 |     if (empty_) {
      |         ^~~~~~
In file included from /build/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp:17:
/build/folly/folly/concurrency/ConcurrentHashMap.h: In lambda function:
/build/folly/folly/concurrency/ConcurrentHashMap.h:384:19: note: ‘res’ declared here
  384 |     ConstIterator res(this, segment);
      |                   ^~~
ninja: build stopped: subcommand failed.
Command '['/tmp/fbcode_builder_getdeps-ZbuildZfollyZbuildZfbcode_builder-root/installed/cmake-TwgGWi9uE6qBNi20aXOuvOJjWBXw5NXcatXjWpT6fHw/bin/cmake', '--build', '/tmp/fbcode_builder_getdeps-ZbuildZfollyZbuildZfbcode_builder-root/build/folly', '--target', 'install', '--config', 'RelWithDebInfo', '-j', '4']' returned non-zero exit status 1.
!! Failed
vj0303 commented 2 months ago

Please send the supported versions for all dependencies building mcrouter rpm on amazon linux 2023

Looking for ragel , fmt, glog , gflags, wangle , fizz , folly and finallly mcrouter.

There is no proper procedure or whatever is available is not working as expected.