immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
53.88k stars 2.86k forks source link

[TECH-DEBT] Mobile upload refactor #2567

Open alextran1502 opened 1 year ago

alextran1502 commented 1 year ago

Now that the support for client-side hashing has been merged into the server.

It is time to look at some long-standing issues with uploading assets from the mobile app that have been reported, such as

The plan is to refactor the uploading code to make it cleaner as well as include new hashing and error handling mechanism

Dental1347 commented 1 year ago

May I add some things? I don't know if they're in scope of this issue:

  1. Files getting stuck in the upload queue. Restart of the app will prompt to re-upload the file (even on cellular network)
  2. Backup starts even when on cellular network.
  3. Scanning for assets sometimes takes multiple hours, seemingly doing nothing. If it is not, feel free to ignore my suggestions.
Sherlock1979 commented 1 year ago

I have experienced number 3 several times.

Vcele commented 1 year ago

I would also love to see two way sync, so that if I delete a photo on the web it also gets removed on my phone. Maybe one could implement an out of sync warning like GPhotos does 😁

alextran1502 commented 1 year ago

@Vcele That would be a separate feature which we will implement in the future

phrodide commented 1 year ago

May I add some things? I don't know if they're in scope of this issue:

  1. Files getting stuck in the upload queue. Restart of the app will prompt to re-upload the file (even on cellular network)
  2. Backup starts even when on cellular network.
  3. Scanning for assets sometimes takes multiple hours, seemingly doing nothing. If it is not, feel free to ignore my suggestions.

it seems #1 is linked to file size. 1GB or more is suspect.

Dental1347 commented 1 year ago

I just came across something which I orignally never thought of. I myself don't have this, but my direct family does. They have albums on their phones which span over multiple years. It is currently absolutely impossible to add all these pictures manually to the album that has to be manually created within immich. The photos cross around many years. If, the albums were directly created on upload and the the assets automatically added (Also future assets for that album), that would make immich so incredibly powerful for mobile backups.

Originated from general discussion within discord.

chriexpe commented 1 year ago

I just wanted to add another thing, to attach a tag to the photo with the name of the album/folder it came from, so you could later create a album or filter out just the pictures that you took (DCIM>Camera) or screenshots (DCIM>Screenshots).

jeverling commented 1 year ago

I would also love to see two way sync, so that if I delete a photo on the web it also gets removed on my phone. Maybe one could implement an out of sync warning like GPhotos does grin

Please make this feature optional :upside_down_face:

codeinabox commented 1 year ago

I too have experienced the negative counter, is there any way to fix it? As it's negative, it's unclear if any photos still need to be backed up or not

alextran1502 commented 1 year ago

@codeinabox you can fix it by either clear the app cache or reinstall the app

yurividal commented 1 year ago

Please consider option to pause a current upload. This is useful when the user is in an area with low cell coverage, and takes a video. I had barely any service, and shot a video. Immich kept trying to upload that video for hours, consuming all of the little bandwidth i had.

alexchomiak commented 10 months ago

Peeking in :) ( I love this project )

These features would be amazing, and is the only thing stopping me from downloading Immich on all of my devices at the moment.

Downloading Immich on multiple IOS devices leads to the entire library having to be re-synced. (even though duplicates aren't created. Waiting on the full file uploads for a MD5 Hash check is killing a ton of time)

With the recent launch of external libraries, this would be amazing for quickly syncing iCloud. (as I recently corrupted my Immich Postgres database & have had to resync my app. (leading to the same upload/hash check loop)

Update: This is probably a better issue for me to track on my end: https://github.com/orgs/immich-app/projects/1/views/1?pane=issue&itemId=29492098

SandiyosDev commented 8 months ago

Peeking in :) ( I love this project )

These features would be amazing, and is the only thing stopping me from downloading Immich on all of my devices at the moment.

Downloading Immich on multiple IOS devices leads to the entire library having to be re-synced. (even though duplicates aren't created. Waiting on the full file uploads for a MD5 Hash check is killing a ton of time)

With the recent launch of external libraries, this would be amazing for quickly syncing iCloud. (as I recently corrupted my Immich Postgres database & have had to resync my app. (leading to the same upload/hash check loop)

Update: This is probably a better issue for me to track on my end: https://github.com/orgs/immich-app/projects/1/views/1?pane=issue&itemId=29492098

@alexchomiak You can indeed sync iCloud by binding the photo.photolibrary-Originals folder as a read-only external library in Immich, enable the watcher and it will sync automatically, though some exif-less photo's creation date will be wrong because its based on the date its synced from icloud, and not its original capture date.

Serinus1 commented 6 months ago

consuming all of the little bandwidth i had.

Like whe ln you're in a tourism area taking pictures? Yes, a snooze or pause button the notification would be very nice. This could be a separate issue.

Posting live from use case #jungfrau

TobiPeterG commented 5 months ago

Hey there, I'm not sure if this issue has already been reported, at least I didn't find a similar issue. On my Android phone, the synchronization doesn't seem to work properly. For about 2 weeks, my phone has been trying to sync my photos and Videos (I didn't take any new) and the counter of to be synced Videos sometimes increases, but stays at around 624. Also, it seems that the app continues to sync with mobile data, even though this option is disabled (the app used 9GB of mobile data this month lol)

Are you aware of these issues? Do you need any additional information?

xdaniel9 commented 5 months ago

It would be great to add the feature to select upload destination for mobile app for users have more than one device, eg iphone, ipad, android phones

TriplEight commented 12 hours ago
  1. Files getting stuck in the upload queue.

While Remainder == 0, I have several videos stuck in the upload queue. Some videos 100-900 Mb just keep being uploaded over and over. No logs on the server side.

Negative remainder count

I have not negative, but Total amount < Backup in Android app.

![image](https://github.com/user-attachments/assets/7f0b05a0-55ec-4680-a807-c10f0d7af92a)