Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bug: target table is being reset after a successful sync, then completes without logging an error #2117

Open
gkarugi opened this issue Dec 9, 2023 · 9 comments

Comments

@gkarugi
Copy link

gkarugi commented Dec 9, 2023

Meltano Version

3.1.0

Python Version

3.10

Bug scope

Other

Operating System

Linux Ubuntu 22

Description

sync reset's table after completing successfully and it seems to want to start afresh but it completes without any error.

It initially synced over 500k records before resetting and adding some 9k records before completing without logging any error.

I suspect this is happening on the near end of the log attached where it says " Cleaning up db_schema-locations"

Code

version: 1
default_environment: dev
project_id: 2951a9a9-6eb5-4526-8f96-b10d22c2be8f

environments:
- name: dev
- name: staging
- name: prod

plugins:
  extractors:
  - name: tap-mysql
    variant: transferwise
    pip_url: pipelinewise-tap-mysql
    select:
    - schema-locations.*
    metadata:
      schema-locations:
        replication-method: LOG_BASED

  loaders:
  - name: target-clickhouse
    variant: shaped-ai
    pip_url: git+https://github.com/shaped-ai/target-clickhouse.git


2023-12-09T19:57:01.285373Z [info     ] 2023-12-09 22:57:01,285 | INFO     | target-clickhouse    | Target sink for 'db_schema-locations' is full. Draining... cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:01.966531Z [info     ] 2023-12-09 22:57:01,965 | INFO     | target-clickhouse.db_schema-locations | Inserting with SQL: INSERT INTO test_schema.locations cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:01.967530Z [info     ] (duration, playback_session_id, platform_id, device_platform_version, internet_connection, device_manufacturer, user_id, playable_id, longitude, id, app_version, playable_type, address, event, country, content_category, device_model, created_at, updated_at, device_platform, sub_user_id, playback_time, type, ip, latitude) cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:01.968338Z [info     ] VALUES (:duration, :playback_session_id, :platform_id, :device_platform_version, :internet_connection, :device_manufacturer, :user_id, :playable_id, :longitude, :id, :app_version, :playable_type, :address, :event, :country, :content_category, :device_model, :created_at, :updated_at, :device_platform, :sub_user_id, :playback_time, :type, :ip, :latitude) cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:03.005703Z [info     ] time=2023-12-09 22:57:03 name=singer level=INFO message=METRIC: {"type": "counter", "metric": "record_count", "value": 109503, "tags": {"database": "db_schema", "table": "locations"}} cmd_type=elb consumer=False name=tap-mysql producer=True stdio=stderr string_id=tap-mysql
2023-12-09T19:57:03.006572Z [info     ] time=2023-12-09 22:57:03 name=singer level=INFO message=METRIC: {"type": "timer", "metric": "job_duration", "value": 324.30908393859863, "tags": {"job_type": "sync_table", "database": "db_schema", "table": "locations", "status": "succeeded"}} cmd_type=elb consumer=False name=tap-mysql producer=True stdio=stderr string_id=tap-mysql
2023-12-09T19:57:06.041006Z [info     ] 2023-12-09 22:57:06,040 | INFO     | target-clickhouse    | Target 'target-clickhouse' completed reading 582665 lines of input (1 schemas, 582077 records, 0 batch manifests, 585 state messages). cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:06.597018Z [info     ] 2023-12-09 22:57:06,596 | INFO     | target-clickhouse.db_schema-locations | Inserting with SQL: INSERT INTO test_schema.locations cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:06.597761Z [info     ] (duration, playback_session_id, platform_id, device_platform_version, internet_connection, device_manufacturer, user_id, playable_id, longitude, id, app_version, playable_type, address, event, country, content_category, device_model, created_at, updated_at, device_platform, sub_user_id, playback_time, type, ip, latitude) cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:06.598541Z [info     ] VALUES (:duration, :playback_session_id, :platform_id, :device_platform_version, :internet_connection, :device_manufacturer, :user_id, :playable_id, :longitude, :id, :app_version, :playable_type, :address, :event, :country, :content_category, :device_model, :created_at, :updated_at, :device_platform, :sub_user_id, :playback_time, :type, :ip, :latitude) cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:07.515184Z [info     ] 2023-12-09 22:57:07,514 | INFO     | target-clickhouse.db_schema-locations | Cleaning up db_schema-locations cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:07.517276Z [info     ] 2023-12-09 22:57:07,515 | INFO     | target-clickhouse    | Emitting completed target state {"currently_syncing": null, "bookmarks": {"db_schema-locations": {"version": 1702151505338, "log_file": "mysql-bin.000008", "log_pos": 62472502, "gtid": "49569077-2635-11ee-8f72-6045bddb2dee:1-1589"}}} cmd_type=elb consumer=True name=target-clickhouse producer=False stdio=stderr string_id=target-clickhouse
2023-12-09T19:57:07.732261Z [info     ] Incremental state has been updated at 2023-12-09 19:57:07.731831.
2023-12-09T19:57:07.870317Z [info     ] Block run completed.           block_type=ExtractLoadBlocks err=None set_number=0 success=True
@gkarugi gkarugi added kind/Bug Something isn't working valuestream/Meltano labels Dec 9, 2023
@gkarugi gkarugi changed the title bug: target is being reset after a successful sync, then completes bug: target is being reset after a successful sync, then completes without logging an error Dec 9, 2023
@gkarugi gkarugi changed the title bug: target is being reset after a successful sync, then completes without logging an error bug: target table is being reset after a successful sync, then completes without logging an error Dec 9, 2023
@edgarrmondragon
Copy link
Collaborator

Hi @gkarugi! Thanks for reporting.

One thing that'd be extremely useful is to see which queries are being executed. The following setup should help you get SQLAlchemy logs from target-clickhouse:

  1. Add a singer_sdk_logging.yaml to the root of your Meltano project
version: 1
disable_existing_loggers: false
formatters:
  sqlalchemy:
    format: "{asctime} {message}"
    style: "{"
handlers:
  sqlalchemy:
    class: logging.FileHandler
    formatter: sqlalchemy
    filename: sqlalchemy.log
