With Lucene (used by both Solr and Elasticsearch), multivalued field is stored same as a single value, but with extra "spacing" between the single values/tokens. With text type field that prevents spurious phrase matches across single values, so it's actually desirable. See doc about positionIncrementGap.
Currently we handle TextField (used for fulltext/language analyzed content) as single-valued field. That should be changed so that it can accept multiple values.