jacob_mulligan
02/15/2024, 1:36 PMtap-postgres.public-ecm_profiles | An unhandled error occurred while syncing 'public-ecm_profiles'
File "/home/runner/work/analytics-etl/analytics-etl/.***/extractors/tap-postgres/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line [1066](...), in _buffer_rows
new_rows = dbapi_cursor.fetchmany(size)
psycopg2.OperationalError: SSL connection has been closed unexpectedly
Googling the issue leads me to think that I would ideally adjust the SQLAlchemy connection to include pool_pre_ping=True
as a param to check that the connection is still alive before attempting new connections:
engine = create_engine("<mysql+pymysql://user:pw@host/db>", pool_pre_ping=True)
The problem I'm running into is that Meltano's Postgres tap doesn't expose this parameter. For context, I'm pulling data from an AWS RDS postgres db. What are my options for getting this Meltano sync working again?Edgar RamÃrez (Arch.dev)
02/15/2024, 7:49 PMThe problem I'm running into is that Meltano's Postgres tap doesn't expose this parameter. For context, I'm pulling data from an AWS RDS postgres db. What are my options for getting this Meltano sync working again?The simplest would be sending MeltanoLabs/target-postgres a PR to create the engine with that flag, or at least an issue describing the request 🙂
jacob_mulligan
02/20/2024, 12:05 PMpool_pre_ping
flag locally to verify that that would fix the issue, but i couldn't figure out where the right place was to add the pool_pre_ping config.jacob_mulligan
02/20/2024, 12:05 PMEdgar RamÃrez (Arch.dev)
02/20/2024, 3:14 PMjacob_mulligan
02/20/2024, 3:15 PMjacob_mulligan
02/21/2024, 11:31 AMjacob_mulligan
02/23/2024, 3:45 PMmeltano install
commands to be able to pull the latest version of the sdk package?Edgar RamÃrez (Arch.dev)
02/23/2024, 3:48 PMpip_url
is a direct git reference to the main
branch)
4. publish a new version meltanolabs-tap-postgres to pypiEdgar RamÃrez (Arch.dev)
02/23/2024, 3:50 PMjacob_mulligan
02/23/2024, 3:51 PMjacob_mulligan
02/29/2024, 1:21 PMEdgar RamÃrez (Arch.dev)
02/29/2024, 4:15 PMvisch
02/29/2024, 4:37 PMvisch
03/01/2024, 10:17 PMjacob_mulligan
03/04/2024, 2:24 PMextractors:
- name: tap-postgres-arc-incremental
inherit_from: tap-postgres
variant: meltanolabs
pip_url: git+<https://github.com/MeltanoLabs/tap-postgres.git>
config:
host: ${ARC_DB_HOST}
user: ${ARC_DB_USER}
port: ${ARC_DB_PORT}
I have assumed that every time meltano install
is run in our github action that executes Meltano that we'd fetch the latest version of all taps/targets. But perhaps that's not the case?jacob_mulligan
03/04/2024, 2:24 PM- name: tap-postgres-arc-incremental
inherit_from: tap-postgres
variant: meltanolabs
pip_url: git+<https://github.com/MeltanoLabs/tap-postgres.git@v0.0.9>
jacob_mulligan
03/04/2024, 3:06 PMpsycopg2.OperationalError: SSL connection has been closed unexpectedly
2024-03-04T14:40:20.612742Z [info ] 2024-03-04 14:40:20,611 | ERROR | tap-postgres.public-message_channels | An unhandled error occurred while syncing 'public-message_channels' cmd_type=elb consumer=False name=tap-postgres-arc-full-refresh producer=True stdio=stderr string_id=tap-postgres-arc-full-refresh
2024-03-04T14:40:20.612949Z [info ] Traceback (most recent call last): cmd_type=elb consumer=False name=tap-postgres-arc-full-refresh producer=True stdio=stderr string_id=tap-postgres-arc-full-refresh
2024-03-04T14:40:20.613101Z [info ] File "/home/runner/work/analytics-etl/analytics-etl/.***/extractors/tap-postgres-arc-full-refresh/venv/lib/python3.10/site-packages/sqlalchemy/engine/cursor.py", line 1210, in _buffer_rows cmd_type=elb consumer=False name=tap-postgres-arc-full-refresh producer=True stdio=stderr string_id=tap-postgres-arc-full-refresh
2024-03-04T14:40:20.613245Z [info ] new_rows = dbapi_cursor.fetchmany(size) cmd_type=elb consumer=False name=tap-postgres-arc-full-refresh producer=True stdio=stderr string_id=tap-postgres-arc-full-refresh
2024-03-04T14:40:20.613388Z [info ] psycopg2.OperationalError: SSL connection has been closed unexpectedly cmd_type=elb consumer=False name=tap-postgres-arc-full-refresh producer=True stdio=stderr string_id=tap-postgres-arc-full-refresh
visch
03/04/2024, 3:14 PMEdgar RamÃrez (Arch.dev)
03/05/2024, 6:03 AM