{"push_id":1131627721,"size":21,"distinct_size":1,"ref":"refs/heads/lock-recovery","head":"41c15f1da8138f0aae77363cd40e8ec8e9c0d34c","before":"66e721962c8761fba0b7d716a0882be4fc68ff62","commits":[{"sha":"e221827c18ad4161a8e54ad67c9128ad234b8c03","author":{"name":"Niels de Vos","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"index: improve compiler warning fix\n\nCommit 137bd83029458ecd461718a891c74cd1afd8f6cb introduced some\ntypecasting to work around a compiler warning. It is much cleaner to\nadd a -1 value in the enumeration and use that in if-statements.\n\nBUG: 1335232\nChange-Id: I830a565b8d96d7b51ff775e94aa23dd567ffe0d9\nSigned-off-by: Niels de Vos <ndevos@redhat.com>\nReviewed-on: http://review.gluster.org/14409\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Ravishankar N <ravishankar@redhat.com>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nReviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/e221827c18ad4161a8e54ad67c9128ad234b8c03"},{"sha":"5cf7a32be8d614e8cd89a01ac06e830cbd693929","author":{"name":"Kaleb S KEITHLEY","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"common-ha: log flooded with Could not map name=xxxx to a UUID\n\nWhen the cluster is configured with long (FQDN) cluster members\nthe log is flooded with \"Could not map name=$shortname to a UUID\"\nnotices, and setting/getting the attribute is failing\n\nChange-Id: I954d8cef7115659cc9c8b23dae75a5a247dc5db7\nBUG: 1337650\nSigned-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>\nReviewed-on: http://review.gluster.org/14435\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: jiffin tony Thottan <jthottan@redhat.com>\nReviewed-by: soumya k <skoduri@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/5cf7a32be8d614e8cd89a01ac06e830cbd693929"},{"sha":"6c936a0da3f5f56dd711169f7eb8d335bbb8cdc7","author":{"name":"Niels de Vos","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"nfs: strip trailing / when clients do subdir mounts\n\nMounting a volume over NFS with a subdir followed by a / does not work:\n\n  # mount -t nfs -o vers=3 storage.example.com:/media/installation/ /mnt\n  mount.nfs: an incorrect mount option was specified\n\nIn the nfs.log:\n\n  [client-rpc-fops.c:2930:client3_3_lookup_cbk] 0-media-client-0: remote operation failed. Path: /installation/ (00000000-0000-0000-0000-000000000000) [Invalid argument]\n  [client-rpc-fops.c:2930:client3_3_lookup_cbk] 0-media-client-1: remote operation failed. Path: /installation/ (00000000-0000-0000-0000-000000000000) [Invalid argument]\n  [mount3.c:1134:mnt3_resolve_subdir_cbk] 0-nfs: path=/installation/ (Invalid argument) [Invalid argument]\n\nIt is not possible to resolve paths with a trailing /. Stripping\ntrailing /'s from the subdir to mount is sufficient to make it work\nagain.\n\nChange-Id: I4075d4cd351438de58e1ff81f0fb65a1ff076da4\nBUG: 1337597\nSigned-off-by: Niels de Vos <ndevos@redhat.com>\nReviewed-on: http://review.gluster.org/14421\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: jiffin tony Thottan <jthottan@redhat.com>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/6c936a0da3f5f56dd711169f7eb8d335bbb8cdc7"},{"sha":"b01fb8d3bb9772d94073aaa52b2d8210ac4fabb8","author":{"name":"Kremmyda, Olia (NSN - GR/Athens)","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"fuse: unref dict even if fuse_first_lookup fails\n\nIn fuse_first_lookup function, \"dict_unref (dict)\" should be included in\nthe out label, in case create_frame returns an empty pointer the dict to\nbe unreferenced as well.\n\n\nBug: 1338544\nChange-Id: Ifb8a3378aec6521c1aa848f818968b6bfdb72089\nSigned-off-by: Olia Kremmyda <olympia.kremmyda@nokia.com>\nReviewed-on: http://review.gluster.org/14464\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nTested-by: Gluster Build System <jenkins@build.gluster.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/b01fb8d3bb9772d94073aaa52b2d8210ac4fabb8"},{"sha":"86a87a2ec0984f450b36ae6414c2d6d66870af73","author":{"name":"Ravishankar N","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"cluster/afr: Check for required number of entrylks\n\nProblem:\nParallel rmdir operations on the same directory results in ENOTCONN messages\neventhough there was no network disconnect.\n\nIn blocking entry lock during rmdir, AFR takes 2 set of locks on all its\nchildren-One (parentdir,name of dir to be deleted), the other (full lock\non the dir being deleted). We proceed to pre-op stage even if only a single\nlock (but not all the needed locks) was obtained, only to fail it with ENOTCONN\nbecause afr_locked_nodes_get() returns zero nodes  in afr_changelog_pre_op().\n\nFix:\nAfter we get replies for all blocking lock requests, if we don't have\nthe minimum number of locks to carry out the FOP, unlock and fail the\nFOP. The op_errno will be that of the last failed reply we got, i.e.\nwhatever is set in afr_lock_cbk().\n\nChange-Id: Ibef25e65b468ebb5ea6ae1f5121a5f1201072293\nBUG: 1336381\nSigned-off-by: Ravishankar N <ravishankar@redhat.com>\nReviewed-on: http://review.gluster.org/14358\nReviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>\nTested-by: Pranith Kumar Karampuri <pkarampu@redhat.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/86a87a2ec0984f450b36ae6414c2d6d66870af73"},{"sha":"db817ff68125f89adba76080e8e93d4a4e72d549","author":{"name":"Kaleb S KEITHLEY","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"common-ha: post fail-back, ganesha.nfsds are not put into NFS-GRACE\n\nA little known, rarely used feature of pacemaker called\n\"notification\" is used to follow the status of the ganesha.nfsds\nin the cluster. This is done with location constraints and other\nBlack Magick.\n\nWhen a nfsd dies, the ganesha-active attribute is cleared, the\nassociated floating IP (VIP) fails over to another node, and the\nganesha_grace notify method is invoked with post-stop on all the\nnodes where the ganesha.nfsd is still running. The notify methods\nsend dbus msgs to put their nfsds into NFS-GRACE, and the nfsds\nperform their grace processing, e.g. taking over locks from the\nfailed nfsd.\n\nN.B. Fail-back was originally not planned to be a feature for\nglusterfs-3.7, but we sorta got it for free.\n\nFor fail-back, the opposite occurs. The ganesha-active attribute\nis recreated, the floating IP fails back, and the notify method is\ninvoked with pre-start on all the nodes where the surviving\nganesha.nfsds continue to run. The notify methods send dbus msgs\nagain to put their nsfds into NFS-GRACE again, and the nfsds clean\nup their locks.\n\nChange-Id: I3fc64afa20ae3a928143d69aa533a8df68dd680e\nBUG: 1338967\nSigned-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>\nReviewed-on: http://review.gluster.org/14506\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: soumya k <skoduri@redhat.com>\nReviewed-by: Niels de Vos <ndevos@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/db817ff68125f89adba76080e8e93d4a4e72d549"},{"sha":"4394291064b68f7c1a8634a00b211154087df1bc","author":{"name":"Kaleb S KEITHLEY","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"common-ha: wait for cluster to elect DC before accessing CIB\n\naccess attempts, e.g. `pcs property set stonith-enabled=false`\nwill fail (or time out) if attempted \"too early\", i.e. before\nthe cluster has elected its DC.\n\nChange-Id: Ifc0aa7ce652c1da339b9eb8fe17e40e8a09b1096\nBUG: 1336945\nSigned-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>\nReviewed-on: http://review.gluster.org/14426\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: Gluster Build System <jenkins@build.gluster.com>\nTested-by: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: soumya k <skoduri@redhat.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: jiffin tony Thottan <jthottan@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/4394291064b68f7c1a8634a00b211154087df1bc"},{"sha":"bfd43dc894fcf2cc64ec73e8ea0a779064c47dd4","author":{"name":"Niels de Vos","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"build: include a dummy config.sub and config.guess in releases\n\nThere is no hard requirement for a config.guess and config.sub script in\nthe release tarball. By passing --build=... and --host=... to\n./configure, the scripts are not executed.  When doing local builds, the\n./autogen.sh script (by running automake) will place a config.guess and\nconfig.sub script in the root of the source tree. Upon creation of the\nrelease ('make dist') tarball, the scripts are replaced by dummy copies\nfrom the build-aux/ directory.\n\nThe main advantage to not include these scripts in the repository, is\nthat there is no need to track upstream updates for them either.\n\nChange-Id: I5e930988a9e849ec5d0c84d2e30e61f2a9685f45\nBUG: 1223937\nReported-by: Emmanuel Dreyfus <manu@netbsd.org>\nSigned-off-by: Niels de Vos <ndevos@redhat.com>\nReviewed-on: http://review.gluster.org/14503\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/bfd43dc894fcf2cc64ec73e8ea0a779064c47dd4"},{"sha":"02b2750ecc35f88c3262015b401dda962381f9da","author":{"name":"Ashish Pandey","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"cluster/ec: Use correct log levels\n\nProblem :\nMisleading messages are getting logged in mount logs\nand bricks log.\n\"Mismatching xdata\" and \"Heal failed\" are getting logged\n\nSolution :\nReduce the level of logs from INFO, WARNING and NOTICE\nto DEBUG level wherever applicable OR use fop_log_level\nto get proper log level.\n\nChange-Id: Ia824c71e75ab683d3cb8949e1966ea09c9ccce72\nBUG: 1231224\nSigned-off-by: Ashish Pandey <aspandey@redhat.com>\nReviewed-on: http://review.gluster.org/13266\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Xavier Hernandez <xhernandez@datalab.es>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/02b2750ecc35f88c3262015b401dda962381f9da"},{"sha":"ac2fa110ea489ca3d1b81e3872731fa1621a6e39","author":{"name":"Soumya Koduri","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"gfapi/upcall: Use GF_CALLOC while allocating variables\n\nIn 'glfs_h_poll_cache_invalidation', use GF_CALLOC to allocate\n'up_inode_arg' to set memory accounting which is used/referred when\nfreeing the same variable in case of any erros.\n\nChange-Id: I365e114fa6d7abb292dacb6fc702128d046df8f8\nBUG: 1339214\nSigned-off-by: Soumya Koduri <skoduri@redhat.com>\nReviewed-on: http://review.gluster.org/14521\nReviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>\nReviewed-by: jiffin tony Thottan <jthottan@redhat.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nReviewed-by: Niels de Vos <ndevos@redhat.com>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/ac2fa110ea489ca3d1b81e3872731fa1621a6e39"},{"sha":"1a489f8f67a98644e6ebea652dcf96dd7425046e","author":{"name":"Susant Palai","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dht/rebalance: mark hardlink failures as skipped in rebalance\n\nSince rebalance(not remove-brick) process does not migrate hardlinks\nmark them as skipped rather than failed as it creates confusion for\nthe users.\n\nChange-Id: I5d469d10146274f00bb91482d0373c5235a9b8b2\nBUG: 1339071\nSigned-off-by: Susant Palai <spalai@redhat.com>\nReviewed-on: http://review.gluster.org/14493\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: N Balachandran <nbalacha@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/1a489f8f67a98644e6ebea652dcf96dd7425046e"},{"sha":"ce466fa6353394a6ac4ca9922237de77686d64d0","author":{"name":"Sakshi Bansal","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"dht: selfheal should wind mkdir call to subvols with ESTALE error\n\nChange-Id: I7140e50263b5f28b900829592c664fa1d79f3f99\nBUG: 1338634\nSigned-off-by: Sakshi Bansal <sabansal@redhat.com>\nReviewed-on: http://review.gluster.org/14496\nReviewed-by: N Balachandran <nbalacha@redhat.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/ce466fa6353394a6ac4ca9922237de77686d64d0"},{"sha":"dca1c08c6384e34403d8b5ad6eaf0931529168ac","author":{"name":"Rajesh Joseph","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"snapshot/uss: log is filled with gfid is NULL error\n\nIn snapview-server if the lookup came on missing entry\nthen it does not have proper context to see if it is the\ncase of \"Stale file handle\" or ENOENT. We should not log\nthis error in GF_LOG_ERROR level, instead this should be\na debug log.\n\nChange-Id: I8f7cc0e117e9a6dd9482da2e94a56f2ed731a442\nBUG: 1339149\nSigned-off-by: Rajesh Joseph <rjoseph@redhat.com>\nReviewed-on: http://review.gluster.org/14514\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/dca1c08c6384e34403d8b5ad6eaf0931529168ac"},{"sha":"edcc6a4ef4f39d5e3073195d45011e3cdfa7c091","author":{"name":"Rajesh Joseph","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"snapshot/uss: client log is filled with \"invalid argument: inode\" error\n\nsvc_inode_ctx_get is called even if inode is NULL. We should not call\nthis function if inode is NULL\n\nChange-Id: I5c3f17633ca88e5b6f40d4acf14a09e14b7ef62b\nBUG: 1339149\nSigned-off-by: Rajesh Joseph <rjoseph@redhat.com>\nReviewed-on: http://review.gluster.org/14525\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/edcc6a4ef4f39d5e3073195d45011e3cdfa7c091"},{"sha":"fb57ac1acb228301edb98f2fe7cf93471363eb4a","author":{"name":"hari","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"Glusterd: printing the node details on error message of rebalance\n\nProblem: on the rebalance start with one of the glusterd being\ndown among the volume, the error message says only about the\nbrick path.\n\nFix: adding the node details\n\nChange-Id: I5827d3a9a15b0461c9ce3a51c0b16246ca58f335\nBUG: 1337899\nSigned-off-by: hari <hgowtham@redhat.com>\nReviewed-on: http://review.gluster.org/14495\nTested-by: hari gowtham <hari.gowtham005@gmail.com>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Atin Mukherjee <amukherj@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/fb57ac1acb228301edb98f2fe7cf93471363eb4a"},{"sha":"f8f16595d8dd8c8a869630bb77b7fd1b42b97e08","author":{"name":"Avra Sengupta","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"jbr: Making fop functions more modular to reuse more code\n\nPutting bigger chunks of re-usable code like leader checks\nand init into functions thereby reducing the size of the\n'fop' call.\n\nIntroduced 'perform_local_op' in the 'fop' call, where\nregular functions as of now just call dispatch, but fops\nlike 'lk' can do their fop specific operations.\n\nIntroduced selective_generate to allow certain functions\nfor a particular fop to be generated. The rest of the\nfunctions can be customised and added in jbr.c\n\nChange-Id: I3754ed68983e763329e14a2faef911428e36e4f0\nBUG: 1336328\nSigned-off-by: Avra Sengupta <asengupt@redhat.com>\nReviewed-on: http://review.gluster.org/14355\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/f8f16595d8dd8c8a869630bb77b7fd1b42b97e08"},{"sha":"2f29065ae4715c9c4a9d20c4d15311bebd3ddb0e","author":{"name":"Ravishankar N","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"afr: Automagic unsplit-brain by [ctime|mtime|size|majority]\n\nIntroduce cluster.favorite-child-policy which when enabled with\n[ctime|mtime|size|majority], automatically heals files that are in\nsplit-brian.\n\nThe majority policy will not pick a source if there is no majority.\nThe other three policies pick the first brick with a valid reply and\nnon-zero ctime/mtime/size as source.\n\nChange-Id: I3c099a0404082213860f74f2c9b4d207cfaedb76\nBUG: 1328224\nOriginal-author: Richard Wareing <rwareing@fb.com>\nSigned-off-by: Ravishankar N <ravishankar@redhat.com>\nReviewed-on: http://review.gluster.org/14026\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Anuradha Talur <atalur@redhat.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/2f29065ae4715c9c4a9d20c4d15311bebd3ddb0e"},{"sha":"04e3a343512d5f71266d334174afe44a6b8bbcfa","author":{"name":"Krutika Dhananjay","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"cluster/afr: Attempt name-index purge even on full-heal of directory\n\nChange-Id: Ief71cc68a4fbf8113e15b4254ebcabf7e30f74e2\nBUG: 1339181\nSigned-off-by: Krutika Dhananjay <kdhananj@redhat.com>\nReviewed-on: http://review.gluster.org/14516\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/04e3a343512d5f71266d334174afe44a6b8bbcfa"},{"sha":"c137f6a7389d7f760e4724f3506180f9cfc0da52","author":{"name":"Avra Sengupta","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"jbr/locking: Define path for lock/unlock fops in JBR\n\nlock/unlock fops need to be handled differently than\nother 'regular' fops, so as to avoid chances of deadlock\nin blocking calls. This patch addresses the same in the\nfollowing manner, with a caveat.\n\n1. On receiving the fop if the node is a follower, it\n   performs the operation (irrespective of it being\n   lock/unlock fop), and returns the result.\n\n2. If the node is a leader it follows the following paths\n   for lock and unlock fops:\n\n   For lock fops :\n   -> It performs the fop on itself. If it is a failure, it\n      sends -ve ack to the client. If it is successful, it\n      dispatches the fop to the followers.\n   -> On receiving responses from the followers, it checks\n      for quorum (including the leader's outcome). If\n      quorum is met, it sends +ve ack to the client.\n   -> If quorum is not met, then it *should* issue a rollback\n      to the followers, followed by the rollback on the leader.\n      It should then send -ve ack to he client.\n\n   For unlock fops:\n   -> It dispatches the fop on the followers first.\n   -> On receiving responses from the followers, it performs\n      the fop on itself. On completion, it checks for quorum\n      (including the leader's outcome). If quorum is met, it\n      sends +ve ack to the client.\n   -> If quorum is not met, then it *should* issue a rollback\n      on itslef, followed by the rollback on the followers.\n      It should then send -ve ack to he client.\n\nCaveat:\n   -> jbr-server does not have a rollback framework yet,\n      and hence this patch does not perform the rollbacks as\n      discussed in the failure scenarios above. The rollback\n      framework will be a different dependent patch.\n\nChange-Id: I26961b27cb85f324c1ffeee80e82ec082ffa4465\nBUG: 1333370\nSigned-off-by: Avra Sengupta <asengupt@redhat.com>\nReviewed-on: http://review.gluster.org/14226\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/c137f6a7389d7f760e4724f3506180f9cfc0da52"},{"sha":"868058b8e0162318801dc3006401ed28449d9268","author":{"name":"Kaleb S KEITHLEY","email":"da39a3ee5e6b4b0d3255bfef95601890afd80709"},"message":"core: assorted spelling mistakes reported by Debian\n\nSee also\n> Change-Id: I567a4be8f0f31f6285550f243fe802895f6bc43b\n\nReported-by: Patrick Matthäi <pmatthaei@debian.org>\nBUG: 1336793\n\nChange-Id: Icb9a6ff94d86663a5bca4ba931d810439c02556e\nSigned-off-by: Kaleb S KEITHLEY <kkeithle@redhat.com>\nReviewed-on: http://review.gluster.org/14526\nSmoke: Gluster Build System <jenkins@build.gluster.com>\nNetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>\nCentOS-regression: Gluster Build System <jenkins@build.gluster.com>\nReviewed-by: Ravishankar N <ravishankar@redhat.com>\nReviewed-by: Jeff Darcy <jdarcy@redhat.com>","distinct":false,"url":"https://api.github.com/repos/anoopcs9/glusterfs/commits/868058b8e0162318801dc3006401ed28449d9268"}]}
{"actor":{"display_login":"anoopcs9"}}