loggers:
  sqlalchemy.engine:
    level: DEBUG
    handlers: [ sqlalchemy ]
    propagate: false
  1. Run your pipeline with the SINGER_SDK_LOG_CONFIG env var set
SINGER_SDK_LOG_CONFIG=singer_sdk_logging.yaml meltano run tap-mysql target-clickhouse
  1. Inspect the contents of the generated sqlalchemy.log for queries that might be deleting data.

@edgarrmondragon
Copy link
Collaborator

edgarrmondragon commented Dec 15, 2023

(See also shaped-ai/target-clickhouse#89)

@gkarugi
Copy link
Author

gkarugi commented Dec 18, 2023

Hi @edgarrmondragon . Thanks for the sql alchemy log idea. Didn't know this existed.

The issue might be coming from the following line. It appears twice. the second time is when I think it truncates.

2023-12-18 13:07:20,594 ALTER TABLE test_schema.model_has_platforms DELETE WHERE _sdc_table_version <= 1702894036227

The column _sdc_table_version isset to 0 on all the rows that are synced. see screenshot below:

Screenshot 2023-12-18 132010

SQLAlchemy logs below

2023-12-18 13:21:59,902 [generated in 0.00080s] {}
2023-12-18 13:21:59,906 Col ('version()',)
2023-12-18 13:21:59,907 Row ('23.10.5.20',)
2023-12-18 13:21:59,907 select currentDatabase()
2023-12-18 13:21:59,908 [generated in 0.00036s] {}
2023-12-18 13:21:59,911 Col ('currentDatabase()',)
2023-12-18 13:21:59,911 Row ('test_schema',)
2023-12-18 13:21:59,912 BEGIN (implicit)
2023-12-18 13:21:59,912 EXISTS TABLE "test_schema"."model_has_platforms"
2023-12-18 13:21:59,913 [generated in 0.00071s] {}
2023-12-18 13:21:59,915 Col ('result',)
2023-12-18 13:21:59,916 Row (1,)
2023-12-18 13:21:59,916 ROLLBACK
2023-12-18 13:21:59,917 BEGIN (implicit)
2023-12-18 13:21:59,917 DESCRIBE TABLE "test_schema"."model_has_platforms"
2023-12-18 13:21:59,917 [generated in 0.00050s] {}
2023-12-18 13:21:59,920 Col ('name', 'type', 'default_type', 'default_expression', 'comment', 'codec_expression', 'ttl_expression')
2023-12-18 13:21:59,920 Row ('id', 'Int64', '', '', '', '', '')
2023-12-18 13:21:59,921 Row ('platform_id', 'Int64', '', '', '', '', '')
2023-12-18 13:21:59,921 Row ('created_at', 'DateTime', '', '', '', '', '')
2023-12-18 13:21:59,921 Row ('platformable_id', 'Int64', '', '', '', '', '')
2023-12-18 13:21:59,921 Row ('platformable_type', 'String', '', '', '', '', '')
2023-12-18 13:21:59,922 Row ('updated_at', 'DateTime', '', '', '', '', '')
2023-12-18 13:21:59,922 Row ('_sdc_table_version', 'Int32', '', '', '', '', '')
2023-12-18 13:21:59,922 ROLLBACK
2023-12-18 13:22:03,936 BEGIN (implicit)
2023-12-18 13:22:03,937 EXISTS TABLE "test_schema"."model_has_platforms"
2023-12-18 13:22:03,937 [cached since 4.025s ago] {}
2023-12-18 13:22:03,941 Col ('result',)
2023-12-18 13:22:03,941 Row (1,)
2023-12-18 13:22:03,942 ROLLBACK
2023-12-18 13:22:03,949 BEGIN (implicit)
2023-12-18 13:22:03,950 ALTER TABLE test_schema.model_has_platforms DELETE WHERE _sdc_table_version <= 1702894919606
2023-12-18 13:22:03,950 [generated in 0.00040s] {}
2023-12-18 13:22:03,964 Col ()
2023-12-18 13:22:03,964 COMMIT
2023-12-18 13:22:12,165 BEGIN (implicit)
2023-12-18 13:22:12,295 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:12,296 [generated in 0.12979s] [{'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 1, 'id': 1, 'platformable_id': 1}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 3, 'id': 2, 'platformable_id': 1}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 3, 'id': 3, 'platformable_id': 2}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 1, 'id': 4, 'platformable_id': 2}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 2, 'id': 5, 'platformable_id': 2}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 1, 'id': 6, 'platformable_id': 3}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 2, 'id': 7, 'platformable_id': 3}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'updated_at': datetime.datetime(2021, 7, 21, 8, 37, 55, tzinfo=UTC), 'platform_id': 3, 'id': 8, 'platformable_id': 3}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 3, 'id': 9999, 'platformable_id': 46252}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 1, 'id': 10000, 'platformable_id': 46253}]
2023-12-18 13:22:12,536 Col ()
2023-12-18 13:22:12,536 COMMIT
2023-12-18 13:22:14,114 BEGIN (implicit)
2023-12-18 13:22:14,189 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:14,189 [cached since 2.023s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 2, 'id': 10001, 'platformable_id': 46253}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 3, 'id': 10002, 'platformable_id': 46253}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 1, 'id': 10003, 'platformable_id': 46254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 2, 'id': 10004, 'platformable_id': 46254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 3, 'id': 10005, 'platformable_id': 46254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 1, 'id': 10006, 'platformable_id': 46255}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 2, 'id': 10007, 'platformable_id': 46255}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 41, 4, tzinfo=UTC), 'platform_id': 3, 'id': 10008, 'platformable_id': 46255}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 1, 'id': 19999, 'platformable_id': 49586}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 2, 'id': 20000, 'platformable_id': 49586}]
2023-12-18 13:22:14,443 Col ()
2023-12-18 13:22:14,444 COMMIT
2023-12-18 13:22:15,895 BEGIN (implicit)
2023-12-18 13:22:15,970 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:15,971 [cached since 3.805s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 3, 'id': 20001, 'platformable_id': 49586}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 1, 'id': 20002, 'platformable_id': 49587}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 2, 'id': 20003, 'platformable_id': 49587}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 3, 'id': 20004, 'platformable_id': 49587}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 1, 'id': 20005, 'platformable_id': 49588}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 2, 'id': 20006, 'platformable_id': 49588}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 3, 'id': 20007, 'platformable_id': 49588}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 42, 9, tzinfo=UTC), 'platform_id': 1, 'id': 20008, 'platformable_id': 49589}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 2, 'id': 29999, 'platformable_id': 52919}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 3, 'id': 30000, 'platformable_id': 52919}]
2023-12-18 13:22:16,207 Col ()
2023-12-18 13:22:16,208 COMMIT
2023-12-18 13:22:17,945 BEGIN (implicit)
2023-12-18 13:22:18,032 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:18,034 [cached since 5.868s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 1, 'id': 30001, 'platformable_id': 52920}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 2, 'id': 30002, 'platformable_id': 52920}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 3, 'id': 30003, 'platformable_id': 52920}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 1, 'id': 30004, 'platformable_id': 52921}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 2, 'id': 30005, 'platformable_id': 52921}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 3, 'id': 30006, 'platformable_id': 52921}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 1, 'id': 30007, 'platformable_id': 52922}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 43, 48, tzinfo=UTC), 'platform_id': 2, 'id': 30008, 'platformable_id': 52922}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 3, 'id': 39999, 'platformable_id': 56252}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 1, 'id': 40000, 'platformable_id': 56253}]
2023-12-18 13:22:18,340 Col ()
2023-12-18 13:22:18,341 COMMIT
2023-12-18 13:22:19,930 BEGIN (implicit)
2023-12-18 13:22:20,030 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:20,031 [cached since 7.865s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 2, 'id': 40001, 'platformable_id': 56253}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 3, 'id': 40002, 'platformable_id': 56253}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 1, 'id': 40003, 'platformable_id': 56254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 2, 'id': 40004, 'platformable_id': 56254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 3, 'id': 40005, 'platformable_id': 56254}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 1, 'id': 40006, 'platformable_id': 56255}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 2, 'id': 40007, 'platformable_id': 56255}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 1, 24, 9, 46, 30, tzinfo=UTC), 'platform_id': 3, 'id': 40008, 'platformable_id': 56255}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 1, 'id': 49999, 'platformable_id': 59532}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 2, 'id': 50000, 'platformable_id': 59532}]
2023-12-18 13:22:20,361 Col ()
2023-12-18 13:22:20,362 COMMIT
2023-12-18 13:22:21,911 BEGIN (implicit)
2023-12-18 13:22:21,993 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:21,993 [cached since 9.827s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 3, 'id': 50001, 'platformable_id': 59532}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 1, 'id': 50002, 'platformable_id': 59533}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 2, 'id': 50003, 'platformable_id': 59533}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 3, 'id': 50004, 'platformable_id': 59533}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 1, 'id': 50005, 'platformable_id': 59534}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 2, 'id': 50006, 'platformable_id': 59534}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 3, 'id': 50007, 'platformable_id': 59534}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 33, 17, tzinfo=UTC), 'platform_id': 1, 'id': 50008, 'platformable_id': 59535}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 1, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 1, tzinfo=UTC), 'platform_id': 2, 'id': 59999, 'platformable_id': 62859}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 1, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 1, tzinfo=UTC), 'platform_id': 3, 'id': 60000, 'platformable_id': 62859}]
2023-12-18 13:22:22,253 Col ()
2023-12-18 13:22:22,253 COMMIT
2023-12-18 13:22:24,212 BEGIN (implicit)
2023-12-18 13:22:24,277 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:24,277 [cached since 12.11s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 1, 'id': 60001, 'platformable_id': 62860}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 2, 'id': 60002, 'platformable_id': 62860}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 3, 'id': 60003, 'platformable_id': 62860}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 1, 'id': 60004, 'platformable_id': 62861}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 2, 'id': 60005, 'platformable_id': 62861}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 3, 'id': 60006, 'platformable_id': 62861}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 1, 'id': 60007, 'platformable_id': 62862}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 35, 2, tzinfo=UTC), 'platform_id': 2, 'id': 60008, 'platformable_id': 62862}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 3, 'id': 69999, 'platformable_id': 66183}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 1, 'id': 70000, 'platformable_id': 66184}]
2023-12-18 13:22:24,449 Col ()
2023-12-18 13:22:24,449 COMMIT
2023-12-18 13:22:25,562 BEGIN (implicit)
2023-12-18 13:22:25,607 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:25,607 [cached since 13.44s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 2, 'id': 70001, 'platformable_id': 66184}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 3, 'id': 70002, 'platformable_id': 66184}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 1, 'id': 70003, 'platformable_id': 66185}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 2, 'id': 70004, 'platformable_id': 66185}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 3, 'id': 70005, 'platformable_id': 66185}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 1, 'id': 70006, 'platformable_id': 66186}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 2, 'id': 70007, 'platformable_id': 66186}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 37, 27, tzinfo=UTC), 'platform_id': 3, 'id': 70008, 'platformable_id': 66186}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 1, 'id': 79999, 'platformable_id': 69507}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 2, 'id': 80000, 'platformable_id': 69507}]
2023-12-18 13:22:25,768 Col ()
2023-12-18 13:22:25,769 COMMIT
2023-12-18 13:22:26,926 BEGIN (implicit)
2023-12-18 13:22:26,980 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:26,982 [cached since 14.82s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 3, 'id': 80001, 'platformable_id': 69507}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 1, 'id': 80002, 'platformable_id': 69508}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 2, 'id': 80003, 'platformable_id': 69508}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 3, 'id': 80004, 'platformable_id': 69508}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 1, 'id': 80005, 'platformable_id': 69509}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 2, 'id': 80006, 'platformable_id': 69509}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 3, 'id': 80007, 'platformable_id': 69509}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 40, 35, tzinfo=UTC), 'platform_id': 1, 'id': 80008, 'platformable_id': 69510}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 28, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 28, tzinfo=UTC), 'platform_id': 2, 'id': 89999, 'platformable_id': 72832}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 3, 'id': 90000, 'platformable_id': 72832}]
2023-12-18 13:22:27,181 Col ()
2023-12-18 13:22:27,181 COMMIT
2023-12-18 13:22:28,717 BEGIN (implicit)
2023-12-18 13:22:28,771 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:28,773 [cached since 16.61s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 1, 'id': 90001, 'platformable_id': 72833}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 2, 'id': 90002, 'platformable_id': 72833}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 3, 'id': 90003, 'platformable_id': 72833}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 1, 'id': 90004, 'platformable_id': 72834}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 2, 'id': 90005, 'platformable_id': 72834}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 3, 'id': 90006, 'platformable_id': 72834}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 1, 'id': 90007, 'platformable_id': 72835}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 17, 14, 44, 29, tzinfo=UTC), 'platform_id': 2, 'id': 90008, 'platformable_id': 72835}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 3, 'id': 99999, 'platformable_id': 76158}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 1, 'id': 100000, 'platformable_id': 76159}]
2023-12-18 13:22:29,067 Col ()
2023-12-18 13:22:29,068 COMMIT
2023-12-18 13:22:30,645 BEGIN (implicit)
2023-12-18 13:22:30,702 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:30,702 [cached since 18.54s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 2, 'id': 100001, 'platformable_id': 76159}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 3, 'id': 100002, 'platformable_id': 76159}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 1, 'id': 100003, 'platformable_id': 76160}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 2, 'id': 100004, 'platformable_id': 76160}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 3, 'id': 100005, 'platformable_id': 76160}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 1, 'id': 100006, 'platformable_id': 76161}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 2, 'id': 100007, 'platformable_id': 76161}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 30, 57, tzinfo=UTC), 'platform_id': 3, 'id': 100008, 'platformable_id': 76161}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 1, 'id': 109999, 'platformable_id': 79487}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 2, 'id': 110000, 'platformable_id': 79487}]
2023-12-18 13:22:30,953 Col ()
2023-12-18 13:22:30,953 COMMIT
2023-12-18 13:22:32,013 BEGIN (implicit)
2023-12-18 13:22:32,053 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:32,054 [cached since 19.89s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 3, 'id': 110001, 'platformable_id': 79487}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 1, 'id': 110002, 'platformable_id': 79488}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 2, 'id': 110003, 'platformable_id': 79488}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 3, 'id': 110004, 'platformable_id': 79488}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 1, 'id': 110005, 'platformable_id': 79489}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 2, 'id': 110006, 'platformable_id': 79489}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 3, 'id': 110007, 'platformable_id': 79489}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 32, 21, tzinfo=UTC), 'platform_id': 1, 'id': 110008, 'platformable_id': 79490}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 2, 'id': 119999, 'platformable_id': 82808}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 3, 'id': 120000, 'platformable_id': 82808}]
2023-12-18 13:22:32,198 Col ()
2023-12-18 13:22:32,199 COMMIT
2023-12-18 13:22:33,345 BEGIN (implicit)
2023-12-18 13:22:33,400 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:33,400 [cached since 21.23s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 1, 'id': 120001, 'platformable_id': 82809}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 2, 'id': 120002, 'platformable_id': 82809}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 3, 'id': 120003, 'platformable_id': 82809}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 1, 'id': 120004, 'platformable_id': 82810}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 2, 'id': 120005, 'platformable_id': 82810}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 3, 'id': 120006, 'platformable_id': 82810}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 1, 'id': 120007, 'platformable_id': 82811}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 34, 24, tzinfo=UTC), 'platform_id': 2, 'id': 120008, 'platformable_id': 82811}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 3, 'id': 129999, 'platformable_id': 86130}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 1, 'id': 130000, 'platformable_id': 86131}]
2023-12-18 13:22:33,592 Col ()
2023-12-18 13:22:33,592 COMMIT
2023-12-18 13:22:35,026 BEGIN (implicit)
2023-12-18 13:22:35,087 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:35,087 [cached since 22.92s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 2, 'id': 130001, 'platformable_id': 86131}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 3, 'id': 130002, 'platformable_id': 86131}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 1, 'id': 130003, 'platformable_id': 86132}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 2, 'id': 130004, 'platformable_id': 86132}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 3, 'id': 130005, 'platformable_id': 86132}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 1, 'id': 130006, 'platformable_id': 86133}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 2, 'id': 130007, 'platformable_id': 86133}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 37, 7, tzinfo=UTC), 'platform_id': 3, 'id': 130008, 'platformable_id': 86133}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 1, 'id': 139999, 'platformable_id': 89461}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 2, 'id': 140000, 'platformable_id': 89461}]
2023-12-18 13:22:35,306 Col ()
2023-12-18 13:22:35,307 COMMIT
2023-12-18 13:22:36,751 BEGIN (implicit)
2023-12-18 13:22:36,811 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:36,812 [cached since 24.65s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 3, 'id': 140001, 'platformable_id': 89461}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 1, 'id': 140002, 'platformable_id': 89462}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 2, 'id': 140003, 'platformable_id': 89462}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 3, 'id': 140004, 'platformable_id': 89462}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 1, 'id': 140005, 'platformable_id': 89463}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 2, 'id': 140006, 'platformable_id': 89463}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 3, 'id': 140007, 'platformable_id': 89463}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 2, 23, 9, 41, 22, tzinfo=UTC), 'platform_id': 1, 'id': 140008, 'platformable_id': 89464}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 2, 'id': 149999, 'platformable_id': 92786}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 3, 'id': 150000, 'platformable_id': 92786}]
2023-12-18 13:22:37,040 Col ()
2023-12-18 13:22:37,041 COMMIT
2023-12-18 13:22:38,311 BEGIN (implicit)
2023-12-18 13:22:38,357 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:38,358 [cached since 26.19s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 1, 'id': 150001, 'platformable_id': 92787}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 2, 'id': 150002, 'platformable_id': 92787}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 3, 'id': 150003, 'platformable_id': 92787}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 1, 'id': 150004, 'platformable_id': 92788}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 2, 'id': 150005, 'platformable_id': 92788}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 3, 'id': 150006, 'platformable_id': 92788}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 1, 'id': 150007, 'platformable_id': 92789}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 32, 58, tzinfo=UTC), 'platform_id': 2, 'id': 150008, 'platformable_id': 92789}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 3, 'id': 159999, 'platformable_id': 96114}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 1, 'id': 160000, 'platformable_id': 96115}]
2023-12-18 13:22:38,523 Col ()
2023-12-18 13:22:38,524 COMMIT
2023-12-18 13:22:39,556 BEGIN (implicit)
2023-12-18 13:22:39,596 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:39,597 [cached since 27.43s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 2, 'id': 160001, 'platformable_id': 96115}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 3, 'id': 160002, 'platformable_id': 96115}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 1, 'id': 160003, 'platformable_id': 96116}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 2, 'id': 160004, 'platformable_id': 96116}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 3, 'id': 160005, 'platformable_id': 96116}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 1, 'id': 160006, 'platformable_id': 96117}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 2, 'id': 160007, 'platformable_id': 96117}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 34, 47, tzinfo=UTC), 'platform_id': 3, 'id': 160008, 'platformable_id': 96117}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 1, 'id': 169999, 'platformable_id': 99437}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 2, 'id': 170000, 'platformable_id': 99437}]
2023-12-18 13:22:39,750 Col ()
2023-12-18 13:22:39,751 COMMIT
2023-12-18 13:22:41,207 BEGIN (implicit)
2023-12-18 13:22:41,269 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:41,270 [cached since 29.1s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 3, 'id': 170001, 'platformable_id': 99437}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 1, 'id': 170002, 'platformable_id': 99438}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 2, 'id': 170003, 'platformable_id': 99438}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 3, 'id': 170004, 'platformable_id': 99438}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 1, 'id': 170005, 'platformable_id': 99439}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 2, 'id': 170006, 'platformable_id': 99439}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 3, 'id': 170007, 'platformable_id': 99439}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 37, 30, tzinfo=UTC), 'platform_id': 1, 'id': 170008, 'platformable_id': 99440}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 2, 'id': 179999, 'platformable_id': 102763}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 3, 'id': 180000, 'platformable_id': 102763}]
2023-12-18 13:22:41,464 Col ()
2023-12-18 13:22:41,465 COMMIT
2023-12-18 13:22:42,869 BEGIN (implicit)
2023-12-18 13:22:42,928 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:42,929 [cached since 30.76s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 1, 'id': 180001, 'platformable_id': 102764}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 2, 'id': 180002, 'platformable_id': 102764}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 3, 'id': 180003, 'platformable_id': 102764}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 1, 'id': 180004, 'platformable_id': 102765}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 2, 'id': 180005, 'platformable_id': 102765}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 3, 'id': 180006, 'platformable_id': 102765}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 1, 'id': 180007, 'platformable_id': 102766}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 40, 40, tzinfo=UTC), 'platform_id': 2, 'id': 180008, 'platformable_id': 102766}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 3, 'id': 189999, 'platformable_id': 106088}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 1, 'id': 190000, 'platformable_id': 106089}]
2023-12-18 13:22:43,151 Col ()
2023-12-18 13:22:43,152 COMMIT
2023-12-18 13:22:44,652 BEGIN (implicit)
2023-12-18 13:22:44,756 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:44,791 [cached since 32.62s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 2, 'id': 190001, 'platformable_id': 106089}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 3, 'id': 190002, 'platformable_id': 106089}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 1, 'id': 190003, 'platformable_id': 106090}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 2, 'id': 190004, 'platformable_id': 106090}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 3, 'id': 190005, 'platformable_id': 106090}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 1, 'id': 190006, 'platformable_id': 106091}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 2, 'id': 190007, 'platformable_id': 106091}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 25, 7, 45, 32, tzinfo=UTC), 'platform_id': 3, 'id': 190008, 'platformable_id': 106091}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 1, 'id': 199999, 'platformable_id': 109415}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 2, 'id': 200000, 'platformable_id': 109415}]
2023-12-18 13:22:45,091 Col ()
2023-12-18 13:22:45,091 COMMIT
2023-12-18 13:22:46,199 BEGIN (implicit)
2023-12-18 13:22:46,245 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:46,246 [cached since 34.08s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 3, 'id': 200001, 'platformable_id': 109415}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 1, 'id': 200002, 'platformable_id': 109416}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 2, 'id': 200003, 'platformable_id': 109416}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 3, 'id': 200004, 'platformable_id': 109416}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 1, 'id': 200005, 'platformable_id': 109417}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 2, 'id': 200006, 'platformable_id': 109417}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 3, 'id': 200007, 'platformable_id': 109417}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 20, 31, tzinfo=UTC), 'platform_id': 1, 'id': 200008, 'platformable_id': 109418}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 2, 'id': 209999, 'platformable_id': 112744}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 3, 'id': 210000, 'platformable_id': 112744}]
2023-12-18 13:22:46,410 Col ()
2023-12-18 13:22:46,410 COMMIT
2023-12-18 13:22:47,538 BEGIN (implicit)
2023-12-18 13:22:47,605 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:47,606 [cached since 35.44s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 1, 'id': 210001, 'platformable_id': 112745}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 2, 'id': 210002, 'platformable_id': 112745}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 3, 'id': 210003, 'platformable_id': 112745}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 1, 'id': 210004, 'platformable_id': 112746}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 2, 'id': 210005, 'platformable_id': 112746}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 3, 'id': 210006, 'platformable_id': 112746}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 1, 'id': 210007, 'platformable_id': 112747}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 22, 12, tzinfo=UTC), 'platform_id': 2, 'id': 210008, 'platformable_id': 112747}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 3, 'id': 219999, 'platformable_id': 116065}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 1, 'id': 220000, 'platformable_id': 116066}]
2023-12-18 13:22:47,819 Col ()
2023-12-18 13:22:47,819 COMMIT
2023-12-18 13:22:49,217 BEGIN (implicit)
2023-12-18 13:22:49,269 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:49,270 [cached since 37.1s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 2, 'id': 220001, 'platformable_id': 116066}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 3, 'id': 220002, 'platformable_id': 116066}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 1, 'id': 220003, 'platformable_id': 116067}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 2, 'id': 220004, 'platformable_id': 116067}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 3, 'id': 220005, 'platformable_id': 116067}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 1, 'id': 220006, 'platformable_id': 116068}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 2, 'id': 220007, 'platformable_id': 116068}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 25, 7, tzinfo=UTC), 'platform_id': 3, 'id': 220008, 'platformable_id': 116068}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 1, 'id': 229999, 'platformable_id': 119392}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 2, 'id': 230000, 'platformable_id': 119392}]
2023-12-18 13:22:49,470 Col ()
2023-12-18 13:22:49,470 COMMIT
2023-12-18 13:22:50,783 BEGIN (implicit)
2023-12-18 13:22:50,823 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:50,824 [cached since 38.66s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 3, 'id': 230001, 'platformable_id': 119392}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 1, 'id': 230002, 'platformable_id': 119393}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 2, 'id': 230003, 'platformable_id': 119393}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 3, 'id': 230004, 'platformable_id': 119393}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 1, 'id': 230005, 'platformable_id': 119394}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 2, 'id': 230006, 'platformable_id': 119394}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 3, 'id': 230007, 'platformable_id': 119394}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 28, 7, tzinfo=UTC), 'platform_id': 1, 'id': 230008, 'platformable_id': 119395}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 2, 'id': 239999, 'platformable_id': 122717}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 3, 'id': 240000, 'platformable_id': 122717}]
2023-12-18 13:22:50,973 Col ()
2023-12-18 13:22:50,974 COMMIT
2023-12-18 13:22:51,983 BEGIN (implicit)
2023-12-18 13:22:52,024 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:52,024 [cached since 39.86s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 1, 'id': 240001, 'platformable_id': 122718}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 2, 'id': 240002, 'platformable_id': 122718}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 3, 'id': 240003, 'platformable_id': 122718}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 1, 'id': 240004, 'platformable_id': 122719}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 2, 'id': 240005, 'platformable_id': 122719}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 3, 'id': 240006, 'platformable_id': 122719}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 1, 'id': 240007, 'platformable_id': 122720}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 3, 30, 8, 32, 32, tzinfo=UTC), 'platform_id': 2, 'id': 240008, 'platformable_id': 122720}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 1, 'id': 249999, 'platformable_id': 1889}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 2, 'id': 250000, 'platformable_id': 1889}]
2023-12-18 13:22:52,196 Col ()
2023-12-18 13:22:52,196 COMMIT
2023-12-18 13:22:53,318 BEGIN (implicit)
2023-12-18 13:22:53,386 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:53,387 [cached since 41.22s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 3, 'id': 250001, 'platformable_id': 1889}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 1, 'id': 250002, 'platformable_id': 1890}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 2, 'id': 250003, 'platformable_id': 1890}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 3, 'id': 250004, 'platformable_id': 1890}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 1, 'id': 250005, 'platformable_id': 1891}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 2, 'id': 250006, 'platformable_id': 1891}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 3, 'id': 250007, 'platformable_id': 1891}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 5, 10, 46, 26, tzinfo=UTC), 'platform_id': 1, 'id': 250008, 'platformable_id': 1892}  ... displaying 10 of 10000 total bound parameter sets ...  {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 2, 'id': 259999, 'platformable_id': 5203}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 3, 'id': 260000, 'platformable_id': 5203}]
2023-12-18 13:22:53,546 Col ()
2023-12-18 13:22:53,547 COMMIT
2023-12-18 13:22:54,222 BEGIN (implicit)
2023-12-18 13:22:54,223 EXISTS TABLE "test_schema"."model_has_platforms"
2023-12-18 13:22:54,223 [cached since 54.31s ago] {}
2023-12-18 13:22:54,227 Col ('result',)
2023-12-18 13:22:54,227 Row (1,)
2023-12-18 13:22:54,228 ROLLBACK
2023-12-18 13:22:54,231 BEGIN (implicit)
2023-12-18 13:22:54,231 ALTER TABLE test_schema.model_has_platforms DELETE WHERE _sdc_table_version <= 1702894919606
2023-12-18 13:22:54,232 [cached since 50.28s ago] {}
2023-12-18 13:22:54,243 Col ()
2023-12-18 13:22:54,243 COMMIT
2023-12-18 13:22:54,355 BEGIN (implicit)
2023-12-18 13:22:54,378 INSERT INTO test_schema.model_has_platforms
(platformable_type, created_at, updated_at, platform_id, id, platformable_id)
VALUES (%(platformable_type)s, %(created_at)s, %(updated_at)s, %(platform_id)s, %(id)s, %(platformable_id)s)
2023-12-18 13:22:54,379 [cached since 42.21s ago] [{'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 1, 'id': 260001, 'platformable_id': 5204}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 2, 'id': 260002, 'platformable_id': 5204}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 3, 'id': 260003, 'platformable_id': 5204}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 1, 'id': 260004, 'platformable_id': 5205}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 2, 'id': 260005, 'platformable_id': 5205}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 3, 'id': 260006, 'platformable_id': 5205}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 1, 'id': 260007, 'platformable_id': 5206}, {'platformable_type': 'episode', 'created_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 4, 12, 13, 10, 43, tzinfo=UTC), 'platform_id': 2, 'id': 260008, 'platformable_id': 5206}  ... displaying 10 of 5286 total bound parameter sets ...  {'platformable_type': 'menu', 'created_at': datetime.datetime(2022, 11, 9, 6, 37, 23, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 11, 9, 6, 37, 23, tzinfo=UTC), 'platform_id': 1, 'id': 265287, 'platformable_id': 71}, {'platformable_type': 'menu', 'created_at': datetime.datetime(2022, 11, 9, 6, 37, 23, tzinfo=UTC), 'updated_at': datetime.datetime(2022, 11, 9, 6, 37, 23, tzinfo=UTC), 'platform_id': 1, 'id': 265288, 'platformable_id': 72}]
2023-12-18 13:22:54,482 Col ()
2023-12-18 13:22:54,483 COMMIT

@edgarrmondragon
Copy link
Collaborator

edgarrmondragon commented Dec 19, 2023

@gkarugi Gotcha, thanks for sharing the debug log!

That confirms the culprit in https://github.com/shaped-ai/target-clickhouse/blob/f70e4a7f92162922dae0d7936639c794a837d41e/target_clickhouse/sinks.py#L114-L122.

The target copied the reference implementation in the SDK:

sdk/singer_sdk/sinks/sql.py

Lines 381 to 389 in 40b6333

if self.config.get("hard_delete", True):
with self.connector._connect() as conn, conn.begin(): # noqa: SLF001
conn.execute(
sqlalchemy.text(
f"DELETE FROM {self.full_table_name} " # noqa: S608
f"WHERE {self.version_column_name} <= {new_version}",
),
)
return

In the meantime you can try passing hard_delete: false as a loader setting to target-clickhouse.


And fixing this probably involves:

  1. Temporarily patching target-clickhouse by submitting a PR to change <= for <.
  2. Changing the SDK's default to perform soft-deletes.
  3. Fixing the SDK's implementation to make the filter <, not <=.
  4. Add a new connector method delete_old_versions that target-clickhouse can override in the next release of the SDK.

PS I've transferred the issue to meltano/sdk

@gkarugi
Copy link
Author

