Commit graph

1 commit

Author SHA1 Message Date
Ashish
12d110e006
Feature/datasource connection pools (#357)
* add a library which defines available datasources as constants

* include thread_pool gem and concurrent-ruby gem

* modify per process connection_pools global variable to be a concurrent map datastructure

* add a new DsConnectionPool libary to provide the api for using connections from a connection pool

* convert the connection pool parameters in the ENV to integers before using them

* add a new function in the ds_connection_pool library to reset_connection_pool/s

* add unit tests for the ds_connection_pool library

* fix typo

* better variable names and module_names

* refactor connection pool library test cases to use mocked query service

* add magic comment to make strings frozen

* remove airtable from the list of connection pooled datasources

* separate module inside available_data_sources to list connection poolable datasources

* use datasource_id as the key for storing connection pools of a type; Also handle cases when the pools connections are stale

* add additional test cases for the connection pool library

* fix rubocop errors
2021-07-07 12:16:19 +05:30