@Override
 public MergePolicy clone() {
   MergePolicy clone;
   try {
     clone = (MergePolicy) super.clone();
   } catch (CloneNotSupportedException e) {
     // should not happen
     throw new RuntimeException(e);
   }
   clone.writer = new SetOnce<IndexWriter>();
   return clone;
 }