/**
   * Open the ConglomerateController for this index if it isn't open yet.
   *
   * @return The ConglomerateController for this index.
   * @exception StandardException Thrown on duplicate key error
   */
  private ConglomerateController openIndexCC() throws StandardException {
    if (indexCC == null) {
      /* DataDictionary doesn't have compiled info */
      if (indexSCOCI == null) {
        indexCC =
            tc.openConglomerate(
                indexCID,
                false,
                (TransactionController.OPENMODE_FORUPDATE
                    | TransactionController.OPENMODE_BASEROW_INSERT_LOCKED),
                lockMode,
                isolationLevel);
      } else {
        indexCC =
            tc.openCompiledConglomerate(
                false,
                (TransactionController.OPENMODE_FORUPDATE
                    | TransactionController.OPENMODE_BASEROW_INSERT_LOCKED),
                lockMode,
                isolationLevel,
                indexSCOCI,
                indexDCOCI);
      }
    }

    return indexCC;
  }