Originated: February 2, 2016
********************************************************************************

Patch-191603: Patch for OneFS 8.0.0.4. This patch addresses multiple issues with
the NFS and SmartConnect services.

--------------------------------------------------------------------------------

This patch can be installed on clusters running the following OneFS version: 
8.0.0.4

********************************************************************************

RESOLVED ISSUES

* Bug ID 192480
  It was possible for the cluster to incorrectly appear to be at maximum
  capacity for NFS connections. If this issue occurred, new NFS connections
  could not be created and error messages similar to the following appeared in
  the /var/log/nfs.log file:
  NFS4 client table full! Current count: 4096

* Bug ID 191816
  If you ran the nfs4_getfacl command, the system output included a UID or GID,
  and you attempted to run the nfs4_setfacl command to modify ACLs or
  permissions for that UID or GID, the operation could have failed. If
  this issue occurred, messages similar to the following appeared on the
  console:

  Failed setxattr operation: Invalid argument

  Additionally, it was possible for OneFS to return a numeric UID or GID instead
  of attempting to resolve to an Active Directory user or group name when
  the nsf4_getfacl command was run.

* Bug ID 191103
  After the cluster was upgraded to OneFS 8.0.0.4, it was possible for OneFS to
  fail to set the default security type for NFS exports. As a result, clients
  were unable to mount NFS exports using the default UNIX security type and
  error messages similar to the following appeared in the /var/log/nfsd.log
  file:

  [status: STATUS_ACCESS_DENIED = 0xC0000022 (-1073741790)]

* Bug ID 190995
  After the cluster was upgraded to OneFS 8.0.0.4, it was possible for OneFS
  NFS exports to fail if the exports were created with default settings in
  the OneFS web administration interface. If this issue occurred, error
  messages similar to the following appeared in the /var/log/isi_papi_d.log
  file:

  * map failure: Field: map_failure has an error: Incorrect type. Found:
    string, schema accepts: object.

  * map non_root: Field: map_non_root has error: Incorrect type. Found:
    string, schema accepts: object.

  * map root: Field: map_root has error: Incorrect type. Found: string,
    schema accepts: object.

  * security flavors: Field: security_flavors has an error: Incorrect type.
    Found: string, schema accepts: array.
 
* Bug ID 186608
  If SmartConnect was active on the cluster and a node was in shutdown_read_only
  mode prior to shutdown or reboot, either of the following issues could have
  caused SmartConnect to become unavailable and clients to be
  unable to access the cluster while the node was rebooted:

  * If the node was the SmartConnect master node-- the node in the cluster that
    was assigned the lowest logical node number (LNN)-- the SmartConnect service
    IP address (SSIP) became unavailable, new client connections could not
    resolve the SmartConnect fully qualified domain name (FQDN) and OneFS failed
    to migrate existing client connections to an available node.
    
  * If the node was not a SmartConnect master node, SmartConnect failed to
    migrate the node's IP addreses to an available node, incorrectly listed
    the node as available, and returned the node's IP address when new client
    connections requested DNS resolution.
 
********************************************************************************

CHANGED FILES

* /usr/sbin/isi_dnsiq_d
  (MD5 = 4f4a0e3fd72bfb96b4eb958d73b3d013)

* /usr/likewise/lib/lw-svcm/nfs.so
  (MD5 = a25d08162576ebed6c970ac207ca69a7)

* /usr/lib/libisi_platform_api.so
  (MD5 = b4744f6e8eb3b22624fd2c10863af957)
  
* /usr/local/lib/python2.6/site-packages/isi/config/nfs.so
  (MD5 = ec67196c34de363128f70f7733015d82)  

********************************************************************************

INSTALLATION/REMOVAL IMPACTS

During installation or removal of this patch, the SmartConnect service is
unavailable and the service that manages SMB, NFS, HDFS, and Swift client
connections as well as authentication to the cluster is restarted. After 
installation or removal is complete, the SmartConnect service restarts
automatically.

