You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Joe McDonnell (Jira)" <ji...@apache.org> on 2022/05/24 22:27:00 UTC

[jira] [Created] (IMPALA-11319) Remove C++ Thrift code generation dependency on fb303

Joe McDonnell created IMPALA-11319:
--------------------------------------

             Summary: Remove C++ Thrift code generation dependency on fb303
                 Key: IMPALA-11319
                 URL: https://issues.apache.org/jira/browse/IMPALA-11319
             Project: IMPALA
          Issue Type: Improvement
          Components: Infrastructure
    Affects Versions: Impala 4.2.0
            Reporter: Joe McDonnell


When generating C++ code for our Thrift data structures, a few Thrift files depend on fb303. Unfortunately, fb303 is part of the contrib directory for Thrift and has no guarantee of maintenance. In particular, C++ fb303 seems uncommon, so this can cause problems when trying to upgrade Thrift.

The Thrift file that brings in the dependency on fb303 is hive_metastore.thrift's ThriftHiveMetastore service. Impala's C++ code only uses the regular thrift data structure from hive_metastore.thrift, and does not need the ThriftHiveMetastore service. It seems possible for us to eliminate the fb303 C++ dependency.

One way to do that is to have a script the generates a modified hive_metastore.thrift file without the ThriftHiveMetastore service and without the include of fb303. Using this for the C++ Thrift compilation would generate code without the need for fb303. Python and Java would remain the same, because Python tests do use ThriftHiveMetastore.

On the toolchain side, this would allow us to eliminate the C++ compilation of fb303.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)