erratic-pattern commented on code in PR #40311:
URL: https://github.com/apache/arrow/pull/40311#discussion_r1564192282
##########
go/arrow/flight/flightsql/example/sqlite_server.go:
##########
@@ -618,21 +618,21 @@ func getParamsForStatement(rdr flight.MessageReader)
(params [][]interface{}, er
return params, rdr.Err()
}
-func (s *SQLiteFlightSQLServer) DoPutPreparedStatementQuery(_ context.Context,
cmd flightsql.PreparedStatementQuery, rdr flight.MessageReader, _
flight.MetadataWriter) error {
+func (s *SQLiteFlightSQLServer) DoPutPreparedStatementQuery(_ context.Context,
cmd flightsql.PreparedStatementQuery, rdr flight.MessageReader, _
flight.MetadataWriter) ([]byte, error) {
val, ok := s.prepared.Load(string(cmd.GetPreparedStatementHandle()))
if !ok {
- return status.Error(codes.InvalidArgument, "prepared statement
not found")
+ return nil, status.Error(codes.InvalidArgument, "prepared
statement not found")
}
stmt := val.(Statement)
args, err := getParamsForStatement(rdr)
if err != nil {
- return status.Errorf(codes.Internal, "error gathering
parameters for prepared statement query: %s", err.Error())
+ return nil, status.Errorf(codes.Internal, "error gathering
parameters for prepared statement query: %s", err.Error())
}
stmt.params = args
s.prepared.Store(string(cmd.GetPreparedStatementHandle()), stmt)
Review Comment:
Yes. I decided an actual stateless implementation was out of scope for this
change, and just made the minimal change to achieve compatibility with the new
spec, which allows for either stateless or stateful server implementation.
There is certainly an argument to be made for serverless implementation, but I
leave that decision up to the maintainers.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]