title: Why/When you would not want to have Java 8 UseStringDeduplication enabled in JVM?
body: <p>Java 8 introduced String Deduplication that can be enabled by launching JVM with <code>-XX:+UseStringDeduplication</code> option allowing to save some memory by referencing similar <code>String</code> objects instead of keeping duplicates. Of course it's effectiveness varies from program to program depending on utilisation of <code>Strings</code> but I think it is safe to say that in general it can be considered beneficial for most applications (if not all) making me wonder about few things:</p>
  
  <p>Why is it not enabled by default? Is it because of costs associated with dedeuplication or simply because G1GC is still considered new?</p>
  
  <p>Are there (or could there be) any edge cases where you would not want to use deduplication?</p>