gkarugi commented Dec 19, 2023

Hello @edgarrmondragon Thanks for your help with this. I am just starting out with Meltano, so didn't have an idea where I should start debugging.

  1. I tested passing the config hard_delete: false. This fix worked.
    `- But a point to note, for a fresh sync, one needs to truncate or delete the DB table.
  2. changing <= to < as shown below didn't work as expected, the table got deleted anyway. I added logging and
    the WHERE clause translates to WHERE _sdc_table_version <1702988238996 . All records have 0 on the _sdc_table_version column, so this check is always true, and I think prompts it to delete the table.
      f"ALTER TABLE {self.full_table_name} DELETE "
      f"WHERE {self.version_column_name} < {new_version}",
  ), 

@edgarrmondragon
Copy link
Collaborator

@gkarugi I see, yeah all records seem to have a _sdc_table_version of 0 initially 🤔. I'm not sure if that's a version that the tap emits in an ACTIVATE_VERSION message, or for some reason a default value that Clickhouse is inserting.

Some debugging steps that might be useful (might try them myself at a later time if this is isn't fixed:

  1. Run meltano invoke tap-mysql > mysql.singer.jsonl with full-table replication for one table, and inspect the version values in ACTIVATE_VERSION messages.
  2. Investigate whether clickhouse/clickhouse-sqlalchemy needs any special treatment for nullable columns.

@gkarugi
Copy link
Author

gkarugi commented Dec 22, 2023

Hi @edgarrmondragon

I debugged as per your suggestion and the first option(Run meltano invoke tap-mysql > mysql.singer.jsonl).
mysql.singer.jsonl had a pretty big output, so i have picket the top and bottom and merged them below.

You can find the full log here

{"type": "SCHEMA", "stream": "schema_db-model_has_platforms", "schema": {"properties": {"updated_at": {"inclusion": "available", "format": "date-time", "type": ["null", "string"]}, "id": {"inclusion": "automatic", "minimum": 0, "maximum": 18446744073709551615, "type": ["null", "integer"]}, "platformable_type": {"inclusion": "available", "maxLength": 191, "type": ["null", "string"]}, "platform_id": {"inclusion": "available", "minimum": 0, "maximum": 18446744073709551615, "type": ["null", "integer"]}, "platformable_id": {"inclusion": "available", "minimum": 0, "maximum": 18446744073709551615, "type": ["null", "integer"]}, "created_at": {"inclusion": "available", "format": "date-time", "type": ["null", "string"]}}, "type": "object"}, "key_properties": ["id"]}
{"type": "ACTIVATE_VERSION", "stream": "schema_db-model_has_platforms", "version": 1703235588411}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 1, "platformable_type": "menu", "platform_id": 1, "platformable_id": 1, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 2, "platformable_type": "menu", "platform_id": 3, "platformable_id": 1, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 3, "platformable_type": "menu", "platform_id": 3, "platformable_id": 2, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 4, "platformable_type": "menu", "platform_id": 1, "platformable_id": 2, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 5, "platformable_type": "menu", "platform_id": 2, "platformable_id": 2, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 6, "platformable_type": "menu", "platform_id": 1, "platformable_id": 3, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 7, "platformable_type": "menu", "platform_id": 2, "platformable_id": 3, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 8, "platformable_type": "menu", "platform_id": 3, "platformable_id": 3, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 9, "platformable_type": "menu", "platform_id": 2, "platformable_id": 4, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 10, "platformable_type": "menu", "platform_id": 1, "platformable_id": 4, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 11, "platformable_type": "menu", "platform_id": 3, "platformable_id": 4, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 12, "platformable_type": "menu", "platform_id": 2, "platformable_id": 5, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 13, "platformable_type": "menu", "platform_id": 3, "platformable_id": 5, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 14, "platformable_type": "menu", "platform_id": 1, "platformable_id": 5, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 15, "platformable_type": "menu", "platform_id": 3, "platformable_id": 6, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 16, "platformable_type": "menu", "platform_id": 1, "platformable_id": 6, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 17, "platformable_type": "menu", "platform_id": 2, "platformable_id": 6, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 18, "platformable_type": "menu", "platform_id": 3, "platformable_id": 7, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 19, "platformable_type": "menu", "platform_id": 1, "platformable_id": 7, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 20, "platformable_type": "menu", "platform_id": 2, "platformable_id": 7, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 21, "platformable_type": "menu", "platform_id": 3, "platformable_id": 8, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 22, "platformable_type": "menu", "platform_id": 2, "platformable_id": 8, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:55+00:00", "id": 23, "platformable_type": "menu", "platform_id": 1, "platformable_id": 8, "created_at": "2021-07-21T08:37:55+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 24, "platformable_type": "menu", "platform_id": 1, "platformable_id": 9, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 25, "platformable_type": "menu", "platform_id": 2, "platformable_id": 9, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 26, "platformable_type": "menu", "platform_id": 2, "platformable_id": 10, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 27, "platformable_type": "menu", "platform_id": 2, "platformable_id": 11, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 28, "platformable_type": "menu", "platform_id": 1, "platformable_id": 11, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 29, "platformable_type": "menu", "platform_id": 2, "platformable_id": 12, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 30, "platformable_type": "menu", "platform_id": 3, "platformable_id": 12, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 31, "platformable_type": "menu", "platform_id": 1, "platformable_id": 12, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 32, "platformable_type": "menu", "platform_id": 1, "platformable_id": 13, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 33, "platformable_type": "menu", "platform_id": 1, "platformable_id": 14, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 34, "platformable_type": "menu", "platform_id": 1, "platformable_id": 15, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 35, "platformable_type": "menu", "platform_id": 3, "platformable_id": 15, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 36, "platformable_type": "menu", "platform_id": 2, "platformable_id": 15, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 37, "platformable_type": "menu", "platform_id": 1, "platformable_id": 16, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 38, "platformable_type": "menu", "platform_id": 3, "platformable_id": 16, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 39, "platformable_type": "menu", "platform_id": 1, "platformable_id": 17, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2021-07-21T08:37:56+00:00", "id": 40, "platformable_type": "menu", "platform_id": 2, "platformable_id": 17, "created_at": "2021-07-21T08:37:56+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:18:06+00:00", "id": 265271, "platformable_type": "banner_ad", "platform_id": 3, "platformable_id": 8, "created_at": "2022-08-03T12:18:06+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:04+00:00", "id": 265272, "platformable_type": "banner_ad", "platform_id": 1, "platformable_id": 9, "created_at": "2022-08-03T12:19:04+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:04+00:00", "id": 265273, "platformable_type": "banner_ad", "platform_id": 2, "platformable_id": 9, "created_at": "2022-08-03T12:19:04+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:04+00:00", "id": 265274, "platformable_type": "banner_ad", "platform_id": 3, "platformable_id": 9, "created_at": "2022-08-03T12:19:04+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:33+00:00", "id": 265275, "platformable_type": "banner_ad", "platform_id": 1, "platformable_id": 10, "created_at": "2022-08-03T12:19:33+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:33+00:00", "id": 265276, "platformable_type": "banner_ad", "platform_id": 2, "platformable_id": 10, "created_at": "2022-08-03T12:19:33+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-03T12:19:33+00:00", "id": 265277, "platformable_type": "banner_ad", "platform_id": 3, "platformable_id": 10, "created_at": "2022-08-03T12:19:33+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-23T14:20:41+00:00", "id": 265278, "platformable_type": "menu", "platform_id": 1, "platformable_id": 68, "created_at": "2022-08-23T14:20:41+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-23T14:20:41+00:00", "id": 265279, "platformable_type": "menu", "platform_id": 2, "platformable_id": 68, "created_at": "2022-08-23T14:20:41+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-23T14:20:41+00:00", "id": 265280, "platformable_type": "menu", "platform_id": 3, "platformable_id": 68, "created_at": "2022-08-23T14:20:41+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-08-23T14:20:51+00:00", "id": 265281, "platformable_type": "menu", "platform_id": 1, "platformable_id": 69, "created_at": "2022-08-23T14:20:51+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-09-15T07:44:05+00:00", "id": 265284, "platformable_type": "menu", "platform_id": 1, "platformable_id": 70, "created_at": "2022-09-15T07:44:05+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-09-15T07:44:05+00:00", "id": 265285, "platformable_type": "menu", "platform_id": 2, "platformable_id": 70, "created_at": "2022-09-15T07:44:05+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-09-15T07:44:05+00:00", "id": 265286, "platformable_type": "menu", "platform_id": 3, "platformable_id": 70, "created_at": "2022-09-15T07:44:05+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-11-09T06:37:23+00:00", "id": 265287, "platformable_type": "menu", "platform_id": 1, "platformable_id": 71, "created_at": "2022-11-09T06:37:23+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "RECORD", "stream": "schema_db-model_has_platforms", "record": {"updated_at": "2022-11-09T06:37:23+00:00", "id": 265288, "platformable_type": "menu", "platform_id": 1, "platformable_id": 72, "created_at": "2022-11-09T06:37:23+00:00"}, "version": 1703235588411, "time_extracted": "2023-12-22T08:59:52.729220Z"}
{"type": "STATE", "value": {"currently_syncing": "schema_db-model_has_platforms", "bookmarks": {"schema_db-model_has_platforms": {"max_pk_values": {"id": 265288}, "last_pk_fetched": {"id": 265288}}}}}
{"type": "ACTIVATE_VERSION", "stream": "schema_db-model_has_platforms", "version": 1703235588411}
{"type": "STATE", "value": {"currently_syncing": "schema_db-model_has_platforms", "bookmarks": {"schema_db-model_has_platforms": {"initial_full_table_complete": true}}}}
{"type": "STATE", "value": {"currently_syncing": null, "bookmarks": {"schema_db-model_has_platforms": {"initial_full_table_complete": true}}}}

@gkarugi
Copy link
Author

gkarugi commented Jan 24, 2024

Hi @edgarrmondragon. Thanks for your assistance so far.

Is there any way I can assist with progressing this?

@edgarrmondragon
Copy link
Collaborator

@gkarugi The hard_delete will be resolved in the next SDK release. As for the ACTIVATE_VERSION issue with target-clickhouse, I haven't had time to verify why the column is filled with 0s, but I suspect

sdk/singer_sdk/sinks/sql.py

Lines 375 to 379 in c8e2461

self.connector.prepare_column(
self.full_table_name,
self.version_column_name,
sql_type=sa.types.Integer(),
)

is creating a column with a 0 value as default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants