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

grpc / grpc-java / 20278 / 1
89%
master: 89%

Build:
DEFAULT BRANCH: master
Ran 24 Oct 2020 04:29AM UTC
Files 411
Run time 28s
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

23 Oct 2020 08:38PM UTC coverage: 86.615% (-0.04%) from 86.655%
GRADLE_OPTS=-Xmx512m LDFLAGS=-L/tmp/protobuf/lib CXXFLAGS=-I/tmp/protobuf/include LD_LIBRARY_PATH=/tmp/protobuf/lib

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

Source Files on job 20278.1 (GRADLE_OPTS=-Xmx512m LDFLAGS=-L/tmp/protobuf/lib CXXFLAGS=-I/tmp/protobuf/include LD_LIBRARY_PATH=/tmp/protobuf/lib)
  • Tree
  • List 0
  • Changed 6
  • Source Changed 0
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 16938
  • Travis Job 20278.1
  • 40191b2f on github
  • Prev Job for GRADLE_OPTS=-Xmx512m LDFLAGS=-L/tmp/protobuf/lib CXXFLAGS=-I/tmp/protobuf/include LD_LIBRARY_PATH=/tmp/protobuf/lib on master (#20266.1)
  • Next Job for GRADLE_OPTS=-Xmx512m LDFLAGS=-L/tmp/protobuf/lib CXXFLAGS=-I/tmp/protobuf/include LD_LIBRARY_PATH=/tmp/protobuf/lib on master (#20282.1)
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