Proto commits in linkedin/rest.li

These 5 commits are when the Protocol Buffers files have changed:

Commit:b2da251
Author:Bohan Yang
Committer:GitHub

Add XdsDirectory to get d2 service and cluster names from INDIS (#1038) * Add XdsDirectory to get d2 service and cluster names from INDIS * add D2ClusterOrServiceName proto, wrap subscriber map in getter for testing * wait until all changes to names complete before serving * add and update XdsClient tests * add XdsDirectory tests * cleanups * check string non-null and non-empty in the directory * call onAllResourcesProcessed when received the last response chunk, and unlock write lock after checking isUpdating flag * update doc * change back to object lock to be able to unlock from another thread * touch up * touch up * also notify all resources processed when failed to parse nonce * add default timeout * handle interruption explicitly * use rate limitted logger for nonce parsing failure * set logger rate to 10s * set logger rate to 1min * test calling onAllResourcesProcessed from a separate thread * use count down latch in test for stableness

The documentation is generated from this commit.

Commit:7d736d5
Author:Bohan Yang
Committer:GitHub

Use tracingId in xDS flow for SD tracking events (#981) * use tracingId in xDS flow for SD tracking events * update test * fix uri specific properties formatting in xds data * add cluster name to invalid version log

Commit:a33a1e1
Author:Paul Chesnais
Committer:GitHub

Use Node instead of D2Node and D2URIMap instead of NodeMap for xDS flow (#944) * Use Node(Map) instead of D2node(Map) The initial intent of using D2Node was to pre-deserialize the JSON, but because there is no way for the rest.li client to actually leverage this, it simply re-serializes the JSON then deserializes it again. This causes memory pressure along with validation errors as numerical typesa get mungled. * Leverage pre-deserialize JSON struct instead of switching over to raw JSON data Additionally introduce a D2URI type which has a proper schema instead of being a Struct. This will significantly decrease the resource size sent by the observer and significantly decrease the cost of deserialization on the client. * Bump minor version * Comment and simplify D2URI * Meet proto standard of snake_case naming * Update comment on D2URI * Simplify D2URI even further * Use the raw JSON Node type instead of D2Node This is causing all sorts of validation issues due to integers being interpreted as floats and vice versa * Fix some compile errors * Update changelog * Fix test failing due to missing property * Update changelog

Commit:c5cff52
Author:Bohan Yang
Committer:GitHub

Support d2 symlink node in indis flow (#933) * support d2 symlink node in indis flow * add unit tests * address comments * for symlink clusters, also publish under the origin cluster name

Commit:dcf3c74
Author:Rick Zhou
Committer:GitHub

Implement rest.li xDS service discovery flow and DualRead mode loadbalancer (#907)