• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

grpc / grpc-java / 20278
89%

Build:
DEFAULT BRANCH: master
Ran 24 Oct 2020 04:29AM UTC
Jobs 1
Files 411
Run time 29s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
20278

push

travis-ci

web-flow
xds: implement XdsClient thread-safety and synchronization for gRPC client (refactored XdsClient to client and server usages separately) (#7533)

Two major changes involved:

- Separated client and server side XdsClient code paths. Currently the single XdsClientImpl2 implementation runs separate code paths for client side and server side usages. Due to different implementation progress for client side and server side development, client and server implementations diverge in whether it supports multiple/removing watchers, response data cache, synchronization model, etc. It became cumbersome to put them together in a single class. The separation is effectively duplicating the XdsClientImpl2 class for client and server so that the two sides can develop independently. But we made this AbstractXdsClient to reuse some of the code, such as the logic for xDS RPC stream. More details can be found in go/separate-client-server-xds-client.

- Changes the synchronization model for the client side APIs. Multiple gRPC Channels will be sharing a single XdsClient instance. So the client side APIs need to be thread-safe. Also, the XdsClient needs to implement synchronization for API calls and xDS RPC callbacks without using a particular Channel's SynchronizationContext. This is done by using XdsClient's own lock.

25560 of 29510 relevant lines covered (86.61%)

0.87 hits per line

Jobs
ID Job ID Ran Files Coverage
1 20278.1 (GRADLE_OPTS=-Xmx512m LDFLAGS=-L/tmp/protobuf/lib CXXFLAGS=-I/tmp/protobuf/include LD_LIBRARY_PATH=/tmp/protobuf/lib) 24 Oct 2020 04:29AM UTC 0
86.61
Travis Job 20278.1
Source Files on build 20278
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #20278
  • 40191b2f on github
  • Prev Build on master (#20266)
  • Next Build on master (#20282)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc