Mobile, Android: Scrolling thousands of pics in "Search" category crashes multiple browsers #1403

Closed
opened 2026-02-20 00:12:02 -05:00 by deekerman · 4 comments
Owner

Originally created by @jbdubbs on GitHub (Apr 14, 2022).

Originally assigned to: @lastzero on GitHub.

Environment

Build 220302-0059f429-Linux-AMD64

Oneplus 8 5G, T-Mobile version
8Gb RAM, Snapdragon 865
Android 11, Google Play version March 1 2022, Android Security version Feb 1 2022
Build 11.0.7.9.IN55CB
Firefox Mobile 95.2.0 Build 2015851755
Chrome Mobile 97.0.4692.87

Docker:

Client:
Version: 20.10.7
API version: 1.41
Go version: go1.13.8
Git commit: 20.10.7-0ubuntu5~20.04.2
Built: Mon Nov 1 00:34:17 2021
OS/Arch: linux/amd64
Context: default
Experimental: true

Server:
Engine:
Version: 20.10.7
API version: 1.41 (minimum version 1.12)
Go version: go1.13.8
Git commit: 20.10.7-0ubuntu5-20.04.2
Built: Fri Oct 22 00:45:53 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.5.5-0ubuntu3-20.04.2
GitCommit:
runc:
Version: 1.0.1-0ubuntu2-20.04.1
GitCommit:
docker-init:
Version: 0.19.0
GitCommit:

Steps to reproduce

Open Firefox or Chrome mobile. Scroll through lots of pictures in your "Search" uncategorized section.

Expected Result

Keep scrolling fast.

Actual Result

Scrolling gradually gets slower and slower, to the point where loading the next 50 photos takes 10+ seconds. Firefox hard locks, Chrome "Aw, Snap!".

Originally created by @jbdubbs on GitHub (Apr 14, 2022). Originally assigned to: @lastzero on GitHub. **Environment** Build 220302-0059f429-Linux-AMD64 Oneplus 8 5G, T-Mobile version 8Gb RAM, Snapdragon 865 Android 11, Google Play version March 1 2022, Android Security version Feb 1 2022 Build 11.0.7.9.IN55CB Firefox Mobile 95.2.0 Build 2015851755 Chrome Mobile 97.0.4692.87 Docker: Client: Version: 20.10.7 API version: 1.41 Go version: go1.13.8 Git commit: 20.10.7-0ubuntu5~20.04.2 Built: Mon Nov 1 00:34:17 2021 OS/Arch: linux/amd64 Context: default Experimental: true Server: Engine: Version: 20.10.7 API version: 1.41 (minimum version 1.12) Go version: go1.13.8 Git commit: 20.10.7-0ubuntu5-20.04.2 Built: Fri Oct 22 00:45:53 2021 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.5.5-0ubuntu3-20.04.2 GitCommit: runc: Version: 1.0.1-0ubuntu2-20.04.1 GitCommit: docker-init: Version: 0.19.0 GitCommit: **Steps to reproduce** Open Firefox or Chrome mobile. Scroll through lots of pictures in your "Search" uncategorized section. **Expected Result** Keep scrolling fast. **Actual Result** Scrolling gradually gets slower and slower, to the point where loading the next 50 photos takes 10+ seconds. Firefox hard locks, Chrome "Aw, Snap!".
deekerman 2026-02-20 00:12:02 -05:00
  • closed this issue
  • added the
    duplicate
    label
Author
Owner

@graciousgrey commented on GitHub (Apr 14, 2022):

Our latest development preview comes with performance improvements: https://docs.photoprism.app/release-notes/#development-preview.

A timeline view that is optimized for fast scrolling is planned as well: https://github.com/photoprism/photoprism/issues/152

@graciousgrey commented on GitHub (Apr 14, 2022): Our latest development preview comes with performance improvements: https://docs.photoprism.app/release-notes/#development-preview. A timeline view that is optimized for fast scrolling is planned as well: https://github.com/photoprism/photoprism/issues/152
Author
Owner

@jbdubbs commented on GitHub (Apr 14, 2022):

Our latest development preview comes with performance improvements: https://docs.photoprism.app/release-notes/#development-preview.

A timeline view that is optimized for fast scrolling is planned as well: #152

Understood.

I'm assuming you would still like this bug open due to the hard crash nature of it?

@jbdubbs commented on GitHub (Apr 14, 2022): > Our latest development preview comes with performance improvements: https://docs.photoprism.app/release-notes/#development-preview. > > A timeline view that is optimized for fast scrolling is planned as well: #152 Understood. I'm assuming you would still like this bug open due to the hard crash nature of it?
Author
Owner

@lastzero commented on GitHub (Apr 15, 2022):

I am aware of the technical limitations of the current architecture. Done is better than perfect, especially when you have a small team and a lot of feature requests to consider.

The good news is, we've made a lot of performance and memory usage improvements in the last few weeks! It would be great if you could try this out, as it could improve your experience immediately (feedback is welcome in GitHub Discussions):

All browsers and devices have some sort of memory limit, especially mobile devices. Personally never had any issues on Android, so either I'm not scrolling hard enough or if you are getting a "hard crash" also depends on the OS and Browser settings. Some device vendors might be more aggressive than others.

General notes on using PhotoPrism:

  1. consider searching only a reasonable number of images at a time, while we continue to improve the user interface for users who prefer scrolling to searching (or who simply have a large amount of photos).
  2. we recommend not packing thousands of images into a single album and actively using search filters to limit the number of search results, e.g. filter by date, unless you really need to load all images at the same time:

Search Filters Available in Our Latest Preview Build

Filter Type Examples Notes
fmax decimal fmax:1.245
fmin decimal fmin:1.245
lat decimal lat:1.245
lng decimal lng:1.245
chroma number chroma:-1 chroma:2
diff number diff:-1 diff:2
dist number dist:-1 dist:2 Distance to coordinates (radius in kilometre). Only applicable in combination with the lat/lng filters.
quality number quality:0 quality:3 Options: 0, 1, 2, 3, 4, 5
album string album:berlin Single name with * wildcard
albums string albums:"South Africa & Birds" Album names can be combined with & and |
camera string camera:canon
category string category:"name"
color string color:"red|blue" Can be combined with |. Options: purple, magenta, pink, red, orange, gold, yellow, lime, green, teal, cyan, blue, brown, white, grey, black
country string country:"de|us" Can be combined with |.
day string day:3|13 Can be combined with |.
face string face:"name"
faces string faces:yes faces:no faces:3 3 means minimum 3 faces
filename string filename:"2021/07/12345.jpg" Can be combined with |.
folder string folder:2020/Holiday, folder:"*/2020" Same as path. Can be combined with |.
hash string hash:2fd4e1c67a2d Can be combined with |.
keywords string keywords:"buffalo&water" Keywords can be combined with & and |
label string label:cat|dog Can be combined with |.
lens string lens:ef24
month string month:7|10 Can be combined with |.
name string name:"IMG_9831-112", name:"IMG_9831-112*" Can be combined with |.
original string original:"IMG_9831-112", original:"IMG_9831-112*" Can be combined with |. Only applicable when files have been imported
path string path:2020/Holiday, path:"*/2020" Same as folder. Can be combined with |.
people string people:"Jane & John" Same as subjects. Names can be combined with & and |
person string person:"Jane Doe & John Doe" Same as subject. Only exact matches. Names can be combined with & and |
state string state:"Baden-Württemberg" Can be combined with |.
subject string subject:"Jane Doe & John Doe" Same as person. Only exact matches. Names can be combined with & and |
subjects string subjects:"Jane & John" Same as people. Names can be combined with & and |
title string title:"Lake*" Can be combined with |.
type string type:raw Can be combined with |. Options: image, video, raw, live, animated
uid string uid:pqbcf5j446s0futy
year string year:1990|2003 Can be combined with |.
animated switch animated:yes Animated GIFs
archived switch archived:yes
error switch error:yes
favorite switch favorite:yes
geo switch geo:yes
hidden switch hidden:yes
landscape switch landscape:yes
live switch live:yes Live Photos, Short Videos
mono switch mono:yes
panorama switch panorama:yes Aspect Ratio > 1.9:1
photo switch photo:yes No Videos
portrait switch portrait:yes
primary switch primary:yes
private switch private:yes
public switch public:yes
raw switch raw:yes RAW Images
review switch review:yes
scan switch scan:yes Scanned Images, Documents
square switch square:yes
stack switch stack:yes
stackable switch stackable:yes
unsorted switch unsorted:yes
unstacked switch unstacked:yes
vector switch vector:yes Vector Graphics
video switch video:yes
after timestamp after:"2022-01-30 15:23:42" Taken after this date
before timestamp before:"2022-01-30 15:23:42" Taken before this date

Thanks for your support and patience!

