Files
tasks/common/persistence/cassandra/schema_version_reader.go
zeekay 5a601d081b rebrand: go.temporal.io/server -> github.com/hanzoai/tasks
Full module path rebrand from Temporal to Hanzo Tasks:
- go.mod module: github.com/hanzoai/tasks
- All internal Go imports updated (1906 files)
- cmd/server renamed to cmd/tasksd
- Binary name: tasksd (was temporal-server)
- Docker images: hanzoai/tasks (was temporalio/server)
- README rewritten with Hanzo Tasks branding
- LLM.md created with integration notes
- Makefile, goreleaser, CI workflows updated
- go.temporal.io/sdk and go.temporal.io/api imports preserved (separate repos)

Fork of Temporal.io (MIT license).
2026-03-19 10:36:40 -07:00

42 lines
966 B
Go

package cassandra
import (
"fmt"
"github.com/hanzoai/tasks/common/persistence/nosql/nosqlplugin/cassandra/gocql"
)
const (
readSchemaVersionCQL = `SELECT curr_version from schema_version where keyspace_name=?`
)
type (
SchemaVersionReader struct {
session gocql.Session
}
)
func NewSchemaVersionReader(session gocql.Session) *SchemaVersionReader {
return &SchemaVersionReader{
session: session,
}
}
// ReadSchemaVersion returns the current schema version for the Keyspace
func (svr *SchemaVersionReader) ReadSchemaVersion(keyspace string) (string, error) {
query := svr.session.Query(readSchemaVersionCQL, keyspace)
iter := query.Iter()
var version string
success := iter.Scan(&version)
err := iter.Close()
if err == nil && !success {
err = fmt.Errorf("no schema version found for keyspace %q", keyspace)
}
if err != nil {
return "", fmt.Errorf("unable to get current schema version from Cassandra: %w", err)
}
return version, nil
}