feat: add context support to error handlers for improved cancellation and error management
This commit is contained in:
@@ -36,8 +36,10 @@ func processMigrationJob(sourceDb *sql.DB, targetDb *pgxpool.Pool, job Migration
|
||||
defer close(chJobErrors)
|
||||
|
||||
go func() {
|
||||
if err := jobErrorHandler(chJobErrors); err != nil {
|
||||
cancel()
|
||||
if err := jobErrorHandler(ctx, chJobErrors); err != nil {
|
||||
if ctx.Err() == nil {
|
||||
cancel()
|
||||
}
|
||||
}
|
||||
}()
|
||||
|
||||
@@ -45,7 +47,7 @@ func processMigrationJob(sourceDb *sql.DB, targetDb *pgxpool.Pool, job Migration
|
||||
chExtractorErrors := make(chan ExtractorError, len(batches))
|
||||
|
||||
go func() {
|
||||
extractorErrorHandler(chExtractorErrors, chBatches, chJobErrors)
|
||||
extractorErrorHandler(ctx, chExtractorErrors, chBatches, chJobErrors)
|
||||
}()
|
||||
|
||||
chChunks := make(chan Chunk, QueueSize)
|
||||
|
||||
Reference in New Issue
Block a user