Fix panel errors seen when click on partitions.

This commit is contained in:
Khushboo Vashi 2018-07-23 14:33:40 +01:00 committed by Dave Page
parent cb9fffc7de
commit 2d1e835d32
3 changed files with 17 additions and 9 deletions

View File

@ -240,10 +240,6 @@ class PartitionsView(BaseTableView, DataTypeReader, VacuumSettings):
else:
nodes.extend(module.get_nodes(**kwargs))
# Explicitly include 'partition' module as we had excluded it during
# registration.
nodes.extend(self.blueprint.get_nodes(**kwargs))
# Return sorted nodes based on label
return make_json_response(
data=sorted(

View File

@ -48,12 +48,13 @@ export function getTreeNodeHierarchyFromIdentifier(aciTreeNodeIdentifier) {
export function getTreeNodeHierarchy(currentNode) {
let idx = 0;
let node_cnt = 0;
let result = {};
do {
const currentNodeData = currentNode.getData();
if (currentNodeData._type in this.Nodes && this.Nodes[currentNodeData._type].hasId) {
const nodeType = mapType(currentNodeData._type);
const nodeType = mapType(currentNodeData._type, node_cnt);
if (result[nodeType] === undefined) {
result[nodeType] = _.extend({}, currentNodeData, {
'priority': idx,
@ -61,12 +62,13 @@ export function getTreeNodeHierarchy(currentNode) {
idx -= 1;
}
}
node_cnt += 1;
currentNode = currentNode.hasParent() ? currentNode.parent() : null;
} while (currentNode);
return result;
}
function mapType(type) {
return type === 'partition' ? 'table' : type;
function mapType(type, idx) {
return (type === 'partition' && idx > 0) ? 'table' : type;
}

View File

@ -178,9 +178,14 @@ describe('tree#node#getTreeNodeHierarchy', () => {
'special one': {
'some key': 'some value',
'_type': 'special one',
'priority': -1,
'priority': -2,
},
'table': {
'some key': 'some value',
'_type': 'table',
'priority': -1,
},
'partition': {
'some key': 'expected value',
'some other key': 'some other value',
'_type': 'partition',
@ -337,9 +342,14 @@ describe('tree#node#getTreeNodeHierarchy', () => {
'special one': {
'some key': 'some value',
'_type': 'special one',
'priority': -1,
'priority': -2,
},
'table': {
'some key': 'some value',
'_type': 'table',
'priority': -1,
},
'partition': {
'some key': 'expected value',
'some other key': 'some other value',
'_type': 'partition',