Bug 13075 - Freeze on initial save from certain windows programs on vfs_gluster share
Freeze on initial save from certain windows programs on vfs_gluster share
Status: NEW
Product: Samba 4.1 and newer
Classification: Unclassified
Component: VFS Modules
4.7.0
x64 Linux
: P5 normal
: ---
Assigned To: Samba QA Contact
Samba QA Contact
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2017-10-09 11:04 UTC by Daniel Weller
Modified: 2017-10-10 08:10 UTC (History)
2 users (show)

See Also:


Attachments
samba log file during excel save (881.92 KB, text/plain)
2017-10-09 11:04 UTC, Daniel Weller
no flags Details
vfs glusterfs log 1/3 (1.98 MB, text/plain)
2017-10-09 11:12 UTC, Daniel Weller
no flags Details
vfs glusterfs log 2/3 (3.37 MB, text/plain)
2017-10-09 11:12 UTC, Daniel Weller
no flags Details
vfs glusterfs log 3/3 (3.41 MB, text/plain)
2017-10-09 11:13 UTC, Daniel Weller
no flags Details
wireshark capture port 445 (424.88 KB, application/octet-stream)
2017-10-10 08:09 UTC, Daniel Weller
no flags Details
samba log file during wireshark capture (802.79 KB, text/plain)
2017-10-10 08:10 UTC, Daniel Weller
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Weller 2017-10-09 11:04:22 UTC
Created attachment 13665 [details]
samba log file during excel save

Overview:
We have two nodes CentOS 7.4 with replicated gluster volumes (centos-release-gluster312) shared to windows 7 clients with ctdb (samba 4.7.0).
Saving files on the share with certain ms office programs (powerpoint & excel, but not word) and MatLab freezes the program for a few minutes.


Steps to reproduce / what we did to end up here:
1. Basic installation of centos
2. compile samba 4.7.0 (./configure --with-cluster-support --with-shared-modules=idmap_tdb2,idmap_ad,vfs_glusterfs --with-systemd)
3. create gluster volume & join fileserver to active directory (also samba 4.7)

gluster volume info acltest

Volume Name: acltest
Type: Replicate
Volume ID: 7886c6d5-d0bc-421b-aa54-bc50499107b7
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: 172.17.1.3:/gluster/bricks/testbricks/acltest
Brick2: 172.17.1.4:/gluster/bricks/testbricks/acltest
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
nfs-ganesha: disable
cluster.enable-shared-storage: enable


4. export volume via vfs_gluster:

testparm
# Global parameters
[global]
        netbios name = FILE
        realm = PI5.PHYSIK.UNI-STUTTGART.DE
        workgroup = PI5
        log file = /var/log/samba/tmp/samba_%I.log
        clustering = Yes
        registry shares = Yes
        load printers = No
        security = ADS
        deadtime = 10
        template homedir = /gluster/mnt/users/%U
        template shell = /bin/bash
        winbind refresh tickets = Yes
        winbind use default domain = Yes
        idmap config pi5:range = 20000-1999999
        idmap config pi5:backend = rid
        idmap config *:range = 10000-19999
        idmap config * : backend = tdb
        store dos attributes = Yes
        map acl inherit = Yes
        inherit acls = Yes
        vfs objects = acl_xattr

[acltest]
        comment = acltest
        path = /
        kernel share modes = No
        read only = No
        vfs objects = acl_xattr glusterfs
        glusterfs:loglevel = 9
        glusterfs:logfile = /var/log/samba/glusterfs-acltest.log
        glusterfs:volume = acltest

5. reload samba config and create new powerpoint/excel/matlab file in windows 7 (office 2016, matlab 2016b)
6. save file as, select ip/hostname of fileserver, navigate to exported volume

Actual Results:
Program freezes for few minutes, powerpoint/excel recovers and then saved the file, matlab does not recover.
smbstatus -u weller (during excel save, see log)

Samba version 4.7.0
PID     Username     Group        Machine                                   Protocol Version  Encryption           Signing          
----------------------------------------------------------------------------------------------------------------------------------------
0:11837 weller       domain users 172.16.3.101 (ipv4:172.16.3.101:58395)    SMB2_10           -                    -                

Service      pid     Machine       Connected at                     Encryption   Signing
---------------------------------------------------------------------------------------------
acltest      0:11837 172.16.3.101  Mon Oct  9 12:53:58 PM 2017 CEST -            -
users        0:11837 172.16.3.101  Mon Oct  9 11:20:10 AM 2017 CEST -            -

Locked files:
Pid          Uid        DenyMode   Access      R/W        Oplock           SharePath   Name   Time
--------------------------------------------------------------------------------------------------
0:11837      21127      DENY_WRITE 0x13019f    RDWR       LEASE(RWH)       /   ~$Book.xlsx   Mon Oct  9 12:54:02 2017
0:11837      21127      DENY_NONE  0x100080    RDONLY     NONE             /gluster/mnt/users   .   Mon Oct  9 12:50:50 2017
0:11837      21127      DENY_NONE  0x1000a0    RDONLY     NONE             /   .   Mon Oct  9 12:54:01 2017
0:11837      21127      DENY_NONE  0x100081    RDONLY     NONE             /   .   Mon Oct  9 12:54:02 2017


Expected Results:
Save file, responsive interface, MatLab should not crash.


Additional information:
Same volume exported via fuse mount works perfectly fine
mount:
172.17.1.4:/acltest on /gluster/mnt/acltest type fuse.glusterfs (rw,relatime,user_id=0,group_id=0,allow_other,max_read=131072)

smb.conf:
[acltest]
        comment = acltest
        path = /gluster/mnt/acltest
        kernel share modes = No
        read only = No
Comment 1 Daniel Weller 2017-10-09 11:12:23 UTC
Created attachment 13666 [details]
vfs glusterfs log 1/3
Comment 2 Daniel Weller 2017-10-09 11:12:40 UTC
Created attachment 13667 [details]
vfs glusterfs log 2/3
Comment 3 Daniel Weller 2017-10-09 11:13:04 UTC
Created attachment 13668 [details]
vfs glusterfs log 3/3
Comment 4 Jeremy Allison 2017-10-09 22:36:55 UTC
Can you get a wireshark trace on port 445 between the client and the Samba server so we can see where the pause occurs please ?
Comment 5 Daniel Weller 2017-10-10 08:09:53 UTC
Created attachment 13671 [details]
wireshark capture port 445
Comment 6 Daniel Weller 2017-10-10 08:10:31 UTC
Created attachment 13672 [details]
samba log file during wireshark capture