Skip to content

Commit 86d7594

Browse files
committed
Revert "fix: revise tile scan progress reset logic"
This reverts commit bf11373.
1 parent bf11373 commit 86d7594

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

src/background_tile_loader.rb

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -552,7 +552,14 @@ def initialize_zoom_progress
552552

553553
(start_zoom..end_zoom).each do |z|
554554
existing = @route[:db][:tile_scan_progress].where(source: @source_name, zoom_level: z).first
555-
unless existing
555+
556+
if existing && ['error', 'critical_error'].include?(existing[:status])
557+
reset_zoom_progress(z)
558+
LOGGER.info("Reset #{existing[:status]} status for zoom #{z} of #{@source_name} on startup")
559+
elsif existing && existing[:status] == 'source_unavailable'
560+
@route[:db][:tile_scan_progress].where(source: @source_name, zoom_level: z).update(status: 'stopped')
561+
LOGGER.info("Reset source_unavailable status (keeping coordinates) for zoom #{z} of #{@source_name} on startup")
562+
else
556563
@route[:db][:tile_scan_progress].insert_conflict(
557564
target: [:source, :zoom_level]
558565
).insert(
@@ -588,7 +595,10 @@ def zoom_complete?(z)
588595
elsif current_status == 'completed' && processed < expected
589596
reset_zoom_progress(z)
590597
false
591-
elsif ['active', 'stopped', 'waiting', 'error', 'critical_error', 'source_unavailable'].include?(current_status)
598+
elsif ['active', 'stopped', 'waiting'].include?(current_status)
599+
false
600+
else
601+
reset_zoom_progress(z)
592602
false
593603
end
594604
end

0 commit comments

Comments
 (0)