Re: [BuildStream] CAS server resource names & instance names



Yes, there's definitely one problem I can see with the protocol. I'll raise it.

On 11/12/2018 01:47, Ed Baunton wrote:
Should an issue be opened against the proto? In addition, is RBE not complying or inconsistent in some way to what was agreed above?

Ed

On Mon, 10 Dec 2018 at 09:05 Jim MacArthur via BuildStream-list <buildstream-list gnome org> wrote:

On 10/12/2018 13:48, Jürg Billeter wrote:
> On Mon, 2018-12-10 at 13:41 +0000, Jim MacArthur wrote:
>> I don't see how you've got to the conclusion that empty instance and no
>> instance are the same thing. The Bazel protocol does say "For servers
>> which do not support multiple instances, then the `instance_name` is the
>> empty path" but that doesn't necessary imply behaviour for servers which
>> do support it. I can also see mappings to http URLs which look like
>> they'll always include an instance name or empty string, but I wasn't
>> considering them authoritative specifications.
> For example, for Execution.Execute() instance_name is a protobuf string
> field in the ExecuteRequest message. URL mapping is handled internally
> by gRPC, clients can't normally influence it. Protobuf messages don't
> allow distinction between unset string fields and empty string fields
> (the serialization is identical).
>
> I.e., at least for Execution.Execute() empty instance_name and no
> instance_name are identical. It's impossible for the server to treat
> them differently. I don't think it makes sense to distinguish the two
> cases in other places where it would theoretically be possible. That
> would be inconsistent and confusing, in my opinion.
>
> Cheers,
> Jürg
>
OK, this isn't really a question for BuildStream anymore so let's agree
that "" and no instance are the same thing in BuildStream's world.
Google can resolve the ambiguity in protocol buffers.
_______________________________________________
BuildStream-list mailing list
BuildStream-list gnome org
https://mail.gnome.org/mailman/listinfo/buildstream-list


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]