Slow file polling with OMV 3.x

  • After having changed from OMV 2.1 (32 Bit) to 3.x (64 bit) fresh install, polling of files on an SMB share is much slower.
    On 2.1 polling some 38000 files took only a few minutes. On 3.x it now takes 3 hours. :(
    Nothing else was changed.


    The system:
    i7 2800 GHz with Win7 running "Personal Backup".
    NAS: AMD Sempron 2600+ running OMV 3.0.81 (Intel version since installation of
    AMD version would fail at the stage of getting the apt get sources)
    Memory: 2 GB


    When polling: CPU usage is around 25%, memory usage is around 7%.


    I would like to see the shorter time again since for safety reasons the NAS is only
    powered for 1 hour every day. I.e. less exposure to potential malware.

    • Offizieller Beitrag

    Welcome to the club...

    And it ruins my theory about it only affecting 32 bit installs...

    omv 7.0.5-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.13 | compose 7.1.4 | k8s 7.1.0-3 | cputemp 7.0.1 | mergerfs 7.0.4


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • So...dump 3.x...too many problems...if I read the forum, there are most problems with that, not with 2.x
    But maybe there are a lot more installations 3.x?

    --
    Get a Rose Tattoo...


    HP t5740 with Expansion and USB3, Inateck Case w/ 3TB WD-Green
    OMV 5.5.23-1 Usul i386|4.19.0-9-686-pae

  • On 2.1 polling some 38000 files took only a few minutes. On 3.x it now takes 3 hours.

    What does this mean? 'Polling'?


    OMV 3.0.81 (Intel version since installation of AMD version would fail at the stage of getting the apt get sources)

    What does this mean? Are you talking about amd64 vs. i386?

    • Offizieller Beitrag

    So...dump 3.x...too many problems...if I read the forum, there are most problems with that, not with 2.x
    But maybe there are a lot more installations 3.x?

    Dumping 3.x would be a bad idea in my opinion since no one is going to maintain 2.x and the plugins.


    Hard to say if there is more 3.x installs than 2.x.

    omv 7.0.5-1 sandworm | 64 bit | 6.8 proxmox kernel

    plugins :: omvextrasorg 7.0 | kvm 7.0.13 | compose 7.1.4 | k8s 7.1.0-3 | cputemp 7.0.1 | mergerfs 7.0.4


    omv-extras.org plugins source code and issue tracker - github - changelogs


    Please try ctrl-shift-R and read this before posting a question.

    Please put your OMV system details in your signature.
    Please don't PM for support... Too many PMs!

  • What does this mean? 'Polling'?

    What does this mean? Are you talking about amd64 vs. i386?

    Polling means: when wanting to backup files, the backup program scans (polls) all source files and all files already in the backup directory to see if they are the same or not. Only files not having the same time stamp are then copied from the source to the backup directory. It is this process which takes much more time on OMV 3.x compared to OMV 2.1.


    With the Intel version I mean i386 which I am currently using, being driven by a AMD Sempron processor.

  • And it ruins my theory about it only affecting 32 bit installs...

    Nope...


    Zitat von Backupmaster


    Intel version since installation of
    AMD version would fail at the stage of getting the apt get sources

    With the Intel version I mean i386 which I am currently using, being driven by a AMD Sempron processor.

    --
    Get a Rose Tattoo...


    HP t5740 with Expansion and USB3, Inateck Case w/ 3TB WD-Green
    OMV 5.5.23-1 Usul i386|4.19.0-9-686-pae

  • Polling means: when wanting to backup files, the backup program scans (polls) all source files and all files already in the backup directory to see if they are the same or not. Only files not having the same time stamp are then copied from the source to the backup directory. It is this process which takes much more time on OMV 3.x compared to OMV 2.1.

    Thanks for confirming (also that you're using the 32-bit version), so it's about directory enumeration and/or checking file metadata (timestamps if the program really only relies on this). It would be great if you can provide a full screenshot from Helios LanTest with both 'Gigabit Ethernet' and 'Enterprise networks -- 10 GbE' settings: http://www.helios.de/web/EN/news/LanTest-6-released.html

  • if I read the forum, there are most problems with that, not with 2.x

    Of course since 2.x installations are older (so you find similar 'most problems with 2.x, not with 1.x' threads when you go back in time) and large updates are always stress for the hardware (in professional support I've seen a significant correlation between 'latest OS update broke the machine' and filesystem corruption already present before and then being the root cause for updates failing).


    Also updates raise awareness for problems (typical example) so it's pretty normal to get more problems reported for the version users currently upgrade to. This should be analyzed (asking for logs and debug info) instead of making 'obvious assumptions' (it's often not what it looks like ;) )

  • Thanks for confirming (also that you're using the 32-bit version), so it's about directory enumeration and/or checking file metadata (timestamps if the program really only relies on this). It would be great if you can provide a full screenshot from Helios LanTest with both 'Gigabit Ethernet' and 'Enterprise networks -- 10 GbE' settings: http://www.helios.de/web/EN/news/LanTest-6-released.html

    Please find enclosed the reports you requested.

  • Please find enclosed the reports you requested.

    Thank you. Only sequential throughput numbers are a bit low but those shouldn't affect directory enumeration. Are you able to upload debug logs (somewhere in the web UI, I hope @ryecoaaron or someone else can assist here since I managed to brick all my 3 OMV test installations today).


    @ryecoaaron is this a 'common' 3.x problem? Slow directory enumeration or just 'problems'? Would be interesting to sniff packets if there's nothing in the logs.

  • With "debug logs" you mean "system logs"?

    No idea how it's called in OMV, @ryecoaaron just told me months ago that there would be something easily available. The purpose is to just look into the log files to see what's happening (dmesg, syslog, Samba logs). I had many occurences of performance problems that were clearly 'documented' in log files so that's always the first I would try (I even managed to create performance problems and a 'no space left on device' situation due to activated extensive Samba logging).


    The dist-upgrade kicks OMV and it is never re-installable

    Of course. Welcome to 'dependency hell'. There's no way back to OMV 2.x and the best alternative is to immediately identify all 3.x problems.

  • Nope...

    To prove whats up, I build an i386 stretch machine with just a samba share. Writing large files leads exact to the same slow perf (and high load) what is mentioned here so oft...so I suppose:
    - OMV is innocent
    - The samba maintainer broke smb since jessie and even in stretch, at least with i386


    Solution:
    Kill the mainainer of smb :)
    Kick samba, go with NFS to OMV 3.x
    Leave OMV (and Debian), stay with samba and go to other *ix/BSD stuff


    HTH

    --
    Get a Rose Tattoo...


    HP t5740 with Expansion and USB3, Inateck Case w/ 3TB WD-Green
    OMV 5.5.23-1 Usul i386|4.19.0-9-686-pae

  • Writing large files

    BTW: that's just exactly the opposite of

    the backup program scans (polls) all source files and all files already in the backup directory to see if they are the same or not. Only files not having the same time stamp are then copied from the source to the backup directory. It is this process which takes much more time on OMV 3.x compared to OMV 2.1.

    Usual/logical steps would be to test local storage first (throughput and also random IO) to see whether here's a bottleneck or not (since at least @'Backupmaster''s sequential throughput numbers are somewhat low). This can be done by an 'apt install iozone3', then chdir to the share in question and run at least


    Code
    iozone -e -I -a -s 100M -r 4k -r 128k -r 1024k -r 16384k -i 0 -i 1 -i 2
    iozone -e -I -a -s 4000M -r 128k -r 1024k -i 0 -i 1

    Then a comparison with an amd64 installation on the same hardware or exactly same virtual machine would be interesting doing the exact same set of tests.


    I don't run OMV on x86 boards but at least on ARM (armhf vs. arm64) there's no performance difference between both Samba variants.

  • @Backupmaster it would be interesting if you redo the LanTest or simply do an Explorer copy job with large file sizes reporting both transfer speeds and how CPU utilization looks like (especially the %iowait percentage, please see for the graphs in the threads below). And then such a local iozone test would be great to further nail the problem down.


    I just did a quick check and since at least one Core 2 Duo machine running the amd64 installation is also affected the '32 bit theory' is somewhat questionable:

    So if anyone already looking into that could collect more threads with reports of the SAME symptoms (high %iowait percentage and poor performance with Debian Jessie's Samba version) it would be great to also report installation variant (32-bit vs. 64-bit) and exact CPU type (since at least the three above are rather old/slow ones -- we had a similar issue a decade ago with a commercial fileserver daemon on Solaris horribly low performing on older CPUs and there a simple Solaris tweak fixed it)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!