@Override
        protected IStatus run(DBRProgressMonitor monitor) {
            try {
                monitor.beginTask("Collect database statistics", 1);
                if (object instanceof DBPObjectStatisticsCollector) {
                    // Parent object is not necessary is stats collector.
                    // E.g. table partition parent is table while stats collector is schema
                    ((DBPObjectStatisticsCollector) object).collectObjectStatistics(monitor, false, false);
                }
                long maxStatSize = 0;

                if (parentNode instanceof DBNDatabaseNode) {
                    // Calculate max object size
                    DBNDatabaseNode[] children = ((DBNDatabaseNode)parentNode).getChildren(monitor);
                    if (children != null) {
                        for (DBNDatabaseNode childNode : children) {
                            DBSObject child = childNode.getObject();
                            if (child instanceof DBPObjectStatistics) {
                                long statObjectSize = ((DBPObjectStatistics) child).getStatObjectSize();
                                maxStatSize = Math.max(maxStatSize, statObjectSize);
                            }
                        }
                    }
                }

                long finalMaxStatSize = maxStatSize;
                UIUtils.asyncExec(() -> {
                    try {
                        if (treeItem != null && !treeItem.isDisposed()) {
                            Object prevValue = treeItem.getData(DatabaseNavigatorTree.TREE_DATA_STAT_MAX_SIZE);
                            /*if (!CommonUtils.equalObjects(finalMaxStatSize, prevValue)) */{
                                treeItem.setData(DatabaseNavigatorTree.TREE_DATA_STAT_MAX_SIZE, finalMaxStatSize);
                                treeItem.getParent().redraw();
                            }
                        }
                    } finally {
                        removeStatReader();
                    }
                });
            } catch (DBException e) {
                removeStatReader();
                log.debug(e);
            } finally {
                monitor.done();
            }
            return Status.OK_STATUS;
        }
Statistics node renderer.
Draws connection type marker next to the item name.
Draws item statistics in the right part.
plugins/org.jkiss.dbeaver.ui.navigator/src/org/jkiss/dbeaver/ui/navigator/database/StatisticsNavigatorNodeRenderer.java