myxce/src/lib
Rongsong Shen 94f50ce6e1 fix(scheduler,cli): bug-1453/1454/1455/1456 remove dead CA-cert plumbing, fix scheduler HA config bugs
bug-1453: remove unused client-side CA-certificate plumbing. C-side:
drop ca_cert_path from xce_cluster_config_t, do_connect()'s ca_cert
param, --ca-cert flags on worker/scheduler, and controller's cert
population (TLS is server-side only, SSL_VERIFY_NONE everywhere on
the client side already, verified zero SSL_CTX_load_verify_locations
calls in the C tree). Go-side: delete xcecli's self-signed cert
TOFU-pinning flow (cmd/auth/cert/*), CACert field, SetRootCAs/
loadRootCAs, and every call site.

bug-1454: fix xcecli_ctx_t leak in scheduler.c sched_init() — the
unconditional initial ctx_init was never freed before the HA
candidate loop re-initialized it on the first iteration.

bug-1455: sched_init()'s memset(sched, 0, ...) was silently wiping
sched->cluster_cfg that main.c had populated from --peers just before
calling sched_init(), so --peers was always ignored and the scheduler
fell back to the hardcoded localhost:9990 single-host default.
Restructured sched_init() to take cluster_cfg as an explicit parameter
(assigned after the memset) instead of relying on caller-side
ordering with a separate sched_set_cluster_cfg() setter, which is now
removed.

bug-1456: revert an unsafe stack-local xce_client_config_t introduced
while fixing bug-1455 — xcecli_ctx_init() stores that pointer as
ctx->conf and client_failover.c dereferences it for the ctx's entire
life (runtime reconnect), so a per-loop-iteration stack copy would
dangle the moment sched_init() returned. Back to mutating the
caller-owned, process-lifetime config in place.

Verified: full ASAN build (all components), meson test suite 9/9 OK,
manual scheduler testsuite 15/15, Go build/vet/test all pass.
2026-07-20 12:01:10 +00:00
..
raft fix(ha): bug-1421 close term-desync AE-reject blindspot in HA election 2026-07-09 11:56:46 +00:00
testsuite fix(scheduler,cli): bug-1453/1454/1455/1456 remove dead CA-cert plumbing, fix scheduler HA config bugs 2026-07-20 12:01:10 +00:00
bitset.c - introduce bitset 2026-02-13 11:01:33 +08:00
CLAUDE.md enhance xce-build skill 2026-05-30 08:13:59 +08:00
client.c fix(client): bug-1436 count-aware failover macro for xce_get-family calls 2026-07-13 07:18:52 +00:00
client_failover.c fix(libxce-failover): correct endpoint reconnect on rotate — re-bind iomgr + re-arm handlers (fixes endpoint_connect SEGV during live failover) 2026-06-17 06:53:46 +00:00
client_internal.h fix(client): bug-1436 count-aware failover macro for xce_get-family calls 2026-07-13 07:18:52 +00:00
cluster.c fix(scheduler,cli): bug-1453/1454/1455/1456 remove dead CA-cert plumbing, fix scheduler HA config bugs 2026-07-20 12:01:10 +00:00
configobj.c save works 2026-03-04 18:18:53 +08:00
dataq.c reformat code and job array 2025-11-07 16:14:27 +08:00
delay.c fix(lib): normalize delaymgr to one CLOCK_MONOTONIC ms timescale, fixing seconds-task starvation 2026-07-02 03:40:08 +00:00
group.c save works 2026-03-04 18:18:53 +08:00
helper.c fix(ha): fix config replication to standbys; add replConfigPush handler 2026-06-01 05:56:16 +00:00
hook.c fix bug-1060 bug-1067 2026-06-24 17:05:43 +08:00
htab.c docs: mark Phase 6 complete in phase6-scheduler-integration-plan 2026-04-30 07:17:32 +00:00
idgen.c jobid generate 2025-11-07 18:17:34 +08:00
jobj.c feat(job-array-single-wal-record): harden jobj.c job construction primitives 2026-07-14 08:29:45 +00:00
kv.c feat: implement kvmgr_capture_keys for lock-free checkpoint serialization (P0-14a) 2026-05-07 11:07:41 +00:00
kvmgr.c fix(job-array-single-wal-record): close bug-1443's bulk-insert partial-visibility gap 2026-07-16 15:08:02 +00:00
meson.build fix(netio): bug-1447 same-batch endpoint use-after-free in io_worker dispatch 2026-07-18 13:28:04 +00:00
misc.c 1st workable scheduler with resource from controller 2025-12-31 15:50:52 +08:00
mylock.c - use librtti 2026-02-05 17:21:27 +08:00
netio.c fix(netio): bug-1447 same-batch endpoint use-after-free in io_worker dispatch 2026-07-18 13:28:04 +00:00
ordq.c pass pend reason back to controller 2025-12-23 15:29:26 +08:00
preason.c support limit 2026-01-12 15:27:54 +08:00
qobj.c save works 2026-03-05 16:03:37 +08:00
request.c fix(job-array-single-wal-record): wire dispatcher was silently dropping compact array pushes 2026-07-15 10:59:39 +00:00
resobj.c minor improve 2026-04-14 12:52:40 +08:00
resreq.c fix front end issues 2026-05-01 21:22:45 +08:00
rusage.peg fix typo of perflag && reformat .peg 2026-02-09 10:58:30 +08:00
section.peg docs: mark Phase 6 complete in phase6-scheduler-integration-plan 2026-04-30 07:17:32 +00:00
threshold.c reformat code and job array 2025-11-07 16:14:27 +08:00
utils.c fix(libxce): xce_strerror_r global-buffer-overflow on HA error codes (utils.c) 2026-06-20 10:13:21 +00:00
vtaskmgr.c fix(libxce): endpoint reference count — kill teardown-vs-dispatch UAF (bug-1298, task 5.8) 2026-06-30 14:24:47 +00:00
window.c reformat code and job array 2025-11-07 16:14:27 +08:00
wobj.c add kiro skills 2026-05-21 03:41:57 +00:00
wrap.c reformat code and job array 2025-11-07 16:14:27 +08:00
xce_resreq.peg docs: mark Phase 6 complete in phase6-scheduler-integration-plan 2026-04-30 07:17:32 +00:00
xce_select.c fix: sel_key_cmp_fn padding-byte mismatch in kvtab lookups 2026-05-12 09:53:59 +00:00
xce_select.peg docs: mark Phase 6 complete in phase6-scheduler-integration-plan 2026-04-30 07:17:32 +00:00
xcealloc.c 1st workable scheduler with resource from controller 2025-12-31 15:50:52 +08:00
xceapi.c fix(libxce): bug-1077 ctrlstatus crash from shared reply-union type confusion 2026-06-24 09:44:43 +00:00
xcectx.c feat(raft-drive-async): bound peer connect (O_NONBLOCK+poll), close tasks 1.3/1.4/1.5 2026-06-26 07:10:53 +00:00
xcelimit.c minor improve 2026-04-14 12:52:40 +08:00
xlist.c support limit 2026-01-12 15:27:54 +08:00
xstring.c docs: mark Phase 6 complete in phase6-scheduler-integration-plan 2026-04-30 07:17:32 +00:00
xvec.c using xvec related api in scheduler 2026-01-16 18:21:37 +08:00
zarray.c fix(job-array-single-wal-record): close bug-1443's bulk-insert partial-visibility gap 2026-07-16 15:08:02 +00:00