mirror of
https://github.com/status-im/migrate.git
synced 2025-02-23 08:18:07 +00:00
Support for multiple statements in Cassandra cql migration files based on semi-colon and newline.
This commit is contained in:
parent
6bb3e494e5
commit
c4b81d1210
@ -155,9 +155,17 @@ func (c *Cassandra) Run(migration io.Reader) error {
|
||||
}
|
||||
// run migration
|
||||
query := string(migr[:])
|
||||
if err := c.session.Query(query).Exec(); err != nil {
|
||||
// TODO: cast to Cassandra error and get line number
|
||||
return database.Error{OrigErr: err, Err: "migration failed", Query: migr}
|
||||
|
||||
// split query by semi-colon
|
||||
queries := strings.Split(query, ";\n")
|
||||
|
||||
for _, q := range(queries) {
|
||||
tq := strings.TrimSpace(q)
|
||||
if (tq == "") { continue }
|
||||
if err := c.session.Query(tq).Exec(); err != nil {
|
||||
// TODO: cast to Cassandra error and get line number
|
||||
return database.Error{OrigErr: err, Err: "migration failed", Query: migr}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
|
Loading…
x
Reference in New Issue
Block a user