New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Search for files that are not in subfolder of current folder causes infinite URL switching #23774

Closed
michaelstingl opened this Issue Apr 4, 2016 · 13 comments

Comments

Projects
None yet
7 participants
@michaelstingl

michaelstingl commented Apr 4, 2016

search-loop

Steps to reproduce

  1. create folders subfolder-testing > searchthis
  2. go to "Shared with you" folder
  3. search for searchthis
  4. click on result in "search results in other folders" list

Expected behaviour

see search result

Actual behaviour

infinite URL switching

Server configuration

Operating system:
Ubuntu 14.04

Web server:
Apache/2.4.7

Database:
mysql Ver 15.1 Distrib 5.5.47-MariaDB

PHP version:
PHP 5.5.9-1ubuntu4.14

ownCloud version: (see ownCloud admin page)
ownCloud 8.2.3 ee

Updated from an older ownCloud or fresh install:
fresh install

List of activated apps:

Enabled:
  - activity: 2.1.4
  - admin_audit: 0.6
  - enterprise_key: 0.1.0
  - external: 1.2
  - files: 1.2.1
  - files_drop: 0.4
  - files_external: 0.3.0
  - files_pdfviewer: 0.7
  - files_sharing: 0.7.0
  - files_sharing_log: 0.5
  - files_texteditor: 2.0
  - files_trashbin: 0.7.0
  - files_versions: 1.1.0
  - files_videoviewer: 0.1.3
  - firewall: 2.2.0
  - firstrunwizard: 1.1
  - gallery: 14.2.0
  - notifications: 0.1.0
  - password_policy: 
  - provisioning_api: 0.3.0
  - templateeditor: 0.1
  - updater: 0.6
  - user_ldap: 0.7.1
  - windows_network_drive: 0.1.1
Disabled:
  - encryption
  - files_antivirus
  - files_ldap_home
  - objectstore
  - sharepoint
  - user_external
  - user_shibboleth

The content of config/config.php:

nothing modified

Are you using external storage, if yes which one: local/smb/sftp/...
no

Are you using encryption: yes/no
no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
no

Client configuration

Browser:
Safari 9.1

Operating system:
Mac OS X 10.11.4

@MorrisJobke Who can help here?

00005148

@nickvergessen

This comment has been minimized.

Show comment
Hide comment
@nickvergessen

nickvergessen Apr 4, 2016

Contributor

Might be to the redirect loop from the apps page?

Contributor

nickvergessen commented Apr 4, 2016

Might be to the redirect loop from the apps page?

@MorrisJobke

This comment has been minimized.

Show comment
Hide comment
@MorrisJobke

MorrisJobke Apr 4, 2016

Member

This looks like a bug in the redirect from the shared with you section to the all files section. Maybe somebody from @owncloud/javascript could have a look.

Member

MorrisJobke commented Apr 4, 2016

This looks like a bug in the redirect from the shared with you section to the all files section. Maybe somebody from @owncloud/javascript could have a look.

@balduin-kowalski

This comment has been minimized.

Show comment
Hide comment
@balduin-kowalski

balduin-kowalski Apr 8, 2016

I got the same problem with the actual owncloud Version 9.0
The issue also shows up in the online-demo: https://demo.owncloud.org
Just search for a file and then klick on a serch result - you will be just redirected to the startpage.

balduin-kowalski commented Apr 8, 2016

I got the same problem with the actual owncloud Version 9.0
The issue also shows up in the online-demo: https://demo.owncloud.org
Just search for a file and then klick on a serch result - you will be just redirected to the startpage.

@michaelstingl

This comment has been minimized.

Show comment
Hide comment
@michaelstingl

michaelstingl commented Apr 14, 2016

@MorrisJobke Any news?

@blizzz

This comment has been minimized.

Show comment
Hide comment
@blizzz

blizzz Apr 14, 2016

Contributor

Possible reason: if a change dir does not work, the attempt is to go back: https://github.com/owncloud/core/blob/master/apps/files/js/filelist.js#L1329

Contributor

blizzz commented Apr 14, 2016

Possible reason: if a change dir does not work, the attempt is to go back: https://github.com/owncloud/core/blob/master/apps/files/js/filelist.js#L1329

@MorrisJobke

This comment has been minimized.

Show comment
Hide comment
@MorrisJobke

