Merge pull request #721 from bugout-dev/fix-passing-list-as-sql-parameter

Fix passing list as sql parameter
pull/724/head mooncrawl/v0.2.5
Andrey Dolgolev 2022-11-29 17:15:31 +02:00 zatwierdzone przez GitHub
commit e917d9361d
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
2 zmienionych plików z 13 dodań i 2 usunięć

Wyświetl plik

@ -188,7 +188,7 @@ async def queries_data_update_handler(
# request.params validations
passed_params = {
key: value
key: queries.from_json_types(value)
for key, value in request_data.params.items()
if key in expected_query_parameters
}
@ -220,7 +220,7 @@ async def queries_data_update_handler(
query_id=f"{query_id}",
file_type=request_data.file_type,
query=valid_query,
params=request_data.params,
params=passed_params,
)
except Exception as e:

Wyświetl plik

@ -64,6 +64,16 @@ def to_json_types(value):
return str(value)
def from_json_types(value):
if isinstance(value, (str, int, tuple, dict)):
return value
elif isinstance(value, list): # psycopg2 issue with list support
return tuple(value)
else:
return str(value)
def data_generate(
bucket: str,
query_id: str,
@ -125,6 +135,7 @@ def data_generate(
bucket=bucket,
)
except Exception as err:
logger.error(f"Error while generating data: {err}")
db_session.rollback()
reporter.error_report(
err,