When an 8.0.0.x patch requires that services be restarted, by default, the 'isi
upgrade patches install' command performs a rolling reboot of all nodes in the
cluster to restart the affected services. If a rolling reboot is performed,
client connections to the cluster over protocols that are configured or designed
to fail over to another node are not disconnected. However, client connections
to the cluster over other protocols are disconnected when the node they are
connected to reboots. Clients that are disconnected must manually reestablish a
connection to the cluster.

You can also configure the command to install the patch on all nodes in the
cluster simultaneously by running the 'isi upgrade patches install' command
with the '--rolling=false' parameter. If you perform a simultaneous
installation of the patch, nodes are not rebooted. However, services that are
affected by the patch are simultaneously restarted on all nodes in the cluster.
If services are restarted, clients and cluster operations that require those
services are temporarily disrupted while the service restarts.

EMC Isilon recommends that you install the patch during an off-hours maintenance 
window to minimize the disruption of service to clients.

********************************************************************************

IMPORTANT!  
VERIFY CLUSTER-FREE SPACE
If there is insufficient free space and you attempt to install or remove a
patch, the process might not complete successfully. An incomplete patch
installation or patch removal can leave the cluster in an inaccessible state.

Before installing or removing a patch, verify that your cluster has enough
free space to perform the procedure. For more information about maintaining
sufficient free space on an Isilon cluster, see the Best Practices Guide for
Maintaining Enough Free Space on Isilon Clusters and Pools:
https://support.emc.com/docu48119. 

********************************************************************************

INSTALLING THIS PATCH

IMPORTANT!
Read INSTALLATION/REMOVAL IMPACTS before performing this procedure.
   
1. Verify that your cluster has enough free space to install this patch.

2. Open an SSH connection on any node in the cluster and log in by using the
   root account.

   NOTE: If the patch is being installed on a compliance mode cluster, log in
   using the compadmin account.
   
3. Copy the patch-191603.tgz file to the /ifs/data directory on the cluster.

4. Run the following command to change to the /ifs/data directory:
   
   cd /ifs/data

5. To extract the patch file, run the following command:

    tar -zxvf patch-191603.tgz

6. To install this patch, run the following command:

    isi upgrade patches install patch-191603.pkg --rolling=false 
   
    NOTE: The preceding command updates all of the nodes in the cluster  
    simultaneously, and then restarts the affected services on all of the 
    nodes simultaneously. To install the patch and then reboot each node in
    succession, omit the '--rolling=false' parameter. For more information,
    see the Installation/Removal Impacts section of the README.

7. To verify that this patch is installed, run the following command:

    isi upgrade patches list

8. Confirm that patch-191603 appears in the list of installed packages and the 
   "status" is set to Installed.

********************************************************************************

REMOVING THIS PATCH

If you need to remove this patch, complete the steps below.

IMPORTANT!
Read INSTALLATION/REMOVAL IMPACTS before performing this procedure.

1. Verify that your cluster has enough free space to remove this patch.

2. Open an SSH connection on any node in the cluster and log in using the
   root account.

   NOTE: If the patch is being removed from a compliance mode cluster, log in
   using the compadmin account.
   
3. To remove this patch, run the following command:

   isi upgrade patches uninstall patch-191603 --rolling=false
   
   NOTE: The preceding command updates all of the nodes in the cluster    
   simultaneously, and then restarts the affected services on all of the 
   nodes simultaneously. To remove the patch and then reboot each node in
   succession, omit the '--rolling=false' parameter. For more information,
   see the Installation/Removal Impacts section of the README.    
   
   Confirm that you want to continue with this operation:
   
   Are you sure?  (yes/[no]): yes

4. To verify that this patch was removed, run the following command:

   isi upgrade patches list

5. Confirm that patch-191603 does not appear in the list of installed packages.

********************************************************************************
