code: func modifyColumnFromNull2NotNull(w *worker, t *meta.Meta, dbInfo *model.DBInfo, tblInfo *model.TableInfo, job *model.Job, oldCol, newCol *model.ColumnInfo) (ver int64, _ error) {
  	// Get sessionctx from context resource pool.
  	var ctx sessionctx.Context
  	ctx, err := w.sessPool.get()
  	if err != nil {
  		return ver, errors.Trace(err)
  	}
  	defer w.sessPool.put(ctx)
  
  	// If there is a null value inserted, it cannot be modified and needs to be rollback.
  	err = checkForNullValue(ctx, oldCol.Tp == newCol.Tp, dbInfo.Name, tblInfo.Name, oldCol.Name, newCol.Name)
  	if err != nil {
  		job.State = model.JobStateRollingback
  		return ver, errors.Trace(err)
  	}
  
  	// Prevent this field from inserting null values.
  	tblInfo.Columns[oldCol.Offset].Flag |= mysql.PreventNullInsertFlag
  	ver, err = updateVersionAndTableInfo(t, job, tblInfo, true)
  	return ver, errors.Trace(err)
  }
docs: // modifyColumnFromNull2NotNull modifies the type definitions of 'null' to 'not null'.