Skip to content

Conversation

@aspark21
Copy link

@aspark21 aspark21 commented Mar 1, 2022

No description provided.

@stronk7
Copy link
Member

stronk7 commented Mar 1, 2022

Hi @aspark21 ,

is there any reason for this, or, with other words/alternatively, any reference to know if we can apply this to "which" php versions? Only php81/80... also older...

@aspark21
Copy link
Author

aspark21 commented Mar 1, 2022

No particular reason tbh, it's just the latest version. The Instant client has no relation with PHP version, it relates more to the Oracle version one is running - the compatibility matrix isn't public, naturally
Oracle 11g and 12 (EOL) are finally getting upgraded to 19c / 21c in most slow institutions. https://support.oracle.com/knowledge/Oracle%20Database%20Products/742060_1.html

We compile our own package for php-oci8 for rhel7 and I was looking around for a simpler approach for a dockerized/cloud move (which wouldn't involve RHEL7 & satellite, or dealing with the appstream issue for rhel8) and centos stream seems unnecessary container wise. even the remi package is behind the times for instant client (https://git.remirepo.net/cgit/rpms/php/pecl/php-pecl-oci8.git/tree/php-pecl-oci8.spec)
So was looking here as to how it was setup.

Having dug up the compatibility matrix, the 21c client becomes incompatible with oracle 11.2.0 servers. Which would break the docker-oracle-xe-11g dependency of moodlehq/moodle-db-oracle
So would need to migrate to 19c/21c for server side testing. e.g. with https://github.com/fuzziebrain/docker-oracledb21c-xe
Admittedly though 11.2 has long been EOL so it wouldn't be a bad thing to do.

Tiny change becomes massive...

We don't even run Moodle on Oracle, it's purely to connect to SITS (Student Records) & CMIS (Timetabling) for data integration purposes I was looking around

@aspark21
Copy link
Author

aspark21 commented Mar 1, 2022

P.S. This one probably looks like a better candidate base image:
https://hub.docker.com/r/gvenzl/oracle-xe
docker pull gvenzl/oracle-xe:21

Oracle seem to provide everything to build a 21c XE docker image, it just isn't pre-built & published officially - https://github.com/oracle/docker-images/blob/main/OracleDatabase/SingleInstance/README.md#building-oracle-database-container-images

@stronk7
Copy link
Member

stronk7 commented Jun 13, 2022

Oh, coincidentally, after some local testing... all the php images (7.4 and up) are now being rebuilt with Oracle Client Libraries 21.6. See 252d1bb

BTW, the Oracle 21 docker image that is being tested is exactly the gvenzl/oracle-xe one. The image is working but we are getting some really weird / non-sense PHPUnit failures. One of those mysteries!

See, for example: https://ci.moodle.org/view/Testing/job/DEV.02%20-%20Developer-requested%20PHPUnit/7311/

So I think we can now close this without problem. Thanks!

@stronk7 stronk7 closed this Jun 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants