# changelog

author: Tiger Yang <tiger.yang@oracle.com> - 4.1.6-2.el7
changelog:
  - fix samba bug and build problem, release 4.1.6-2 (Tiger Yang)  
  - samba: Gluster hooks for Samba config without kernel share mode (Tiger Yang)


author: Tiger Yang <tiger.yang@oracle.com>
changelog:
  - upgrade to 4.1.6-1

  Tue Dec 4 2018 Tiger Yang <tiger.yang@oracle.com> - 4.1.6-1
  - doc: Added release notes for 4.1.6 release
  - gfapi: fix bad dict setting of lease-id
  - packaging: don't include bd.so rpm in rpm when --without bd
  - logging: check for fmts not being NULL
  - geo-rep: Fix traceback with symlink metadata sync
  - io-stats: prevent taking file dump on server side
  - protocol: remove the option 'verify-volfile-checksum'
  - glusterd-handshake: prevent a buffer overflow
  - server: don't allow '/' in basename
  - features/locks: fix statedump string
  - features/locks:Use pthread_mutex_unlock() instead of pthread_mutex_lock()
  - lock: Do not allow meta-lock count to be more than one
  - index: prevent arbitrary file creation outside entry-changes folder
  - glusterd: ensure volinfo->caps is set to correct value
  - geo-rep/scripts: Fix traceback in gluster-mountbroker
  - posix/ctime: Avoid log flood in posix_update_utime_in_mdata
  - geo-rep: Add more intelligence to automatic error handling
  - features/locks: add buffer overflow checks in pl_getxattr
  - afr/lease: Read child nodes from lease structure
  - geo-rep: Fix issue in gfid-conflict-resolution
  - tests: correction in tests/bugs/glusterd/optimized-basic-testcases-in-cluster.t
  - leases:Mark the fop conflicting if lease_id not set
  - gfapi: Bug fixes in leases processing code-path
  - tests: check for shd up status in bug-1637802-arbiter-stale-data-heal-lock.t
  - afr: prevent winding inodelks twice for arbiter volumes
  - afr: fix incorrect reporting of directory split-brain
  - glusterd: make sure that brickinfo->uuid is not null
  - cluster/afr: Make data eager-lock decision based on number of locks
  - cluster/afr: Batch writes in same lock even when multiple fds are open
  - mgmt/glusterd: use proper path to the volfile
  - georep: fix hard-coded paths in gsyncd.conf.in
  - doc: Added release notes for release 4.1.5
  - cluster/afr: Delegate name-heal when possible
  - cluster/afr: Delegate metadata heal with pending xattrs to SHD
  - libgfchangelog: Fix changelog history API
  - geo-rep: Fix issues related config set
  - geo-rep: Fix deadlock during worker start
  - geo-rep/hook-script: Fix ssh/scp options
  - rpc: handle EAGAIN when SSL_ERROR_SYSCALL is returned
  - storage/posix: Avoid log flood in posix_set_parent_ctime()
  - doc: Release notes for v4.1.4
  - posix: disable open/read/write on special files
  - protocol: don't use alloca
  - io-stats: dump io-stats info in /var/run/gluster
  - server-protocol: don't allow '../' path in 'name'
  - dict: handle negative key/value length while unserialize
  - posix: remove not supported get/set content
  - storage/posix: Increment trusted.pgfid in posix_mknod
  - doc: Release notes for v4.1.3
  - gfapi : Handle the path == "" glfs_resolve_at
  - Bash integration script should namespace variables
  - dht: Delete MDS internal xattr from dict in dht_getxattr_cbk
  - geo-rep : fix possible crash


author: Tiger Yang <tiger.yang@oracle.com> - 1.6.3-1
changelog:
  - Export authnone_create_dummy for error handling in Ganesha
  - xdr_ioq: fix memory leak on FreeBSD
  - Don't let a newly created xprt be cleaned
  - xdr_bytes_decode - only free if we allocated
  - Only unlock when we actually locked
  - Merge pull request #139 from zhoury14/v1.6
  - fix CLSET_VERS/CLSET_PROG in cln_dg clnt_vc clnt_rdma


author: Tiger Yang <tiger.yang@oracle.com> - 4.1.9-1
changelog:
  - doc: Added release notes for 4.1.9
  - performance/write-behind: remove request from wip list in wb_writev_cbk
  - glusterfsd: Multiple shd processes are spawned on brick_mux environment
  - gfapi: Unblock epoll thread for upcall processing
  - cluster/dht: Fix rename journal in changelog


author: Tiger Yang <tiger.yang@oracle.com> - 4.1.8-1
changelog:
  - doc: Added release notes for 4.1.8
  - core: move "dict is NULL" logs to DEBUG log level
  - performance/write-behind: fix use after free in readdirp_cbk
  - cluster/dht: sync brick root perms on add brick
  - cluster/afr: Send truncate on arbiter brick from SHD
  - Revert "libglusterfs/common-utils.c: Fix buffer size for checksum computation"
  - libglusterfs/common-utils.c: Fix buffer size for checksum computation
  - Bump up timeout for tests on AWS
  - api: bad GFAPI_4.1.6 block


author: Tiger Yang <tiger.yang@oracle.com> - 4.1.7-1
changelog:
  - doc: Release notes for 4.1.7
  - leases: Reset lease_ctx->timer post deletion
  - leases: Do not conflict with internal fops
  - gfapi: Offload callback notifications to synctask
  - lease: Treat unlk request as noop if lease not found
  - io-cache: xdata needs to be passed for readv operations
  - gfapi: Access fs->oldvolfile under mutex lock
  - tests: Fix zero-flag.t script
  - leases: Fix incorrect inode_ref/unrefs
  - gfapi: Send fop_attr dict as part of syncop_open
  - afr: open_ftruncate_cbk should read fd from local->cont.open struct


author: Tiger Yang <tiger.yang@oracle.com> - 4.1.6-1
changelog:
  - doc: Added release notes for 4.1.6 release
  - gfapi: fix bad dict setting of lease-id
  - packaging: don't include bd.so rpm in rpm when --without bd
  - logging: check for fmts not being NULL
  - geo-rep: Fix traceback with symlink metadata sync
  - io-stats: prevent taking file dump on server side
  - protocol: remove the option 'verify-volfile-checksum'
  - glusterd-handshake: prevent a buffer overflow
  - server: don't allow '/' in basename
  - features/locks: fix statedump string
  - features/locks:Use pthread_mutex_unlock() instead of pthread_mutex_lock()
  - lock: Do not allow meta-lock count to be more than one
  - index: prevent arbitrary file creation outside entry-changes folder
  - glusterd: ensure volinfo->caps is set to correct value
  - geo-rep/scripts: Fix traceback in gluster-mountbroker
  - posix/ctime: Avoid log flood in posix_update_utime_in_mdata
  - geo-rep: Add more intelligence to automatic error handling
  - features/locks: add buffer overflow checks in pl_getxattr
  - afr/lease: Read child nodes from lease structure
  - geo-rep: Fix issue in gfid-conflict-resolution
  - tests: correction in tests/bugs/glusterd/optimized-basic-testcases-in-cluster.t
  - leases:Mark the fop conflicting if lease_id not set
  - gfapi: Bug fixes in leases processing code-path
  - tests: check for shd up status in bug-1637802-arbiter-stale-data-heal-lock.t
  - afr: prevent winding inodelks twice for arbiter volumes
  - afr: fix incorrect reporting of directory split-brain
  - glusterd: make sure that brickinfo->uuid is not null
  - cluster/afr: Make data eager-lock decision based on number of locks
  - cluster/afr: Batch writes in same lock even when multiple fds are open
  - mgmt/glusterd: use proper path to the volfile
  - georep: fix hard-coded paths in gsyncd.conf.in
  - doc: Added release notes for release 4.1.5
  - cluster/afr: Delegate name-heal when possible
  - cluster/afr: Delegate metadata heal with pending xattrs to SHD
  - libgfchangelog: Fix changelog history API
  - geo-rep: Fix issues related config set
  - geo-rep: Fix deadlock during worker start
  - geo-rep/hook-script: Fix ssh/scp options
  - rpc: handle EAGAIN when SSL_ERROR_SYSCALL is returned
  - storage/posix: Avoid log flood in posix_set_parent_ctime()
  - doc: Release notes for v4.1.4
  - posix: disable open/read/write on special files
  - protocol: don't use alloca
  - io-stats: dump io-stats info in /var/run/gluster
  - server-protocol: don't allow '../' path in 'name'
  - dict: handle negative key/value length while unserialize
  - posix: remove not supported get/set content
  - storage/posix: Increment trusted.pgfid in posix_mknod
  - doc: Release notes for v4.1.3
  - gfapi : Handle the path == "" glfs_resolve_at
  - Bash integration script should namespace variables
  - dht: Delete MDS internal xattr from dict in dht_getxattr_cbk
  - geo-rep : fix possible crash


