hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Curtis Boyden <>
Subject Hive's JDBC Driver version
Date Thu, 28 Apr 2011 18:25:13 GMT
Hello Hive People!

               I need to know what version of the Hive JDBC Driver I am working with so that
I know what to expect back for column names when I execute a Select statement. For example
in 0.5.0 "SELECT account_id FROM account" yields the column name "_col0" whereas in 0.6.0
the same query returns the column name "account_id".

               My question regards the correct way to store the driver version information.
I see in HiveDatabaseMetaData I see that getVersion() fetches a full string from the manifest
file while getDriverMajorVersion() and getDriverMinorVersion() return a local, static 0. The
HiveDriver also provides Driver version information through its methods getMajorVersion()
and getMinorVersion() and they both return static int 0 that are scoped to the class.

               I am primarily interested in the HiveDriver.get...Version() methods as I do
not want to create a DB connection first to check the DatabaseMetaData, and my first thought
is to update the MAJOR_VERSION/MINOR_VERSION values accordingly. Next I was going to change
the ..._VERSION static int values to be package visible and use them in HiveDatabaseMeta's
               The cost is that someone must manually update the static int values on HiveDriver
for each version revision.

               So I was wondering if it would be preferred that all version information is
pulled from the manifest file, or if I should move forward with my usage of the HiveDriver
static final ints.

               If the manifest version is to be used, should we create two new fields for
Major Version / Minor Version or parse the already existing "Implementation-Version".

               Thank you for your direction,

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message