Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restore Oracle setup on Travis CI server #326

Merged
merged 1 commit into from Apr 24, 2015
Merged

Restore Oracle setup on Travis CI server #326

merged 1 commit into from Apr 24, 2015

Conversation

mloskot
Copy link
Contributor

@mloskot mloskot commented Apr 22, 2015

Solution for task #224 will be either based on p6spy/p6spy#116 or https://github.com/cbandy/travis-oracle/

@vadz
Copy link
Member

vadz commented Apr 22, 2015

It looks like ORACLE_HOME is set incorrectly (for 11 and not 10)?

@mloskot
Copy link
Contributor Author

mloskot commented Apr 23, 2015

Vadim, thank you for the extra pair of eyes.

I hope it's been corrected now.

@mloskot mloskot added the Oracle label Apr 23, 2015
@mloskot mloskot self-assigned this Apr 23, 2015
@mloskot
Copy link
Contributor Author

mloskot commented Apr 23, 2015

There is one more issue to solve: SOCI build vs OCI binaries architecture.
Summary:

  • Travis is hosted on Ubuntu 64-bit
  • Oracle 10g is installed from 32-bit binaries
  • Travis builds SOCI 64-bit binaries.
  • Problem: SOCI 64-bit attempt to link against OCI 32-bit binaries

Possible solutions:

  1. Switch SOCI_TRAVIS_BACKEND=oracle to 32-bit build. It seems easier.
  2. Install InstantClient 64-bit and use it to build SOCI, but still connect to the installed Oracle 10g 32-bit. It seems tricky - can we switch ORACLE_HOME to different locations, first for installation, second for build, will it work?

@mloskot
Copy link
Contributor Author

mloskot commented Apr 23, 2015

The option 1. discussed above seems to work, partially.

There is a problem with CMake finding 64-bit Boost, even if 32-bit build is requested. I asked about it on CMake ml: FindBoost.cmake issue while targeting 32-bit build on Linux 64-bit.

@mloskot
Copy link
Contributor Author

mloskot commented Apr 23, 2015

Holy cow, it's green now!

Summary: 64-bit Travis CI builds 32-bit SOCI without Boost but with Oracle.

@mloskot
Copy link
Contributor Author

mloskot commented Apr 24, 2015

It was green for a moment, then somewhat mysteriously it stopped working due to ORA-12520 errors.

Apparently, SOCI tests require higher value of Oracle XE's PROCESSES parameter. After bumping it from default 40 to value from range of 100-200 it's green again.

Install Oracle 10g (32-bit) using old packages from  https://oss.oracle.com/debian/.
Disable Boost dependency due to Ubuntu bug that prevents installation of
libboost i386 packages on amd64 host (see details at
https://bugs.launchpad.net/ubuntu/+source/boost1.48/+bug/918438).
Switch SOCI_TRAVIS_BACKEND=oracle build to target 32-bit architecture.
Increase Oracle XE parameter PROCESSES from default 40 to 200 to prevent
random ORA-12520 errors while running tests against Oracle.

The configuration is based on solution worked out by
P6Spy folks at p6spy/p6spy#116. Kudos!

Closes #224
@mloskot mloskot changed the title Add Oracle setup on Travis CI server Restore Oracle setup on Travis CI server Apr 24, 2015
mloskot added a commit that referenced this pull request Apr 24, 2015
Restore Oracle setup on Travis CI server

Closes #224
@mloskot mloskot merged commit 4863376 into SOCI:master Apr 24, 2015
@mloskot mloskot deleted the issues/224 branch April 24, 2015 09:37
mloskot added a commit that referenced this pull request Apr 24, 2015
SOCI_TRAVIS_BACKEND=oracle build job needs to build SOCI 32-bit to
target 32-bit OCI installed with Oracle 10g.

Due to Ubuntu bug that prevents installation of libboost i386 packages on amd64 
host (https://bugs.launchpad.net/ubuntu/+source/boost1.48/+bug/918438),
we had to disable Boost. 

See #326 for details.

[ci skip]
@mloskot mloskot added this to the 4.0.0 milestone May 19, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants