Skip to content

Commit 99bed65

Browse files
yahondaclaude
andcommitted
ci: Add ORA_TZFILE workaround to ruby_head
ruby_head.yml runs the same CRuby + Instant Client matrix that hit ORA-01805 in rsim#2734, but was not updated when test.yml was. Mirror the ORA_TZFILE workaround into ruby_head.yml so the nightly head/debug/asan jobs stop failing on TIMESTAMP WITH TIME ZONE examples when the gvenzl/oracle-free server image and the rolling-latest Instant Client ship different TZ data versions. jruby_head.yml does not need this because the JDBC driver ships its own TZ data and ignores Instant Client's embedded copy. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 429aa95 commit 99bed65

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

.github/workflows/ruby_head.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,17 @@ jobs:
7272
- name: Create database user
7373
run: |
7474
./ci/setup_accounts.sh
75+
- name: Force client TZ data to match server (ORA_TZFILE workaround)
76+
run: |
77+
ORACLE_CONTAINER=$(docker ps --filter "ancestor=gvenzl/oracle-free" -q)
78+
SRC=$(docker exec "$ORACLE_CONTAINER" bash -c 'ls $ORACLE_HOME/oracore/zoneinfo/timezlrg_*.dat 2>/dev/null | head -1')
79+
echo "Server TZ file: $SRC"
80+
DST_DIR="$ORACLE_HOME/oracore/zoneinfo"
81+
sudo mkdir -p "$DST_DIR"
82+
docker cp "$ORACLE_CONTAINER":"$SRC" /tmp/_server_tzfile.dat
83+
sudo mv /tmp/_server_tzfile.dat "$DST_DIR/$(basename "$SRC")"
84+
ls -l "$DST_DIR"
85+
echo "ORA_TZFILE=$DST_DIR/$(basename "$SRC")" >> $GITHUB_ENV
7586
- name: Bundle install
7687
run: |
7788
bundle install --jobs 4 --retry 3

0 commit comments

Comments
 (0)