Hi David, How to enable thread dump logs for both client and server code.
As of now, I don't see any error on either client side or server side. It just hangs/gets stuck. Thanks, Nikhil On Thu, 24 Apr, 2025, 14:39 Susmit Sarkar, <susmitsir...@gmail.com> wrote: > Hi Team, > > We are using this below code snippet in Scala to query the flight server, > but seems to be stuck indefinitely, this issue is seen when we are testing > from our local workstation (Mac to be precise) > > Another interesting thing, it's able to propagate the error message > correctly but not the FlightStream data, the same code works fine when we > run inside a linux VM. > > Do you folks see any issue in the code? > > def fetchDataStreamIterator(details: BaseDataAccessDetails): > Iterator[FlightStream] = { > logger.info(s"Fetching data for details: ${details.toString}") > val ticketStr = buildTicketStr(details) > logger.info(s"Generated ticket string: $ticketStr") > > val allocator = new RootAllocator(Long.MaxValue) > val client = FlightClient.builder(allocator, > Location.forGrpcInsecure(serverHost, serverPort)).build() > > try { > val ticket = new Ticket(ticketStr.getBytes(StandardCharsets.UTF_8)) > val stream = client.getStream(ticket) > > Iterator.continually { > if (stream.next()) Some(stream) else { > // Cleanup when no more batches > close(stream, client) > None > } > }.takeWhile(_.isDefined).flatten > } catch { > case e: FlightRuntimeException => > logger.error(s"Error communicating with Flight server: ${e.getMessage}") > throw new CefFlightServerException(s"Error communicating with Flight > server: ${e.getMessage}", e) > case e: Exception => > logger.error(s"Failed to fetch data: ${e.getMessage}") > throw new CefFlightServerException("Failed to fetch data from Flight > Server", e) > } > } > > > Thanks, > > Susmit > >