@Override public Call<List<String>> getSpanNames(String serviceName) {
    if (serviceName.isEmpty() || !searchEnabled) return Call.emptyList();
    return spanNames.create(serviceName);
  }
Creates a call representing one or more queries against {@link Schema#TABLE_TRACE_BY_SERVICE_SPAN}
and possibly {@link Schema#TABLE_TRACE_BY_SERVICE_REMOTE_SERVICE}.

<p>The result will be an aggregate if the input request serviceName is null, both span name
and remote service name are supplied, or there's more than one day of data in the timestamp
range.

<p>Note that when {@link QueryRequest#serviceName()} is null, the returned query composes over
{@link #getServiceNames()}. This means that if you have 1000 service names, you will end up
with a composition of at least 1000 calls.
zipkin-storage/cassandra/src/main/java/zipkin2/storage/cassandra/CassandraSpanStore.java