Thu 15 May 2008 09:31:20 AM UTC, original submission:
Hi,
I detect a strange behavior between a 32bit client and a 64bit server.
I have a test configuration with :
- 1 32bit client :
Linux 2.6.18-6-686 i686 GNU/Linux
glusterfs 1.3.8pre1 built on Feb 26 2008 18:21:47
Repository revision: glusterfs--mainline--2.5--patch-676
- 4 64bit server :
Linux 2.6.18-6-amd64 x86_64 GNU/Linux
glusterfs 1.3.8pre1 built on Feb 26 2008 18:12:58
Repository revision: glusterfs--mainline--2.5--patch-676
- 1 64bit client:
Linux 2.6.18-6-amd64 x86_64 GNU/Linux
glusterfs 1.3.8pre1 built on Feb 26 2008 18:12:58
Repository revision: glusterfs--mainline--2.5--patch-676
The test :
- I modify a file on the 32bit client
- I open the same file on the 64bit client
- The file is empty or completely corrupted with binary data
- I close the file an reopen it
- The file is correct with modified lines
The log file :
- Nothing on the 32bit client :
- On the 64bit server :
2008-05-15 11:22:45 E [protocol.c:259:gf_block_unserialize_transport] server: EOF from peer ([32bit_Client_IP]:52317)
2008-05-15 11:22:45 C [tcp.c:87:tcp_disconnect] server: connection disconnected
- On the 64bit client :
2008-05-15 11:25:31 E [unify.c:261:unify_lookup_cbk] unify: Revalidate failed for [path_to_file]
2008-05-15 11:25:31 E [fuse-bridge.c:436:fuse_entry_cbk] glusterfs-fuse: 24682: [path_to_file] => -1 (2)
The server config file :
volume brick
type storage/posix
option directory /data/export/
end-volume
volume brick-ns
type storage/posix
option directory /data/export-ns/
end-volume
### Add network serving capability to above brick.
volume server
type protocol/server
option transport-type tcp/server # For TCP/IP transport
subvolumes brick brick-ns
option auth.ip.brick.allow * # Allow access to "brick" volume
option auth.ip.brick-ns.allow * # Allow access to "brick-ns" volume
end-volume
The client config file :
volume brick1
type protocol/client
option transport-type tcp/client
option remote-host [server1]
option remote-subvolume brick
end-volume
volume brick2
type protocol/client
option transport-type tcp/client
option remote-host [server2]
option remote-subvolume brick
end-volume
volume brick3
type protocol/client
option transport-type tcp/client
option remote-host [server3]
option remote-subvolume brick
end-volume
volume brick4
type protocol/client
option transport-type tcp/client
option remote-host [server4]
option remote-subvolume brick
end-volume
volume brick-ns1
type protocol/client
option transport-type tcp/client
option remote-host [server1]
option remote-subvolume brick-ns
end-volume
volume brick-ns2
type protocol/client
option transport-type tcp/client
option remote-host [server2]
option remote-subvolume brick-ns
end-volume
volume afr1
type cluster/afr
subvolumes brick1 brick3
end-volume
volume afr2
type cluster/afr
subvolumes brick2 brick4
end-volume
volume afr-ns
type cluster/afr
subvolumes brick-ns1 brick-ns2
end-volume
volume unify
type cluster/unify
option namespace afr-ns
option scheduler rr
subvolumes afr1 afr2
end-volume
|