Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5f932c0

Browse files
committed
Check iterator error on Drop where applicable
1 parent 0521ebe commit 5f932c0

File tree

10 files changed

+38
-0
lines changed

10 files changed

+38
-0
lines changed

database/clickhouse/clickhouse.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,7 @@ func (ch *ClickHouse) Drop() (err error) {
240240
err = multierror.Append(err, errClose)
241241
}
242242
}()
243+
243244
for tables.Next() {
244245
var table string
245246
if err := tables.Scan(&table); err != nil {
@@ -252,6 +253,10 @@ func (ch *ClickHouse) Drop() (err error) {
252253
return &database.Error{OrigErr: err, Query: []byte(query)}
253254
}
254255
}
256+
if err := tables.Err(); err != nil {
257+
return &database.Error{OrigErr: err, Query: []byte(query)}
258+
}
259+
255260
return nil
256261
}
257262

database/cockroachdb/cockroachdb.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -300,6 +300,9 @@ func (c *CockroachDb) Drop() (err error) {
300300
tableNames = append(tableNames, tableName)
301301
}
302302
}
303+
if err := tables.Err(); err != nil {
304+
return &database.Error{OrigErr: err, Query: []byte(query)}
305+
}
303306

304307
if len(tableNames) > 0 {
305308
// delete one by one ...

database/firebird/firebird.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,9 @@ func (f *Firebird) Drop() (err error) {
193193
tableNames = append(tableNames, tableName)
194194
}
195195
}
196+
if err := tables.Err(); err != nil {
197+
return &database.Error{OrigErr: err, Query: []byte(query)}
198+
}
196199

197200
// delete one by one ...
198201
for _, t := range tableNames {

database/mysql/mysql.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -401,6 +401,9 @@ func (m *Mysql) Drop() (err error) {
401401
tableNames = append(tableNames, tableName)
402402
}
403403
}
404+
if err := tables.Err(); err != nil {
405+
return &database.Error{OrigErr: err, Query: []byte(query)}
406+
}
404407

405408
if len(tableNames) > 0 {
406409
// disable checking foreign key constraints until finished

database/postgres/postgres.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,9 @@ func (p *Postgres) Drop() (err error) {
345345
tableNames = append(tableNames, tableName)
346346
}
347347
}
348+
if err := tables.Err(); err != nil {
349+
return &database.Error{OrigErr: err, Query: []byte(query)}
350+
}
348351

349352
if len(tableNames) > 0 {
350353
// delete one by one ...

database/ql/ql.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,6 +136,7 @@ func (m *Ql) Drop() (err error) {
136136
err = multierror.Append(err, errClose)
137137
}
138138
}()
139+
139140
tableNames := make([]string, 0)
140141
for tables.Next() {
141142
var tableName string
@@ -148,6 +149,10 @@ func (m *Ql) Drop() (err error) {
148149
}
149150
}
150151
}
152+
if err := tables.Err(); err != nil {
153+
return &database.Error{OrigErr: err, Query: []byte(query)}
154+
}
155+
151156
if len(tableNames) > 0 {
152157
for _, t := range tableNames {
153158
query := "DROP TABLE " + t

database/redshift/redshift.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,9 @@ func (p *Redshift) Drop() (err error) {
284284
tableNames = append(tableNames, tableName)
285285
}
286286
}
287+
if err := tables.Err(); err != nil {
288+
return &database.Error{OrigErr: err, Query: []byte(query)}
289+
}
287290

288291
if len(tableNames) > 0 {
289292
// delete one by one ...

database/snowflake/snowflake.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,9 @@ func (p *Snowflake) Drop() (err error) {
318318
tableNames = append(tableNames, tableName)
319319
}
320320
}
321+
if err := tables.Err(); err != nil {
322+
return &database.Error{OrigErr: err, Query: []byte(query)}
323+
}
321324

322325
if len(tableNames) > 0 {
323326
// delete one by one ...

database/sqlcipher/sqlcipher.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ func (m *Sqlite) Drop() (err error) {
143143
err = multierror.Append(err, errClose)
144144
}
145145
}()
146+
146147
tableNames := make([]string, 0)
147148
for tables.Next() {
148149
var tableName string
@@ -153,6 +154,10 @@ func (m *Sqlite) Drop() (err error) {
153154
tableNames = append(tableNames, tableName)
154155
}
155156
}
157+
if err := tables.Err(); err != nil {
158+
return &database.Error{OrigErr: err, Query: []byte(query)}
159+
}
160+
156161
if len(tableNames) > 0 {
157162
for _, t := range tableNames {
158163
query := "DROP TABLE " + t

database/sqlite3/sqlite3.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ func (m *Sqlite) Drop() (err error) {
143143
err = multierror.Append(err, errClose)
144144
}
145145
}()
146+
146147
tableNames := make([]string, 0)
147148
for tables.Next() {
148149
var tableName string
@@ -153,6 +154,10 @@ func (m *Sqlite) Drop() (err error) {
153154
tableNames = append(tableNames, tableName)
154155
}
155156
}
157+
if err := tables.Err(); err != nil {
158+
return &database.Error{OrigErr: err, Query: []byte(query)}
159+
}
160+
156161
if len(tableNames) > 0 {
157162
for _, t := range tableNames {
158163
query := "DROP TABLE " + t

0 commit comments

Comments
 (0)