This is an automated email from the ASF dual-hosted git repository.

ianmcook pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-experiments.git


The following commit(s) were added to refs/heads/main by this push:
     new f4c54a5  Show how to disable chunked transfer encoding in Go and Java 
server examples (#13)
f4c54a5 is described below

commit f4c54a5fd7376d5bba47b9055fac048d3d0b976d
Author: Ian Cook <[email protected]>
AuthorDate: Sun Mar 10 21:52:03 2024 -0400

    Show how to disable chunked transfer encoding in Go and Java server 
examples (#13)
    
    * Capitalize headers in Go example
    
    * Update Go examples to use latest Arrow
    
    * Add  comments to Java and Go examples showing how to disable chunked 
transfer encoding
---
 http/get_simple/go/client/go.mod                             |  2 +-
 http/get_simple/go/server/go.mod                             |  2 +-
 http/get_simple/go/server/server.go                          | 12 +++++++-----
 .../server/src/main/java/com/example/ArrowHttpServer.java    |  5 +++++
 4 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/http/get_simple/go/client/go.mod b/http/get_simple/go/client/go.mod
index 7306565..aae0040 100644
--- a/http/get_simple/go/client/go.mod
+++ b/http/get_simple/go/client/go.mod
@@ -2,7 +2,7 @@ module client
 
 go 1.21.5
 
-require github.com/apache/arrow/go/v15 v15.0.0
+require github.com/apache/arrow/go/v15 v15.0.1
 
 require (
        github.com/goccy/go-json v0.10.2 // indirect
diff --git a/http/get_simple/go/server/go.mod b/http/get_simple/go/server/go.mod
index b2bc4db..784a851 100644
--- a/http/get_simple/go/server/go.mod
+++ b/http/get_simple/go/server/go.mod
@@ -2,7 +2,7 @@ module server
 
 go 1.21.5
 
-require github.com/apache/arrow/go/v15 v15.0.0
+require github.com/apache/arrow/go/v15 v15.0.1
 
 require (
        github.com/goccy/go-json v0.10.2 // indirect
diff --git a/http/get_simple/go/server/server.go 
b/http/get_simple/go/server/server.go
index aab489c..d7db005 100644
--- a/http/get_simple/go/server/server.go
+++ b/http/get_simple/go/server/server.go
@@ -95,13 +95,15 @@ func main() {
 
                hdrs := w.Header()
 
-               // set these headers if testing with a local browser-based 
client:
+               //// set this header to disable chunked transfer encoding:
+               //hdrs.Add("Transfer-Encoding", "identity")
 
-               //hdrs.Add("access-control-allow-origin", 
"http://localhost:8000";)
-               //hdrs.Add("access-control-allow-methods", "GET")
-               //hdrs.Add("access-control-allow-headers", "content-type")
+               //// set these headers if testing with a local browser-based 
client:
+               //hdrs.Add("Access-Control-Allow-Origin", 
"http://localhost:8000";)
+               //hdrs.Add("Access-Control-Allow-Methods", "GET")
+               //hdrs.Add("Access-Control-Allow-Headers", "content-type")
 
-               hdrs.Add("content-type", "application/vnd.apache.arrow.stream")
+               hdrs.Add("Content-Type", "application/vnd.apache.arrow.stream")
                w.WriteHeader(http.StatusOK)
 
                wr := ipc.NewWriter(w, ipc.WithSchema(batches[0].Schema()))
diff --git 
a/http/get_simple/java/server/src/main/java/com/example/ArrowHttpServer.java 
b/http/get_simple/java/server/src/main/java/com/example/ArrowHttpServer.java
index 856f25f..a4e3d0c 100644
--- a/http/get_simple/java/server/src/main/java/com/example/ArrowHttpServer.java
+++ b/http/get_simple/java/server/src/main/java/com/example/ArrowHttpServer.java
@@ -118,6 +118,11 @@ public class ArrowHttpServer extends AbstractHandler {
         response.setContentType("application/vnd.apache.arrow.stream");
         response.setStatus(HttpServletResponse.SC_OK);
 
+        //// set this header to disable chunked transfer encoding:
+        //response.setHeader("Connection", "close");
+        
+        response.flushBuffer();
+
         try (
             OutputStream stream = response.getOutputStream();
             VectorSchemaRoot root = VectorSchemaRoot.create(schema, allocator);

Reply via email to