| Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> | 13 天前 |
| docs: correct spelling Signed-off-by: vladdoster <vladislav.doster@icloud.com> | 19 天前 |
| Force migration key for composite chunk boundaries | 2 天前 |
| Address review: consistent receiver, migrator seam + test, localtest - applier: name the AnalyzeGhostTable receiver `apl`, consistent with the rest of applier.go (staticcheck ST1016) — fixes the golangci-lint failure. - migrator: extract the pre-cut-over ANALYZE gating into analyzeGhostTableBeforeCutOver(analyze func() error), a narrow injectable seam (behavior unchanged), so the orchestration contract is unit-testable without a live applier or the process-exiting Log.Fatale path. - migrator test: TestAnalyzeGhostTableBeforeCutOver covers the flag gating, the happy path (ANALYZE runs once), and fail-closed (a failed ANALYZE propagates so cut-over aborts before replica-stop / cut-over locking). - localtest: analyze-ghost-table-before-cutover exercises the flag end-to-end against live MySQL with ongoing DML. Signed-off-by: Vandhana Selvaprakash <vandhana.selvaprakash@airtable.com> | 24 天前 |
| documenting gh-ost-on-start-replication hook | 9 年前 |
| test: enable race detection in unit tests | 17 天前 |
| Tweak the testcontainers setup (#1460) * Allow skipping port validation in tests. * Add more test coverage. * Fix linter. * Fix DSN string generation. * Add a `Migrator` test. * Add a tmp folder. * Make the linter happy. * Add tests for `Streamer`. * Close the `Streamer`. * Fix linter issue. * ignore contextcheck linter --------- Co-authored-by: meiji163 <meiji163@github.com> | 1 年前 |
| Upgrade testcontainers to v0.43.0 and x/crypto to v0.54.0 - Upgrade dependencies to address security vulnerabilities. - Testcontainers v0.42.0 introduced a port API change as part of the Moby module migration which requires a code change in `test_utils.go` | 1 个月前 |
| Docker setup for localtests (#1479) * add docker localtest * add MYSQL_ROOT_HOST | 1 年前 |
| Update golangci-lint to v2.11 (#1657) | 3 个月前 |
| Upgrade Go to 1.25.12 Update the module, Docker build/test images, and local Go bootstrap script to use Go 1.25.12, which includes fixes for the addressed Go CVEs. | 1 个月前 |
| Upgrade Go to 1.25.12 Update the module, Docker build/test images, and local Go bootstrap script to use Go 1.25.12, which includes fixes for the addressed Go CVEs. | 1 个月前 |
| Initial commit | 10 年前 |
| build: standardize release asset naming (#1729) * build: standardize release asset naming (#1728) Rework build.sh so released assets have stable, predictable names that are easy to automate against: - drop the generated timestamp from tarball names - drop the "-binary" infix from tarball names - name macOS tarballs with "darwin" (matches GOOS) instead of "osx" - drop the version from .rpm/.deb filenames; the release download URL already carries it. Package metadata still records version + epoch - build arm64 .rpm and .deb in addition to amd64, using each ecosystem's arch convention (x86_64/aarch64 for rpm, amd64/arm64 for deb) - stop publishing the bare "gh-ost" binary; it was just the last build (darwin/arm64) and was ambiguous. Tarballs and packages cover every OS/arch - emit a SHA256SUMS manifest so downloads can be verified with `sha256sum -c SHA256SUMS` Resulting assets: gh-ost-{linux,darwin}-{amd64,arm64}.tar.gz gh-ost.{x86_64,aarch64}.rpm gh-ost.{amd64,arm64}.deb SHA256SUMS Also refactor build() to take GOOS/GOARCH directly, share common fpm flags via an array, and update the README build.sh description. * build: simplify packaging Dockerfile and dock script (#1728) Slim down the release packaging tooling: - Dockerfile.packaging: collapse the per-package RUN layers into one, drop packages already provided by the golang:bookworm base (git, tar, curl, gcc, g++, bash) and the unused rsync, and drop the legacy GOPATH src layout (the build is module-mode). Only ruby/ruby-dev/build-essential (for fpm) and rpm (for rpmbuild) are installed now. - Use a multi-stage build with a `scratch` artifacts stage so `docker build --output type=local` exports the assets straight to the host. This drops the intermediate container, bind mount, -it TTY and find|xargs cp dance from `script/dock pkg`. - build.sh: stage the fpm package tree in the system temp dir instead of under $buildpath, so it never lands among the exported release artifacts. | 2 个月前 |
| build: standardize release asset naming (#1729) * build: standardize release asset naming (#1728) Rework build.sh so released assets have stable, predictable names that are easy to automate against: - drop the generated timestamp from tarball names - drop the "-binary" infix from tarball names - name macOS tarballs with "darwin" (matches GOOS) instead of "osx" - drop the version from .rpm/.deb filenames; the release download URL already carries it. Package metadata still records version + epoch - build arm64 .rpm and .deb in addition to amd64, using each ecosystem's arch convention (x86_64/aarch64 for rpm, amd64/arm64 for deb) - stop publishing the bare "gh-ost" binary; it was just the last build (darwin/arm64) and was ambiguous. Tarballs and packages cover every OS/arch - emit a SHA256SUMS manifest so downloads can be verified with `sha256sum -c SHA256SUMS` Resulting assets: gh-ost-{linux,darwin}-{amd64,arm64}.tar.gz gh-ost.{x86_64,aarch64}.rpm gh-ost.{amd64,arm64}.deb SHA256SUMS Also refactor build() to take GOOS/GOARCH directly, share common fpm flags via an array, and update the README build.sh description. * build: simplify packaging Dockerfile and dock script (#1728) Slim down the release packaging tooling: - Dockerfile.packaging: collapse the per-package RUN layers into one, drop packages already provided by the golang:bookworm base (git, tar, curl, gcc, g++, bash) and the unused rsync, and drop the legacy GOPATH src layout (the build is module-mode). Only ruby/ruby-dev/build-essential (for fpm) and rpm (for rpmbuild) are installed now. - Use a multi-stage build with a `scratch` artifacts stage so `docker build --output type=local` exports the assets straight to the host. This drops the intermediate container, bind mount, -it TTY and find|xargs cp dance from `script/dock pkg`. - build.sh: stage the fpm package tree in the system temp dir instead of under $buildpath, so it never lands among the exported release artifacts. | 2 个月前 |
| CI: adapting to internal builds system | 6 年前 |
| Upgrade Go to 1.25.12 Update the module, Docker build/test images, and local Go bootstrap script to use Go 1.25.12, which includes fixes for the addressed Go CVEs. | 1 个月前 |
| Upgrade testcontainers to v0.43.0 and x/crypto to v0.54.0 - Upgrade dependencies to address security vulnerabilities. - Testcontainers v0.42.0 introduced a port API change as part of the Moby module migration which requires a code change in `test_utils.go` | 1 个月前 |
| Add go mod (#935) * Add a go.mod file * run go mod vendor again * Move to a well-supported ini file reader * Remove GO111MODULE=off * Use go 1.16 * Rename github.com/outbrain/golib -> github.com/openark/golib * Remove *.go-e files * Fix for `strconv.ParseInt: parsing "": invalid syntax` error * Add test for '[osc]' section Co-authored-by: Nate Wernimont <nate.wernimont@workiva.com> | 5 年前 |