Clean up a zombie channel (channel with Redis keys but no active owner)
(self, channel_id, metadata=None)
| 889 | return False |
| 890 | |
| 891 | def _clean_zombie_channel(self, channel_id, metadata=None): |
| 892 | """Clean up a zombie channel (channel with Redis keys but no active owner)""" |
| 893 | try: |
| 894 | logger.info(f"Cleaning up zombie channel {channel_id}") |
| 895 | |
| 896 | # If we have metadata, log details for debugging |
| 897 | if metadata: |
| 898 | state = metadata.get('state', 'unknown') |
| 899 | owner = metadata.get('owner', 'unknown') |
| 900 | logger.info(f"Zombie channel details - state: {state}, owner: {owner}") |
| 901 | |
| 902 | self._clean_redis_keys(channel_id) |
| 903 | return True |
| 904 | except Exception as e: |
| 905 | logger.error(f"Error cleaning zombie channel {channel_id}: {e}", exc_info=True) |
| 906 | return False |
| 907 | |
| 908 | @staticmethod |
| 909 | def _shutdown_disconnect_ttl(): |
no test coverage detected