Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-09-09 | Use ArtifactDigest in BazelApi/BazelResponse | Maksim Denisov | |
2024-09-09 | Use ArtifactDigest in LocalAction | Maksim Denisov | |
2024-09-09 | Return ArtifactDigest from CreateActionDigestFromCommandLine | Maksim Denisov | |
2024-09-09 | Change validation of hash in OperationsServiceImpl | Maksim Denisov | |
2024-09-09 | Fix typo in OperationsServiceImpl's name | Maksim Denisov | |
2024-09-09 | Validate hashes in ExecutionServiceImpl | Maksim Denisov | |
2024-09-09 | Introduce minor fixes to ExecutionServiceImpl | Maksim Denisov | |
1. Mark local variables const if needed; 2. Remove redundant fmt::format calls. | |||
2024-09-09 | Validate hashes in CASServiceImpl | Maksim Denisov | |
2024-09-09 | Introduce minor fixes to CASServiceImpl | Maksim Denisov | |
1. Mark local variables constant if needed; 2. Remove redundant fmt::format calls; 3. Acquire storage's lock after conversion of data. | |||
2024-09-09 | Validate hashes in BytestreamServiceImpl | Maksim Denisov | |
2024-09-09 | Introduce minor fixes to BytestreamServer | Maksim Denisov | |
1. Mark local variables constant if needed; 2. Remove redundant fmt::format calls; 3. Return bazel_re::Digest from resourse name parsing. | |||
2024-09-09 | Validate hashes in ActionCacheServiceImpl | Maksim Denisov | |
2024-09-09 | Replace ArtifactDigest::Create | Maksim Denisov | |
...with ArtifactDigestFactory::HashDataAs | |||
2024-09-09 | Remove redundant operator less | Maksim Denisov | |
...from ObjectInfo and ArtifactDigest | |||
2024-09-09 | Generalize GetMissingArtifacts with templated iterators | Maksim Denisov | |
2024-08-30 | Cast ArtifactDigest to bazel_re::Digest explicitly | Maksim Denisov | |
...to simplify further refactoring. | |||
2024-08-30 | Use BazelDigestFactory to create bazel_re::Digest directly if needed | Maksim Denisov | |
...bypassing ArtifactDigest functionality. | |||
2024-08-30 | Replace bazel_re::Digest in BazelMsgFactory (trees) | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Move artifact_blob_container to a standalone library | Maksim Denisov | |
2024-08-30 | Replace bazel_re::Digest in BazelMsgFactory (local trees) | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Replace bazel_re::Digest in LocalAC | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Replace bazel_re::Digest in CASUtils | Maksim Denisov | |
...with ArtifactDigest | |||
2024-08-30 | Replace bazel_re::Digest in LocalCAS::CheckTreeInvariant | Maksim Denisov | |
...with ArtifactDigest | |||
2024-08-30 | Replace bazel_re::Digest in LocalCAS::Split/Splice | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Replace bazel_re::Digest in LocalCAS::{...}Path | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Replace bazel_re::Digest in GitRepo::SymlinksCheckFunc callback | Maksim Denisov | |
...with ArtifactDigest. | |||
2024-08-30 | Return the IsTree flag from ArtifactDigest | Maksim Denisov | |
...and replace obvious redundant conversions to bazel_re::Digest, which were done to ensure that the digest represents a tree. | |||
2024-08-30 | Retry on exceeding deadline obtaining the status of a running execution | Klaus Aehlig | |
Remote execution of actions is handled via long-running operations. Here we have to be careful with the involved status codes: there is the status code of the operation and the response contains a faild that also happens to be a status code. The protocol states Errors discovered during creation of the `Operation` will be reported as gRPC Status errors, while errors that occurred while running the action will be reported in the `status` field of the `ExecuteResponse` So we have to distinguish between two kinds of DEADLINE_EXCEEDED. - If reported by the rpc, it means, we failed to obtain the status of the ongoing action in a reasonable amount of time; here we can do nothing but retry. - If we obtain an answer and that answer has state DEADLINE_EXCEEDED this means "The execution timed out."; hence we must not retry and report the result properly to the user. | |||
2024-08-27 | bytestream server: also enforce the tree invariant | Klaus Aehlig | |
2024-08-27 | CasClient: Fall back to single blob upload, if batch uploading made no progress | Klaus Aehlig | |
We already accept short writes in batch uploads, but when no progress is made, we cannot simply retry, as this might lead to an infinite loop. Instead, we give up on batching and upload each blob one by one. | |||
2024-08-27 | Bytestream server: verify hash of uploaded object | Klaus Aehlig | |
... and correctly report the error. - If we cannot store the bytes we received, this is an internal error. - If the bytes received have a different hash than announced, report this user error as INVLID_ARGUMENT. | |||
2024-08-27 | Reformat code to comply with clang-format 18 | Klaus Aehlig | |
... while keeping our .clang-format file. | |||
2024-08-23 | CasClient: Retry batch update for missing response | Oliver Reiche | |
The remote execution protocol is a bit unclear about how to deal with blob updates for which we got no response. While some clients consider a blob update failed only if a failed response is received, we are going extra defensive here and also consider missing responses to be a failed blob update. Issue a retry for the missing blobs. | |||
2024-08-22 | Remote-execution properties: restore the latest-wins semantics | Klaus Aehlig | |
... that was accidentially replaced by a first-wins semantics in 62d204ff4cc94c12c1635f189255710901682825 which fortunately did not make it to any release. | |||
2024-08-07 | Remove code duplication from CasServer | Maksim Denisov | |
2024-08-07 | Pass a longrunning operation to ExecutionServer::WriteResult by rvalue | Maksim Denisov | |
2024-08-07 | ExecutionServer: use one method for conversion to IExecutionAction | Maksim Denisov | |
2024-08-07 | ExecutionServer: use one method for conversion to bazel ExecuteResponse | Maksim Denisov | |
2024-08-07 | ExecutionServer: Move creation of ActionResult to a static function | Maksim Denisov | |
2024-08-07 | ExecutionServer: move creation of bazel instances to functions | Maksim Denisov | |
2024-08-07 | Remove ExecutionServiceImpl::StoreActionResult method | Maksim Denisov | |
...and move the storing logic to Execute directly. There is no need to pass additional parameters to the method to just perform a check inside, and after this removal there is no need to preserve a one-line method. | |||
2024-08-07 | Use expected to return errors from ExecutionServiceImpl's methods | Maksim Denisov | |
2024-08-07 | ExecutionServer: remove redundant scopes | Maksim Denisov | |
2024-08-07 | Refactor read/write logic in BytestreamServer | Maksim Denisov | |
1. In reading remove additional buffer field and reuse the response's buffer; 2. In writing preserve the file descriptor alive. | |||
2024-08-07 | Extend BazelNetworkReader to avoid redundant conversions | Maksim Denisov | |
2024-08-07 | Generate bazel trees in LocalCasReader | Maksim Denisov | |
...and use this functionality in ExecutionServer | |||
2024-08-07 | Avoid deep copies of containers in responses. | Maksim Denisov | |
2024-08-07 | Remove code duplication in Populate method in responses. | Maksim Denisov | |
2024-08-07 | Remove unused code from BazelMasgFactory | Maksim Denisov | |
1. Remove NodeProperties from CreateDirectory; 2. Set digest in CreateFileNode, CreateDirectoryNode. | |||
2024-08-07 | Replace classic C boolean operators with keywords | Maksim Denisov | |
! => not; && => and, || => or |