Assertion failure in client/cas.py Downloader.get_messages()
With !286 (merged) merged I'm seeing the following assertion failure with the BuildStream remote execution tests (both CI and locally):
File "buildgrid/buildgrid/bot/tenantmanager.py", line 122, in complete_lease
result = task.result()
File "buildgrid/buildgrid/bot/tenant.py", line 114, in run_work
lease = await loop.run_in_executor(executor, partial(work, self._lease, context, event))
File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "buildgrid/buildgrid/_app/bots/buildbox.py", line 125, in work_buildbox
output_tree = _cas_tree_maker(downloader, output_digest)
File "buildgrid/buildgrid/_app/bots/buildbox.py", line 176, in _cas_tree_maker
output_tree.children.extend(__cas_tree_maker(cas, root_directory))
File "buildgrid/buildgrid/_app/bots/buildbox.py", line 166, in __cas_tree_maker
cas.get_messages(digests, directories)
File "buildgrid/buildgrid/client/cas.py", line 227, in get_messages
assert len(message_blobs) == len(messages)
AssertionError
The error is not normally visible. The client simply receives an INTERNAL gRPC status code without an error message.
As this is easy to reproduce, let me know if you need any further information.