AOSSIE-Org / AOSSIE-Org/PictoPy

BUG: Same image gets indexed multiple times when directory contains symlinks/hardlinks

Open
#1,181 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
283
Forks
679
Avg merge
7d 2h
Merged PRs (30d)
3

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues

### What happened?

### Describe the bug
When a library includes symbolic links (or hardlinks) to photos, PictoPy appears to index the same underlying image multiple times instead of treating it as one media item.

### Steps to reproduce
1. Create folder `A` with 20 images.
2. Create folder `B` containing symlinks to the same 20 images from `A` (or hardlinks).
3. Add both folders in PictoPy settings.
4. Start scan/indexing.

### Expected behavior
Each physical image should be indexed once (deduplicated by inode/path-resolve/hash strategy), with a single media record in the UI.

### Actual behavior
Duplicate entries appear for the same image content, and indexing/AI tagging runs repeatedly for linked copies.

### Impact
- Slower scans and higher CPU usage
- Duplicate thumbnails/search results
- Larger metadata DB than necessary

### Suggested fix
- Normalize file identity before insert (resolve symlink + stable file identity check).
- Add a unique constraint / duplicate guard in ingestion pipeline.
- Skip AI pipeline when file identity already exists.

### Record

- [x] I agree to follow this project's Code of Conduct

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.