Skip to content

v1.0.0

Choose a tag to compare

@emptyOVO emptyOVO released this 09 Feb 13:28
· 42 commits to master since this release

v1.0.0

This is the first stable release of mrkit-go, evolving the project from a MySQL-specific workflow into a config-driven and extensible batch processing framework.

Highlights

  • Introduced a unified batch module for Source -> Transform -> Sink execution
  • Added built-in transforms: count, minmax, and topN (no manual .so required)
  • Enabled cross-database pipelines:
    • MySQL -> Redis
    • Redis -> MySQL
    • Redis -> Redis
  • Added flow config validation via -check and config-based benchmark output
  • Completed modular refactor to support future database/source/sink extensions

Major Changes

  • Package rename: mysqlbatch -> batch
  • CLI refactor: cmd/mysqlbatch -> cmd/batch
  • Example layout refactor:
    • example/batch-minimal/mysqlbatch/*
    • example/batch-minimal/redisbatch/*
  • Architecture split:
    • Core orchestration and abstractions in batch
    • MySQL implementations in batch/mysql_batch
    • Redis implementations in batch/redis_batch
  • flow.go now directly calls subpackage factories (intermediate flow driver files removed)

Breaking Changes

The following changes are not backward-compatible:

  • Go import path:
    • github.com/emptyOVO/mrkit-go/mysqlbatch
    • -> github.com/emptyOVO/mrkit-go/batch
  • CLI command:
    • go run ./cmd/mysqlbatch ...
    • -> go run ./cmd/batch ...
  • Example/config paths:
    • from example/mysqlbatch-minimal/*
    • to:
      • example/batch-minimal/mysqlbatch/*
      • example/batch-minimal/redisbatch/*

Upgrade Guide

  1. Update imports to github.com/emptyOVO/mrkit-go/batch
  2. Update scripts/commands to cmd/batch
  3. Update config/example paths to example/batch-minimal/...
  4. Run config validation first:
    • go run ./cmd/batch -check -config <your-flow.json>

Verification

This release has been validated with:

  • Flow config checks (-check) passing
  • Successful compilation for batch, mysql_batch, and redis_batch
  • End-to-end Redis -> Redis benchmark execution with stage duration output