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.

Assignee Loading
Time tracking Loading