It only puts string literals automatically. If you create a string yourself (from an input stream from a network, for example), it will not be interned. If you expect that there will be many instances of the same row, it might be worthwhile to intern them, instead of having many equivalent rows on the heap. Personally, I have never used it.
source share