Medusa: Firefox Android cannot add new shows, cannot detect folder path

Created on 17 Aug 2018  路  20Comments  路  Source: pymedusa/Medusa

Describe the bug
Cannot add shows using Firefox browser because the folder path is not detected. Chrome works fine.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Shows-->Add Shows-->Add New Show'
  2. Search for any show and click Next
  3. Cannot progress because shows folder is detected as "unknown dir"
  4. See screenshot

Expected behavior
Step 3 normally allows folder selection

Functionality appears to be fine on Chrome but is broken on Firefox for Android.

Screenshots

Firefox behaviour

Chrome behaviour

Medusa (please complete the following information):

  • OS: Synology DSM 6.2 (update 2)
    Python Version: 2.7.14 (default, May 28 2018, 14:47:18) [GCC 4.7.3 20130102 (prerelease)]
    Operating System: Linux-3.10.105-x86_64-with-glibc2.2.5
    Locale: None
    Branch: master
    Database: 44.11
    Commit: pymedusa/Medusa@f5973b28465246e67465d7d86bdc8aa74d13e659

Additional context
This is on a Synology system and has been happening for ~ 2 weeks. Could be to do with the Synology OS or a Firefox upgrade, I tend to keep both upgraded to current.

Bug Fixed

Most helpful comment

develop branch fixes the issue on Firefox Mobile for me too, thank you very much

All 20 comments

Only affecting Firefox for Android (and Firefox Beta for Android), not desktop Firefox on Windows or Linux

@OmgImAlexis You're the only other user I know is experiencing this issue.
Were you able to get more info on this bug?

@fexofenadine I tried Firefox for Android (on Samsung Galaxy S7), both master branch and develop branch. I couldn't reproduce this. If you're only getting this issue on mobile it's very hard to debug, since we can't access the browser's developer console.

@sharkykh yeah I understand, I thought I'd better report it anyhow in case someone else was able to narrow down the variables a bit

Might be the Synology/Firefox Android combo then. I get this behaviour from any of my phones to this server at the moment

@fexofenadine I get this a few times a day while developing on my Macbook(OSX) with Chrome.

I'm wondering if it's a timing issue? I would say there's somewhere not being updated when the store is since there's gotta be some jQuery on that page still, right?

Just tested and even when throttling my speed to 10Kb/s it still loads without this issue so at least that's not it.

The other timing issue I thought of was if the server isn't fast enough to reply to the request for example when I found it last my laptop was at 100% CPU usage as I was also running the Ava tests.

To be honest that does sound somewhat different from what I'm experiencing, mine issue seems to be reproducible every time I try, though I wouldnt be restarting the Medusa server nearly as often as yourself.

Something that occurs to me is that Syno-Community recently updated the "sickbeard-custom" package I use Medusa with to use a different permission set that is compliant with the way Synology like their perms - this sounds like a likely candidate.

If this seems like too much of a black hole, I'm happy for the issue to be closed, it is hardly a deal-breaker to switch browsers for that one task.

Edit: I'd like to retract the statement about my symptoms sounding different from yours

Just noticed the "confirmed" tag is set - if you want me to test anything please shout out

Sometimes it's happening also in Firefox Desktop.

In my case, the problem is after clicking in Shows-->Add Shows-->Add New Show the following URL is loaded in the background http://x.x.x.x:8081/api/v2/config/. When the NAS is slow due to a big workload the URLs response comes after the page is loaded.

I experienced similar issue in Configuration => Post Processing

Ok it just worked for me from Android Firefox (first time in maybe 2 weeks) so it's intermittent for me too.

I'm having the same problem in PC desktop Waterfox:

medusa_01

medusa_02

Started last week IIRC.

@placeboprs Do you get the problem consistently? If so that's gonna be a helpful platform to troubleshoot from

It started last week and at that point I only had the C:\ folder in there and it worked fine for as long as I had Medusa installed, suddenly out of nowhere the problem arose. I then added the second directory and restarted and the problem went away, it even allowed me to select my proper directory C again, then today I went to add some new TV shows and lo and behold the problem is back :(

I can now reproduce it with this "Waterfox" browser on master branch.
I have a feeling this is a simple race condition. I'll try to look into it.

DevTools Console Logs

[Vue warn]: Error in data(): "TypeError: rawRootDirs is undefined"

found in

---> <RootDirs>
       <Root>  vue.js:597:7
TypeError: rawRootDirs is undefined
Stack trace:
data@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:10:1
mergedDataFn@http://localhost:8083/js/lib/vue.js?4512:1174:42
vueAsyncComputedInjectedDataFn@http://localhost:8083/js/lib/[email protected]?4512:62:60
getData@http://localhost:8083/js/lib/vue.js?4512:3413:12
initData@http://localhost:8083/js/lib/vue.js?4512:3370:7
initState@http://localhost:8083/js/lib/vue.js?4512:3309:5
initMixin/Vue.prototype._init@http://localhost:8083/js/lib/vue.js?4512:4615:5
VueComponent@http://localhost:8083/js/lib/vue.js?4512:4785:7
createComponentInstanceForVnode@http://localhost:8083/js/lib/vue.js?4512:4304:10
init@http://localhost:8083/js/lib/vue.js?4512:4125:45
createComponent@http://localhost:8083/js/lib/vue.js?4512:5595:9
createElm@http://localhost:8083/js/lib/vue.js?4512:5542:9
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5832:11
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
patch@http://localhost:8083/js/lib/vue.js?4512:6083:9
lifecycleMixin/Vue.prototype._update@http://localhost:8083/js/lib/vue.js?4512:2670:16
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2782:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
run@http://localhost:8083/js/lib/vue.js?4512:3217:17
flushSchedulerQueue@http://localhost:8083/js/lib/vue.js?4512:2981:5
nextTick/<@http://localhost:8083/js/lib/vue.js?4512:1839:9
flushCallbacks@http://localhost:8083/js/lib/vue.js?4512:1760:5
  vue.js:1743:5
[Vue warn]: Error in getter for watcher "rootDirsValue": "TypeError: this.rootDirs is undefined"

found in

---> <RootDirs>
       <Root>  vue.js:597:7
TypeError: this.rootDirs is undefined
Stack trace:
get@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:63:23
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
evaluate@http://localhost:8083/js/lib/vue.js?4512:3247:16
computedGetter@http://localhost:8083/js/lib/vue.js?4512:3503:9
rootDirsValue@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:39:1
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
evaluate@http://localhost:8083/js/lib/vue.js?4512:3247:16
computedGetter@http://localhost:8083/js/lib/vue.js?4512:3503:9
parsePath/<@http://localhost:8083/js/lib/vue.js?4512:483:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
Watcher@http://localhost:8083/js/lib/vue.js?4512:3129:7
stateMixin/Vue.prototype.$watch@http://localhost:8083/js/lib/vue.js?4512:3607:19
createWatcher@http://localhost:8083/js/lib/vue.js?4512:3567:10
initWatch@http://localhost:8083/js/lib/vue.js?4512:3549:7
initState@http://localhost:8083/js/lib/vue.js?4512:3315:5
initMixin/Vue.prototype._init@http://localhost:8083/js/lib/vue.js?4512:4615:5
VueComponent@http://localhost:8083/js/lib/vue.js?4512:4785:7
createComponentInstanceForVnode@http://localhost:8083/js/lib/vue.js?4512:4304:10
init@http://localhost:8083/js/lib/vue.js?4512:4125:45
createComponent@http://localhost:8083/js/lib/vue.js?4512:5595:9
createElm@http://localhost:8083/js/lib/vue.js?4512:5542:9
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5832:11
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
patch@http://localhost:8083/js/lib/vue.js?4512:6083:9
lifecycleMixin/Vue.prototype._update@http://localhost:8083/js/lib/vue.js?4512:2670:16
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2782:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
run@http://localhost:8083/js/lib/vue.js?4512:3217:17
flushSchedulerQueue@http://localhost:8083/js/lib/vue.js?4512:2981:5
nextTick/<@http://localhost:8083/js/lib/vue.js?4512:1839:9
flushCallbacks@http://localhost:8083/js/lib/vue.js?4512:1760:5
  vue.js:1743:5
[Vue warn]: Error in render: "TypeError: this.rootDirs is undefined"

found in

---> <RootDirs>
       <Root>  vue.js:597:7
TypeError: this.rootDirs is undefined
Stack trace:
get@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:47:23
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
evaluate@http://localhost:8083/js/lib/vue.js?4512:3247:16
computedGetter@http://localhost:8083/js/lib/vue.js?4512:3503:9
anonymous@http://localhost:8083/js/lib/vue.js?4512 line 10667 > Function:3:173
renderMixin/Vue.prototype._render@http://localhost:8083/js/lib/vue.js?4512:4535:15
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2777:19
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
Watcher@http://localhost:8083/js/lib/vue.js?4512:3129:7
mountComponent@http://localhost:8083/js/lib/vue.js?4512:2795:3
Vue.prototype.$mount@http://localhost:8083/js/lib/vue.js?4512:8527:10
Vue.prototype.$mount@http://localhost:8083/js/lib/vue.js?4512:10926:10
init@http://localhost:8083/js/lib/vue.js?4512:4131:7
createComponent@http://localhost:8083/js/lib/vue.js?4512:5595:9
createElm@http://localhost:8083/js/lib/vue.js?4512:5542:9
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5832:11
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
updateChildren@http://localhost:8083/js/lib/vue.js?4512:5809:9
patchVnode@http://localhost:8083/js/lib/vue.js?4512:5923:29
patch@http://localhost:8083/js/lib/vue.js?4512:6083:9
lifecycleMixin/Vue.prototype._update@http://localhost:8083/js/lib/vue.js?4512:2670:16
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2782:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
run@http://localhost:8083/js/lib/vue.js?4512:3217:17
flushSchedulerQueue@http://localhost:8083/js/lib/vue.js?4512:2981:5
nextTick/<@http://localhost:8083/js/lib/vue.js?4512:1839:9
flushCallbacks@http://localhost:8083/js/lib/vue.js?4512:1760:5
  vue.js:1743:5
[Vue warn]: Error in event handler for "update:root-dirs": "TypeError: rootDirs is undefined"

found in

---> <RootDirs>
       <Root>  vue.js:597:7
TypeError: rootDirs is undefined
Stack trace:
rootDirsUpdated@http://localhost:8083/addShows/newShow/:1056:13
invoker@http://localhost:8083/js/lib/vue.js?4512:2029:14
eventsMixin/Vue.prototype.$emit@http://localhost:8083/js/lib/vue.js?4512:2538:11
mounted@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:29:9
callHook@http://localhost:8083/js/lib/vue.js?4512:2921:9
insert@http://localhost:8083/js/lib/vue.js?4512:4152:7
invokeInsertHook@http://localhost:8083/js/lib/vue.js?4512:5947:9
patch@http://localhost:8083/js/lib/vue.js?4512:6166:5
lifecycleMixin/Vue.prototype._update@http://localhost:8083/js/lib/vue.js?4512:2670:16
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2782:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
run@http://localhost:8083/js/lib/vue.js?4512:3217:17
flushSchedulerQueue@http://localhost:8083/js/lib/vue.js?4512:2981:5
nextTick/<@http://localhost:8083/js/lib/vue.js?4512:1839:9
flushCallbacks@http://localhost:8083/js/lib/vue.js?4512:1760:5
  vue.js:1743:5
[Vue warn]: Error in mounted hook: "TypeError: this.rootDirs is undefined"

found in

---> <RootDirs>
       <Root>  vue.js:597:7
TypeError: this.rootDirs is undefined
Stack trace:
get@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:63:23
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
evaluate@http://localhost:8083/js/lib/vue.js?4512:3247:16
computedGetter@http://localhost:8083/js/lib/vue.js?4512:3503:9
rootDirsValue@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:39:1
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
evaluate@http://localhost:8083/js/lib/vue.js?4512:3247:16
computedGetter@http://localhost:8083/js/lib/vue.js?4512:3503:9
mounted@http://localhost:8083/js/lib/http-vue-loader.js?4512 line 161 > Function:30:9
callHook@http://localhost:8083/js/lib/vue.js?4512:2921:9
insert@http://localhost:8083/js/lib/vue.js?4512:4152:7
invokeInsertHook@http://localhost:8083/js/lib/vue.js?4512:5947:9
patch@http://localhost:8083/js/lib/vue.js?4512:6166:5
lifecycleMixin/Vue.prototype._update@http://localhost:8083/js/lib/vue.js?4512:2670:16
updateComponent@http://localhost:8083/js/lib/vue.js?4512:2782:7
get@http://localhost:8083/js/lib/vue.js?4512:3140:13
run@http://localhost:8083/js/lib/vue.js?4512:3217:17
flushSchedulerQueue@http://localhost:8083/js/lib/vue.js?4512:2981:5
nextTick/<@http://localhost:8083/js/lib/vue.js?4512:1839:9
flushCallbacks@http://localhost:8083/js/lib/vue.js?4512:1760:5
  vue.js:1743:5

Oooh good news thanks :)

BTW I restarted Medusa and then launched it in Chrome and I had the same problem

@sharkykh http-vue-loader isn't used in develop though? The issue you found is very likely http-vue-loader using up HTTP calls/bandwidth and triggering a timing issue like you suggested.

@PlaceboPRS
Well, maybe.
Since I can't reproduce it on develop, I'm not sure, but there's a chance we already fixed it.

@OmgImAlexis
Correct, we removed http-vue-loader. And I also changed this to use the store instead of MEDUSA.config in #4718.
Do you still get this bug on develop?

That's good, idiot's guide for switching to develop please? :)

@PlaceboPRS

  1. Add your GitHub credentials under General Config -> Advanced Settings -> GitHub
  2. Save Changes
  3. Select develop branch and click checkout, it should switch to develop branch and restart Medusa.
    image

Thanks so much develop branch fixed it :)

develop branch fixes the issue on Firefox Mobile for me too, thank you very much

Was this page helpful?
0 / 5 - 0 ratings

Related issues

fernandog picture fernandog  路  4Comments

wimpyrbx picture wimpyrbx  路  5Comments

hergonoway picture hergonoway  路  4Comments

Hellowlol picture Hellowlol  路  4Comments

Rouzax picture Rouzax  路  4Comments