oracle/vagrant-projects

+ is not allowed in password and causes infinite loop

Closed this issue · 1 comments

Describe the issue

export VM_ORACLE_PWD=t7jJqhjr+Ty7
cd OracleDatabase/23.4.0-Free
vagrant up

This causes an inifite loop.

It would be better if the password was checked early in the installation, so you do not have to wait to discover this.

Environment (please complete the following information):

  • Host OS: Ubuntu
  • Kernel version (for Linux host): Linux aspire 5.15.0-101-generic 111-Ubuntu SMP Tue Mar 5 20:16:58 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
  • Vagrant version: Vagrant 2.2.19
  • Vagrant provider:
    • For VirtualBox: 6.1.50_Ubuntur161033
  • Vagrant project: OracleDatabase/23.4.0-Free

Additional information

I get this in the infinite loop:

oracle23ai-free-vagrant: Password cannot be null. Enter password:

It is clearly wrong. Removing the '+' seems to solve it.

Yes, spaces and special characters in the password cause database creation to fail. This is documented in the README.md file in bold text, and also noted in the .env and Vagrantfile files.

The special character restrictions and the "Password cannot be null" error message are part of the database creation assistant (DBCA) code, which this project has no control over. The restrictions may or may not be intentional. As far as I know, the list of invalid characters isn't documented, so accurately validating a user-supplied password before passing it to the oracle-free-23ai script isn't feasible.