nextcloud / maps

🌍🌏🌎 The whole world fits inside your cloud!
https://apps.nextcloud.com/apps/maps
GNU Affero General Public License v3.0
500 stars 89 forks source link

[Bug]: All photos are loaded even if zoomed in #960

Closed Eyenseo closed 1 year ago

Eyenseo commented 1 year ago

⚠️ This issue respects the following points: ⚠️

Bug description

Instead of only requesting the pictures that can be seen on the map, all pictures are requested from the server. That leads to long load times.

Steps to reproduce

  1. Open maps
  2. Open the browser developer tools
  3. Select pictures
  4. See 3k+ requests of pictures and 100+MB of data transfer.

Expected behavior

Only pictures that can be seen are loaded. (Maybe some additional prefetching after all viewable pictures have been loaded.)

Installation method

Other

Operating system

Other

PHP engine version

PHP 8.1

Web server

Other

Database engine version

PostgreSQL

Is this bug present after an update or on a fresh install of the server?

None

Is this bug present after an update or on a fresh install of the app?

None

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

Configuration report

{                                                              
    "system": {                                                
        "memcache.local": "\\OC\\Memcache\\APCu",              
        "apps_paths": [                                        
            {                                                  
                "path": "\/var\/www\/html\/apps",              
                "url": "\/apps",                               
                "writable": false                              
            },                                                 
            {                                                  
                "path": "\/var\/www\/html\/custom_apps",       
                "url": "\/custom_apps",                        
                "writable": true                               
            }                                                  
        ],                                                     
        "memcache.distributed": "\\OC\\Memcache\\Redis",       
        "memcache.locking": "\\OC\\Memcache\\Redis",           
        "redis": {                                             
            "host": "***REMOVED SENSITIVE VALUE***",           
            "password": "***REMOVED SENSITIVE VALUE***",                                                                       
            "port": 6379                                       
        },                                                                                                                     
        "instanceid": "***REMOVED SENSITIVE VALUE***",         
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",                                                                                      
        "secret": "***REMOVED SENSITIVE VALUE***",             
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",            
        "trusted_domains": ["***REMOVED SENSITIVE VALUE***"],                                                                     
        "check_data_directory_permissions": false,                                                                                                             
        "enabledPreviewProviders": [                                           
            "OC\\Preview\\PNG",                                                
            "OC\\Preview\\JPEG",                                                                                                                                                      
            "OC\\Preview\\GIF",                                                            
            "OC\\Preview\\HEIC",                                                           
            "OC\\Preview\\BMP",                                                            
            "OC\\Preview\\XBitmap",                                                                                                                                                   
            "OC\\Preview\\TXT",                                                            
            "OC\\Preview\\MarkDown",                                                       
            "OC\\Preview\\OpenDocument",                                                   
            "OC\\Preview\\Krita",                                                          
            "OC\\Preview\\PDF",                                                            
            "OC\\Preview\\Photoshop",                                                      
            "OC\\Preview\\Postscript",                                                                                                                                                
            "OC\\Preview\\StarOffice",                                                     
            "OC\\Preview\\SVG",                                                            
            "OC\\Preview\\TIFF",                                                           
            "OC\\Preview\\Movie",                                                          
            "OC\\Preview\\MKV",                                                            
            "OC\\Preview\\MP4",                                                            
            "OC\\Preview\\AVI"                                                             
        ],                                                                                 
        "preview_max_filesize_image": 150,                                                 
        "preview_max_memory": 512,                                                         
        "datadirectory": "***REMOVED SENSITIVE VALUE***",                                  
        "dbtype": "pgsql",                                                                 
        "version": "25.0.2.3",                                                             
        "overwrite.cli.url": "***REMOVED SENSITIVE VALUE***",                                     
        "overwriteprotocol": "https",                                                      
        "dbname": "***REMOVED SENSITIVE VALUE***",                                         
        "dbhost": "***REMOVED SENSITIVE VALUE***",                                         
        "dbport": "",                                                                      
        "dbtableprefix": "oc_",                                                            
        "dbuser": "***REMOVED SENSITIVE VALUE***",                                         
        "dbpassword": "***REMOVED SENSITIVE VALUE***",                                     
        "default_phone_region": "DE",                                                      
        "installed": true,                                                                 
        "maintenance": false,                                                              
        "loglevel": 2,                                                                     
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",                              
        "mail_smtpmode": "sendmail",                                                       
        "mail_sendmailmode": "pipe",                                                       
        "app_install_overwrite": [                                                         
            "unsplash",                                                                    
            "checksum"                                                                     
        ],                                                                                 
        "mail_domain": "***REMOVED SENSITIVE VALUE***",                                    
        "theme": "",                                                                       
        "memories.exiftool": "\/var\/www\/html\/custom_apps\/memories\/lib\/..\/exiftool-bin\/exiftool-amd64-musl"                                                                    
    }                                                                                      
}

