
##### SUMMARY
I add a user to a group, execute the meta module reset_connection, check the group association again, just to find that the connection is still the same. And it's still the same ssh session!

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
Meta Module : reset_connection 

##### ANSIBLE VERSION
ansible 2.9.1                                                                                                                                                                         config file = /workspace/ansible_test_2@2/ansible/ansible.cfg                                                                                                                    configured module search path = [u'/var/jenkins_home/.ansible/plugins/modules', u'/usr/shar   e/ansible/plugins/modules']                                                                                                                                                                ansible python module location = /usr/lib/python2.7/site-packages/ansible                                                                                                           executable location = /usr/bin/ansible                                                                                                                                                   python version = 2.7.5 (default, Aug  7 2019, 00:51:29) [GCC 4.8.5 20150623 (Red Hat 4.8.5-                                                                                            39)]                                      

```

##### CONFIGURATION
<!--- Paste verbatim output from "ansible-config dump --only-changed" between quotes -->
```paste below
ANSIBLE_SSH_ARGS(/workspace/ansible_test_2@2/ansible/ansible.cfg) = -o ControlMaster=auto -o ControlPersist=30m                                                                           ANSIBLE_SSH_CONTROL_PATH(/workspace/ansible_test_2@2/ansible/ansible.cfg) = %(directory)s/%%h-%%p-%%r                                                                                     DEFAULT_HOST_LIST(/workspace/ansible_test_2@2/ansible/ansible.cfg) = [u'/environmen_data']                                                                                                DEFAULT_REMOTE_USER(/workspace/ansible_test_2@2/ansible/ansible.cfg) = USER                                                                                                               DEFAULT_ROLES_PATH(/workspace/ansible_test_2@2/ansible/ansible.cfg) = [u'/etc/ansible/roles', u'/usr/share/ansible/roles', u'/${WORKSPACE}/ansible/roles', u'/workspace/ansible_test_2@2/aHOST_KEY_CHECKING(/workspace/ansible_test_2@2/ansible/ansible.cfg) = False 
```

##### OS / ENVIRONMENT
<!--- Provide all relevant information below, e.g. target OS versions, network device firmware, etc. -->
Targed OS = Red Hat Enterprise Linux Server release 7.7 (Maipo) running a normal docker-ce installation 
Source OS = Docker Container based on a CentOS v5 image, Ansible has been installed manually and it works perfectly. 


##### STEPS TO REPRODUCE
<!--- Describe exactly how to reproduce the problem, using a minimal test-case -->
Check group association with id shell command, change group association using the normal ansible module -> Check id shell command again. 
<!--- Paste example playbooks or commands between quotes below -->
```yaml
- name: Id Check 1 
  shell: id 
  register: id_output 

- name: Give output of Id Check 1 
  debug: 
   msg: '{{ id_output.stdout }}'

- name: Modify User User group association 
  user: 
   name: '{{ ansible_user }}'
   groups: docker
   append: true
   state: present

- name: reset the SSH_CONNECTION!!!!
  meta: reset_connection 

# Optional , try a docker  command 

- name: try a docker ps command                                                                                                                                                             
  shell: docker ps                                                                                                                                                                          
  register: docker_output                                                                                                                                                                   
  ignore_errors: true                                                                                                                                                                                                                                                                                                                                                               

- name: give output of docker command                                                                                                                                                       
  debug:                                                                                                                                                                                     
   msg: '{{ docker_output.stdout  }}'

- name: Id Check 2 
  shell: id 
  register: id_output_2 

- name: Give output of Id Check 2 
  debug: 
   msg: '{{ id_output_2.stdout }}'

```

<!--- HINT: You can paste gist.github.com links for larger files -->

##### EXPECTED RESULTS
<!--- Describe what you expected to happen when running the steps above -->
The ansible user is added to the docker group, SSH Connection is resetted so that group association is updated. And the second ID command reflects the new group association.  

##### ACTUAL RESULTS
<!--- Describe what actually happened. If possible run with extra verbosity (-vvvv) -->
The session is not interrupted, so that the current session is not updated with the new Group ! Thus i cannot use a docker command.
<!--- Paste verbatim command output between quotes -->
```paste below
The -vvv run of the playbook runs with the META task    .                                                                                                                                                                              META: reset connection 
So maybe i'm missing something,  But i cannot find any indicator that it's the problem with my config file or so. 
```

for block in new_blocks:
                        iterator._play.handlers.append(block)
                        for task in block.block:
                            task_name = task.get_name()
                            display.debug("adding task '%s' included in handler '%s'" % (task_name, handler_name))
                            task.notified_hosts = included_file._hosts[:]
                            result = self._do_handler_run(
                                handler=task,
                                handler_name=task_name,
                                iterator=iterator,
                                play_context=play_context,
                                notified_hosts=included_file._hosts[:],
                            )
                            if not result:
                                break
                except AnsibleError as e:
                    for host in included_file._hosts:
                        iterator.mark_host_failed(host)
                        self._tqm._failed_hosts[host.name] = True
                    display.warning(to_text(e))
                    continue
        
        handler.notified_hosts = [
            h for h in handler.notified_hosts
            if h not in notified_hosts]
        display.debug("done running handlers, result is: %s" % result)
        return result
    def _filter_notified_failed_hosts(self, iterator, notified_hosts):