author: Tiger Yang <tiger.yang@oracle.com> - 2.6.3-1
changelog:
  - Pullup ntirpc to v1.6.3
  - NFS 4.0 - Fix auth setup error handling
  - Initial revision for oracle-gluster-4.1
  - GLUSTER - Enable new readdir_plus if backend support exists
  - FSAL_CEPH: enable the readdir_plus boolean
  - Fix bad setattr valid_mask checking in nfs3_setattr
  - build: location of xattr.h
  - config_parsing : fix uninitialized compiler warning
  - MDCACHE - Allow readdir_plus to reload entire chunks
  - MDCACHE - Keep dirent chunks in ordered list
  - MDCACHE: For dirent chunking, prevent prev_chunk from being reaped
  - Add readdir_plus FSAL option.
  - MDCACHE - Don't clean handle before dirents are deleted
  - Allow octal numbers with multiple leading 0s in config parsing.
  - FSAL: Convert fsal_obj_ops in fsal_obj_handle to pointer
  - MDCACHE - Close more export/unexport races
  - load_fsal: change dlopen failure warning to LogFatal
  - Add client description in dbus DisplayExport command
  - rpm: remove unneeded %defattr from %files sections
  - posix_acls: fix use after freed of acl mask
  - packaging: pkg install needs to mkdir /var/log/ganesha/
  - FSAL_CEPH: rename onto non-empty directory should return NFS4ERR_EXIST
  - EXPORT: Free cidr strings in EXPORT CLIENTs
  - FSAL_VFS: fix deadlock in vfs_read2
  - MDCACHE - Fix some subcalls
  - MDCACHE - Close an unexport race
  - Use temporary fd instead of global fd for getattr/setattr/LOCKT
  - nfsd: handle rpcbind registration errors more gracefully
  - MainNFSD: invert _NO_PORTMAPPER option and rename to RPCBIND
  - V2.6.2
  - Don't unregister netconfig_udpv6 unless registered with rpcbind
  - CMake - Let ntirpc find it's modules
  - Man page clarifications
  - NFSv4: If lock offset plus length > max file size return NFS4ERR_BAD_RANGE
  - NLM: Adjust lock length if lock end would be > max file size
  - Limit max file size to INT64_MAX
  - NFSv4.1: Use slot mutex to serialize use of the slot
  - python: prepare for python2->python3, explicit python2 in shebang
  - fix 'Bind_Addr' config option documentation
  - Move expire_time_attr into export_perms
  - FSAL_MEM - close2() should check state FD
  - nfs: fix missing fill of the wcc_data->before in reply
  - MDCACHE: Calculate the new thread wait more reasonable
  - cmake: fix FindWBclient.cmake
  - Make code compatible for python 2 and 3.
  - Replace cache_fds parameter and handling with better logic
  - rados urls:  permit pool and object names containing '.'
  - config_samples: fix FSAL_CEPH sample conf
  - cmake: add USE_FSAL_CEPH_LL_SYNC_INODE to config-h.in.cmake
  - configs: fix sample config reference for RecoveryBackend section
  - Fix maxread/maxwrite/prefread/prefwrite defaults in man page
  - GLUSTER: Use telldir result from previous dirent as cookie
  - VFS: Use d_off from previous dirent as cookie
  - Allow NLM_SHARE access none, deny something (deny read for example)
  - Allow for Windows use of multiple NLM_SHARE from same owner
  - Fix refcounting of NLM_SHARE state_t
  - Inmprove debug of NLM_SHARE and NLM_UNSHARE
  - doc/man: add ganesha-gluster-config(8) to top-level ganesha-config
  - FSAL_CEPH: add check for and call to ceph_ll_sync_inode
  - Don't dec open_fd_count unless close succeeds
  - FSAL_PROXY : fix memory leak in pxy_readdir
  - Log: clean up level handling in LogAtLevel macro
  - config: flesh out sample config file for FSAL_CEPH
  - manpage: add missing options for the RecoveryBackend section
  - NFS: don't try to lift grace after the main thread exits
  - Set op_ctx when reverting or failing exports


