code: @Override
    public void aggregate()
    {
      final Object value = selector.getObject();
      if (value == null) {
        return;
      }
      synchronized (this) {
        updateSketch(sketch, value);
      }
    }
docs: /*
  This method is synchronized because it can be used during indexing,
  and Druid can call aggregate() and get() concurrently.
  See https://github.com/druid-io/druid/pull/3956