List of activated Apps

Enabled:
  - admin_audit: 1.15.0
  - bruteforcesettings: 2.5.0
  - checksum: 1.2.0
  - cloud_federation_api: 1.8.0
  - dav: 1.24.0
  - external: 5.0.0
  - federatedfilesharing: 1.15.0
  - files: 1.20.1
  - files_external: 1.17.0
  - files_pdfviewer: 2.6.0
  - files_rightclick: 1.4.0
  - files_sharing: 1.17.0
  - files_trashbin: 1.15.0
  - logreader: 2.10.0
  - lookup_server_connector: 1.13.0
  - maps: 0.2.4
  - memories: 4.10.3
  - metadata: 0.17.0
  - music: 1.8.1
  - oauth2: 1.13.0
  - password_policy: 1.15.0
  - phonetrack: 0.7.4
  - previewgenerator: 5.1.1
  - privacy: 1.9.0
  - provisioning_api: 1.15.0
  - related_resources: 1.0.3
  - serverinfo: 1.15.0
  - settings: 1.7.0
  - sharebymail: 1.15.0
  - text: 3.6.0
  - theming: 2.0.1
  - twofactor_backupcodes: 1.14.0
  - unsplash: 2.1.1
  - viewer: 1.9.0
  - workflowengine: 2.7.0
Disabled:
  - activity: 2.15.0
  - circles: 22.0.0
  - comments: 1.11.0
  - contacts: 5.1.0
  - contactsinteraction: 1.6.0
  - dashboard: 7.1.0
  - encryption
  - federation: 1.15.0
  - files_versions: 1.14.0
  - firstrunwizard: 2.11.0
  - nextcloud_announcements: 1.11.0
  - notifications: 2.10.1
  - photos: 2.0.0
  - recommendations: 1.1.0
  - support: 1.5.0
  - survey_client: 1.10.0
  - suspicious_login
  - systemtags: 1.15.0
  - twofactor_totp
  - updatenotification: 1.11.0
  - user_ldap
  - user_status: 1.1.1
  - weather_status: 1.1.0

Nextcloud Signing status

No errors have been found.

Nextcloud Logs

empty

Browser Console

Proxying an event bus of version 2.1.1 with 1.3.0 index.es.js:2337:14
JQMIGRATE: Migrate is installed, version 3.4.0 jquery-migrate.min.js:2:698
Proxying an event bus of version 2.1.1 with 1.3.0 index.es.js:2337:14
Proxying an event bus of version 2.1.1 with 3.0.2 jsonp chunk loading:1:58
Proxying an event bus of version 2.1.1 with 1.3.0 index.es.js:2337:14
OCA.Viewer initialized Viewer.js:51:25
Proxying an event bus of version 2.1.1 with 3.0.2 index.js:19:20
oc_appswebroots is deprecated: use OC.appswebroots instead, this will be removed in Nextcloud 20 2 globals.js:60:15
jQuery is deprecated: The global jQuery is deprecated. It will be removed in a later versions without another warning. Please ship your own. 2 globals.js:60:15
Proxying an event bus of version 2.1.1 with 3.0.2 index.js:19:20
Proxying an event bus of version 2.1.1 with 3.0.2 index.esm.js:11:20
Proxying an event bus of version 2.1.1 with 1.3.0 index.es.js:2337:14
jQuery is deprecated: The global jQuery is deprecated. It will be removed in a later versions without another warning. Please ship your own. globals.js:60:15
session heartbeat polling started session-heartbeat.js:103:9
This page uses the non standard property “zoom”. Consider using calc() in the relevant property values, or using “transform” along with “transform-origin: 0 0”. maps
You need to fill either the text or the ariaLabel props in the button component. 
Object { text: null, ariaLabel: null }

Object { _uid: 55, _isVue: true, __v_skip: true, _scope: {…}, "$options": {…}, _renderProxy: {…}, _self: {…}, "$parent": {…}, "$root": {…}, "$children": [], … }
NcActions.js:2:2777
Use of the orientation sensor is deprecated. leaflet-src.js:2826:9

​

Additional info

official alpine-fmp image + caddy

SpamReceiver commented 1 year ago

I have +60k photos. This bug renders the Maps app unusable.

tacruc commented 1 year ago

This is improved in v.0.2.5 by #924. But testers for v0.2.5 are welcome just install the nightly.