code: func runInBootstrapSession(store kv.Storage, bootstrap func(Session)) {
  	saveLease := schemaLease
  	schemaLease = chooseMinLease(schemaLease, 100*time.Millisecond)
  	s, err := createSession(store)
  	if err != nil {
  		// Bootstrap fail will cause program exit.
  		logutil.Logger(context.Background()).Fatal("createSession error", zap.Error(err))
  	}
  	schemaLease = saveLease
  
  	s.SetValue(sessionctx.Initing, true)
  	bootstrap(s)
  	finishBootstrap(store)
  	s.ClearValue(sessionctx.Initing)
  
  	dom := domain.GetDomain(s)
  	dom.Close()
  	domap.Delete(store)
  }
docs: // runInBootstrapSession create a special session for boostrap to run.
  // If no bootstrap and storage is remote, we must use a little lease time to
  // bootstrap quickly, after bootstrapped, we will reset the lease time.
  // TODO: Using a bootstrap tool for doing this may be better later.