ODM2 / ODM2PythonAPI

A set of Python functions that provides data read/write access to an ODM2 database by leveraging SQLAlchemy.
http://odm2.github.io/ODM2PythonAPI/
BSD 3-Clause "New" or "Revised" License
4 stars 13 forks source link

Issue with MSSQL ODM2 database when querying various endpoints #118

Closed lsetiawan closed 6 years ago

lsetiawan commented 7 years ago

Posted by @Elijahwalkerwest originally on the ODM2 repo (here). Reposted here.

When querying various tables with an MSSQL database, returning this error:

TypeError at /v1/samplingfeatures/ 'NoneType' object is not iterable

Request Method: GET Request URL: http://127.0.0.1:8000/v1/samplingfeatures/ Django Version: 1.11.6 Python Executable: C:\ProgramData\Anaconda2\envs\odm2restenv\python.exe Python Version: 2.7.14 Python Path: ['C:\Users\Elijah\Desktop\Projects\odm2restapi', 'C:\Users\Elijah\Desktop\Projects\odm2restapi', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\odm2rest\settings', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\odm2rest', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\odm2proj\odm2proj', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\odm2proj', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\odm2proj\odm2rest', 'C:\Users\Elijah\Desktop\Projects\odm2restapi\api', 'C:\ProgramData\Anaconda2\envs\odm2restenv\python27.zip', 'C:\ProgramData\Anaconda2\envs\odm2restenv\DLLs', 'C:\ProgramData\Anaconda2\envs\odm2restenv\lib', 'C:\ProgramData\Anaconda2\envs\odm2restenv\lib\plat-win', 'C:\ProgramData\Anaconda2\envs\odm2restenv\lib\lib-tk', 'C:\ProgramData\Anaconda2\envs\odm2restenv', 'C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages', 'c:\users\elijah\desktop\projects\odm2pythonapi'] Server time: Mon, 23 Oct 2017 23:14:04 +0000 Installed Applications: ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', 'api'] Installed Middleware: ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware']

Traceback:

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\django\core\handlers\exception.py" in inner

  1. response = get_response(request)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\django\core\handlers\base.py" in _get_response

  1. response = self.process_exception_by_middleware(e, request)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\django\core\handlers\base.py" in _get_response

  1. response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\django\views\decorators\csrf.py" in wrapped_view

  1. return view_func(*args, **kwargs)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\django\views\generic\base.py" in view

  1. return self.dispatch(request, *args, **kwargs)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\rest_framework\views.py" in dispatch

  1. response = self.handle_exception(exc)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\rest_framework\views.py" in handle_exception

  1. self.raise_uncaught_exception(exc)

File "C:\ProgramData\Anaconda2\envs\odm2restenv\lib\site-packages\rest_framework\views.py" in dispatch

  1. response = handler(request, *args, **kwargs)

File "C:\Users\Elijah\Desktop\Projects\odm2restapi\api\views.py" in get

  1. sfs = get_samplingfeatures(**get_kwargs)

File "C:\Users\Elijah\Desktop\Projects\odm2restapi\api\core.py" in get_samplingfeatures

  1. for sf in sampling_features:

Exception Type: TypeError at /v1/samplingfeatures/ Exception Value: 'NoneType' object is not iterable Request information: USER: AnonymousUser

GET: No GET data

POST: No POST data

FILES: No FILES data

When querying all samplingfeatures, or filtering by ID, type, or any other parameter

lsetiawan commented 7 years ago

Let me elaborate a bit about this Issue. It may seem like this is an error on ODM2RestAPI, but it's actually an error that occurs when querying using ODM2PythonAPI against MSSQL. I am not sure what's going on, I do not have a way to test with MSSQL.

With Postgresql and Mysql the function to query samplingfeatures works just fine. Thanks.

emiliom commented 6 years ago

Has there been any progress on assessing this problem?

lsetiawan commented 6 years ago

Not that I have heard.

horsburgh commented 6 years ago

@Elijahwalkerwest - any updates on this, or have we essentially dropped it since we are not currently testing against SQL Server?

Elijahwalkerwest commented 6 years ago

I haven't been spending time on this one but i can re direct some of my time if you need me to.

emiliom commented 6 years ago

Thanks for the updates. I'm fine with not addressing this issue in the new release. But if @horsburgh and @Elijahwalkerwest think it can be addressed fairly easily early next week, go for it. Your call.

Elijahwalkerwest commented 6 years ago

I'll look in to this today, see if it's something that can be resolved quickly.

emiliom commented 6 years ago

@horsburgh This issue is almost a year old, and didn't get any love since it was originally posted. I suggest we close it and if it comes up again, a new issue can be opened.

horsburgh commented 6 years ago

Agreed. Closing.