docs: void addUniqueConstraint(int[] cols, HsqlName name, boolean isAutogeneratedName, boolean assumeUnique) {
  
          database.schemaManager.checkSchemaObjectNotExists(name);
  
          if (table.getUniqueConstraintForColumns(cols) != null) {
              throw Error.error(ErrorCode.X_42522);
          }
  
          // create an autonamed index
          HsqlName indexname = database.nameManager.newAutoName("IDX",
              name.name, table.getSchemaName(), table.getName(),
              SchemaObject.INDEX);
          Index index = table.createIndexStructure(indexname, cols, null, null,
              true, false, true, false);
          Constraint constraint = new Constraint(name, isAutogeneratedName, table, index,
                                                 Constraint.UNIQUE);
          // A VoltDB extension to support the assume unique attribute
          constraint = constraint.setAssumeUnique(assumeUnique);
          // End of VoltDB extension
          Table tn = table.moveDefinition(session, table.tableType, null,
                                          constraint, index, -1, 0, emptySet,
                                          emptySet);
  
          tn.moveData(session, table, -1, 0);
          database.persistentStoreCollection.releaseStore(table);
  
          table = tn;
  
          database.schemaManager.addSchemaObject(constraint);
          setNewTableInSchema(table);
          updateConstraints(table, emptySet);
          database.schemaManager.recompileDependentObjects(table);
      }