@lastzero commented on GitHub (Apr 15, 2022): I am aware of the technical limitations of the current architecture. Done is better than perfect, especially when you have a small team and a lot of feature requests to consider. The good news is, we've made a lot of performance and memory usage improvements in the last few weeks! It would be great if you could try this out, as it could improve your experience immediately (feedback is welcome in GitHub Discussions): - https://github.com/photoprism/photoprism/issues/1438#issuecomment-1084291596 - https://docs.photoprism.app/release-notes/ All browsers and devices have some sort of memory limit, especially mobile devices. Personally never had any issues on Android, so either I'm not scrolling hard enough or if you are getting a "hard crash" also depends on the OS and Browser settings. Some device vendors might be more aggressive than others. General notes on using PhotoPrism: 1. consider searching only a reasonable number of images at a time, while we continue to improve the user interface for users who prefer scrolling to searching (or who simply have a large amount of photos). 2. we recommend not packing thousands of images into a single album and actively using search filters to limit the number of search results, e.g. filter by date, unless you really need to load all images at the same time: ## Search Filters Available in Our Latest Preview Build ## | Filter | Type | Examples | Notes | |-----------|-----------|---------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------| | fmax | decimal | fmax:1.245 | | | fmin | decimal | fmin:1.245 | | | lat | decimal | lat:1.245 | | | lng | decimal | lng:1.245 | | | chroma | number | chroma:-1 chroma:2 | | | diff | number | diff:-1 diff:2 | | | dist | number | dist:-1 dist:2 | Distance to coordinates (radius in kilometre). Only applicable in combination with the lat/lng filters. | | quality | number | quality:0 quality:3 | Options: 0, 1, 2, 3, 4, 5 | | album | string | album:berlin | Single name with * wildcard | | albums | string | albums:"South Africa & Birds" | Album names can be combined with & and \| | | camera | string | camera:canon | | | category | string | category:"name" | | | color | string | color:"red\|blue" | Can be combined with \|. Options: purple, magenta, pink, red, orange, gold, yellow, lime, green, teal, cyan, blue, brown, white, grey, black | | country | string | country:"de\|us" | Can be combined with \|. | | day | string | day:3\|13 | Can be combined with \|. | | face | string | face:"name" | | | faces | string | faces:yes faces:no faces:3 | 3 means minimum 3 faces | | filename | string | filename:"2021/07/12345.jpg" | Can be combined with \|. | | folder | string | folder:2020/Holiday, folder:"*/2020" | Same as path. Can be combined with \|. | | hash | string | hash:2fd4e1c67a2d | Can be combined with \|. | | keywords | string | keywords:"buffalo&water" | Keywords can be combined with & and \| | | label | string | label:cat\|dog | Can be combined with \|. | | lens | string | lens:ef24 | | | month | string | month:7\|10 | Can be combined with \|. | | name | string | name:"IMG_9831-112", name:"IMG_9831-112*" | Can be combined with \|. | | original | string | original:"IMG_9831-112", original:"IMG_9831-112*" | Can be combined with \|. Only applicable when files have been imported | | path | string | path:2020/Holiday, path:"*/2020" | Same as folder. Can be combined with \|. | | people | string | people:"Jane & John" | Same as subjects. Names can be combined with & and \| | | person | string | person:"Jane Doe & John Doe" | Same as subject. Only exact matches. Names can be combined with & and \| | | state | string | state:"Baden-Württemberg" | Can be combined with \|. | | subject | string | subject:"Jane Doe & John Doe" | Same as person. Only exact matches. Names can be combined with & and \| | | subjects | string | subjects:"Jane & John" | Same as people. Names can be combined with & and \| | | title | string | title:"Lake*" | Can be combined with \|. | | type | string | type:raw | Can be combined with \|. Options: image, video, raw, live, animated | | uid | string | uid:pqbcf5j446s0futy | | | year | string | year:1990\|2003 | Can be combined with \|. | | animated | switch | animated:yes | Animated GIFs | | archived | switch | archived:yes | | | error | switch | error:yes | | | favorite | switch | favorite:yes | | | geo | switch | geo:yes | | | hidden | switch | hidden:yes | | | landscape | switch | landscape:yes | | | live | switch | live:yes | Live Photos, Short Videos | | mono | switch | mono:yes | | | panorama | switch | panorama:yes | Aspect Ratio > 1.9:1 | | photo | switch | photo:yes | No Videos | | portrait | switch | portrait:yes | | | primary | switch | primary:yes | | | private | switch | private:yes | | | public | switch | public:yes | | | raw | switch | raw:yes | RAW Images | | review | switch | review:yes | | | scan | switch | scan:yes | Scanned Images, Documents | | square | switch | square:yes | | | stack | switch | stack:yes | | | stackable | switch | stackable:yes | | | unsorted | switch | unsorted:yes | | | unstacked | switch | unstacked:yes | | | vector | switch | vector:yes | Vector Graphics | | video | switch | video:yes | | | after | timestamp | after:"2022-01-30 15:23:42" | Taken after this date | | before | timestamp | before:"2022-01-30 15:23:42" | Taken before this date | **Thanks for your support and patience!**
Author
Owner

@lastzero commented on GitHub (Apr 15, 2022):

I'll close this as we know the limitations and there are already a few issues targeting your use case.... hope that's ok! :)

@lastzero commented on GitHub (Apr 15, 2022): I'll close this as we know the limitations and there are already a few issues targeting your use case.... hope that's ok! :)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/photoprism#1403
No description provided.