code: func (s *SQLStore) Init(info *spb.ServerInfo) error {
  	s.Lock()
  	defer s.Unlock()
  	count := 0
  	r := s.db.QueryRow(sqlStmts[sqlHasServerInfoRow])
  	if err := r.Scan(&count); err != nil && err != sql.ErrNoRows {
  		return sqlStmtError(sqlHasServerInfoRow, err)
  	}
  	infoBytes, _ := info.Marshal()
  	if count == 0 {
  		if _, err := s.db.Exec(sqlStmts[sqlAddServerInfo], info.ClusterID, infoBytes, sqlVersion); err != nil {
  			return sqlStmtError(sqlAddServerInfo, err)
  		}
  	} else {
  		if _, err := s.db.Exec(sqlStmts[sqlUpdateServerInfo], info.ClusterID, infoBytes, sqlVersion); err != nil {
  			return sqlStmtError(sqlUpdateServerInfo, err)
  		}
  	}
  	return nil
  }
docs: // Init implements the Store interface