rootCircle opened a new issue, #835:
URL: https://github.com/apache/hudi-rs/issues/835

   ### Is there an existing issue for this?
   
   - [x] I have searched the existing issues
   
   ### Description of the bug
   
   Building hudi-rs on Arch Linux fails while compiling the bundled RocksDB 
dependency through librocksdb-sys. The compiler reports that uint32_t and 
uint64_t are not declared in rocksdb/include/rocksdb/trace_record.h.
   
   The build succeeds when passing CXXFLAGS="-include cstdint" to make develop.
   
   The bundled RocksDB header may need to include <cstdint> explicitly:
   
   ```cxx
   #include <cstdint>
   ```
   
   Alternatively, the project could update or patch the affected RocksDB 
dependency if a compatible upstream fix is available.
   
   Possibly related: https://github.com/rust-rocksdb/rust-rocksdb/issues/953
   
   ### Steps To Reproduce
   
   1. git clone [email protected]:apache/hudi-rs.git
   2. Set up the Python venv using `make setup-venv && source 
.venv/bin/activate`
   3. Run:
   ```bash
   make develop
   ```
   
   Compilation fails for librocksdb-sys
   
   ### Expected behavior
   
   make develop should build without any additional CXX flags
   
   ### Screenshots / Logs
   
   <details>
   
   <summary>Build failure stacktrace</summary>
   
   ```
   ~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:154:57: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:157:60: error: 
'uint64_t' has not been declared
     cargo:warning=  157 |                            const std::string& 
upper_bound, uint64_t timestamp);
     cargo:warning=      |                                                      
      ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:157:60: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:180:51: error: 
'uint32_t' has not been declared
     cargo:warning=  180 |   IteratorSeekQueryTraceRecord(SeekType seekType, 
uint32_t column_family_id,
     cargo:warning=      |                                                   
^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:180:51: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:181:53: error: 
'uint64_t' has not been declared
     cargo:warning=  181 |                                PinnableSlice&& key, 
uint64_t timestamp);
     cargo:warning=      |                                                     
^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:181:53: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:183:51: error: 
'uint32_t' has not been declared
     cargo:warning=  183 |   IteratorSeekQueryTraceRecord(SeekType seekType, 
uint32_t column_family_id,
     cargo:warning=      |                                                   
^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:183:51: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:184:56: error: 
'uint64_t' has not been declared
     cargo:warning=  184 |                                const std::string& 
key, uint64_t timestamp);
     cargo:warning=      |                                                      
  ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:184:56: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:186:51: error: 
'uint32_t' has not been declared
     cargo:warning=  186 |   IteratorSeekQueryTraceRecord(SeekType seekType, 
uint32_t column_family_id,
     cargo:warning=      |                                                   
^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:186:51: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:188:61: error: 
'uint64_t' has not been declared
     cargo:warning=  188 |                                PinnableSlice&& 
upper_bound, uint64_t timestamp);
     cargo:warning=      |                                                      
       ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:188:61: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:190:51: error: 
'uint32_t' has not been declared
     cargo:warning=  190 |   IteratorSeekQueryTraceRecord(SeekType seekType, 
uint32_t column_family_id,
     cargo:warning=      |                                                   
^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:190:51: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:194:32: error: 
'uint64_t' has not been declared
     cargo:warning=  194 |                                uint64_t timestamp);
     cargo:warning=      |                                ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:194:32: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:205:11: error: 
'uint32_t' does not name a type
     cargo:warning=  205 |   virtual uint32_t GetColumnFamilyID() const;
     cargo:warning=      |           ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:205:11: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:215:3: error: 
'uint32_t' does not name a type
     cargo:warning=  215 |   uint32_t cf_id_;
     cargo:warning=      |   ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:215:3: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:222:40: error: 
'uint32_t' was not declared in this scope
     cargo:warning=  222 |   MultiGetQueryTraceRecord(std::vector<uint32_t> 
column_family_ids,
     cargo:warning=      |                                        ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:222:40: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:222:48: error: 
template argument 1 is invalid
     cargo:warning=  222 |   MultiGetQueryTraceRecord(std::vector<uint32_t> 
column_family_ids,
     cargo:warning=      |                                                ^
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:222:48: error: 
template argument 2 is invalid
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:224:28: error: 
'uint64_t' has not been declared
     cargo:warning=  224 |                            uint64_t timestamp);
     cargo:warning=      |                            ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:224:28: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:226:40: error: 
'uint32_t' was not declared in this scope
     cargo:warning=  226 |   MultiGetQueryTraceRecord(std::vector<uint32_t> 
column_family_ids,
     cargo:warning=      |                                        ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:226:40: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:226:48: error: 
template argument 1 is invalid
     cargo:warning=  226 |   MultiGetQueryTraceRecord(std::vector<uint32_t> 
column_family_ids,
     cargo:warning=      |                                                ^
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:226:48: error: 
template argument 2 is invalid
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:228:28: error: 
'uint64_t' has not been declared
     cargo:warning=  228 |                            uint64_t timestamp);
     cargo:warning=      |                            ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:228:28: note: 
'uint64_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:235:23: error: 
'uint32_t' was not declared in this scope
     cargo:warning=  235 |   virtual std::vector<uint32_t> GetColumnFamilyIDs() 
const;
     cargo:warning=      |                       ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:235:23: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:235:31: error: 
template argument 1 is invalid
     cargo:warning=  235 |   virtual std::vector<uint32_t> GetColumnFamilyIDs() 
const;
     cargo:warning=      |                               ^
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:235:31: error: 
template argument 2 is invalid
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:244:15: error: 
'uint32_t' was not declared in this scope
     cargo:warning=  244 |   std::vector<uint32_t> cf_ids_;
     cargo:warning=      |               ^~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:244:15: note: 
'uint32_t' is defined in header '<cstdint>'; this is probably fixable by adding 
'#include <cstdint>'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:244:23: error: 
template argument 1 is invalid
     cargo:warning=  244 |   std::vector<uint32_t> cf_ids_;
     cargo:warning=      |                       ^
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:244:23: error: 
template argument 2 is invalid
     cargo:warning=rocksdb/trace_replay/trace_record.cc:20:1: error: no 
declaration matches 'rocksdb::TraceRecord::TraceRecord(uint64_t)'
     cargo:warning=   20 | TraceRecord::TraceRecord(uint64_t timestamp) : 
timestamp_(timestamp) {}
     cargo:warning=      | ^~~~~~~~~~~
     cargo:warning=  • there are 2 candidates
     cargo:warning=    • candidate 1: 'constexpr 
rocksdb::TraceRecord::TraceRecord(const rocksdb::TraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:53:7:
     cargo:warning=         53 | class TraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~
     cargo:warning=      • parameter 1 of candidate has type 'const 
rocksdb::TraceRecord&'...
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:20:35:
     cargo:warning=           20 | TraceRecord::TraceRecord(uint64_t timestamp) 
: timestamp_(timestamp) {}
     cargo:warning=              |                          ~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 2: 'constexpr 
rocksdb::TraceRecord::TraceRecord()'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:53:7:
     cargo:warning=         53 | class TraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:53:7: note: 'class 
rocksdb::TraceRecord' defined here
     cargo:warning=rocksdb/trace_replay/trace_record.cc:22:10: error: no 
declaration matches 'uint64_t rocksdb::TraceRecord::GetTimestamp() const'
     cargo:warning=   22 | uint64_t TraceRecord::GetTimestamp() const { return 
timestamp_; }
     cargo:warning=      |          ^~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:22:10: note: no 
functions named 'uint64_t rocksdb::TraceRecord::GetTimestamp() const'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:53:7: note: 'class 
rocksdb::TraceRecord' defined here
     cargo:warning=   53 | class TraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:30:1: error: no 
declaration matches 'rocksdb::QueryTraceRecord::QueryTraceRecord(uint64_t)'
     cargo:warning=   30 | QueryTraceRecord::QueryTraceRecord(uint64_t 
timestamp)
     cargo:warning=      | ^~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 'constexpr 
rocksdb::QueryTraceRecord::QueryTraceRecord(rocksdb::QueryTraceRecord&&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:95:7:
     cargo:warning=         95 | class QueryTraceRecord : public TraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 1 of candidate has type 
'rocksdb::QueryTraceRecord&&'...
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:30:45:
     cargo:warning=           30 | QueryTraceRecord::QueryTraceRecord(uint64_t 
timestamp)
     cargo:warning=              |                                    
~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 2: 'constexpr 
rocksdb::QueryTraceRecord::QueryTraceRecord(const rocksdb::QueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:95:7:
     cargo:warning=         95 | class QueryTraceRecord : public TraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 1 of candidate has type 'const 
rocksdb::QueryTraceRecord&'...
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:30:45:
     cargo:warning=           30 | QueryTraceRecord::QueryTraceRecord(uint64_t 
timestamp)
     cargo:warning=              |                                    
~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 3: 'constexpr 
rocksdb::QueryTraceRecord::QueryTraceRecord()'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:95:7:
     cargo:warning=         95 | class QueryTraceRecord : public TraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:95:7: note: 'class 
rocksdb::QueryTraceRecord' defined here
     cargo:warning=rocksdb/trace_replay/trace_record.cc:34:1: error: no 
declaration matches 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(rocksdb::PinnableSlice&&,
 uint64_t)'
     cargo:warning=   34 | 
WriteQueryTraceRecord::WriteQueryTraceRecord(PinnableSlice&& write_batch_rep,
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(rocksdb::WriteQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:101:7:
     cargo:warning=        101 | class WriteQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:105:3:
     cargo:warning=        105 |   WriteQueryTraceRecord(const std::string& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(rocksdb::PinnableSlice&&,
 int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:103:3:
     cargo:warning=        103 |   WriteQueryTraceRecord(PinnableSlice&& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 2 of candidate has type 'int'...
     cargo:warning=        rocksdb/include/rocksdb/trace_record.h:103:67:
     cargo:warning=          103 |   WriteQueryTraceRecord(PinnableSlice&& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=              |                                              
            ~~~~~~~~~^~~~~~~~~
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:35:55:
     cargo:warning=           35 |                                              
uint64_t timestamp)
     cargo:warning=              |                                              
~~~~~~~~~^~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:101:7: note: 'class 
rocksdb::WriteQueryTraceRecord' defined here
     cargo:warning=  101 | class WriteQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:38:1: error: no 
declaration matches 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(const std::string&, 
uint64_t)'
     cargo:warning=   38 | WriteQueryTraceRecord::WriteQueryTraceRecord(const 
std::string& write_batch_rep,
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(rocksdb::WriteQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:101:7:
     cargo:warning=        101 | class WriteQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:105:3:
     cargo:warning=        105 |   WriteQueryTraceRecord(const std::string& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 2 of candidate has type 'int'...
     cargo:warning=        rocksdb/include/rocksdb/trace_record.h:105:70:
     cargo:warning=          105 |   WriteQueryTraceRecord(const std::string& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=              |                                              
               ~~~~~~~~~^~~~~~~~~
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:39:55:
     cargo:warning=           39 |                                              
uint64_t timestamp)
     cargo:warning=              |                                              
~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::WriteQueryTraceRecord::WriteQueryTraceRecord(rocksdb::PinnableSlice&&,
 int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:103:3:
     cargo:warning=        103 |   WriteQueryTraceRecord(PinnableSlice&& 
write_batch_rep, uint64_t timestamp);
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:101:7: note: 'class 
rocksdb::WriteQueryTraceRecord' defined here
     cargo:warning=  101 | class WriteQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:55:1: error: no 
declaration matches 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord(uint32_t, 
rocksdb::PinnableSlice&&, uint64_t)'
     cargo:warning=   55 | GetQueryTraceRecord::GetQueryTraceRecord(uint32_t 
column_family_id,
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 2 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord(rocksdb::GetQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:122:7:
     cargo:warning=        122 | class GetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord()'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:122:7: note: 'class 
rocksdb::GetQueryTraceRecord' defined here
     cargo:warning=rocksdb/trace_replay/trace_record.cc:62:1: error: no 
declaration matches 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord(uint32_t, const 
std::string&, uint64_t)'
     cargo:warning=   62 | GetQueryTraceRecord::GetQueryTraceRecord(uint32_t 
column_family_id,
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 2 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord(rocksdb::GetQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:122:7:
     cargo:warning=        122 | class GetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::GetQueryTraceRecord::GetQueryTraceRecord()'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:122:7: note: 'class 
rocksdb::GetQueryTraceRecord' defined here
     cargo:warning=rocksdb/trace_replay/trace_record.cc:71:10: error: no 
declaration matches 'uint32_t rocksdb::GetQueryTraceRecord::GetColumnFamilyID() 
const'
     cargo:warning=   71 | uint32_t GetQueryTraceRecord::GetColumnFamilyID() 
const { return cf_id_; }
     cargo:warning=      |          ^~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:71:10: note: no 
functions named 'uint32_t rocksdb::GetQueryTraceRecord::GetColumnFamilyID() 
const'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:122:7: note: 'class 
rocksdb::GetQueryTraceRecord' defined here
     cargo:warning=  122 | class GetQueryTraceRecord : public QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:82:1: error: no 
declaration matches 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(uint64_t)'
     cargo:warning=   82 | 
IteratorQueryTraceRecord::IteratorQueryTraceRecord(uint64_t timestamp)
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::IteratorQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:149:7:
     cargo:warning=        149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 1 of candidate has type 
'rocksdb::IteratorQueryTraceRecord&'...
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:82:61:
     cargo:warning=           82 | 
IteratorQueryTraceRecord::IteratorQueryTraceRecord(uint64_t timestamp)
     cargo:warning=              |                                              
      ~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(const 
std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:156:3:
     cargo:warning=        156 |   IteratorQueryTraceRecord(const std::string& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::PinnableSlice&&,
 rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:153:3:
     cargo:warning=        153 |   IteratorQueryTraceRecord(PinnableSlice&& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:149:7: note: 'class 
rocksdb::IteratorQueryTraceRecord' defined here
     cargo:warning=  149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:85:1: error: no 
declaration matches 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::PinnableSlice&&,
 rocksdb::PinnableSlice&&, uint64_t)'
     cargo:warning=   85 | 
IteratorQueryTraceRecord::IteratorQueryTraceRecord(PinnableSlice&& lower_bound,
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::IteratorQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:149:7:
     cargo:warning=        149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(const 
std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:156:3:
     cargo:warning=        156 |   IteratorQueryTraceRecord(const std::string& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::PinnableSlice&&,
 rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:153:3:
     cargo:warning=        153 |   IteratorQueryTraceRecord(PinnableSlice&& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 3 of candidate has type 'int'...
     cargo:warning=        rocksdb/include/rocksdb/trace_record.h:154:66:
     cargo:warning=          154 |                            PinnableSlice&& 
upper_bound, uint64_t timestamp);
     cargo:warning=              |                                              
           ~~~~~~~~~^~~~~~~~~
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:87:61:
     cargo:warning=           87 |                                              
      uint64_t timestamp)
     cargo:warning=              |                                              
      ~~~~~~~~~^~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:149:7: note: 'class 
rocksdb::IteratorQueryTraceRecord' defined here
     cargo:warning=  149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:92:1: error: no 
declaration matches 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(const 
std::string&, const std::string&, uint64_t)'
     cargo:warning=   92 | IteratorQueryTraceRecord::IteratorQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::IteratorQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:149:7:
     cargo:warning=        149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(const 
std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:156:3:
     cargo:warning=        156 |   IteratorQueryTraceRecord(const std::string& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=      • parameter 3 of candidate has type 'int'...
     cargo:warning=        rocksdb/include/rocksdb/trace_record.h:157:69:
     cargo:warning=          157 |                            const 
std::string& upper_bound, uint64_t timestamp);
     cargo:warning=              |                                              
              ~~~~~~~~~^~~~~~~~~
     cargo:warning=      • ...which does not match type 'uint64_t' {aka 'long 
unsigned int'}
     cargo:warning=        rocksdb/trace_replay/trace_record.cc:94:14:
     cargo:warning=           94 |     uint64_t timestamp)
     cargo:warning=              |     ~~~~~~~~~^~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorQueryTraceRecord::IteratorQueryTraceRecord(rocksdb::PinnableSlice&&,
 rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:153:3:
     cargo:warning=        153 |   IteratorQueryTraceRecord(PinnableSlice&& 
lower_bound,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:149:7: note: 'class 
rocksdb::IteratorQueryTraceRecord' defined here
     cargo:warning=  149 | class IteratorQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:107:1: error: no 
declaration matches 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
uint32_t, rocksdb::PinnableSlice&&, uint64_t)'
     cargo:warning=  107 | 
IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 5 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(rocksdb::IteratorSeekQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:172:7:
     cargo:warning=        172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, const std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:190:3:
     cargo:warning=        190 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, rocksdb::PinnableSlice&&, 
rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:186:3:
     cargo:warning=        186 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 4: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:183:3:
     cargo:warning=        183 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 5: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:180:3:
     cargo:warning=        180 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:172:7: note: 'class 
rocksdb::IteratorSeekQueryTraceRecord' defined here
     cargo:warning=  172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:115:1: error: no 
declaration matches 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
uint32_t, const std::string&, uint64_t)'
     cargo:warning=  115 | 
IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 5 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(rocksdb::IteratorSeekQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:172:7:
     cargo:warning=        172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, const std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:190:3:
     cargo:warning=        190 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, rocksdb::PinnableSlice&&, 
rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:186:3:
     cargo:warning=        186 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 4: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:183:3:
     cargo:warning=        183 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 5: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:180:3:
     cargo:warning=        180 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:172:7: note: 'class 
rocksdb::IteratorSeekQueryTraceRecord' defined here
     cargo:warning=  172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:124:1: error: no 
declaration matches 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
uint32_t, rocksdb::PinnableSlice&&, rocksdb::PinnableSlice&&, 
rocksdb::PinnableSlice&&, uint64_t)'
     cargo:warning=  124 | 
IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 5 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(rocksdb::IteratorSeekQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:172:7:
     cargo:warning=        172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, const std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:190:3:
     cargo:warning=        190 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, rocksdb::PinnableSlice&&, 
rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:186:3:
     cargo:warning=        186 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 4: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:183:3:
     cargo:warning=        183 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 5: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:180:3:
     cargo:warning=        180 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:172:7: note: 'class 
rocksdb::IteratorSeekQueryTraceRecord' defined here
     cargo:warning=  172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:134:1: error: no 
declaration matches 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
uint32_t, const std::string&, const std::string&, const std::string&, uint64_t)'
     cargo:warning=  134 | 
IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 5 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(rocksdb::IteratorSeekQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:172:7:
     cargo:warning=        172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, const std::string&, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:190:3:
     cargo:warning=        190 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, rocksdb::PinnableSlice&&, 
rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:186:3:
     cargo:warning=        186 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 4: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, const std::string&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:183:3:
     cargo:warning=        183 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 5: 
'rocksdb::IteratorSeekQueryTraceRecord::IteratorSeekQueryTraceRecord(SeekType, 
int, rocksdb::PinnableSlice&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:180:3:
     cargo:warning=        180 |   IteratorSeekQueryTraceRecord(SeekType 
seekType, uint32_t column_family_id,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:172:7: note: 'class 
rocksdb::IteratorSeekQueryTraceRecord' defined here
     cargo:warning=  172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:155:10: error: no 
declaration matches 'uint32_t 
rocksdb::IteratorSeekQueryTraceRecord::GetColumnFamilyID() const'
     cargo:warning=  155 | uint32_t 
IteratorSeekQueryTraceRecord::GetColumnFamilyID() const {
     cargo:warning=      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:155:10: note: no 
functions named 'uint32_t 
rocksdb::IteratorSeekQueryTraceRecord::GetColumnFamilyID() const'
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:172:7: note: 'class 
rocksdb::IteratorSeekQueryTraceRecord' defined here
     cargo:warning=  172 | class IteratorSeekQueryTraceRecord : public 
IteratorQueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:168:1: error: no 
declaration matches 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(std::vector<unsigned
 int>, std::vector<rocksdb::PinnableSlice>&&, uint64_t)'
     cargo:warning=  168 | MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(const 
rocksdb::MultiGetQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:220:7:
     cargo:warning=        220 | class MultiGetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(int, const 
std::vector<std::__cxx11::basic_string<char> >&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:226:3:
     cargo:warning=        226 |   
MultiGetQueryTraceRecord(std::vector<uint32_t> column_family_ids,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(int, 
std::vector<rocksdb::PinnableSlice>&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:222:3:
     cargo:warning=        222 |   
MultiGetQueryTraceRecord(std::vector<uint32_t> column_family_ids,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:220:7: note: 'class 
rocksdb::MultiGetQueryTraceRecord' defined here
     cargo:warning=  220 | class MultiGetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc:175:1: error: no 
declaration matches 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(std::vector<unsigned
 int>, const std::vector<std::__cxx11::basic_string<char> >&, uint64_t)'
     cargo:warning=  175 | MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(
     cargo:warning=      | ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there are 3 candidates
     cargo:warning=    • candidate 1: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(const 
rocksdb::MultiGetQueryTraceRecord&)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:220:7:
     cargo:warning=        220 | class MultiGetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=            |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 2: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(int, const 
std::vector<std::__cxx11::basic_string<char> >&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:226:3:
     cargo:warning=        226 |   
MultiGetQueryTraceRecord(std::vector<uint32_t> column_family_ids,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=    • candidate 3: 
'rocksdb::MultiGetQueryTraceRecord::MultiGetQueryTraceRecord(int, 
std::vector<rocksdb::PinnableSlice>&&, int)'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:222:3:
     cargo:warning=        222 |   
MultiGetQueryTraceRecord(std::vector<uint32_t> column_family_ids,
     cargo:warning=            |   ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:220:7: note: 'class 
rocksdb::MultiGetQueryTraceRecord' defined here
     cargo:warning=  220 | class MultiGetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc: In destructor 'virtual 
rocksdb::MultiGetQueryTraceRecord::~MultiGetQueryTraceRecord()':
     cargo:warning=rocksdb/trace_replay/trace_record.cc:188:11: error: request 
for member 'clear' in 
'((rocksdb::MultiGetQueryTraceRecord*)this)->rocksdb::MultiGetQueryTraceRecord::cf_ids_',
 which is of non-class type 'int'
     cargo:warning=  188 |   cf_ids_.clear();
     cargo:warning=      |           ^~~~~
     cargo:warning=rocksdb/trace_replay/trace_record.cc: At global scope:
     cargo:warning=rocksdb/trace_replay/trace_record.cc:192:23: error: no 
declaration matches 'std::vector<unsigned int> 
rocksdb::MultiGetQueryTraceRecord::GetColumnFamilyIDs() const'
     cargo:warning=  192 | std::vector<uint32_t> 
MultiGetQueryTraceRecord::GetColumnFamilyIDs() const {
     cargo:warning=      |                       ^~~~~~~~~~~~~~~~~~~~~~~~
     cargo:warning=  • there is 1 candidate
     cargo:warning=    • candidate is: 'virtual int 
rocksdb::MultiGetQueryTraceRecord::GetColumnFamilyIDs() const'
     cargo:warning=      rocksdb/include/rocksdb/trace_record.h:235:33:
     cargo:warning=        235 |   virtual std::vector<uint32_t> 
GetColumnFamilyIDs() const;
     cargo:warning=            |                                 
^~~~~~~~~~~~~~~~~~
     cargo:warning=rocksdb/include/rocksdb/trace_record.h:220:7: note: 'class 
rocksdb::MultiGetQueryTraceRecord' defined here
     cargo:warning=  220 | class MultiGetQueryTraceRecord : public 
QueryTraceRecord {
     cargo:warning=      |       ^~~~~~~~~~~~~~~~~~~~~~~~
     exit status: 1
     cargo:warning=ToolExecError: command did not execute successfully (status 
code exit status: 1): "sccache" "c++" "-O0" "-ffunction-sections" 
"-fdata-sections" "-fPIC" "-g" "-gdwarf-4" "-fno-omit-frame-pointer" 
"-mno-omit-leaf-frame-pointer" "-m64" "-I" "rocksdb/include/" "-I" "rocksdb/" 
"-I" "rocksdb/third-party/gtest-1.8.1/fused-src/" "-I" "snappy/" "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/lz4-sys-de5df9b5a9b8b421/out/include"
 "-I" 
"/home/violow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zstd-sys-2.1.2+zstd.1.5.7/zstd/lib"
 "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/libz-sys-4db279edcbe1ebee/out/include"
 "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/bzip2-sys-ad0e9bfd6c14304d/out/include"
 "-I" "." "-Wall" "-Wextra" "-std=c++17" "-Wsign-compare" "-Wshadow" 
"-Wno-unused-parameter" "-Wno-unused-variable" "-Woverloaded-virtual" "-
 Wnon-virtual-dtor" "-Wno-missing-field-initializers" "-Wno-strict-aliasing" 
"-Wno-invalid-offsetof" "-msse2" "-std=c++17" "-DSNAPPY=1" "-DLZ4=1" "-DZSTD=1" 
"-DZLIB=1" "-DBZIP2=1" "-DNDEBUG=1" "-DOS_LINUX" "-DROCKSDB_PLATFORM_POSIX" 
"-DROCKSDB_LIB_IO_POSIX" "-DROCKSDB_SUPPORT_THREAD_LOCAL" "-o" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/librocksdb-sys-96035ce021298aae/out/6c7cb00c5af69c91-trace_record.o"
 "-c" "rocksdb/trace_replay/trace_record.cc"
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
     exit status: 0
   
     --- stderr
   
   
     error occurred in cc-rs: command did not execute successfully (status code 
exit status: 1): "sccache" "c++" "-O0" "-ffunction-sections" "-fdata-sections" 
"-fPIC" "-g" "-gdwarf-4" "-fno-omit-frame-pointer" 
"-mno-omit-leaf-frame-pointer" "-m64" "-I" "rocksdb/include/" "-I" "rocksdb/" 
"-I" "rocksdb/third-party/gtest-1.8.1/fused-src/" "-I" "snappy/" "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/lz4-sys-de5df9b5a9b8b421/out/include"
 "-I" 
"/home/violow/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/zstd-sys-2.1.2+zstd.1.5.7/zstd/lib"
 "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/libz-sys-4db279edcbe1ebee/out/include"
 "-I" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/bzip2-sys-ad0e9bfd6c14304d/out/include"
 "-I" "." "-Wall" "-Wextra" "-std=c++17" "-Wsign-compare" "-Wshadow" 
"-Wno-unused-parameter" "-Wno-unused-variable" "-Woverloaded-virtual" "-Wnon
 -virtual-dtor" "-Wno-missing-field-initializers" "-Wno-strict-aliasing" 
"-Wno-invalid-offsetof" "-msse2" "-std=c++17" "-DSNAPPY=1" "-DLZ4=1" "-DZSTD=1" 
"-DZLIB=1" "-DBZIP2=1" "-DNDEBUG=1" "-DOS_LINUX" "-DROCKSDB_PLATFORM_POSIX" 
"-DROCKSDB_LIB_IO_POSIX" "-DROCKSDB_SUPPORT_THREAD_LOCAL" "-o" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/target/debug/build/librocksdb-sys-96035ce021298aae/out/6c7cb00c5af69c91-trace_record.o"
 "-c" "rocksdb/trace_replay/trace_record.cc"
   
   
   warning: build failed, waiting for other jobs to finish...
   💥 maturin failed
     Caused by: Failed to build a native library through cargo
     Caused by: Cargo build finished with "exit status: 101": `env -u CARGO 
