Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-39148

preview-13.0-preview compilation link failure for module ha_rocksdb.so (opt + BUILD_TYPE=release builds only)

    XMLWordPrintable

Details

    • Not for Release Notes
    • Q2/2026 Server Maintenance

    Description

      preview-13.0-preview compilation works fine for debug builds. However, optimized builds fail during linking of the module ha_rocksdb.so:

      CS 13.0.0 c5f6fd3e7c8a430f8d27a505bb8d2ae00f6396a6 (Optimized, Clang 21.1.3-20250923) Build 23/03/2026

      [ 87%] Linking CXX shared module ha_rocksdb.so
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'std::_Function_handler<unsigned long (rocksdb::Slice const&
      ), unsigned long (*)(rocksdb::Slice const&)>::_M_invoke(std::_Any_data const&, rocksdb::Slice const&)'; recompile with -fPIC
      >>> defined in librocksdblib.a(blob_file_cache.cc.o)
      >>> referenced by std_function.h:451 (/usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_function.h:451)
      >>>               blob_file_cache.cc.o:(rocksdb::BlobFileCache::BlobFileCache(rocksdb::Cache*, rocksdb::ImmutableOptions const
      *, rocksdb::FileOptions const*, unsigned int, rocksdb::HistogramImpl*, std::shared_ptr<rocksdb::IOTracer> const&)) in archive 
      librocksdblib.a
       
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'std::_Function_handler<unsigned long (rocksdb::Slice const&
      ), unsigned long (*)(rocksdb::Slice const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)'; re
      compile with -fPIC
      >>> defined in librocksdblib.a(blob_file_cache.cc.o)
      >>> referenced by std_function.h:452 (/usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_function.h:452)
      >>>               blob_file_cache.cc.o:(rocksdb::BlobFileCache::BlobFileCache(rocksdb::Cache*, rocksdb::ImmutableOptions const
      *, rocksdb::FileOptions const*, unsigned int, rocksdb::HistogramImpl*, std::shared_ptr<rocksdb::IOTracer> const&)) in archive 
      librocksdblib.a
       
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'void rocksdb::DeleteCacheEntry<rocksdb::BlobFileReader>(roc
      ksdb::Slice const&, void*)'; recompile with -fPIC
      >>> defined in librocksdblib.a(blob_file_cache.cc.o)
      >>> referenced by blob_file_cache.cc:87 (rocksdb/db/blob/blob_file_cache.cc:87)
      >>>               blob_file_cache.cc.o:(rocksdb::BlobFileCache::GetBlobFileReader(unsigned long, rocksdb::CacheHandleGuard<roc
      ksdb::BlobFileReader>*)) in archive librocksdblib.a
       
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'vtable for rocksdb::Striped<rocksdb::port::Mutex, rocksdb::
      Slice>'; recompile with -fPIC
      >>> defined in librocksdblib.a(column_family.cc.o)
      >>> referenced by mutexlock.h:154 (rocksdb/util/mutexlock.h:154)
      >>>               blob_file_cache.cc.o:(rocksdb::Striped<rocksdb::port::Mutex, rocksdb::Slice>::Striped(unsigned long, std::fu
      nction<unsigned long (rocksdb::Slice const&)>)) in archive librocksdblib.a
       
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'typeinfo for unsigned long (*)(rocksdb::Slice const&)'; rec
      ompile with -fPIC
      >>> defined in librocksdblib.a(blob_file_cache.cc.o)
      >>> referenced by std_function.h:0 (/usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/std_function.h:0)
      >>>               blob_file_cache.cc.o:(std::_Function_handler<unsigned long (rocksdb::Slice const&), unsigned long (*)(rocksd
      b::Slice const&)>::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation)) in archive librocksdblib.a
       
      ld: error: relocation R_X86_64_PC32 cannot be used against symbol 'rocksdb::kDisableUserTimestamp[abi:cxx11]'; recompile with 
      -fPIC
      >>> defined in librocksdblib.a(dbformat.cc.o)
      >>> referenced by basic_string.h:194 (/usr/lib/gcc/x86_64-linux-gnu/14/../../../../include/c++/14/bits/basic_string.h:194)
      >>>               dbformat.cc.o:(_GLOBAL__sub_I_dbformat.cc) in archive librocksdblib.a
       
      ....
      

      Attachments

        Issue Links

          Activity

            People

              psergei Sergei Petrunia
              Roel Roel Van de Paar
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.