[grpc-io] gRPC-Java v1.57.0 Released

2023-07-28 Thread 'Larry Safran' via grpc.io
The v1.57.0 release  
is now available.

*API Changes*


   - Use fully qualified java.lang.String in all cases in generated code. 
   This fixes compilation if a protobuf message is named “String”.
   - Stabilize two io.grpc.Status methods (asRuntimeException & 
   trailersFromThrowable)
   - Stabilize io.grpc.ManagedChannelBuilder.useTransportSecurity (#10244 
   )
   - Stabilize io.grpc.util.MutableHandlerRegistry (#10348 
   )

*Behavior Changes*


   - xds: Handle loops and duplicates in xds Aggregate clusters
   - core: Change delay for hedging retry after a non-fatal error to be 0 
   to match the gRFC (A6 
   ).
   - api: CheckedForwardingClientCall now passes trailers from the caught 
   exception
   - xds: require EDS service name in CDS resources with an xdstp name
   - xds: Use Rule order instead of RuleChain
   - Wrap other name resolver types in a RetryingNameResolver . Previously, 
   if authority was not overridden, then some name resolvers (such as grpclb) 
   had no retry.
   - xds: Environment variable "GRPC_XDS_EXPERIMENTAL_SECURITY_SUPPORT" is 
   no longer respected, so xDS security cannot be disabled any more (#10243 
   )
   - context, api: Package io.grpc is now consolidated into a single 
   artifact grpc-api by moving classes from grpc-context to grpc-api. 
   grpc-context now has a dependency on grpc-api (but excludes other 
   dependencies of grpc-api) so any application previously using only 
   grpc-context will now also bring in grpc-api. This fixes #3522 
    which was the major 
   issue preventing support of Java modules. We are not done fixing support, 
   as some artifacts need to be split and Automatic-Module-Name needs to be 
   added. The next release is likely to be more stable for modules.

*New Features*


   - binder: Add UserHandle and BinderChannelCredentials to support 
   cross-user communication (#10197 
   )
   - xds,orca: LRS named metrics support

*Improvements*


   - core: Resolve isAndroid only once on class loading. This can improve 
   channel creation performance on Android.
   - xds: Pick a subchannel with new static stride scheduler in 
   WeightedRoundRobinLoadBalancer

*Bug Fixes*


   - xds: Fix the server sending a GOAWAY when an LDS update with no 
   changes other than ordering is received.
   - netty: Fix NPE when a header with errors is received with 
   endStream=true. This was causing logs to be filled with errors when health 
   checkers didn’t specify a content type.
   - okhttp: Fix the Socket data race when shutdown/closed during 
   connecting that was causing a significant delay

*Dependencies*


   - Upgraded Netty to 4.1.93-Final
   - Update guava dependency to 32.0.1 to address CVE-2023-2976 
   

*Acknowledgements*


   - Benjamin Peterson
   - Masakuni Oishi
   - Philip K. Warren
   - Stephane Landelle

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to grpc-io+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/35d414c7-f647-450d-9b3a-e49411d103dan%40googlegroups.com.


[grpc-io] Serialize once, send multiple times

2023-07-28 Thread Lorenzo Arena
I have a question about sending the same message to multiple clients 
(similar to what was asked in the last message 
of https://groups.google.com/g/grpc-io/c/R3XLoLjkFCQ but never got an 
answer). I have a custom gRPC async server, which spawns a "manager" for 
each connection. Each manager is subscribed to a message "publisher"; each 
time someone publish a message it is sent by each manager to the respective 
client, using a shared_ptr. Is there a way to share the already serialized 
buffer instead of sharing the message structure? If I'm understanding 
correctly as of now the message is serialized once for every connection.

Thanks,
Lorenzo

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to grpc-io+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/grpc-io/383285d4-6320-48e1-bd01-d848f6adcf94n%40googlegroups.com.