Skip to content

Fix warning time comparison#665

Open
andrii-suse wants to merge 3 commits into
masterfrom
fix-warning-time-comparison
Open

Fix warning time comparison#665
andrii-suse wants to merge 3 commits into
masterfrom
fix-warning-time-comparison

Conversation

@andrii-suse

Copy link
Copy Markdown
Collaborator

No description provided.

Andrii Nikitin added 3 commits July 13, 2026 10:35
The problem happened because of accidentally choosing a wrong line to put the format conversion
Prevent `folder_sync` and `folder_pkg_sync` tasks from scanning recursively
under non-canonical symlink paths (such as `Changes -> .` loops).

Previously, when scanning a non-canonical path `$path` whose `$realpath`
differed from it, the tasks would register the redirect but continue
recursively scanning that directory relative to `$path`. For directory
loops, this resulted in an infinite loop that populated the redirect table
with repeating suffixes like `/Changes/Changes/Changes`.

Now, if `$realpath ne $path`, the tasks register the redirect, enqueue a
new task for the canonical `$realpath` to ensure it is synchronized, schedule
a mirror scan on the symlink's `Folder` record, and exit immediately. This
prevents redundant scans, infinite recursive jobs, and database pollution.

Also includes a new integration test (`15-local-symlink-4.sh`) verifying that
directory loop symlinks do not generate nested recursive redirect records.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant