12.3 libnfs update breaks NFS on Windows

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #46
The only thing i can tell you is to bisect git and compile your own versions until your find the one commit that breaks it for you (most likely this is not something you want to/can do).

Also the fact that you can exchange libnfs.dll with the older one from frodo and the issue is fixed doesn't really look like its something in XBMCs code. The commit you pointed out is about exports which are substrings of each other - (like yours are) - you can rule this out by renaming your exports to something more distinguishable (like /exports/Disk1Movies /exports/Disk2Movies /exports/Disk3Movies /exports/Disk4TVshows and so on).

The other option is to get it reproducable 100% so i can look into it (by providing a small environment containing nfs exports and some fake files to scrape).

I did some tests some weeks ago but wasn't successfully in screwing my db with it. So i am really sorry that i can't help you - and i bet it is something i have introduced at some point - but its just to much work for me to test a dozens combinations when i am not even sure that it will happen on my setup at all.

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
Livin Offline
Posting Freak
Posts: 3,548
Joined: May 2004
Reputation: 17
Location: above ground
Post: #47
I posted my debug log, it will be in there. I can confirm this has been broken for a long time with Gotham. I testing a few Gotham Alpha drops (2, 4, etc), including the 2/28 nightly, and they all have the same exact problem. I kept restoring my Frodo 12.2 and all worked perfectly fine.

When I edit my Gotham 2/28 build to use SMB, it is working again.

I will just stop using NFS for XBMC since it does not seem to get much testing. I don't want future builds to break it. Not sure there is much of a diff between SMB & NFS in performance anyway.

I'm not an expert but I play one at work.
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #48
@bossanova808 could you try this one please?

https://dl.dropboxusercontent.com/u/3037...-1.9.2.dll

(not much hope though - its just sahlbergs current master code - maybe he fixed something which by accident leads to the issue you are reporting on windows).

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
(This post was last modified: 2014-03-02 20:27 by Memphiz.)
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #49
@memphiz - no change I am afraid. Thanks for sticking with it! Looking at the logs it's the same - everything seems peachy until it gets to the ';checking for existence' bit and then there is a mass purge from the library. Were there any commits in that particular area you can recall? I wouldn't know where to look, xbmc is so frickin huge every time I go in there I get lost!

My XBMC stuff:
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #50
no clue - not my area - well you seem to be able to reproduce the error 100% of the time now - you don't think you can develop some sort of environment i can copy for reproduction? The problem is - we are walking in a circle here - i hope an upstream libnfs change fixes the problem - you hope my "doing nothing because it works for me" magically fixes the problem - and some people even start to troll about the problem *cough* - well removing nfs support on windows would be an easy solution too if you ask me (neither upstream nor me - nor our windows dev really maintains nfs for windows...)

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #51
I will try again to put something together. Maybe it's because I ran it all from one machine.

I will also try and track down the 'existence checking' code and check the git log for changes.

I fully understand that you can't fix what you can't find! But let's not go drastic and take it out - it's pretty handy (when it works!) - in mixed system environments it makes the whole library sync thing alot easier. And SMB can die in a fire if you ask me, it's shit - all that master browser bollocks, etc. I've always found SMB (actual Windows SMB, not samba or whatever) - to be a major PITA and have weird pauses etc. NFS is gloriously simple really.

My XBMC stuff:
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #52
I even consider downgrading libnfs for windows before gotham release (to the version from frodo 12.2). But i am not sure if other bugfixes in libnfs are missing then (which results in other problems/regressions).

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #53
I would think that's best myself - even if a few bugs were fixed between 1.3 and 1.6 (not sure specifically what, and whether those affected windows - but I hadn't hit them if so) - but I think some bugs is better than pretty much flat broken.

I am trying to set up a testing environment and it has raised a question - is there timing involved here, or in the stat in anyway? When I first noticed the bug it was on a wired machine and intermittent - playback etc worked most of the time, and the clean library seemed to only get rid of some of the library. I recverted that machien to 12.2 immediately (WAF) - and started testing on my laptop (wireless) - where it's 100% consistent. At work on my (wired) testbed all on one machine, I can't yet raise the issue. So I wondered if the 'stat' was timing out maybe....it's probably a stupid suggestion and I guess that would be internal to NFS anyway?

My XBMC stuff:
find quote
jmarshall Offline
Team-XBMC Developer
Posts: 26,221
Joined: Oct 2003
Reputation: 178
Post: #54
That's a possibility, yes. And yeah, that would be internal to libnfs I would think.

What we need, which is what I'm not seeing in this thread, is exactly what would fix it in your use case. i.e. a known working set of changes from the current Gotham state that would produce something that works for you. That might be just downgrading libnfs, but it might also be downgrade libnfs + revert changes X/Y/Z. Unless we know what works and what doesn't, we don't really have a decent way forward.

Has this been done and I've missed it?

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.


[Image: badge.gif]
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #55
IIRC he just replaced libnfs with the one from 12.2 (libnfs 1.3 this is iirc) and the problem is gone. There are a lot of changes upstream between 1.3 and 1.6 - one of them (which basically allowed us to use libnfs on android finally) is getting rid of any thirdparty rpc implementation. So ronnie implemented his own subset of needed rpc.

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #56
Yep in my testing using the libnfs from 12.2 (so libnfs 1.3) solves the issue completely. I believe you bumped libnfs for other platforms rather than windows which just came along for the ride.

It seems kinda ridiculous to go from 1.9.2 (current master), 1.6 (current Gotham) -> back to 1.3 which is ancient. But it works and I think that's better than total breakage.

My XBMC stuff:
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #57
We try to keep the versions in sync between platforms - so we normally bump for all. 1.3 is not that ancient - sahlberg just increases the version number really often ...

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #58
Makes sense but maybe this time better not! I wrote a message on the libnfs github re:timing but who knows if that really is it. So the ieda would be a pull request before Gotham if no other solution comes up?

My XBMC stuff:
find quote
Memphiz Offline
Team-Kodi Developer
Posts: 11,194
Joined: Feb 2011
Reputation: 113
Location: germany
Post: #59
Yes thats the idea. Though i am trying the suggestion of sahlberg (as response of your message on his github tracker) - and provide you with a testbuild (hopefully soon).

AppleTV2/iPhone/iPod: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for XBMC: Wiki NFS
HowTo configure avahi (zeroconf): Wiki Avahi
READ THE IOS FAQ!: iOS FAQ
find quote
bossanova808 Online
Donor
Posts: 2,239
Joined: Sep 2009
Reputation: 34
Location: Melbourne, Australia
Post: #60
Ok yeah that went quicklyover my head but was hoping you'd seen it! (I've done some programming, quite a bit actually but all either scripty & UI stuff, or server side java, but no c++ or low level stuff unfortunately).

Thanks - again - for any time you're spending. It is definitely appreciated.

My XBMC stuff:
find quote
Post Reply