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

Django rest framework social oauth2 causing unexpected error with Djongo for mongoDB conversion of django app #237

Open
anakin421 opened this issue Jan 1, 2021 · 2 comments

Comments

@anakin421
Copy link

anakin421 commented Jan 1, 2021

I am using Django rest framework social oauth2 for authentication in one Django app. For development purposes, I have used this package with Sqlite3 (SQL database) and it works perfectly. However, now I want to migrate this Django app to MongoDB (NoSQL database) via using Djongo. After implementing all the required changes it is showing this bizarre error. I have seen everywhere couldn't find a relevant solution

After adding this command:

**python manage.py migrate** 

Operations to perform:
  Apply all migrations: admin, auth, contenttypes, oauth2_provider, sessions, social_django

Running migrations:

Not implemented alter command for SQL ALTER TABLE "oauth2_provider_accesstoken" ADD COLUMN "source_refresh_token_id" long NULL UNIQUE

Applying oauth2_provider.0001_initial...Traceback (most recent call last):
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/cursor.py", line 51, in execute
self.result = Query(
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 783, in _init_
self._query = self.parse()
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 875, in parse
raise e
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 856, in parse
return handler(self, statement)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 888, in _alter
query = AlterQuery(self.db, self.connection_properties, sm, self._params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 425, in _init_
super().__init__(*args)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 84, in _init_
super().__init__(*args)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 62, in _init_
self.parse()
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 435, in parse
self._add(statement)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 598, in _add
raise SQLDecodeError(err_key=tok.value,
djongo.exceptions.SQLDecodeError:

Keyword: long
Sub SQL: ALTER TABLE "oauth2_provider_accesstoken" ADD COLUMN "source_refresh_token_id" long NULL UNIQUE
FAILED SQL: ('ALTER TABLE "oauth2_provider_accesstoken" ADD COLUMN "source_refresh_token_id" long NULL UNIQUE',)
Params: ([],)
Version: 1.3.3

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

Traceback (most recent call last):
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
return self.cursor.execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/cursor.py", line 59, in execute
raise db_exe from e
djongo.database.DatabaseError

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

Traceback (most recent call last):
File "manage.py", line 22, in <module>
main()
File "manage.py", line 18, in main
execute_from_command_line(sys.argv)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
utility.execute()
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/__init__.py", line 395, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/base.py", line 328, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/base.py", line 369, in execute
output = self.handle(*args, **options)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/base.py", line 83, in wrapped
res = handle_func(*args, **kwargs)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/core/management/commands/migrate.py", line 231, in handle
post_migrate_state = executor.migrate(
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/migrations/executor.py", line 245, in apply_migration
state = migration.apply(state, schema_editor)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/migrations/migration.py", line 124, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/migrations/operations/fields.py", line 110, in database_forwards
schema_editor.add_field(
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 480, in add_field
self.execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 142, in execute
cursor.execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 100, in execute
return super().execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 68, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
return self.cursor.execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/utils.py", line 90, in _exit_
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
return self.cursor.execute(sql, params)
File "/home/anakin/virtual_envs/js_backend/lib/python3.8/site-packages/djongo/cursor.py", line 59, in execute
raise db_exe from e
django.db.utils.DatabaseError

Thanks for your consideration. Really appreciate it.

@Abhishek12392
Copy link

Have you find solution?

@wagnerdelima
Copy link

Hi all.

My team and I are constantly using this framework and it seems it has died out there. I contacted the owner by email asking if he would add some of us as maintainers so we could continue to improve it. However we didn't get a response.

I am publishing the project under my profile and we are going to continue to invest time in it.

So I would like to gently ask you to contribute to this project on: https://github.com/wagnerdelima/drf-social-oauth2

Thank you for understanding.

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

3 participants