No arquivo theme.rb, há:
ChildTheme.where(parent_theme_id: theme_id).distinct.pluck(:child_theme_id), onde o distinct pode ser removido devido ao índice único adicionado em discourse/db/migrate/20170313192741_add_themes.rb: add_index :child_themes, [:parent_theme_id, :child_theme_id], unique: true.
Isso indica que, para dois childthemes: ChildTheme1(id1, child_theme_id1, parent_them_id) e ChildTheme2(id2, child_theme_id2, parent_them_id), se child_theme_id1 == child_theme_id2, então id1 = id2; caso contrário, [:parent_theme_id, :child_theme_id] não seria único. Como resultado, ChildTheme.where(parent_theme_id: theme_id).pluck(:child_theme_id) retornará child_theme_ids únicos, portanto não há necessidade de incluir uma chamada à função distinct. Podemos removê-la para melhorar o desempenho.