apache/beam · error

Error closing FlightStream

Error message

Error closing FlightStream

What it means

WARN logged in ArrowFlightIO reader's close(): closing the Arrow FlightStream raised an exception. The close path deliberately swallows the error (after logging) so that resource cleanup continues to the client and allocator teardown — a failure while releasing the read stream does not mask or abort the rest of shutdown.

Solutions

  1. Inspect the logged exception for the underlying Flight server/connection issue
  2. Usually safe to ignore during shutdown; ensure the Flight server is healthy if streams fail consistently
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at sdks/java/io/arrow-flight/src/main/java/org/apache/beam/sdk/io/arrowflight/ArrowFlightIO.java:489 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of apache/beam@12126d8942 (2026-09-13). Data as JSON: /api/errors/444b18d6abdfa54b. Report an issue: GitHub.

Appendix: source

Thrown at sdks/java/io/arrow-flight/src/main/java/org/apache/beam/sdk/io/arrowflight/ArrowFlightIO.java:489

        } else {
          return false;
        }
      }
    }

    @Override
    public Row getCurrent() {
      return current;
    }

    @Override
    public void close() throws IOException {
      try {
        if (stream != null) {
          stream.close();
        }
      } catch (Exception e) {
        LOG.warn("Error closing FlightStream", e);
      }
      try {
        if (client != null) {
          client.close();
        }
      } catch (InterruptedException e) {
        Thread.currentThread().interrupt();
        LOG.warn("Interrupted closing FlightClient", e);
      }
      try {
        if (allocator != null) {
          allocator.close();
        }
      } catch (Exception e) {
        LOG.warn("Error closing BufferAllocator", e);
      }
    }

View on GitHub (pinned to 12126d8942)