public StroomStatsStoreEntityData deepCopy() {
        final List<StatisticField> newFieldList = new ArrayList<>();

        for (final StatisticField statisticField : fields) {
            newFieldList.add(statisticField.deepCopy());
        }

        final Set<CustomRollUpMask> newMaskList = new HashSet<>();

        for (final CustomRollUpMask customRollUpMask : customRollUpMasks) {
            newMaskList.add(customRollUpMask.deepCopy());
        }

        return new StroomStatsStoreEntityData(newFieldList, newMaskList);
    }
Cache the positions of the fields.
stroom-core-shared/src/main/java/stroom/statistics/impl/hbase/shared/StroomStatsStoreEntityData.java