private void clearDictionaryCache(){
  Map<String,Dictionary> dictionaryCaches=surrogateKeyGen.getDictionaryCaches();
  List<Dictionary> reverseDictionaries=new ArrayList<>(dictionaryCaches.values());
  for (int i=0; i < reverseDictionaries.size(); i++) {
    Dictionary dictionary=reverseDictionaries.get(i);
    dictionary.clear();
  }
}

private void clearDictionaryCache ( ) { Map < String , Dictionary > dictionaryCaches = surrogateKeyGen . getDictionaryCaches ( ) ; List < Dictionary > reverseDictionaries = new ArrayList < > ( dictionaryCaches . values ( ) ) ; for ( int i = 0 ; i < reverseDictionaries . size ( ) ; i ++ ) { Dictionary dictionary = reverseDictionaries . get ( i ) ; dictionary . clear ( ) ; } }
this method will clear the dictionary access count so that any unused column can be removed from the cache
