code: func (do *Domain) NotifyUpdatePrivilege(ctx sessionctx.Context) {
  	if do.etcdClient != nil {
  		row := do.etcdClient.KV
  		_, err := row.Put(context.Background(), privilegeKey, "")
  		if err != nil {
  			logutil.Logger(context.Background()).Warn("notify update privilege failed", zap.Error(err))
  		}
  	}
  	// update locally
  	_, _, err := ctx.(sqlexec.RestrictedSQLExecutor).ExecRestrictedSQL(ctx, `FLUSH PRIVILEGES`)
  	if err != nil {
  		logutil.Logger(context.Background()).Error("unable to update privileges", zap.Error(err))
  	}
  }
docs: // NotifyUpdatePrivilege updates privilege key in etcd, TiDB client that watches
  // the key will get notification.