Bug #16427 mentioned that temporary files are not removed after a crash. I heard similar complaints from some customers. In the bug report [1], I proposed a new GUC to control whether temporary files are removed after a crash recovery. The current behavior is only useful for debugging purposes. It also has an undesirable behavior: you have to restart the service to reclaim the space. Interrupting the service continuity isn't always an option and due to limited resources, you have no choice but to restart the service.
The new GUC cleanup_temp_files_after_crash is marked as SIGHUP. Hence, you can enable it to debug without service interruption. The default value is on which means it changes the current behavior. Documentation and tests are included.