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

Problem with deploy database to PostgreSQL from Ubuntu #79

Open
Shkiperon opened this issue Mar 4, 2021 · 1 comment
Open

Problem with deploy database to PostgreSQL from Ubuntu #79

Shkiperon opened this issue Mar 4, 2021 · 1 comment

Comments

@Shkiperon
Copy link

I have the crash when try to create database for Opensips 3.1

My cfg file for cli:

[default]
prompt_name: proxy
fifo_file: /tmp/opensips_fifo
database_schema_path: /usr/src/opensips-31/scripts
database_admin_url: postgres://postgres:[email protected]:5432
database_url: postgres://opensipsuser:[email protected]:5432
database_name: opensips_test
database_modules: ALL

Part of traceback:

INFO: role 'opensipsuser' with options 'NOCREATEDB NOCREATEROLE LOGIN' created
INFO: GRANT ALL PRIVILEGES ON DATABASE opensips_test TO opensipsuser
Traceback (most recent call last):
  File "/usr/lib/python3.8/cmd.py", line 214, in onecmd
    func = getattr(self, 'do_' + cmd)
AttributeError: 'OpenSIPSCLIShell' object has no attribute 'do_database'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2262, in _wrap_pool_connect
    return fn()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 363, in connect
    return _ConnectionFairy._checkout(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 760, in _checkout
    fairy = _ConnectionRecord.checkout(pool)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 492, in checkout
    rec = pool._do_get()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/impl.py", line 139, in _do_get
    self._dec_overflow()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/langhelpers.py", line 68, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/compat.py", line 129, in reraise
    raise value
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/impl.py", line 136, in _do_get
    return self._create_connection()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 308, in _create_connection
    return _ConnectionRecord(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 437, in __init__
    self.__connect(first_connect_check=True)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 639, in __connect
    connection = pool._invoke_creator(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/strategies.py", line 114, in connect
    return dialect.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/default.py", line 453, in connect
    return self.dbapi.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.8/dist-packages/psycopg2/__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: FATAL:  database "opensipsuser" does not exist


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/local/bin/opensips-cli", line 4, in <module>
    __import__('pkg_resources').run_script('opensipscli==0.1.0', 'opensips-cli')
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 667, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/usr/lib/python3/dist-packages/pkg_resources/__init__.py", line 1463, in run_script
    exec(code, namespace, namespace)
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/EGG-INFO/scripts/opensips-cli", line 9, in <module>
    run_console()
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/EGG-INFO/scripts/opensips-cli", line 6, in run_console
    main.main()
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/main.py", line 78, in main
    sys.exit(shell.cmdloop())
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/cli.py", line 253, in cmdloop
    super(OpenSIPSCLIShell, self).cmdloop(intro='')
  File "/usr/lib/python3.8/cmd.py", line 138, in cmdloop
    stop = self.onecmd(line)
  File "/usr/lib/python3.8/cmd.py", line 216, in onecmd
    return self.default(line)
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/cli.py", line 374, in default
    self.run_command(module, cmd, params)
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/cli.py", line 357, in run_command
    return mod[0].__invoke__(cmd, params)
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/module.py", line 36, in __invoke__
    return f(params)
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/modules/database.py", line 385, in do_create
    if self.create_tables(db_name, db_url, admin_db) < 0:
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/modules/database.py", line 428, in create_tables
    if not db.exists():
  File "/usr/local/lib/python3.8/dist-packages/opensipscli-0.1.0-py3.8.egg/opensipscli/db.py", line 526, in exists
    if sqlalchemy_utils.database_exists(database_url):
  File "/usr/local/lib/python3.8/dist-packages/sqlalchemy_utils/functions/database.py", line 466, in database_exists
    return bool(get_scalar_result(engine, text))
  File "/usr/local/lib/python3.8/dist-packages/sqlalchemy_utils/functions/database.py", line 445, in get_scalar_result
    result_proxy = engine.execute(sql)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2165, in execute
    connection = self._contextual_connect(close_with_result=True)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2226, in _contextual_connect
    self._wrap_pool_connect(self.pool.connect, None),
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2265, in _wrap_pool_connect
    Connection._handle_dbapi_exception_noconnection(
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 1536, in _handle_dbapi_exception_noconnection
    util.raise_from_cause(sqlalchemy_exception, exc_info)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/compat.py", line 383, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/compat.py", line 128, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/base.py", line 2262, in _wrap_pool_connect
    return fn()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 363, in connect
    return _ConnectionFairy._checkout(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 760, in _checkout
    fairy = _ConnectionRecord.checkout(pool)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 492, in checkout
    rec = pool._do_get()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/impl.py", line 139, in _do_get
    self._dec_overflow()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/langhelpers.py", line 68, in __exit__
    compat.reraise(exc_type, exc_value, exc_tb)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/util/compat.py", line 129, in reraise
    raise value
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/impl.py", line 136, in _do_get
    return self._create_connection()
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 308, in _create_connection
    return _ConnectionRecord(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 437, in __init__
    self.__connect(first_connect_check=True)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/pool/base.py", line 639, in __connect
    connection = pool._invoke_creator(self)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/strategies.py", line 114, in connect
    return dialect.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.8/dist-packages/SQLAlchemy-1.3.3-py3.8-linux-x86_64.egg/sqlalchemy/engine/default.py", line 453, in connect
    return self.dbapi.connect(*cargs, **cparams)
  File "/usr/local/lib/python3.8/dist-packages/psycopg2/__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL:  database "opensipsuser" does not exist

(Background on this error at: http://sqlalche.me/e/e3q8)

Looks like some problems with variables in script, but I don't understand where.

@Shkiperon
Copy link
Author

If database name and user name is the same - works fine.

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

No branches or pull requests

1 participant