Github user Librago commented on a diff in the pull request:
https://github.com/apache/incubator-hawq/pull/1384#discussion_r208437472
--- Diff: src/backend/cdb/cdbdatalocality.c ---
@@ -844,36 +918,17 @@ int64
get_block_locations_and_claculte_table_size(split_to_segment_mapping_conte
/*
* We only consider the data stored in HDFS.
*/
- if (RelationIsAoRows(rel) || RelationIsParquet(rel)) {
- Relation_Data *rel_data = NULL;
- /*
- * Get pg_appendonly information for this table.
- */
- AppendOnlyEntry *aoEntry = GetAppendOnlyEntry(rel_oid,
SnapshotNow);
-
- rel_data = (Relation_Data *)
palloc(sizeof(Relation_Data));
+ bool isDataStoredInHdfs = dataStoredInHdfs(rel);
+ if (isDataStoredInHdfs ) {
+ GpPolicy *targetPolicy =
GpPolicyFetch(CurrentMemoryContext, rel_oid);
+ Relation_Data *rel_data = (Relation_Data *)
palloc(sizeof(Relation_Data));
rel_data->relid = rel_oid;
rel_data->files = NIL;
rel_data->partition_parent_relid = 0;
rel_data->block_count = 0;
-
- GpPolicy *targetPolicy = NULL;
- targetPolicy = GpPolicyFetch(CurrentMemoryContext,
rel_oid);
- /*
- * Based on the pg_appendonly information, calculate
the data
- * location information associated with this relation.
- */
- if (RelationIsAoRows(rel)) {
- rel_data->type = DATALOCALITY_APPENDONLY;
- AOGetSegFileDataLocation(rel, aoEntry,
ActiveSnapshot, context,
- aoEntry->splitsize, rel_data,
&hitblocks,
- &allblocks, targetPolicy);
- } else {
- rel_data->type = DATALOCALITY_PARQUET;
- ParquetGetSegFileDataLocation(rel, aoEntry,
ActiveSnapshot, context,
- context->split_size, rel_data,
&hitblocks,
- &allblocks, targetPolicy);
- }
+ rel_data->port = 0;
--- End diff --
NO "port and hostname"
---