From 7600d30bb252abcb68e026a400bf67ee1c44a27b Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Thu, 30 Apr 2026 08:16:11 +0900 Subject: [PATCH 1/2] Bump Oracle Instant Client to the latest versions Mirror rsim/oracle-enhanced#2621 for the ruby-plsql CI workflows: - Switch the modern (23.x) workflows to Oracle's version-less Instant Client download URLs so we automatically pick up new 23.x minors. ORACLE_HOME / LD_LIBRARY_PATH / PATH are derived dynamically from the extracted directory. - Bump the 11g compatibility workflows from 21.15.0.0.0dbru to 21.21.0.0.0dbru (latest 21.x; Oracle does not publish a version-less 21.x URL, so this line still requires an explicit pin). - Drop the redundant /jdbc/23261/ojdbc{11,17}.jar wgets where the Instant Client zip already ships the matching driver. The remaining download is test_11g.yml's ojdbc17.jar, because the 21.x zip does not include ojdbc17.jar and Oracle has no version-less JDBC URL. --- .github/workflows/jruby_head.yml | 17 ++++++++-------- .github/workflows/ruby_head.yml | 19 ++++++++--------- .github/workflows/test.yml | 21 ++++++++++--------- .github/workflows/test_11g.yml | 26 ++++++++++++------------ .github/workflows/test_11g_ojdbc11.yml | 28 +++++++++++++------------- .github/workflows/test_gemfiles.yml | 19 ++++++++--------- .github/workflows/truffleruby.yml | 19 ++++++++--------- 7 files changed, 77 insertions(+), 72 deletions(-) diff --git a/.github/workflows/jruby_head.yml b/.github/workflows/jruby_head.yml index b0888daf..b25ec8dd 100644 --- a/.github/workflows/jruby_head.yml +++ b/.github/workflows/jruby_head.yml @@ -15,8 +15,6 @@ jobs: jruby-head ] env: - ORACLE_HOME: /opt/oracle/instantclient_23_26 - LD_LIBRARY_PATH: /opt/oracle/instantclient_23_26 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: FREEPDB1 @@ -53,16 +51,19 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-basic-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sqlplus-linux.x64-23.26.1.0.0.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip - name: Install Oracle instant client run: | - sudo unzip -q instantclient-basic-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sqlplus-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - echo "/opt/oracle/instantclient_23_26" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sqlplus-linuxx64.zip -d /opt/oracle/ + ORACLE_HOME=$(find /opt/oracle -name "instantclient_*" -type d | head -1) + echo "ORACLE_HOME=$ORACLE_HOME" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$ORACLE_HOME" >> $GITHUB_ENV + echo "$ORACLE_HOME" >> $GITHUB_PATH - name: Install JDBC Driver run: | - wget -q https://download.oracle.com/otn-pub/otn_software/jdbc/23261/ojdbc17.jar -O ./lib/ojdbc17.jar + cp "$ORACLE_HOME/ojdbc17.jar" ./lib/ojdbc17.jar - name: Create database user run: | ./ci/setup_accounts.sh diff --git a/.github/workflows/ruby_head.yml b/.github/workflows/ruby_head.yml index c626458e..9f477892 100644 --- a/.github/workflows/ruby_head.yml +++ b/.github/workflows/ruby_head.yml @@ -16,8 +16,6 @@ jobs: ruby-debug ] env: - ORACLE_HOME: /opt/oracle/instantclient_23_26 - LD_LIBRARY_PATH: /opt/oracle/instantclient_23_26 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: FREEPDB1 @@ -49,15 +47,18 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-basic-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sdk-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sqlplus-linux.x64-23.26.1.0.0.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip - name: Install Oracle instant client run: | - sudo unzip -q instantclient-basic-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sdk-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sqlplus-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - echo "/opt/oracle/instantclient_23_26" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sdk-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sqlplus-linuxx64.zip -d /opt/oracle/ + ORACLE_HOME=$(find /opt/oracle -name "instantclient_*" -type d | head -1) + echo "ORACLE_HOME=$ORACLE_HOME" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$ORACLE_HOME" >> $GITHUB_ENV + echo "$ORACLE_HOME" >> $GITHUB_PATH - name: Create database user run: | ./ci/setup_accounts.sh diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7a2d9e0a..c5230533 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,8 +19,6 @@ jobs: 'jruby-10.0.5.0', ] env: - ORACLE_HOME: /opt/oracle/instantclient_23_26 - LD_LIBRARY_PATH: /opt/oracle/instantclient_23_26 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: FREEPDB1 @@ -58,19 +56,22 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-basic-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sdk-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sqlplus-linux.x64-23.26.1.0.0.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip - name: Install Oracle instant client run: | - sudo unzip -q instantclient-basic-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sdk-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sqlplus-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - echo "/opt/oracle/instantclient_23_26" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sdk-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sqlplus-linuxx64.zip -d /opt/oracle/ + ORACLE_HOME=$(find /opt/oracle -name "instantclient_*" -type d | head -1) + echo "ORACLE_HOME=$ORACLE_HOME" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$ORACLE_HOME" >> $GITHUB_ENV + echo "$ORACLE_HOME" >> $GITHUB_PATH - name: Install JDBC Driver if: startsWith(matrix.ruby, 'jruby') run: | - wget -q https://download.oracle.com/otn-pub/otn_software/jdbc/23261/ojdbc17.jar -O ./lib/ojdbc17.jar + cp "$ORACLE_HOME/ojdbc17.jar" ./lib/ojdbc17.jar - name: Create database user run: | ./ci/setup_accounts.sh diff --git a/.github/workflows/test_11g.yml b/.github/workflows/test_11g.yml index fd0a44f9..8ec1c87f 100644 --- a/.github/workflows/test_11g.yml +++ b/.github/workflows/test_11g.yml @@ -23,8 +23,8 @@ jobs: 'jruby-10.0.5.0', ] env: - ORACLE_HOME: /opt/oracle/instantclient_21_15 - LD_LIBRARY_PATH: /opt/oracle/instantclient_21_15 + ORACLE_HOME: /opt/oracle/instantclient_21_21 + LD_LIBRARY_PATH: /opt/oracle/instantclient_21_21 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: XE @@ -62,26 +62,26 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-basic-linux.x64-21.15.0.0.0dbru.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-sqlplus-linux.x64-21.15.0.0.0dbru.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-sdk-linux.x64-21.15.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-basic-linux.x64-21.21.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-sqlplus-linux.x64-21.21.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-sdk-linux.x64-21.21.0.0.0dbru.zip - name: Install Oracle instant client run: | sudo mkdir -p /opt/oracle/ - sudo unzip -q instantclient-basic-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - sudo unzip -qo instantclient-sqlplus-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - sudo unzip -qo instantclient-sdk-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - echo "/opt/oracle/instantclient_21_15" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + sudo unzip -qo instantclient-sqlplus-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + sudo unzip -qo instantclient-sdk-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + echo "/opt/oracle/instantclient_21_21" >> $GITHUB_PATH - name: Install JDBC Driver if: startsWith(matrix.ruby, 'jruby') run: | wget -q https://download.oracle.com/otn-pub/otn_software/jdbc/23261/ojdbc17.jar -O ./lib/ojdbc17.jar - name: Configure ORA_TZFILE to match Oracle 11g server run: | - # Oracle 11g XE uses timezone file v14; Instant Client 21.15 embeds - # v35. This mismatch causes ORA-01805 when fetching DATE/TIMESTAMP - # values. Copy the v14 files from the 11g container and point the - # Instant Client at them via ORA_TZFILE. + # Oracle 11g XE uses timezone file v14; the 21.x Instant Client + # embeds a newer file. The mismatch causes ORA-01805 when fetching + # DATE/TIMESTAMP values. Copy the v14 files from the 11g container + # and point the Instant Client at them via ORA_TZFILE. ORACLE_CONTAINER="${{ job.services.oracle.id }}" sudo mkdir -p "$ORACLE_HOME/oracore/zoneinfo" docker cp "$ORACLE_CONTAINER":/u01/app/oracle/product/11.2.0/xe/oracore/zoneinfo/timezlrg_14.dat /tmp/timezlrg_14.dat diff --git a/.github/workflows/test_11g_ojdbc11.yml b/.github/workflows/test_11g_ojdbc11.yml index 43692217..28975a24 100644 --- a/.github/workflows/test_11g_ojdbc11.yml +++ b/.github/workflows/test_11g_ojdbc11.yml @@ -19,8 +19,8 @@ jobs: 'jruby-10.0.5.0' ] env: - ORACLE_HOME: /opt/oracle/instantclient_21_15 - LD_LIBRARY_PATH: /opt/oracle/instantclient_21_15 + ORACLE_HOME: /opt/oracle/instantclient_21_21 + LD_LIBRARY_PATH: /opt/oracle/instantclient_21_21 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: XE @@ -57,25 +57,25 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-basic-linux.x64-21.15.0.0.0dbru.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-sqlplus-linux.x64-21.15.0.0.0dbru.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2115000/instantclient-sdk-linux.x64-21.15.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-basic-linux.x64-21.21.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-sqlplus-linux.x64-21.21.0.0.0dbru.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/2121000/instantclient-sdk-linux.x64-21.21.0.0.0dbru.zip - name: Install Oracle instant client run: | sudo mkdir -p /opt/oracle/ - sudo unzip -q instantclient-basic-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - sudo unzip -qo instantclient-sqlplus-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - sudo unzip -qo instantclient-sdk-linux.x64-21.15.0.0.0dbru.zip -d /opt/oracle - echo "/opt/oracle/instantclient_21_15" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + sudo unzip -qo instantclient-sqlplus-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + sudo unzip -qo instantclient-sdk-linux.x64-21.21.0.0.0dbru.zip -d /opt/oracle + echo "/opt/oracle/instantclient_21_21" >> $GITHUB_PATH - name: Install JDBC Driver run: | - wget -q https://download.oracle.com/otn-pub/otn_software/jdbc/23261/ojdbc11.jar -O ./lib/ojdbc11.jar + cp "$ORACLE_HOME/ojdbc11.jar" ./lib/ojdbc11.jar - name: Configure ORA_TZFILE to match Oracle 11g server run: | - # Oracle 11g XE uses timezone file v14; Instant Client 21.15 embeds - # v35. This mismatch causes ORA-01805 when fetching DATE/TIMESTAMP - # values. Copy the v14 files from the 11g container and point the - # Instant Client at them via ORA_TZFILE. + # Oracle 11g XE uses timezone file v14; the 21.x Instant Client + # embeds a newer file. The mismatch causes ORA-01805 when fetching + # DATE/TIMESTAMP values. Copy the v14 files from the 11g container + # and point the Instant Client at them via ORA_TZFILE. ORACLE_CONTAINER="${{ job.services.oracle.id }}" sudo mkdir -p "$ORACLE_HOME/oracore/zoneinfo" docker cp "$ORACLE_CONTAINER":/u01/app/oracle/product/11.2.0/xe/oracore/zoneinfo/timezlrg_14.dat /tmp/timezlrg_14.dat diff --git a/.github/workflows/test_gemfiles.yml b/.github/workflows/test_gemfiles.yml index 1f5268b3..e2a1ff40 100644 --- a/.github/workflows/test_gemfiles.yml +++ b/.github/workflows/test_gemfiles.yml @@ -40,8 +40,6 @@ jobs: ruby: '3.2' env: BUNDLE_GEMFILE: ${{ matrix.gemfile }} - ORACLE_HOME: /opt/oracle/instantclient_23_26 - LD_LIBRARY_PATH: /opt/oracle/instantclient_23_26 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: FREEPDB1 @@ -73,15 +71,18 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-basic-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sdk-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sqlplus-linux.x64-23.26.1.0.0.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip - name: Install Oracle instant client run: | - sudo unzip -q instantclient-basic-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sdk-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sqlplus-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - echo "/opt/oracle/instantclient_23_26" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sdk-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sqlplus-linuxx64.zip -d /opt/oracle/ + ORACLE_HOME=$(find /opt/oracle -name "instantclient_*" -type d | head -1) + echo "ORACLE_HOME=$ORACLE_HOME" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$ORACLE_HOME" >> $GITHUB_ENV + echo "$ORACLE_HOME" >> $GITHUB_PATH - name: Create database user run: | ./ci/setup_accounts.sh diff --git a/.github/workflows/truffleruby.yml b/.github/workflows/truffleruby.yml index ece4947d..3789fd2f 100644 --- a/.github/workflows/truffleruby.yml +++ b/.github/workflows/truffleruby.yml @@ -16,8 +16,6 @@ jobs: truffleruby-head ] env: - ORACLE_HOME: /opt/oracle/instantclient_23_26 - LD_LIBRARY_PATH: /opt/oracle/instantclient_23_26 NLS_LANG: AMERICAN_AMERICA.AL32UTF8 TNS_ADMIN: ./ci/network/admin DATABASE_NAME: FREEPDB1 @@ -50,15 +48,18 @@ jobs: sudo ln -s /usr/lib/x86_64-linux-gnu/libaio.so.1t64 /usr/lib/x86_64-linux-gnu/libaio.so.1 - name: Download Oracle instant client run: | - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-basic-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sdk-linux.x64-23.26.1.0.0.zip - wget -q https://download.oracle.com/otn_software/linux/instantclient/2326100/instantclient-sqlplus-linux.x64-23.26.1.0.0.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-basic-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sdk-linuxx64.zip + wget -q https://download.oracle.com/otn_software/linux/instantclient/instantclient-sqlplus-linuxx64.zip - name: Install Oracle instant client run: | - sudo unzip -q instantclient-basic-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sdk-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - sudo unzip -qo instantclient-sqlplus-linux.x64-23.26.1.0.0.zip -d /opt/oracle/ - echo "/opt/oracle/instantclient_23_26" >> $GITHUB_PATH + sudo unzip -q instantclient-basic-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sdk-linuxx64.zip -d /opt/oracle/ + sudo unzip -qo instantclient-sqlplus-linuxx64.zip -d /opt/oracle/ + ORACLE_HOME=$(find /opt/oracle -name "instantclient_*" -type d | head -1) + echo "ORACLE_HOME=$ORACLE_HOME" >> $GITHUB_ENV + echo "LD_LIBRARY_PATH=$ORACLE_HOME" >> $GITHUB_ENV + echo "$ORACLE_HOME" >> $GITHUB_PATH - name: Create database user run: | ./ci/setup_accounts.sh From 5677dee67bb8d02687fdcc8d416ba663c08939fe Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Thu, 30 Apr 2026 08:33:53 +0900 Subject: [PATCH 2/2] Accept "Closed Resultset" raised by ojdbc11 21.21 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After bumping the 11g matrix to Instant Client 21.21 and switching to ojdbc11.jar shipped inside that zip, the driver raises "Java::JavaSql::SQLException: Closed Resultset: next" when fetching from a closed cursor (lowercase 's' in "Resultset"). The previous ojdbc11 23.26 used "Closed ResultSet" (uppercase 'S') which the spec's regex matched. Add the /i flag so both casings — and any future case variant of the same message — match. --- spec/plsql/procedure_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spec/plsql/procedure_spec.rb b/spec/plsql/procedure_spec.rb index 6a126f13..7e4efc50 100644 --- a/spec/plsql/procedure_spec.rb +++ b/spec/plsql/procedure_spec.rb @@ -1875,7 +1875,7 @@ def new_candidate(status) expect(plsql.test_cursor do |cursor| cursor2 = cursor end).to be_nil - expect { cursor2.fetch }.to raise_error(/Cursor was already closed|Closed Statement|Closed ResultSet/) + expect { cursor2.fetch }.to raise_error(/Cursor was already closed|Closed Statement|Closed ResultSet/i) end it "should not raise error if cursor is closed inside block" do