()
| 149 | } |
| 150 | |
| 151 | func (d *pgTxnDriver) ensureVersionTable() error { |
| 152 | err := d.Lock() |
| 153 | if err != nil { |
| 154 | return xerrors.Errorf("acquire migration lock: %w", err) |
| 155 | } |
| 156 | |
| 157 | const query = `CREATE TABLE IF NOT EXISTS ` + migrationsTableName + ` (version bigint not null primary key, dirty boolean not null)` |
| 158 | if _, err := d.tx.ExecContext(context.Background(), query); err != nil { |
| 159 | return &database.Error{OrigErr: err, Query: []byte(query)} |
| 160 | } |
| 161 | |
| 162 | err = d.Unlock() |
| 163 | if err != nil { |
| 164 | return xerrors.Errorf("release migration lock: %w", err) |
| 165 | } |
| 166 | |
| 167 | return nil |
| 168 | } |
no test coverage detected