diff --git a/database/sampling.go b/database/sampling.go index 5d97142515a9c5953e5600ba5d20375f9c5e4008..51a98cb25fb7b5e1ecdedbe0cf98d90d846e8a68 100644 --- a/database/sampling.go +++ b/database/sampling.go @@ -140,17 +140,17 @@ func (db *Connector) startSampling(onlineConn *sql.DB, database, table string, w values = append(values, fmt.Sprintf(`unhex("%s")`, fmt.Sprintf("%x", val))) } } - valuesStr = append(valuesStr, "("+strings.Join(values, `,`)+")") - valuesCount++ - if maxValuesCount <= valuesCount { - err = db.doSampling(table, columnsStr, strings.Join(valuesStr, `,`)) - if err != nil { - break - } - values = make([]string, 0) - valuesStr = make([]string, 0) - valuesCount = 0 + } + valuesStr = append(valuesStr, "("+strings.Join(values, `,`)+")") + valuesCount++ + if maxValuesCount <= valuesCount { + err = db.doSampling(table, columnsStr, strings.Join(valuesStr, `,`)) + if err != nil { + break } + values = make([]string, 0) + valuesStr = make([]string, 0) + valuesCount = 0 } } res.Close()