kangkaisen commented on issue #549: Add a colocate join meta repair tool URL: https://github.com/apache/incubator-doris/issues/549#issuecomment-455936589 last Friday, After I have developed the initial version and tested the FE Http API. **I found there were some `100-continue` http header issues**. Because the backendsPerBucketSeq meta maybe large, I wanted to extract the backendsPerBucketSeq meta by Http post body, not parameter. So I used `HttpObjectAggregator` and get http body by `FullHttpRequest`, All Api for Colocate Join Meta worked well, but `HttpObjectAggregator` is conflicting with `LoadAction`. `HttpObjectAggregator` will handle `100-continue` header and remove it, which isn't we expected. So I customized a `DorisHttpObjectAggregator` by copying the `HttpObjectAggregator` and removing `100-continue` header handle logic. then, the Java HTTP client could request `LoadAction` successfully. but the curl client request `LoadAction` still get a error: ``` * Empty reply from server * Connection #0 to host xxx left intact curl: (52) Empty reply from server ``` After I debugged, I found which should be the java Http client and curl client have different response logic for Netty Server. I'm not familiar with Netty. I think there are at least three ways to resolve this `100-continue` http header issue: 1. extract the backendsPerBucketSeq meta by Http parameter, not http body. 2. directly parse `HttpRequest`, `HttpContent`, `LastHttpContent`, not use `HttpObjectAggregator` 3. customize `HttpObjectAggregator`, and dive into why curl client get the error. Currently, I prefer the first way, although which isn't canonical,which is simple. @imay @morningman What do you think of it?
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@doris.apache.org For additional commands, e-mail: dev-h...@doris.apache.org