diff --git a/app/services/concerns/datasource_utils.rb b/app/services/concerns/datasource_utils.rb index 1e7fd1ff4e..668a14fcaa 100644 --- a/app/services/concerns/datasource_utils.rb +++ b/app/services/concerns/datasource_utils.rb @@ -18,5 +18,9 @@ module DatasourceUtils $connections[data_source.id] = { connection: connection, updated_at: data_source.updated_at } end + def reset_connection(data_source) + $connections.delete @data_source.id + end + end \ No newline at end of file diff --git a/app/services/postgresql_query_service.rb b/app/services/postgresql_query_service.rb index 87bbd615a7..94e09a0f53 100644 --- a/app/services/postgresql_query_service.rb +++ b/app/services/postgresql_query_service.rb @@ -39,6 +39,8 @@ class PostgresqlQueryService result = connection.exec(query_text) rescue StandardError => e + reset_connection(data_source) if connection.finished? + puts e error = { message: e.message } end