code: func (qd *TiDBDriver) OpenCtx(connID uint64, capability uint32, collation uint8, dbname string, tlsState *tls.ConnectionState) (QueryCtx, error) {
  	se, err := session.CreateSession(qd.store)
  	if err != nil {
  		return nil, err
  	}
  	se.SetTLSState(tlsState)
  	err = se.SetCollation(int(collation))
  	if err != nil {
  		return nil, err
  	}
  	se.SetClientCapability(capability)
  	se.SetConnectionID(connID)
  	tc := &TiDBContext{
  		session:   se,
  		currentDB: dbname,
  		stmts:     make(map[int]*TiDBStatement),
  	}
  	return tc, nil
  }
docs: // OpenCtx implements IDriver.