Closes out the field report that prompted 2026.05.08.2. Full integration suite, same commit, all green: Informix 15.0.1.0.3DE 241 / 241 Informix 14.10.FC7W1DE 241 / 241 Informix 12.10.FC12W1DE 241 / 241 Including smart-LOB. The 28-type round-trip produces byte-identical wire output on all three — same type codes, same encoded lengths, same values. There is no 12-vs-14-vs-15 wire difference for anything we support. Testing three versions by hand was tedious and undocumented, which is part of why it never happened. Now: make ifx-legacy-up 12.10 on 9089, 14.10 on 9090, alongside 15 on 9088 make ifx-legacy-setup blobspace1 + sbspace1 in both make test-matrix the suite against all three tests/setup-spaces.sh absorbs the per-image differences that made this annoying: 12.10/14.10 use a flat INFORMIXDIR while 15 nests a versioned subdirectory; ONCONFIG is named differently across images; `bash -lc` wipes INFORMIXDIR and makes every utility fail with a misleading "Unable to read $INFORMIXDIR (/usr/informix)"; and 12.10 DE ships no ontape at all (the level-0 archive turns out to be unnecessary anyway). Without blobspace1/sbspace1, ~21 tests fail with errors that look like driver bugs and aren't. The documented workflow was validated from scratch — containers removed, recreated via compose, spaces created via the script, matrix run — rather than written up afterward from whichever commands happened to work. The README claim this replaces was wrong precisely because nobody did that.
49 lines
1.6 KiB
YAML
49 lines
1.6 KiB
YAML
# Older Informix versions, for the server-compatibility matrix in the README.
|
|
#
|
|
# The primary dev container (tests/docker-compose.yml) runs Informix 15 on
|
|
# 9088. These two run alongside it on 9089 / 9090 so all three can be tested
|
|
# without tearing anything down.
|
|
#
|
|
# These images live on Docker Hub under ibmcom/ rather than icr.io/informix/ —
|
|
# IBM stopped publishing the older developer editions to the newer registry.
|
|
# They're tagged rather than digest-pinned because the ibmcom repo is frozen
|
|
# (no new pushes since the icr.io move), so the tags are already immutable in
|
|
# practice.
|
|
#
|
|
# make ifx-legacy-up start both
|
|
# make ifx-legacy-setup create blobspace1 + sbspace1 (needed for LOB tests)
|
|
# make test-matrix run the integration suite against all three
|
|
# make ifx-legacy-down stop and remove
|
|
services:
|
|
ifx1210:
|
|
container_name: informix-db-test-1210
|
|
image: ibmcom/informix-developer-database:12.10.FC12W1DE
|
|
privileged: true
|
|
environment:
|
|
LICENSE: accept
|
|
SIZE: small
|
|
ports:
|
|
- "9089:9088"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "exec 3<>/dev/tcp/127.0.0.1/9088 && exec 3<&- && exec 3>&-"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 60
|
|
start_period: 30s
|
|
|
|
ifx1410:
|
|
container_name: informix-db-test-1410
|
|
image: ibmcom/informix-developer-database:14.10.FC7W1DE
|
|
privileged: true
|
|
environment:
|
|
LICENSE: accept
|
|
SIZE: small
|
|
ports:
|
|
- "9090:9088"
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "exec 3<>/dev/tcp/127.0.0.1/9088 && exec 3<&- && exec 3>&-"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 60
|
|
start_period: 30s
|