I tried reproducing this problem using 3.1.3 build, i could able to.
Just created the simple distribute volume and toggled the read-ahead attribute and found that issue reported got reproduced.
Log info when volume set operation done
In the brick log:
=================
[2016-07-20 05:04:24.018570] I [glusterfsd-mgmt.c:58:mgmt_cbk_spec] 0-mgmt: Volume file changed
[2016-07-20 05:04:24.039086] I [glusterfsd-mgmt.c:1600:mgmt_getspec_cbk] 0-glusterfs: No change in volfile, continuing
[2016-07-20 05:04:24.064101] I [MSGID: 115029] [server-handshake.c:690:server_setvolume] 0-Dis-server: accepted client from dhcp37-147.lab.eng.blr.redhat.com-10404-2016/07/20-05:01:58:967368-Dis-client-0-2-0 (version: 3.7.9)
In the client log:
==================
[2016-07-20 05:04:23.716011] I [glusterfsd-mgmt.c:58:mgmt_cbk_spec] 0-mgmt: Volume file changed
[2016-07-20 05:04:23.742582] I [MSGID: 114020] [client.c:2113:notify] 2-Dis-client-0: parent translators are ready, attempting connect on transport
[2016-07-20 05:04:23.749323] I [MSGID: 114020] [client.c:2113:notify] 2-Dis-client-1: parent translators are ready, attempting connect on transport
[2016-07-20 05:04:23.752919] I [rpc-clnt.c:1847:rpc_clnt_reconfig] 2-Dis-client-0: changing port to 49157 (from 0)