While debugging resource leaks (
FLINK-24131), I found that any connector is immediately interrupted on cancel. Hence, any attempts of using blocking calls in close to cleanup resources are immediately unreliable (e.g. aborting transactions).
It would be nice if tasks get a grace period (e.g. task.cancellation.interval) where they can try to free resources in a proper, potentially blocking fashion before being interrupted.
Nevertheless, connectors should always expect interruptions during shutdown, in particular when the user-configurable grace period is depleted. I'd add that to the connector documentation in a separate effort.