PYO3_BUILD_EXTENSION_MODULE="1" PYO3_ENVIRONMENT_SIGNATURE="cpython-3.12-64bit" 
PYO3_PYTHON="/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/.venv/bin/python"
 
PYTHON_SYS_EXECUTABLE="/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/.venv/bin/python"
 "cargo" "rustc" "--features" "datafusion,testing" "--message-format" 
"json-render-diagnostics" "--manifest-path" 
"/home/violow/Documents/Coding/Languages/lang/Rust/Projects/hudi-rs/python/Cargo.toml"
 "--lib"`
   make: *** [Makefile:89: develop] Error 1
   ```
   
   </details>
   
   ### Software information
   
   - Operating system: EndeavourOS Linux x86_64 (flavor of Arch Linux)
   - Rust version: rustc 1.94.1 (e408947bf 2026-03-25)
   - Project version: 0.6.0-dev
   - GCC: 16.2.1
   - Clang: 23.1.1
   - Cargo: 1.94.1
   - Python: 3.12.8
   - rocksdb: 0.22.0
   - librocksdb-sys: 0.16.0+8.10.0
   
   
   ### Additional context
   
   I have a workaround to fix compilation locally, without any compiler/code 
changes:
   
   ```bash
   CXXFLAGS="-include cstdint" make develop
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to