Skip to content

[UPDATE] Restore the previously removed API for etcd/grpc compatibility/update #3243

@Alanxtl

Description

@Alanxtl

Description

The API / behavior was originally removed during the changes in:

Later, we found this caused downstream compatibility problems for Dubbo-Go:

In particular, removing the grpc.WithBlock()-related behavior in gost affected the initialization semantics along this dependency chain:

dubbo-go -> gost -> etcd/clientv3 -> grpc

As discussed in #3070, this broke the expected behavior in the etcd registry path and caused unit test failures in Dubbo-Go.

Now the upstream etcd side has already updated the related implementation / discussion:

So I think it is time to add this API / behavior back in gost.

Motivation

The original removal was understandable at that time, but it introduced real downstream compatibility issues.

Since the upstream dependency has now moved forward, restoring this API / behavior would help downstream projects such as Dubbo-Go remove temporary compatibility workarounds and recover the expected client initialization semantics.

References

Metadata

Metadata

Assignees

No one assigned

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions