@SuppressWarnings("unchecked")
 protected ODLDatastoreImpl(ODLDatastoreImpl<T> copyThis) {
   this.factory = copyThis.factory;
   this.flags = copyThis.flags;
   for (T table : copyThis.tablesByIndx) {
     if (ODLTableImpl.class.isInstance(table) == false) {
       throw new UnsupportedOperationException();
     }
     addTable((T) table.deepCopyWithShallowValueCopy());
   }
   this.tableIdGenerator.setNextId(copyThis.tableIdGenerator.getNextId());
 }