in phoenix5-hive/src/main/java/org/apache/phoenix/hive/PhoenixStorageHandler.java [154:224]
protected void configureJobProperties(TableDesc tableDesc, Map<String, String> jobProperties) {
Properties tableProperties = tableDesc.getProperties();
String inputFormatClassName =
tableProperties.getProperty(PhoenixStorageHandlerConstants
.HBASE_INPUT_FORMAT_CLASS);
if (LOG.isDebugEnabled()) {
LOG.debug(PhoenixStorageHandlerConstants.HBASE_INPUT_FORMAT_CLASS + " is " +
inputFormatClassName);
}
Class<?> inputFormatClass;
try {
if (inputFormatClassName != null) {
inputFormatClass = JavaUtils.loadClass(inputFormatClassName);
} else {
inputFormatClass = PhoenixInputFormat.class;
}
} catch (Exception e) {
LOG.error(e.getMessage(), e);
throw new RuntimeException(e);
}
if (inputFormatClass != null) {
tableDesc.setInputFileFormatClass((Class<? extends InputFormat>) inputFormatClass);
}
String tableName = tableProperties.getProperty(PhoenixStorageHandlerConstants
.PHOENIX_TABLE_NAME);
if (tableName == null) {
tableName = tableDesc.getTableName();
tableProperties.setProperty(PhoenixStorageHandlerConstants.PHOENIX_TABLE_NAME,
tableName);
}
SessionState sessionState = SessionState.get();
String sessionId;
if(sessionState!= null) {
sessionId = sessionState.getSessionId();
} else {
sessionId = UUID.randomUUID().toString();
}
jobProperties.put(PhoenixConfigurationUtil.SESSION_ID, sessionId);
jobProperties.put(PhoenixConfigurationUtil.INPUT_TABLE_NAME, tableName);
jobProperties.put(PhoenixStorageHandlerConstants.ZOOKEEPER_QUORUM, tableProperties
.getProperty(PhoenixStorageHandlerConstants.ZOOKEEPER_QUORUM,
PhoenixStorageHandlerConstants.DEFAULT_ZOOKEEPER_QUORUM));
jobProperties.put(PhoenixStorageHandlerConstants.ZOOKEEPER_PORT, tableProperties
.getProperty(PhoenixStorageHandlerConstants.ZOOKEEPER_PORT, String.valueOf
(PhoenixStorageHandlerConstants.DEFAULT_ZOOKEEPER_PORT)));
jobProperties.put(PhoenixStorageHandlerConstants.ZOOKEEPER_PARENT, tableProperties
.getProperty(PhoenixStorageHandlerConstants.ZOOKEEPER_PARENT,
PhoenixStorageHandlerConstants.DEFAULT_ZOOKEEPER_PARENT));
String columnMapping = tableProperties
.getProperty(PhoenixStorageHandlerConstants.PHOENIX_COLUMN_MAPPING);
if(columnMapping != null) {
jobProperties.put(PhoenixStorageHandlerConstants.PHOENIX_COLUMN_MAPPING, columnMapping);
}
jobProperties.put(hive_metastoreConstants.META_TABLE_STORAGE, this.getClass().getName());
// set configuration when direct work with HBase.
jobProperties.put(HConstants.ZOOKEEPER_QUORUM, jobProperties.get
(PhoenixStorageHandlerConstants.ZOOKEEPER_QUORUM));
jobProperties.put(HConstants.ZOOKEEPER_CLIENT_PORT, jobProperties.get
(PhoenixStorageHandlerConstants.ZOOKEEPER_PORT));
jobProperties.put(HConstants.ZOOKEEPER_ZNODE_PARENT, jobProperties.get
(PhoenixStorageHandlerConstants.ZOOKEEPER_PARENT));
addHBaseResources(jobConf, jobProperties);
}