'Merge a dictionary of override values for self.connection_pool_kw.
This does not modify self.connection_pool_kw and returns a new dict.
Any keys in the override dictionary with a value of ``None`` are
removed from the merged dictionary.'

def _merge_pool_kwargs(self, override):

    base_pool_kwargs = self.connection_pool_kw.copy()
    if override:
        for (key, value) in override.items():
            if (value is None):
                try:
                    del base_pool_kwargs[key]
                except KeyError:
                    pass
            else:
                base_pool_kwargs[key] = value
    return base_pool_kwargs
