mirror of
https://github.com/miniflux/v2.git
synced 2025-09-30 19:22:11 +00:00
Merge 3dcf572107
into 8adcaed29e
This commit is contained in:
commit
5cf035866f
1 changed files with 26 additions and 8 deletions
|
@ -123,13 +123,9 @@ var migrations = [...]func(tx *sql.Tx) error{
|
||||||
return err
|
return err
|
||||||
},
|
},
|
||||||
func(tx *sql.Tx) (err error) {
|
func(tx *sql.Tx) (err error) {
|
||||||
sql := `
|
// This used to create a HSTORE `extra` column in the table `users`,
|
||||||
CREATE EXTENSION IF NOT EXISTS hstore;
|
// which hasn't been used since Miniflux 2.0.27.
|
||||||
ALTER TABLE users ADD COLUMN extra hstore;
|
return nil
|
||||||
CREATE INDEX users_extra_idx ON users using gin(extra);
|
|
||||||
`
|
|
||||||
_, err = tx.Exec(sql)
|
|
||||||
return err
|
|
||||||
},
|
},
|
||||||
func(tx *sql.Tx) (err error) {
|
func(tx *sql.Tx) (err error) {
|
||||||
sql := `
|
sql := `
|
||||||
|
@ -436,6 +432,18 @@ var migrations = [...]func(tx *sql.Tx) error{
|
||||||
return err
|
return err
|
||||||
},
|
},
|
||||||
func(tx *sql.Tx) (err error) {
|
func(tx *sql.Tx) (err error) {
|
||||||
|
|
||||||
|
hasExtra := false
|
||||||
|
if err := tx.QueryRow(`
|
||||||
|
SELECT true
|
||||||
|
FROM information_schema.columns
|
||||||
|
WHERE
|
||||||
|
table_name='users' AND
|
||||||
|
column_name='extra';
|
||||||
|
`).Scan(&hasExtra); err != nil && err != sql.ErrNoRows {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
_, err = tx.Exec(`
|
_, err = tx.Exec(`
|
||||||
ALTER TABLE users
|
ALTER TABLE users
|
||||||
ADD column stylesheet text not null default '',
|
ADD column stylesheet text not null default '',
|
||||||
|
@ -446,6 +454,11 @@ var migrations = [...]func(tx *sql.Tx) error{
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if !hasExtra {
|
||||||
|
// No need to migrate things from the `extra` column if it's not present
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
_, err = tx.Exec(`
|
_, err = tx.Exec(`
|
||||||
DECLARE my_cursor CURSOR FOR
|
DECLARE my_cursor CURSOR FOR
|
||||||
SELECT
|
SELECT
|
||||||
|
@ -495,7 +508,7 @@ var migrations = [...]func(tx *sql.Tx) error{
|
||||||
return err
|
return err
|
||||||
},
|
},
|
||||||
func(tx *sql.Tx) (err error) {
|
func(tx *sql.Tx) (err error) {
|
||||||
if _, err = tx.Exec(`ALTER TABLE users DROP COLUMN extra;`); err != nil {
|
if _, err = tx.Exec(`ALTER TABLE users DROP COLUMN IF EXISTS extra;`); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
_, err = tx.Exec(`
|
_, err = tx.Exec(`
|
||||||
|
@ -1348,4 +1361,9 @@ var migrations = [...]func(tx *sql.Tx) error{
|
||||||
_, err = tx.Exec(sql)
|
_, err = tx.Exec(sql)
|
||||||
return err
|
return err
|
||||||
},
|
},
|
||||||
|
func(tx *sql.Tx) (err error) {
|
||||||
|
sql := `DROP EXTENSION IF EXISTS hstore;`
|
||||||
|
_, err = tx.Exec(sql)
|
||||||
|
return err
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue