• L
    Fix uninitialized memory read in table_test (#6980) · aa8f1331
    Levi Tamasi 提交于
    Summary:
    When using parameterized tests, `gtest` sometimes prints the test
    parameters. If no other printing method is available, it essentially
    produces a hex dump of the object. This can cause issues with valgrind
    with types like `TestArgs` in `table_test`, where the object layout has
    gaps (with uninitialized contents) due to the members' alignment
    requirements. The patch fixes the uninitialized reads by providing an
    `operator<<` for `TestArgs` and also makes sure all members are
    initialized (in a consistent order) on all code paths.
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/6980
    
    Test Plan: `valgrind --leak-check=full ./table_test`
    
    Reviewed By: siying
    
    Differential Revision: D22045536
    
    Pulled By: ltamasi
    
    fbshipit-source-id: 6f5920ac28c712d0aa88162fffb80172ed769c32
    aa8f1331
table_test.cc 173.5 KB