예제 #1
0
파일: vschema.go 프로젝트: aaijazi/vitess
// SaveVSchema saves the JSON vschema into the topo.
func (zkts *Server) SaveVSchema(ctx context.Context, keyspace, vschema string) error {
	err := vindexes.ValidateVSchema([]byte(vschema))
	if err != nil {
		return err
	}
	vschemaPath := path.Join(GlobalKeyspacesPath, keyspace, vschemaPath)
	_, err = zk.CreateOrUpdate(zkts.zconn, vschemaPath, vschema, 0, zookeeper.WorldACL(zookeeper.PERM_ALL), true)
	return err
}
예제 #2
0
파일: vschema.go 프로젝트: aaijazi/vitess
// SaveVSchema saves the JSON vschema into the topo.
func (s *Server) SaveVSchema(ctx context.Context, keyspace, vschema string) error {
	err := vindexes.ValidateVSchema([]byte(vschema))
	if err != nil {
		return err
	}

	_, err = s.getGlobal().Set(vschemaFilePath(keyspace), vschema, 0 /* ttl */)
	if err != nil {
		return convertError(err)
	}
	return nil
}