Commit Graph
82 Commits
Author SHA1 Message Date
tiennm99 5067966364 docs(plans): add adapter consolidation and new services review 2026-10-09 11:10:45 +07:00
tiennm99 42c8a871cf fix(runner): retry failed services after one minute and fail fast on bad config
A failed connect or tick now closes the connection and reconnects after one
minute, re-running initialization so a dropped table or row is recreated.
Before, a failing tick logged every interval forever and connect retries
logged every 10 seconds.

Connection URLs that fail to parse no longer appear in logs, since their
error repeats the password.

An unknown adapter or a missing required config key now stops keepalive at
startup instead of silently idling one service.
2026-10-09 11:10:45 +07:00
tiennm99 30fd62a46c fix(couchbase): increment atomically under the tick context
Increment read the counter and wrote it back, ignoring the tick context, and
treated any read error as a missing document, so a timeout reset the counter
to 1. A single binary increment is atomic, honours the context, and surfaces
real errors. The cluster is also assigned only after a successful connect so
a failed connect is not closed twice.
2026-10-09 11:10:45 +07:00
tiennm99 cbcee9ccd8 refactor(adapter)!: drop the valkey adapter in favor of redis
Valkey speaks the Redis protocol, so the redis adapter (go-redis) already
serves it. Dropping valkey-go removes a dependency and shrinks the stripped
binary by about 9 MB.

The redis adapter now also closes a client that failed to connect only once.

BREAKING CHANGE: `adapter: valkey` is no longer accepted. Use
`adapter: redis` with a redis:// or rediss:// URL instead of valkey:// or
valkeys://. The namespace option now applies to these services.
2026-10-09 11:10:44 +07:00
tiennm99 77b9a9673b build(compose): drop the misleading port from the keepalive service 2026-10-07 09:11:29 +07:00
tiennm99 3c03e2ce06 chore: ignore local config.yml 2026-10-07 08:52:05 +07:00
tiennm99 c1041e3062 build(compose): adapt compose file for Coolify deployment
Drop container_name and the local image tag, which conflict with Coolify's own container and image naming, and expose the configured app port without publishing it. Document the Coolify file storage for config.yml.
2026-10-07 08:47:35 +07:00
tiennm99 720a264e5f docs: point migrated-from section at in-repo absorbed histories 2026-08-05 00:21:03 +07:00
tiennm99 b64da580a2 Remove absorbed legacy keepalive implementations
Their full histories remain under redis/, valkey/, postgresql/, mysql/, mongodb/,
and couchbase/ in earlier commits; keepalive itself implements all of them.
2026-08-05 00:19:41 +07:00
tiennm99 1ec8c45c26 feat: init
using claude
2025-11-23 00:33:36 +07:00
tiennm99 764551f30f build(deps): bump google.golang.org/grpc from 1.74.2 to 1.79.3 (#3)
Fixes authorization-bypass CVE. Updates transitive deps:
golang.org/x/net, x/sys, x/text, genproto/rpc, protobuf.
2026-05-23 19:19:34 +07:00
tiennm99 003318339a docs: redirect to consolidated db-keepalive 2026-05-11 20:16:18 +07:00
tiennm99 0d119a0cd9 docs: add Related section linking sibling repos 2026-05-11 17:59:25 +07:00
dependabot[bot] 9ce7e2364a build(deps): bump go.opentelemetry.io/otel from 1.37.0 to 1.41.0 (#2)
Bumps [go.opentelemetry.io/otel](https://github.com/open-telemetry/opentelemetry-go) from 1.37.0 to 1.41.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.37.0...v1.41.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel
  dependency-version: 1.41.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-07 13:33:13 +07:00
tiennm99 12b5307a71 feat(core): replace increment with get & set 2025-12-02 22:35:12 +07:00
tiennm99 c07c6141ba feat(docker): cleanup 2025-11-26 22:22:40 +07:00
tiennm99 af0810ccb7 feat: not fatal if one failed 2025-11-26 20:25:42 +07:00
tiennm99 6256f15c49 feat(docker): init 2025-11-24 20:42:19 +07:00
tiennm99 b71b6d5da2 feat(schedule): add ticker 2025-11-24 20:41:24 +07:00
tiennm99 20d60de285 feat(couchbase): test connection 2025-11-24 20:21:14 +07:00
tiennm99 7848878bf5 feat(coucbase): add example 2025-11-24 20:03:52 +07:00
tiennm99 a7b10b80be feat(core): init 2025-11-24 20:00:20 +07:00
Tien Nguyen Minh de29516233 Initial commit 2025-11-22 23:40:05 +07:00
tiennm99 6b751a04dd docs: redirect to consolidated db-keepalive 2026-05-11 20:16:13 +07:00
tiennm99 d4e8cc1d8d docs: add Related section linking sibling repos 2026-05-11 17:59:15 +07:00
dependabot[bot] f083986e57 build(deps): bump golang.org/x/crypto from 0.41.0 to 0.45.0 (#1)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.41.0 to 0.45.0.
- [Commits](https://github.com/golang/crypto/compare/v0.41.0...v0.45.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-version: 0.45.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-07 13:33:29 +07:00
tiennm99 4a26cacdda feat(docker): add dockerfile 2025-11-26 21:54:30 +07:00
tiennm99 fa54bdb84b feat: init logic 2025-11-26 21:54:12 +07:00
Tien Nguyen Minh 35ba5cf7ad Initial commit 2025-11-26 21:13:21 +07:00
tiennm99 a070a22180 docs: redirect to consolidated db-keepalive 2026-05-11 20:16:09 +07:00
tiennm99 5617d53349 docs: add Related section linking sibling repos 2026-05-11 17:59:17 +07:00
dependabot[bot] 4c4552f49e build(deps): bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 (#1)
Bumps [filippo.io/edwards25519](https://github.com/FiloSottile/edwards25519) from 1.1.0 to 1.1.1.
- [Commits](https://github.com/FiloSottile/edwards25519/compare/v1.1.0...v1.1.1)

---
updated-dependencies:
- dependency-name: filippo.io/edwards25519
  dependency-version: 1.1.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-05-07 13:33:25 +07:00
tiennm99 e09ddceb37 feat: remove driver name config 2025-11-27 22:39:57 +07:00
tiennm99 40e433e284 Update Dockerfile 2025-11-27 22:08:30 +07:00
tiennm99 e14405ba04 Update Dockerfile 2025-11-27 22:05:35 +07:00
tiennm99 b2cf48c149 feat: init 2025-11-27 21:56:42 +07:00
Tien Nguyen Minh f4827f15c9 Initial commit 2025-11-27 20:34:49 +07:00
tiennm99 f294bd6dcb docs: redirect to consolidated db-keepalive 2026-05-11 20:16:05 +07:00
tiennm99 4bb49c0305 docs: add Related section linking sibling repos 2026-05-11 17:59:21 +07:00
tiennm99 92e7b9d0a4 Update init.sql 2025-11-27 23:05:02 +07:00
tiennm99 c334a4b54f feat: init 2025-11-27 22:32:53 +07:00
Tien Nguyen Minh 6cc81d397a Initial commit 2025-11-27 22:13:39 +07:00
tiennm99 7fddc3e04b docs: fix redirect README env-var snippet 2026-05-11 20:17:38 +07:00
tiennm99 7c6569fbe3 docs: redirect to consolidated db-keepalive 2026-05-11 20:16:02 +07:00
tiennm99 dd5f53d0c1 docs: add Related section linking sibling repos 2026-05-11 17:59:23 +07:00
tiennm99 24c0f55480 Revert "refactor: use sample code from Aiven"
This reverts commit 7bbc70bcbf6570c448c0d8a641b1dfa1f4b32ed3.
2025-11-27 00:11:30 +07:00
tiennm99 3baf0e545c refactor: use sample code from Aiven 2025-11-27 00:00:54 +07:00
tiennm99 8bfbf7658a feat: init 2025-11-26 23:50:55 +07:00
Tien Nguyen Minh a4dfc0ee17 Initial commit 2025-11-26 23:42:42 +07:00
tiennm99 972ec6d39f docs: fix redirect README env-var snippet 2026-05-11 20:16:58 +07:00