Skip to content
This repository has been archived by the owner on Jul 23, 2024. It is now read-only.

Commit

Permalink
HAWQ-1099. Output yaml file should not contain Bucketnum attribute wi…
Browse files Browse the repository at this point in the history
…th random distributed table.
  • Loading branch information
xunzhang authored and Wen Lin committed Oct 18, 2016
1 parent 676eb82 commit c8ef3a0
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 7 deletions.
6 changes: 4 additions & 2 deletions tools/bin/hawqextract
Original file line number Diff line number Diff line change
Expand Up @@ -421,7 +421,8 @@ def extract_metadata(conn, tbname):
logger.info('-- extract Distribution_Policy')
metadata['Distribution_Policy'] = accessor.get_distribution_policy_info(rel_pgclass['oid'], relid)
logger.info('-- extract bucket number')
metadata['Bucketnum'] = accessor.get_bucket_number(rel_pgclass['oid'])
if accessor.get_distribution_policy_info(rel_pgclass['oid'], relid).startswith('DISTRIBUTED BY'):
metadata['Bucketnum'] = accessor.get_bucket_number(rel_pgclass['oid'])

def extract_Parquet_metadata():
relid = rel_pgclass['oid']
Expand Down Expand Up @@ -471,7 +472,8 @@ def extract_metadata(conn, tbname):
logger.info('-- extract Distribution_Policy')
metadata['Distribution_Policy'] = accessor.get_distribution_policy_info(rel_pgclass['oid'], relid)
logger.info('-- extract bucket number')
metadata['Bucketnum'] = accessor.get_bucket_number(rel_pgclass['oid'])
if accessor.get_distribution_policy_info(rel_pgclass['oid'], relid).startswith('DISTRIBUTED BY'):
metadata['Bucketnum'] = accessor.get_bucket_number(rel_pgclass['oid'])


# extract AO/Parquet specific metadata
Expand Down
15 changes: 10 additions & 5 deletions tools/bin/hawqregister
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,18 @@ def option_parser():

def register_yaml_dict_check(D, table_column_num, src_tablename):
'''check exists'''
check_list = ['DFS_URL', 'Distribution_Policy', 'FileFormat', 'TableName', 'Bucketnum']
check_list = ['DFS_URL', 'Distribution_Policy', 'FileFormat', 'TableName']
for attr in check_list:
if D.get(attr) is None:
logger.error('Wrong configuration yaml file format: "%s" attribute does not exist.\n See example in "hawq register --help".' % attr)
sys.exit(1)
if D['Bucketnum'] <= 0:
logger.error('Bucketnum should not be zero, please check your yaml configuration file.')
sys.exit(1)
if D['Distribution_Policy'].startswith('DISTRIBUTED BY'):
if D.get('Bucketnum') is None:
logger.error('Wrong configuration yaml file format: "%s" attribute does not exist.\n See example in "hawq register --help".' % attr)
sys.exit(1)
if D['Bucketnum'] <= 0:
logger.error('Bucketnum should not be zero, please check your yaml configuration file.')
sys.exit(1)
if D['FileFormat'] in ['Parquet', 'AO']:
prefix = D['FileFormat']
local_check_list = ['%s_FileLocations' % prefix, '%s_Schema' % prefix]
Expand Down Expand Up @@ -432,7 +436,8 @@ class HawqRegister(object):
if len(params[Format_FileLocations]['Files']):
files, sizes = [params['DFS_URL'] + d['path'] for d in params[Format_FileLocations]['Files']], [d['size'] for d in params[Format_FileLocations]['Files']]
encoding = params['Encoding']
self._set_yml_dataa(Format, files, sizes, params['TableName'], params['%s_Schema' % Format], params['Distribution_Policy'], params[Format_FileLocations], params['Bucketnum'], partitionby,\
bucketNum = params['Bucketnum'] if params['Distribution_Policy'].startswith('DISTRIBUTED BY') else 6
self._set_yml_dataa(Format, files, sizes, params['TableName'], params['%s_Schema' % Format], params['Distribution_Policy'], params[Format_FileLocations], bucketNum, partitionby,\
partitions_constraint, partitions_name, partitions_compression_level, partitions_compression_type, partitions_checksum, partitions_filepaths, partitions_filesizes, encoding)


Expand Down

0 comments on commit c8ef3a0

Please sign in to comment.