├── .github ├── dependabot.yml └── workflows │ ├── lint.yml │ └── test.yml ├── .gitignore ├── .golangci.yml ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── docs ├── design.md ├── installation.md └── motivation.md ├── example ├── README.md └── main.go ├── go.mod ├── go.sum ├── internal └── utils │ ├── database │ ├── database.go │ └── database_test.go │ ├── slice │ ├── slice.go │ └── slice_test.go │ ├── sql │ ├── sql.go │ └── sql_test.go │ └── time │ ├── time.go │ └── time_test.go ├── pkg ├── database │ ├── database.go │ ├── error.go │ ├── error_enum.go │ ├── error_test.go │ ├── error_wrappers │ │ ├── clickhouse_go │ │ │ ├── wrap.go │ │ │ └── wrap_test.go │ │ └── common │ │ │ ├── wrap.go │ │ │ └── wrap_test.go │ ├── mock │ │ └── database.go │ └── static │ │ ├── connect.go │ │ ├── shard.go │ │ └── static.go ├── rollup │ ├── meta_info.go │ ├── meta_info_test.go │ ├── partitions.go │ ├── partitions_test.go │ ├── rollup.go │ ├── rollup_test.go │ ├── statement.go │ └── statement_test.go ├── scheduler │ ├── event.go │ ├── event_test.go │ ├── event_type_enum.go │ ├── mock │ │ └── scheduler.go │ ├── rollup.go │ ├── rollup_test.go │ ├── scheduler.go │ └── scheduler_test.go └── types │ ├── types.go │ └── types_test.go ├── static └── design.png └── tools.go /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/.gitignore -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/.golangci.yml -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/README.md -------------------------------------------------------------------------------- /docs/design.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/docs/design.md -------------------------------------------------------------------------------- /docs/installation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/docs/installation.md -------------------------------------------------------------------------------- /docs/motivation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/docs/motivation.md -------------------------------------------------------------------------------- /example/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/example/README.md -------------------------------------------------------------------------------- /example/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/example/main.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/go.sum -------------------------------------------------------------------------------- /internal/utils/database/database.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/database/database.go -------------------------------------------------------------------------------- /internal/utils/database/database_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/database/database_test.go -------------------------------------------------------------------------------- /internal/utils/slice/slice.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/slice/slice.go -------------------------------------------------------------------------------- /internal/utils/slice/slice_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/slice/slice_test.go -------------------------------------------------------------------------------- /internal/utils/sql/sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/sql/sql.go -------------------------------------------------------------------------------- /internal/utils/sql/sql_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/sql/sql_test.go -------------------------------------------------------------------------------- /internal/utils/time/time.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/time/time.go -------------------------------------------------------------------------------- /internal/utils/time/time_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/internal/utils/time/time_test.go -------------------------------------------------------------------------------- /pkg/database/database.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/database.go -------------------------------------------------------------------------------- /pkg/database/error.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error.go -------------------------------------------------------------------------------- /pkg/database/error_enum.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_enum.go -------------------------------------------------------------------------------- /pkg/database/error_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_test.go -------------------------------------------------------------------------------- /pkg/database/error_wrappers/clickhouse_go/wrap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_wrappers/clickhouse_go/wrap.go -------------------------------------------------------------------------------- /pkg/database/error_wrappers/clickhouse_go/wrap_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_wrappers/clickhouse_go/wrap_test.go -------------------------------------------------------------------------------- /pkg/database/error_wrappers/common/wrap.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_wrappers/common/wrap.go -------------------------------------------------------------------------------- /pkg/database/error_wrappers/common/wrap_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/error_wrappers/common/wrap_test.go -------------------------------------------------------------------------------- /pkg/database/mock/database.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/mock/database.go -------------------------------------------------------------------------------- /pkg/database/static/connect.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/static/connect.go -------------------------------------------------------------------------------- /pkg/database/static/shard.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/static/shard.go -------------------------------------------------------------------------------- /pkg/database/static/static.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/database/static/static.go -------------------------------------------------------------------------------- /pkg/rollup/meta_info.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/meta_info.go -------------------------------------------------------------------------------- /pkg/rollup/meta_info_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/meta_info_test.go -------------------------------------------------------------------------------- /pkg/rollup/partitions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/partitions.go -------------------------------------------------------------------------------- /pkg/rollup/partitions_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/partitions_test.go -------------------------------------------------------------------------------- /pkg/rollup/rollup.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/rollup.go -------------------------------------------------------------------------------- /pkg/rollup/rollup_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/rollup_test.go -------------------------------------------------------------------------------- /pkg/rollup/statement.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/statement.go -------------------------------------------------------------------------------- /pkg/rollup/statement_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/rollup/statement_test.go -------------------------------------------------------------------------------- /pkg/scheduler/event.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/event.go -------------------------------------------------------------------------------- /pkg/scheduler/event_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/event_test.go -------------------------------------------------------------------------------- /pkg/scheduler/event_type_enum.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/event_type_enum.go -------------------------------------------------------------------------------- /pkg/scheduler/mock/scheduler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/mock/scheduler.go -------------------------------------------------------------------------------- /pkg/scheduler/rollup.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/rollup.go -------------------------------------------------------------------------------- /pkg/scheduler/rollup_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/rollup_test.go -------------------------------------------------------------------------------- /pkg/scheduler/scheduler.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/scheduler.go -------------------------------------------------------------------------------- /pkg/scheduler/scheduler_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/scheduler/scheduler_test.go -------------------------------------------------------------------------------- /pkg/types/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/types/types.go -------------------------------------------------------------------------------- /pkg/types/types_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/pkg/types/types_test.go -------------------------------------------------------------------------------- /static/design.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/static/design.png -------------------------------------------------------------------------------- /tools.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ozontech/ch-rollup/HEAD/tools.go --------------------------------------------------------------------------------