MorrisJobke Apr 15, 2016

Member

@MorrisJobke Any news?

No

Member

MorrisJobke commented Apr 15, 2016

@MorrisJobke Any news?

No

@PVince81

This comment has been minimized.

Show comment
Hide comment
@PVince81

PVince81 Apr 18, 2016

Member

Possible reason: if a change dir does not work, the attempt is to go back

but that only kicks in in case of server error or 404

Member

PVince81 commented Apr 18, 2016

Possible reason: if a change dir does not work, the attempt is to go back

but that only kicks in in case of server error or 404

@blizzz

This comment has been minimized.

Show comment
Hide comment
@blizzz

blizzz Apr 18, 2016

Contributor

Possible reason: if a change dir does not work, the attempt is to go back

but that only kicks in in case of server error or 404

so you maybe end up in a chain? speculation, this needs debugging.

Contributor

blizzz commented Apr 18, 2016

Possible reason: if a change dir does not work, the attempt is to go back

but that only kicks in in case of server error or 404

so you maybe end up in a chain? speculation, this needs debugging.

@michaelstingl

This comment has been minimized.

Show comment
Hide comment
@michaelstingl

michaelstingl commented May 9, 2016

@blizzz @PVince81 @MorrisJobke What is the status here?

@PVince81

This comment has been minimized.

Show comment
Hide comment
@PVince81

PVince81 May 9, 2016

Member

I suspect that the result's URL is wrong and pointing at a non-existing folder, which might trigger this recursive error.

In general, we need to find a way to prevent switching back and forth and just stop. Still haven't gotten to the bottom of it.

Setting to 9.1 to investigate.

Member

PVince81 commented May 9, 2016

I suspect that the result's URL is wrong and pointing at a non-existing folder, which might trigger this recursive error.

In general, we need to find a way to prevent switching back and forth and just stop. Still haven't gotten to the bottom of it.

Setting to 9.1 to investigate.

@PVince81 PVince81 added this to the 9.1-current milestone May 9, 2016

@PatelParas

This comment has been minimized.

Show comment
Hide comment
@PatelParas

PatelParas May 16, 2016

Member

My prediction says when we pass parameters as view=favorites, view=sharingin, view=sharingout and view=sharinglinks in URL. this turns into repetitive loading of the page. so problem around search.js or filelist.js

filelist.js following function stucks and reload page:

changeDirectory: function(targetDir, changeUrl, force, fileId) {
            var self = this;
            var currentDir = this.getCurrentDirectory();
            targetDir = targetDir || '/';
            if (!force && currentDir === targetDir) {
                return;
            }
            this._setCurrentDir(targetDir, changeUrl, fileId);
            this.reload().then(function(success){
                if (!success) {
                    self.changeDirectory(currentDir, true);
                }
            });
        },

parameters changeURL and force value in normal case is true but in this loop case it is undefined.
I am not expert of javascript but my this prediction can help someone for further prediction.

Member

PatelParas commented May 16, 2016

My prediction says when we pass parameters as view=favorites, view=sharingin, view=sharingout and view=sharinglinks in URL. this turns into repetitive loading of the page. so problem around search.js or filelist.js

filelist.js following function stucks and reload page:

changeDirectory: function(targetDir, changeUrl, force, fileId) {
            var self = this;
            var currentDir = this.getCurrentDirectory();
            targetDir = targetDir || '/';
            if (!force && currentDir === targetDir) {
                return;
            }
            this._setCurrentDir(targetDir, changeUrl, fileId);
            this.reload().then(function(success){
                if (!success) {
                    self.changeDirectory(currentDir, true);
                }
            });
        },

parameters changeURL and force value in normal case is true but in this loop case it is undefined.
I am not expert of javascript but my this prediction can help someone for further prediction.

@PVince81

This comment has been minimized.

Show comment
Hide comment
@PVince81

PVince81 Jun 24, 2016

Member

Fix is here #25259

Member

PVince81 commented Jun 24, 2016

Fix is here #25259

@michaelstingl

This comment has been minimized.

Show comment
Hide comment
@michaelstingl

michaelstingl Jun 24, 2016

@PVince81 Thanks! Could this be backported to stable9 and stable8.2?

michaelstingl commented Jun 24, 2016

@PVince81 Thanks! Could this be backported to stable9 and stable8.2?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment