~bigbes/tarantool-etcd · events

2npkec0r583euqhm75orldclv3gssa11 · 291 rows

idissue_idevent_typeactorold_valuenew_valuecommentcreated_at
67c4ae88-50a8-5c6f-8577-9e92681b5fc7tarantool-etcd-jg3label_addedEugene BlikhNULLNULLAdded label: milestone:m5-clustering2026-05-21T14:37:43Z
68676f1e-a252-58c1-bbca-ef85611b030ctarantool-etcd-huocreatedEugene BlikhNULL2026-05-20T22:08:44Z
6ab2db36-1b1a-54c6-adc0-84b6841c48d3tarantool-etcd-2palabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:25Z
6c719449-606d-5311-83b8-41befeadac80tarantool-etcd-ak9label_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:29Z
6c906929-d9ff-5569-9b6b-981cca35ec32tarantool-etcd-1qalabel_addedEugene BlikhNULLNULLAdded label: milestone:m1-conformance2026-05-21T14:37:02Z
6c91c7c8-e165-5574-bcfa-01dfa3086716tarantool-etcd-umccreatedEugene BlikhNULL2026-05-20T09:45:13Z
6d7967c6-ffcd-593b-9bc9-1bd1d0145926tarantool-etcd-w8qlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:08Z
6ed90af7-e12e-510c-be53-d2b91f881e27tarantool-etcd-60xcreatedEugene BlikhNULL2026-05-19T17:54:01Z
6f7eab1a-c0fa-5ce5-9052-78869fa24a18tarantool-etcd-boqcreatedEugene BlikhNULL2026-05-20T09:45:15Z
704155e7-0669-5bfa-8777-08c8a01e0a06tarantool-etcd-7eycreatedEugene BlikhNULL2026-05-20T08:48:14Z
706eb76a-b359-53f4-a6f4-b4fe77f088e5tarantool-etcd-wgxlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:28Z
70854f0b-63d1-5340-a29c-558bc3d64a02tarantool-etcd-zwglabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:27Z
7652bb87-7d5d-5eec-bb70-a25e08072e53tarantool-etcd-a4vcreatedEugene BlikhNULL2026-05-19T17:54:02Z
7853fc2b-ba18-5dad-a4fd-211d89ba927ctarantool-etcd-8t0createdEugene BlikhNULL2026-05-19T17:54:00Z
79369bef-4995-5a73-9125-f1a673d9c3batarantool-etcd-rzscreatedEugene BlikhNULL2026-05-19T17:54:23Z
7a1cf23e-d776-589a-82ef-21bb6483ca12tarantool-etcd-buqlabel_addedEugene BlikhNULLNULLAdded label: milestone:m1-conformance2026-05-21T14:36:47Z
7a374a7c-bd1d-5fef-ae10-86bdd494acfetarantool-etcd-9z2updatedEugene Blikh{"id":"tarantool-etcd-9z2","title":"Phase 5f — Watch option coverage","description":"Per-option density on Watch RPCs. Big stream-shaped surface, highest remaining value but also highest effort. Run after Phase 5e.\n\nLikely tests:\n- TestWatchWithFilterPut / TestWatchWithFilterDelete (server-side event filtering)\n- TestWatchProgressNotifyExplicit (RequestProgress on demand vs the implicit 10-minute heartbeat already covered)\n- TestWatchWithFragment (large-response fragmentation — may surface a tarantool-side gap)\n- TestWatchWithPrevKV (per-watcher prev-kv flag, distinct from WithPrevKV on Put/Delete)\n- TestWatchFromCompactedRevision (ErrCompacted returned on the stream, not as a typed gRPC status)","acceptance_criteria":"Each listed test ported, runs on all four cells, passes (or documented as a known gap with cross-reference).","notes":"Source: docs/TODO.md \"Open / Conformance matrix — Phase 5 option coverage\".","status":"open","priority":2,"issue_type":"task","owner":"bigbes@gmail.com","created_at":"2026-05-19T13:34:06Z","created_by":"Eugene Blikh","updated_at":"2026-05-19T13:34:06Z"}{"notes":"Source: docs/TODO.md \"Open / Conformance matrix — Phase 5 option coverage\".\n\nPriority note (TestWatchWithPrevKV): Tarantool EE uses etcd as a centralized-config backend (config.storage / etcd config source in TT 3.x). On boot it reads config from etcd and opens a Watch with prev_kv set to diff old-vs-new config on live reload. So Watch prev_kv is exercised by a first-class ecosystem consumer, not just the conformance suite — it should be treated as the highest-value test in this group for drop-in TT EE compatibility.\n\nImplementation already exists (feature built, conformance assertion missing):\n- app/etcd/watch.lua:83 lookup_prev_kv() walks kv_history backwards (LT on mod_revision) for the prior non-tombstone value\n- app/etcd/watch.lua:268 stores per-watcher flag; propagated via grpc.lua:358, json.lua:205, server.lua:185\n- auth.lua:317 requires READ perm when prev_kv requested\nRemaining work for prev_kv is the TestWatchWithPrevKV conformance case against real etcd 3.6, not the Lua implementation."}NULL2026-05-20T09:34:10Z
7a595ffb-8f3d-5b9e-a441-7a24d36f7931tarantool-etcd-8ssupdatedEugene Blikh{"id":"tarantool-etcd-8ss","title":"Example 2: 3-node EE replicaset self-hosting its own etcd config (file → etcd migration)","description":"Add examples/tarantool-ee-self-hosted-etcd: boot a 3-instance EE replicaset (election failover) from a local cluster-config.yaml where every node runs app.roles.etcd (replicated KV store, read_pref=any). Seed the cluster's OWN etcd store with that config, then rolling-restart each instance to bootstrap from TT_CONFIG_ETCD_* (no --config). Document the cold-boot circularity: self-hosted etcd-config is HA under rolling restart but needs the local file retained as a cold-boot seed. Justfile + README + cluster-config.yaml.","status":"in_progress","priority":2,"issue_type":"feature","assignee":"Eugene Blikh","owner":"bigbes@gmail.com","created_at":"2026-05-20T11:16:17Z","created_by":"Eugene Blikh","updated_at":"2026-05-20T11:16:28Z","started_at":"2026-05-20T11:16:28Z"}{"notes":"Files written + phases 1-2 (up-file/seed/probe/config-show) verified on Community Tarantool 3.8. Ports 3501-3503/2382-2482-2582 (distinct from example-1's 3401/2379). migrate+reload need an EE binary (config.etcd source) so were not run here; mechanics mirror the working tarantool-ee-config example. EE guard on migrate verified to fire."}NULL2026-05-20T14:22:44Z
7ab6bf68-f184-5c93-af17-ca2d468ea614tarantool-etcd-ueelabel_addedEugene BlikhNULLNULLAdded label: milestone:m5-clustering2026-05-21T14:37:43Z
7b2ce620-c2d5-543b-aab9-6734528eadb3tarantool-etcd-3colabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:23Z
7bff7897-834b-5fdd-b8d7-cefa464e9a28tarantool-etcd-ymmcreatedEugene BlikhNULL2026-05-19T17:54:41Z
7c4b5c50-94ad-56b0-8340-aef44c6592f7tarantool-etcd-zkglabel_addedEugene BlikhNULLNULLAdded label: milestone:m5-clustering2026-05-21T14:37:37Z
7e827059-0685-57e9-a0e4-f187205646f7tarantool-etcd-cnjcreatedEugene BlikhNULL2026-05-20T09:39:58Z
7ecbe865-d39f-561d-9191-ddfdd79e4a3ctarantool-etcd-iijlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:22Z
7f5fcba0-05dd-5fc1-af72-7e1d0acc6a59tarantool-etcd-4ybcreatedEugene BlikhNULL2026-05-20T09:45:14Z
8074c9b9-2474-54ee-9cb6-628c25bea652tarantool-etcd-gz4createdEugene BlikhNULL2026-05-19T17:53:52Z
8371d325-d005-5ace-a739-97167a9019abtarantool-etcd-16dcreatedEugene BlikhNULL2026-05-20T08:47:58Z
83c1a5d0-ba27-5aaa-996b-f84d4e8dfbdctarantool-etcd-0gnclaimedEugene Blikh{"id":"tarantool-etcd-0gn","title":"Implement Watch extras: filters, progress_notify (periodic), fragment","description":"WatchCreateRequest fields filters (NOPUT/NODELETE), progress_notify periodic notify, and fragment (large-response splitting) are declared in pb/defs.lua but ignored by create_watcher/grpc.lua/json.lua. On-demand RequestProgress already works. Implement the missing three.","status":"open","priority":2,"issue_type":"feature","owner":"bigbes@gmail.com","created_at":"2026-05-20T06:35:53Z","created_by":"Eugene Blikh","updated_at":"2026-05-20T06:35:53Z"}{"assignee":"Eugene Blikh","status":"in_progress"}NULL2026-05-20T09:35:59Z
83edfeeb-7a05-588a-a6c0-a8ef5541250ftarantool-etcd-8ssupdatedEugene Blikh{"id":"tarantool-etcd-8ss","title":"Example 2: 3-node EE replicaset self-hosting its own etcd config (file → etcd migration)","description":"Add examples/tarantool-ee-self-hosted-etcd: boot a 3-instance EE replicaset (election failover) from a local cluster-config.yaml where every node runs app.roles.etcd (replicated KV store, read_pref=any). Seed the cluster's OWN etcd store with that config, then rolling-restart each instance to bootstrap from TT_CONFIG_ETCD_* (no --config). Document the cold-boot circularity: self-hosted etcd-config is HA under rolling restart but needs the local file retained as a cold-boot seed. Justfile + README + cluster-config.yaml.","notes":"v2: hardened migrate after EE run hit 'etcdserver: no leader' on the 2nd node (election churn from restarting a node that became leader). Fixes: (1) recompute leader each step, always migrate a follower, leader last; (2) _wait-healthy gate (all live nodes agree on one leader) between steps; (3) endpoints peers-first/self-last; (4) append logs not truncate. Rolling-restart pacing + leader-pick logic verified on Community; EE etcd-source fetch still needs an EE re-run to confirm.","status":"in_progress","priority":2,"issue_type":"feature","assignee":"Eugene Blikh","owner":"bigbes@gmail.com","created_at":"2026-05-20T11:16:17Z","created_by":"Eugene Blikh","updated_at":"2026-05-20T11:30:21Z","started_at":"2026-05-20T11:16:28Z"}{"notes":"VERIFIED end-to-end on EE 3.7.0 (up-file/seed/migrate/probe/reload all pass; migrate idempotent). Root cause of the user's failure: EE config.etcd source pins to Endpoints[0] without failover, so endpoints must be LEADER-FIRST (not peers-first). Also fixed: leader-migrated-last via per-step recompute, _wait-healthy gate, and a pipefail bug (grep -vx on last node exited 1 after work was done). Example complete."}NULL2026-05-20T14:38:01Z
847644fe-7529-5ad5-bcb6-92f0a6fd85f8tarantool-etcd-0gvcreatedEugene BlikhNULL2026-05-19T17:54:09Z
853285f2-6823-5330-9d41-95dd7170c742tarantool-etcd-hlxcreatedEugene BlikhNULL2026-05-20T09:17:54Z
86b724e1-e608-5db6-8a69-feee0bdf517ftarantool-etcd-dkrcreatedEugene BlikhNULL2026-05-20T09:55:25Z
889a2887-a179-54bc-94e9-4de55b4f5878tarantool-etcd-97vcreatedEugene BlikhNULL2026-05-19T17:54:39Z
89b6b91c-c9fc-5c2d-9e08-cc773ef75cabtarantool-etcd-hlxlabel_addedEugene BlikhNULLNULLAdded label: milestone:m5-clustering2026-05-21T14:37:42Z
89cebc94-e850-5726-9f4f-65137f5cdf7btarantool-etcd-9cdcreatedEugene BlikhNULL2026-05-19T17:53:58Z
8a497a80-f880-5439-b9d3-49c8842bfdc5tarantool-etcd-nwllabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:25Z
8a6c8a11-52de-5f00-8098-4654ce3b08c9tarantool-etcd-bg4createdEugene BlikhNULL2026-05-19T17:54:14Z
8adefbb6-838b-5fb5-9704-dbe7ad4fa000tarantool-etcd-16dlabel_addedEugene BlikhNULLNULLAdded label: milestone:m2-production2026-05-21T14:37:06Z
8baa8026-2fcb-526d-9ab3-7b726c3cc4aatarantool-etcd-6ljlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:33Z
8c7cf48d-8e9b-503d-b15e-6d58014b6ff3tarantool-etcd-wqnlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:17Z
8e61e59e-dfbe-5aad-a6cc-52102b681d64tarantool-etcd-8ssupdatedEugene Blikh{"id":"tarantool-etcd-8ss","title":"Example 2: 3-node EE replicaset self-hosting its own etcd config (file → etcd migration)","description":"Add examples/tarantool-ee-self-hosted-etcd: boot a 3-instance EE replicaset (election failover) from a local cluster-config.yaml where every node runs app.roles.etcd (replicated KV store, read_pref=any). Seed the cluster's OWN etcd store with that config, then rolling-restart each instance to bootstrap from TT_CONFIG_ETCD_* (no --config). Document the cold-boot circularity: self-hosted etcd-config is HA under rolling restart but needs the local file retained as a cold-boot seed. Justfile + README + cluster-config.yaml.","notes":"Files written + phases 1-2 (up-file/seed/probe/config-show) verified on Community Tarantool 3.8. Ports 3501-3503/2382-2482-2582 (distinct from example-1's 3401/2379). migrate+reload need an EE binary (config.etcd source) so were not run here; mechanics mirror the working tarantool-ee-config example. EE guard on migrate verified to fire.","status":"in_progress","priority":2,"issue_type":"feature","assignee":"Eugene Blikh","owner":"bigbes@gmail.com","created_at":"2026-05-20T11:16:17Z","created_by":"Eugene Blikh","updated_at":"2026-05-20T11:22:45Z","started_at":"2026-05-20T11:16:28Z"}{"notes":"v2: hardened migrate after EE run hit 'etcdserver: no leader' on the 2nd node (election churn from restarting a node that became leader). Fixes: (1) recompute leader each step, always migrate a follower, leader last; (2) _wait-healthy gate (all live nodes agree on one leader) between steps; (3) endpoints peers-first/self-last; (4) append logs not truncate. Rolling-restart pacing + leader-pick logic verified on Community; EE etcd-source fetch still needs an EE re-run to confirm."}NULL2026-05-20T14:30:21Z
90cfe1cf-1797-5900-a648-fe00f7daf2e9tarantool-etcd-584createdEugene BlikhNULL2026-05-19T17:53:53Z
94d2a36e-9234-56bc-94d4-d270d98a5406tarantool-etcd-ag2createdEugene BlikhNULL2026-05-19T17:54:06Z
952d547e-ebbe-59cf-a86b-e9e86f2d6247tarantool-etcd-cppcreatedEugene BlikhNULL2026-05-20T09:55:23Z
98857065-d100-532e-ab3d-27bb94b54874tarantool-etcd-rzhcreatedEugene BlikhNULL2026-05-19T17:54:32Z
9a29c48a-d378-5092-b327-0c780e240291tarantool-etcd-m0wlabel_addedEugene BlikhNULLNULLAdded label: milestone:m4-iproto-parity2026-05-21T14:37:22Z
9a5fc12c-bf33-5aab-bdc1-d2f6e5eb97a6tarantool-etcd-mo5createdEugene BlikhNULL2026-05-19T17:54:26Z
9a644bac-cc82-5a2a-9e31-87b48d0cf6b1tarantool-etcd-8zmcreatedEugene BlikhNULL2026-05-19T17:54:13Z
9b54496f-698d-5441-9792-4a43fe667ec0tarantool-etcd-9arcreatedEugene BlikhNULL2026-05-19T17:54:46Z
9c78d1b3-2262-522e-a6d3-f20350d2d32ftarantool-etcd-3spcreatedEugene BlikhNULL2026-05-19T20:33:47Z