commit | a944e6e063ccba8d9e0da01e5919251774908023 | [log] [tgz] |
---|---|---|
author | Joe Gregorio <jcgregorio@google.com> | Fri Jun 02 16:03:31 2023 -0400 |
committer | SkCQ <skcq-be@skia-corp.google.com.iam.gserviceaccount.com> | Fri Jun 02 23:08:45 2023 +0000 |
tree | aa2edc0eebc8ab06ded0faeb3ffe45b4fdd05b44 | |
parent | 645db44032598af97e91de4b4858d67bc691516e [diff] |
[perf] Better tracing that includes the time to write traces. The entire point of this CL is to add these lines: ctx, span := trace.StartSpan(ctx, "ingest.parser.processSingleFile") defer span.End() But to get that to work the insides of the for loop in `worker` needed to be broken out into its own function, processSingleFile, and that required factoring out all the variables that processSingleFile needs into a struct. This does make `worker` much shorter, and makes all the variables to processSingleFile explicit. The new context at the beginning of processSingleFile is there so the traces for reading the file from GCS, and the traces for writing data into CockroachDB show up as child traces of processSingleFile. Change-Id: Id907660e55e8703cd703b7f6b77aef591b87a0b2 Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/706521 Commit-Queue: Joe Gregorio <jcgregorio@google.com> Reviewed-by: Alex Sun <sunpeng@google.com>
This repo contains infrastructure code for Skia.
The main source code repository is a Git repository hosted at https://skia.googlesource.com/buildbot.git. It is possible to check out this repository directly with git clone
or via go get
.
Using git clone
allows you to work in whatever directory you want. You will still need to set GOPATH in order to build some apps (recommended to put this in a cache dir). E.g.:
$ cd ${WORKDIR} $ git clone https://skia.googlesource.com/buildbot.git $ export GOPATH=${HOME}/.cache/gopath/$(basename ${WORKDIR}) $ mkdir $GOPATH $ cd buildbot
Almost all applications are built with Bazel, and bazelisk is the recommended tool to ensure you have the right version of bazel installed:
go install github.com/bazelbuild/bazelisk@latest go install github.com/bazelbuild/buildtools/buildifier@latest go install github.com/kisielk/errcheck@latest go install golang.org/x/tools/cmd/goimports@latest go install github.com/mikefarah/yq/v4@latest go install go.chromium.org/luci/client/cmd/...@latest
sudo apt-get install jq
bazelisk build --config=mayberemote //...
bazelisk test --config=mayberemote //...
To update generated code run the following in any directory:
go generate ./...
Install Cloud SDK.
Use this command to run the presubmit tests:
./run_unittests --small