Skip to content

Conversation

@cthumuluru-crdb
Copy link
Contributor

@cthumuluru-crdb cthumuluru-crdb commented Jun 7, 2025

gRPC and DRPC clients have different signatures. To unify them, we created a common interface for both types of clients, and replaced the gRPC and DRPC clients with adapters.

Epic: CRDB-48923
Informs: #148353
Release note: none

@cockroach-teamcity
Copy link
Member

This change is Reviewable

@cthumuluru-crdb cthumuluru-crdb force-pushed the use-grpc-drpc-adapters branch 3 times, most recently from 095ae83 to 2695c8e Compare June 14, 2025 15:40
@cthumuluru-crdb cthumuluru-crdb marked this pull request as ready for review June 14, 2025 15:40
@cthumuluru-crdb cthumuluru-crdb requested review from a team as code owners June 14, 2025 15:41
@cthumuluru-crdb cthumuluru-crdb requested review from Abhinav1299, DarrylWong, aa-joshi, arjunmahishi, herkolategan, kev-cao and kyle-a-wong and removed request for a team June 14, 2025 15:41
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Informs:cockroachdb#148353
Release note: none
@cthumuluru-crdb cthumuluru-crdb force-pushed the use-grpc-drpc-adapters branch from cbdc938 to 32a4a95 Compare June 16, 2025 03:40
gRPC and DRPC clients have different signatures. To unify them, a common
interface was created for both types of clients, and replaced the gRPC
and DRPC clients with adapters.

Epic: CRDB-48923
Fixes:cockroachdb#148353
Release note: none
@cthumuluru-crdb cthumuluru-crdb force-pushed the use-grpc-drpc-adapters branch from 32a4a95 to 4930b55 Compare June 16, 2025 03:43
@cthumuluru-crdb cthumuluru-crdb removed the do-not-merge bors won't merge a PR with this label. label Jun 16, 2025
@cthumuluru-crdb
Copy link
Contributor Author

bors r+

@craig
Copy link
Contributor

craig bot commented Jun 16, 2025

@craig craig bot merged commit 28e1b22 into cockroachdb:master Jun 16, 2025
21 of 22 checks passed
shubhamdhama added a commit to shubhamdhama/cockroach that referenced this pull request Jun 19, 2025
This change replaces the direct client creation through `NewInternalClient`
with the gRPC adapter. See cockroachdb#147950 for more context. Also, since we have a
more targeted service for `Join` RPC, we should use its adapter interface.

Release note: none
Epic: CRDB-48923
@cthumuluru-crdb cthumuluru-crdb deleted the use-grpc-drpc-adapters branch June 19, 2025 05:57
craig bot pushed a commit that referenced this pull request Jun 20, 2025
148451: kv,server: extract `Cluster` service and register with DRPC server  r=cthumuluru-crdb a=shubhamdhama

`` kv,server: extract `Cluster` service and register with DRPC server ``

This is a follow-up to #145195, where we extracted `KVBatch` from the
`Internal` service. Here, we do the same with `Cluster`. The TL;DR
is that smaller services are easier to maintain and can be more smoothly
migrated to DRPC.

We also enable this service on the DRPC server. This is controlled by
`rpc.experimental_drpc.enabled` (off by default).

This change is part of a series and is similar to: #146926

Note: This only registers the service; the client is not updated to use the
DRPC client, so this service will not have any functional effect.

`` server: replace `RPCClusterClient` for cluster join operation ``

This change replaces the direct client creation through `NewInternalClient`
with the gRPC adapter. See #147950 for more context. Also, since we have a
more targeted service for `Join` RPC, we should use its adapter interface.

Release note: none
Epic: CRDB-48923


Co-authored-by: Shubham Dhama <shubham.dhama@cockroachlabs.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants