airbytehq / airbyte

The leading data integration platform for ETL / ELT data pipelines from APIs, databases & files to data warehouses, data lakes & data lakehouses. Both self-hosted and Cloud-hosted.
https://airbyte.com
Other
16.27k stars 4.15k forks source link

Smartsheets connector raw key:value pair data is scrambled. #8099

Closed w-gitops closed 2 years ago

w-gitops commented 3 years ago
## Enviroment - **Airbyte version**: 0.33.20-alpha - **OS Version / Instance**: Windows 10 - **Deployment**: docker - **Source Connector and version**: --> Smartsheets 0.1.6 - **Destination Connector and version**: postgres 0.3.12 - **Severity**: High - **Step where error happened**: sync job ## Current Behavior In the raw data, The connector fetches key value pairs, but the key doesn't match the right value. "key-a":"value-c","key-b":"value-a", etc.. As a result the DBT normalization fails, when a type like a date is fed a string. This problem may not be apparent under some conditions, as numbers and strings are treated the same by smartsheets. So most sheets might not have a mixed type failure unless in this case a date is involved. ## Expected Behavior "KeyA":"ValueA", "KeyB":ValueB ## Logs
LOG ``` 2021-11-18 15:16:45 INFO () WorkerRun(call):47 - Executing worker wrapper. Airbyte version: 0.30.20-alpha 2021-11-18 15:16:45 INFO () TemporalAttemptExecution(get):94 - Executing worker wrapper. Airbyte version: 0.30.20-alpha 2021-11-18 15:16:45 WARN () Databases(createPostgresDatabaseWithRetry):38 - Waiting for database to become available... 2021-11-18 15:16:45 INFO () JobsDatabaseInstance(lambda$static$2):25 - Testing if jobs database is ready... 2021-11-18 15:16:45 INFO () Databases(createPostgresDatabaseWithRetry):55 - Database available! 2021-11-18 15:16:45 INFO () DefaultReplicationWorker(run):82 - start sync worker. job id: 101 attempt id: 2 2021-11-18 15:16:45 INFO () DefaultReplicationWorker(run):91 - configured sync modes: {null.Triton 705 | 2021-W42 Cable Length Problems=full_refresh - overwrite} 2021-11-18 15:16:45 INFO () DefaultAirbyteDestination(start):58 - Running destination... 2021-11-18 15:16:45 INFO () LineGobbler(voidCall):65 - Checking if airbyte/destination-postgres:0.3.12 exists... 2021-11-18 15:16:45 INFO () LineGobbler(voidCall):65 - airbyte/destination-postgres:0.3.12 was found locally. 2021-11-18 15:16:45 INFO () DockerProcessFactory(create):127 - Preparing command: docker run --rm --init -i -v airbyte_workspace:/data -v /tmp/airbyte_local:/local -w /data/101/2 --network host --log-driver none airbyte/destination-postgres:0.3.12 write --config destination_config.json --catalog destination_catalog.json 2021-11-18 15:16:45 INFO () LineGobbler(voidCall):65 - Checking if airbyte/source-smartsheets:0.1.6 exists... 2021-11-18 15:16:45 INFO () LineGobbler(voidCall):65 - airbyte/source-smartsheets:0.1.6 was found locally. 2021-11-18 15:16:45 INFO () DockerProcessFactory(create):127 - Preparing command: docker run --rm --init -i -v airbyte_workspace:/data -v /tmp/airbyte_local:/local -w /data/101/2 --network host --log-driver none airbyte/source-smartsheets:0.1.6 read --config source_config.json --catalog source_catalog.json --state input_state.json 2021-11-18 15:16:45 INFO () DefaultReplicationWorker(run):119 - Waiting for source thread to join. 2021-11-18 15:16:45 INFO () DefaultReplicationWorker(lambda$getReplicationRunnable$2):190 - Replication thread started. 2021-11-18 15:16:45 INFO () DefaultReplicationWorker(lambda$getDestinationOutputRunnable$3):226 - Destination output thread started. 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.d.p.PostgresDestination(main):69 - {} - starting destination: class io.airbyte.integrations.destination.postgres.PostgresDestination 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.b.IntegrationRunner(run):76 - {} - Running integration: io.airbyte.integrations.base.ssh.SshWrappedDestination 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.b.IntegrationCliParser(parseOptions):118 - {} - integration args: {catalog=destination_catalog.json, write=null, config=destination_config.json} 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.b.IntegrationRunner(run):80 - {} - Command: WRITE 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.b.IntegrationRunner(run):81 - {} - Integration config: IntegrationConfig{command=WRITE, configPath='destination_config.json', catalogPath='destination_catalog.json', statePath='null'} 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 WARN c.n.s.JsonMetaSchema(newValidator):338 - {} - Unknown keyword order - you should define your own Meta Schema. If the keyword is irrelevant for validation, just use a NonValidationKeyword 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 WARN c.n.s.JsonMetaSchema(newValidator):338 - {} - Unknown keyword examples - you should define your own Meta Schema. If the keyword is irrelevant for validation, just use a NonValidationKeyword 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 WARN c.n.s.JsonMetaSchema(newValidator):338 - {} - Unknown keyword airbyte_secret - you should define your own Meta Schema. If the keyword is irrelevant for validation, just use a NonValidationKeyword 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 WARN c.n.s.JsonMetaSchema(newValidator):338 - {} - Unknown keyword multiline - you should define your own Meta Schema. If the keyword is irrelevant for validation, just use a NonValidationKeyword 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.b.s.SshTunnel(getInstance):170 - {} - Starting connection with method: NO_TUNNEL 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$toWriteConfig$0):96 - {} - Write config: WriteConfig{streamName=Triton 705 | 2021-W42 Cable Length Problems, namespace=ss_raw, outputSchemaName=ss_raw, tmpTableName=_airbyte_tmp_dgo_Triton_705___2021_W42_Cable_Length_Problems, outputTableName=_airbyte_raw_Triton_705___2021_W42_Cable_Length_Problems, syncMode=overwrite} 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.d.b.BufferedStreamConsumer(startTracked):124 - {} - class io.airbyte.integrations.destination.buffered_stream_consumer.BufferedStreamConsumer started. 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onStartFunction$1):121 - {} - Preparing tmp tables in destination started for 1 streams 2021-11-18 15:16:46 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:46 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onStartFunction$1):125 - {} - Preparing tmp table in destination started for stream Triton 705 | 2021-W42 Cable Length Problems. schema: ss_raw, tmp table name: _airbyte_tmp_dgo_Triton_705___2021_W42_Cable_Length_Problems 2021-11-18 15:16:48 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:48 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onStartFunction$1):131 - {} - Preparing tables in destination completed. 2021-11-18 15:16:54 INFO () DefaultReplicationWorker(run):121 - Source thread complete. 2021-11-18 15:16:54 INFO () DefaultReplicationWorker(run):122 - Waiting for destination thread to join. 2021-11-18 15:16:54 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:54 INFO i.a.i.b.FailureTrackingAirbyteMessageConsumer(close):60 - {} - Airbyte message consumer: succeeded. 2021-11-18 15:16:54 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:54 INFO i.a.i.d.b.BufferedStreamConsumer(close):199 - {} - executing on success close procedure. 2021-11-18 15:16:55 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:55 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):160 - {} - Finalizing tables in destination started for 1 streams 2021-11-18 15:16:55 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:55 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):165 - {} - Finalizing stream Triton 705 | 2021-W42 Cable Length Problems. schema ss_raw, tmp table _airbyte_tmp_dgo_Triton_705___2021_W42_Cable_Length_Problems, final table _airbyte_raw_Triton_705___2021_W42_Cable_Length_Problems 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):178 - {} - Executing finalization of tables. 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):180 - {} - Finalizing tables in destination completed. 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):183 - {} - Cleaning tmp tables in destination started for 1 streams 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):187 - {} - Cleaning tmp table in destination started for stream Triton 705 | 2021-W42 Cable Length Problems. schema ss_raw, tmp table name: _airbyte_tmp_dgo_Triton_705___2021_W42_Cable_Length_Problems 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.j.JdbcBufferedConsumerFactory(lambda$onCloseFunction$3):192 - {} - Cleaning tmp tables in destination completed. 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.b.IntegrationRunner(run):133 - {} - Completed integration: io.airbyte.integrations.base.ssh.SshWrappedDestination 2021-11-18 15:16:56 INFO () DefaultAirbyteStreamFactory(lambda$create$0):53 - 2021-11-18 15:16:56 INFO i.a.i.d.p.PostgresDestination(main):71 - {} - completed destination: class io.airbyte.integrations.destination.postgres.PostgresDestination 2021-11-18 15:16:56 INFO () DefaultReplicationWorker(run):124 - Destination thread complete. 2021-11-18 15:16:56 INFO () DefaultReplicationWorker(run):152 - sync summary: io.airbyte.config.ReplicationAttemptSummary@67852ab8[status=completed,recordsSynced=478,bytesSynced=1406131,startTime=1637248605255,endTime=1637248616466] 2021-11-18 15:16:56 INFO () DefaultReplicationWorker(run):161 - Source did not output any state messages 2021-11-18 15:16:56 WARN () DefaultReplicationWorker(run):169 - State capture: No new state, falling back on input state: io.airbyte.config.State@261bd7c7[state={}] 2021-11-18 15:16:56 INFO () TemporalAttemptExecution(get):115 - Stopping cancellation check scheduling... 2021-11-18 15:16:56 INFO () SyncWorkflow$ReplicationActivityImpl(replicate):178 - sync summary: io.airbyte.config.StandardSyncOutput@127c1349[standardSyncSummary=io.airbyte.config.StandardSyncSummary@12d7895e[status=completed,recordsSynced=478,bytesSynced=1406131,startTime=1637248605255,endTime=1637248616466],state=io.airbyte.config.State@261bd7c7[state={}],outputCatalog=io.airbyte.protocol.models.ConfiguredAirbyteCatalog@cf7af28[streams=[io.airbyte.protocol.models.ConfiguredAirbyteStream@64a65c1a[stream=io.airbyte.protocol.models.AirbyteStream@1632ed9c[name=Triton 705 | 2021-W42 Cable Length Problems,jsonSchema={"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"#":{"type":"string"},"FU":{"type":"string"},"BGR":{"type":"string"},"POS":{"type":"string"},"RPS":{"type":"string"},"SRTP":{"type":"string"},"EndEU":{"type":"string"},"Eq DK":{"type":"string"},"ItemID":{"type":"string"},"Status":{"type":"string"},"is_12G":{"type":"string"},"is_dmx":{"type":"string"},"End EEL":{"type":"string"},"EndDeck":{"type":"string"},"EndRoom":{"type":"string"},"StartEU":{"type":"string"},"Column58":{"type":"string"},"EndBlock":{"type":"string"},"Equip FZ":{"type":"string"},"Resolved":{"type":"string"},"AreaLabel":{"type":"string"},"CableType":{"type":"string"},"Highlight":{"type":"string"},"OldStatus":{"type":"string"},"Start EEL":{"type":"string"},"StartDeck":{"type":"string"},"StartRoom":{"type":"string"},"Lock Owner":{"type":"string"},"StartBlock":{"type":"string"},"CableLength":{"type":"string"},"Description":{"type":"string"},"End is Rack":{"type":"string"},"EndFirezone":{"type":"string"},"EvolutionID":{"type":"string"},"WTIRelevant":{"type":"string"},"end_is_rack":{"type":"string"},"venue_4code":{"type":"string"},"7500 End JLM":{"type":"string"},"8100 End JLM":{"type":"string"},"Display name":{"type":"string"},"EndEquipment":{"type":"string"},"EndFromBelow":{"type":"string"},"Reviewed HMC":{"type":"string"},"plant_number":{"type":"string"},"8100 Ticketed":{"type":"string"},"CableLengthWD":{"type":"string"},"Creation date":{"type":"string"},"DistanceCable":{"type":"string"},"EndEntryPoint":{"type":"string"},"Flag for 7500":{"type":"string"},"Flag for 8100":{"type":"string"},"Start is Rack":{"type":"string"},"StartFirezone":{"type":"string"},"start_is_rack":{"type":"string"},"7500 Start JLM":{"type":"string"},"8100 Start JLM":{"type":"string"},"BGRResponsible":{"type":"string"},"End JLM (Dash)":{"type":"string"},"EndCompartment":{"type":"string"},"EndExtraLength":{"type":"string"},"Instance Title":{"type":"string"},"Mailed to Yard":{"type":"string"},"Probably Fixed":{"type":"string"},"StartEquipment":{"type":"string"},"StartFromBelow":{"type":"string"},"7500 Cable Type":{"type":"string"},"Called Out 0100":{"type":"string"},"MarkPointLength":{"type":"string"},"ProductionStage":{"type":"string"},"SRTPDescription":{"type":"string"},"StartEntryPoint":{"type":"string"},"DrawingRelevance":{"type":"string"},"Not Easily Fixed":{"type":"string"},"Override End TLA":{"type":"string"},"Rack to Rack Tie":{"type":"string"},"Start JLM (Dash)":{"type":"string"},"StartCompartment":{"type":"string"},"StartExtraLength":{"type":"string"},"CableDescription1":{"type":"string"},"CableDescription2":{"type":"string"},"CableDescription3":{"type":"string"},"Description Error":{"type":"string"},"EndExtraLengthEQT":{"type":"string"},"Last modification":{"type":"string"},"MarkPointCableway":{"type":"string"},"Not a 7500 Change":{"type":"string"},"RPSRedundantCable":{"type":"string"},"Rev Report | Date":{"type":"string","format":"date"},"7500 Description 1":{"type":"string"},"7500 Description 2":{"type":"string"},"8100 Description 1":{"type":"string"},"8100 Description 2":{"type":"string"},"8100 Description 3":{"type":"string"},"Calculated End TLA":{"type":"string"},"Override Start TLA":{"type":"string"},"Revised Cable Type":{"type":"string"},"SRTPRedundantCable":{"type":"string"},"Has Fiber Available":{"type":"string"},"StartExtraLengthEQT":{"type":"string"},"Yard Problem Status":{"type":"string"},"Calculated Start TLA":{"type":"string"},"EndEquipmentPosition":{"type":"string"},"MarkPointDescription":{"type":"string"},"HMC Internal Comments":{"type":"string"},"IgnoreStatusTransition":{"type":"string"},"Revised End JLM (Dash)":{"type":"string"},"StartEquipmentPosition":{"type":"string"},"Yard Flipped Start-End":{"type":"string"},"Mail Resolution to Yard":{"type":"string"},"8100 Adjustment Complete":{"type":"string"},"HMC Suggested Resolution":{"type":"string"},"Revised Start JLM (Dash)":{"type":"string"},"Revised HMC End Equipment":{"type":"string"},"Rev Stats | Type of Change":{"type":"string"},"Revised HMC StartEquipment":{"type":"string"}}},supportedSyncModes=[full_refresh],sourceDefinedCursor=,defaultCursorField=[],sourceDefinedPrimaryKey=[],namespace=ss_raw,additionalProperties={}],syncMode=full_refresh,cursorField=[],destinationSyncMode=overwrite,primaryKey=[],additionalProperties={}]],additionalProperties={}]] 2021-11-18 15:16:56 INFO () TemporalAttemptExecution(get):94 - Executing worker wrapper. Airbyte version: 0.30.20-alpha 2021-11-18 15:16:56 WARN () Databases(createPostgresDatabaseWithRetry):38 - Waiting for database to become available... 2021-11-18 15:16:56 INFO () JobsDatabaseInstance(lambda$static$2):25 - Testing if jobs database is ready... 2021-11-18 15:16:56 INFO () Databases(createPostgresDatabaseWithRetry):55 - Database available! 2021-11-18 15:16:56 INFO () DefaultNormalizationWorker(run):46 - Running normalization. 2021-11-18 15:16:56 INFO () DefaultNormalizationRunner(runProcess):107 - Running with normalization version: airbyte/normalization:0.1.52 2021-11-18 15:16:56 INFO () LineGobbler(voidCall):65 - Checking if airbyte/normalization:0.1.52 exists... 2021-11-18 15:16:56 INFO () LineGobbler(voidCall):65 - airbyte/normalization:0.1.52 was found locally. 2021-11-18 15:16:56 INFO () DockerProcessFactory(create):127 - Preparing command: docker run --rm --init -i -v airbyte_workspace:/data -v /tmp/airbyte_local:/local -w /data/101/2/normalize --network host --log-driver none airbyte/normalization:0.1.52 run --integration-type postgres --config destination_config.json --catalog destination_catalog.json 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Running: transform-config --config destination_config.json --integration-type postgres --out /data/101/2/normalize 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Namespace(config='destination_config.json', integration_type=, out='/data/101/2/normalize') 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - transform_postgres 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Running: transform-catalog --integration-type postgres --profile-config-dir /data/101/2/normalize --catalog destination_catalog.json --out /data/101/2/normalize/models/generated/ --json-column _airbyte_data 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Processing destination_catalog.json... 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Generating airbyte_ctes/ss_raw/triton_705___2021_w42_cable_length_problems_ab1.sql from Triton 705 | 2021-W42 Cable Length Problems 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Generating airbyte_ctes/ss_raw/triton_705___2021_w42_cable_length_problems_ab2.sql from Triton 705 | 2021-W42 Cable Length Problems 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Truncating _airbyte_triton_705___2021_w42_cable_length_problems_hashid (#59) to _airbyte_triton_705__ength_problems_hashid (#43) 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Generating airbyte_ctes/ss_raw/triton_705___2021_w42_cable_length_problems_ab3.sql from Triton 705 | 2021-W42 Cable Length Problems 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Truncating _airbyte_triton_705___2021_w42_cable_length_problems_hashid (#59) to _airbyte_triton_705__ength_problems_hashid (#43) 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Generating airbyte_tables/ss_raw/triton_705___2021_w42_cable_length_problems.sql from Triton 705 | 2021-W42 Cable Length Problems 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - detected no config file for ssh, assuming ssh is off. 2021-11-18 15:16:57 INFO () LineGobbler(voidCall):65 - Running with dbt=0.19.0 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - [WARNING]: Configuration paths exist in your dbt_project.yml file which do not apply to any resources. 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - There are 1 unused configuration paths: 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - - models.airbyte_utils.generated.airbyte_views 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - Found 4 models, 0 tests, 0 snapshots, 0 analyses, 422 macros, 0 operations, 0 seed files, 1 source, 0 exposures 2021-11-18 15:16:58 INFO () LineGobbler(voidCall):65 - 2021-11-18 15:17:01 INFO () LineGobbler(voidCall):65 - 15:17:01 | Concurrency: 32 threads (target='prod') 2021-11-18 15:17:01 INFO () LineGobbler(voidCall):65 - 15:17:01 | 2021-11-18 15:17:01 INFO () LineGobbler(voidCall):65 - 15:17:01 | 1 of 1 START table model ss_raw.triton_705___2021_w42_cable_length_problems.................................. [RUN] 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 15:17:03 | 1 of 1 ERROR creating table model ss_raw.triton_705___2021_w42_cable_length_problems......................... [ERROR in 1.21s] 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 15:17:03 | 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 15:17:03 | Finished running 1 table model in 4.93s. 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - Completed with 1 error and 0 warnings: 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - Database Error in model triton_705___2021_w42_cable_length_problems (models/generated/airbyte_tables/ss_raw/triton_705___2021_w42_cable_length_problems.sql) 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - invalid input syntax for type date: "false" 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - compiled SQL at ../build/run/airbyte_utils/models/generated/airbyte_tables/ss_raw/triton_705___2021_w42_cable_length_problems.sql 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - 2021-11-18 15:17:03 INFO () LineGobbler(voidCall):65 - Done. PASS=0 WARN=0 ERROR=1 SKIP=0 TOTAL=1 2021-11-18 15:17:04 INFO () TemporalAttemptExecution(lambda$getWorkerThread$1):148 - Completing future exceptionally... io.airbyte.workers.WorkerException: Normalization Failed. at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:60) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:18) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.lambda$getWorkerThread$1(TemporalAttemptExecution.java:145) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at java.lang.Thread.run(Thread.java:832) [?:?] Caused by: io.airbyte.workers.WorkerException: Normalization Failed. at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:57) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] ... 3 more Suppressed: io.airbyte.workers.WorkerException: Normalization process wasn't successful at io.airbyte.workers.normalization.DefaultNormalizationRunner.close(DefaultNormalizationRunner.java:135) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:45) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:18) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.lambda$getWorkerThread$1(TemporalAttemptExecution.java:145) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at java.lang.Thread.run(Thread.java:832) [?:?] 2021-11-18 15:17:04 INFO () TemporalAttemptExecution(get):115 - Stopping cancellation check scheduling... 2021-11-18 15:17:04 WARN () POJOActivityTaskHandler$POJOActivityImplementation(execute):243 - Activity failure. ActivityId=613ba2c9-ac5b-3dc3-8045-4d1e7f2b773f, activityType=Normalize, attempt=1 java.util.concurrent.ExecutionException: io.airbyte.workers.WorkerException: Normalization Failed. at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:395) ~[?:?] at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2063) ~[?:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.get(TemporalAttemptExecution.java:113) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.SyncWorkflow$NormalizationActivityImpl.normalize(SyncWorkflow.java:299) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?] at io.temporal.internal.sync.POJOActivityTaskHandler$POJOActivityInboundCallsInterceptor.execute(POJOActivityTaskHandler.java:277) ~[temporal-sdk-1.0.4.jar:?] at io.temporal.internal.sync.POJOActivityTaskHandler$POJOActivityImplementation.execute(POJOActivityTaskHandler.java:216) ~[temporal-sdk-1.0.4.jar:?] at io.temporal.internal.sync.POJOActivityTaskHandler.handle(POJOActivityTaskHandler.java:181) ~[temporal-sdk-1.0.4.jar:?] at io.temporal.internal.worker.ActivityWorker$TaskHandlerImpl.handle(ActivityWorker.java:192) ~[temporal-sdk-1.0.4.jar:?] at io.temporal.internal.worker.ActivityWorker$TaskHandlerImpl.handle(ActivityWorker.java:154) ~[temporal-sdk-1.0.4.jar:?] at io.temporal.internal.worker.PollTaskExecutor.lambda$process$0(PollTaskExecutor.java:73) ~[temporal-sdk-1.0.4.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?] at java.lang.Thread.run(Thread.java:832) [?:?] Caused by: io.airbyte.workers.WorkerException: Normalization Failed. at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:60) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:18) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.lambda$getWorkerThread$1(TemporalAttemptExecution.java:145) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] ... 1 more Caused by: io.airbyte.workers.WorkerException: Normalization Failed. at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:57) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:18) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.lambda$getWorkerThread$1(TemporalAttemptExecution.java:145) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] ... 1 more Suppressed: io.airbyte.workers.WorkerException: Normalization process wasn't successful at io.airbyte.workers.normalization.DefaultNormalizationRunner.close(DefaultNormalizationRunner.java:135) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:45) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.DefaultNormalizationWorker.run(DefaultNormalizationWorker.java:18) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at io.airbyte.workers.temporal.TemporalAttemptExecution.lambda$getWorkerThread$1(TemporalAttemptExecution.java:145) ~[io.airbyte-airbyte-workers-0.30.20-alpha.jar:?] at java.lang.Thread.run(Thread.java:832) [?:?] ```
## Steps to Reproduce 1. 2. 3. ## Are you willing to submit a PR? If I can get my dev environment up and running
tehnorm commented 2 years ago

Also seeing this issue as well. Syncing from Smart Sheet to Postgres

Smart Sheet Row

Job No Name Estimator Entry Completed Take Off Excel CS Sheet Excel CS Sheet Sub Sheet Name Multiple Rows Aggregate Project Non-standard takeoff? Take Off Type Region Specific Bldg Type Structural Eng Architect Unit Count Gross SQFT Porch SQFT Below Podium Wall Height L1 BC Wall Hgt L2 BC Wall Hgt L3 BC Wall Hgt L4 BC Wall Hgt L5 BC Wall Hgt Tall @ Parallel GSF Walls below Podium GSF L1 Walls GSF L2 Walls GSF L3 Walls GSF L4 Walls GSF L5 Walls GSF L1 Floors GSF L2 Floors GSF L3 Floors GSF L4 Floors GSF L5 Floors Roof GSF Labor Incld? Walls Incld? Panels? Floors Incld? Roof Incld? Hardware Incld? Win & Doors Incld? Building Wrap Incld?
GA20-0440-0 Modera Name Yes https://box.com/s/ https://app.box.com/file/ 2-1-21 Final Sale       Full South East Type III – Apartments - 5 Levels Ellinwood & Machado Cooper Carry 194 282046 11390 0 9 9 9 9 11   0 45800 53146 57818 57805 56087 0 45293 52821 57194 57189 57231 TRUE TRUE   TRUE TRUE TRUE TRUE TRUE

_airbyte_data payload

{
  "Name": "GA20-0440-0",
  "Job No": "Modera",
  "Region": "name@test.com",
  "Panels?": "Yes",
  "Roof GSF": "https://box.com/s/",
  "Architect": "https://app.box.com/file/",
  "Estimator": "2-1-21 Final Sale",
  "Gross SQFT": "",
  "Porch SQFT": "",
  "Unit Count": "",
  "Roof Incld?": "Full",
  "GSF L1 Walls": "South East",
  "GSF L2 Walls": "Type III – Apartments - 5 Levels",
  "GSF L3 Walls": "Ellinwood & Machado",
  "GSF L4 Walls": "Cooper Carry",
  "GSF L5 Walls": 194,
  "Labor Incld?": 282046,
  "Walls Incld?": 11390,
  "Floors Incld?": 0,
  "GSF L1 Floors": 9,
  "GSF L2 Floors": 9,
  "GSF L3 Floors": 9,
  "GSF L4 Floors": 9,
  "GSF L5 Floors": 11,
  "Multiple Rows": "",
  "Take Off Type": 0,
  "CS Sheet Excel": 45800,
  "L1 BC Wall Hgt": 53146,
  "L2 BC Wall Hgt": 57818,
  "L3 BC Wall Hgt": 57805,
  "L4 BC Wall Hgt": 56087,
  "L5 BC Wall Hgt": 0,
  "Structural Eng": 45293,
  "Take Off Excel": 52821,
  "Entry Completed": 57194,
  "Hardware Incld?": 57189,
  "Tall @ Parallel": 57231,
  "Aggregate Project": true,
  "Specific Bldg Type": true,
  "Win & Doors Incld?": "",
  "Building Wrap Incld?": true,
  "Non-standard takeoff?": true,
  "GSF Walls below Podium": true,
  "CS Sheet Sub Sheet Name": true,
  "Below Podium Wall Height": true
}
w-gitops commented 2 years ago

I did a basic map analysis, and it looks like it's 1 field off: In this case, primary column is 1, and the other cell entries have the number that should correspond to the column. image

This is also true in the raw data, so it's not a normalization problem: image

@zzstoatzz Any ideas? Thanks!

Side note: I am also syncing to Postgres. Perhaps that's the common denominator? I'll try snowflake after the holiday break.

w-gitops commented 2 years ago

@tehnorm Maybe we should try a local CSV destination or similar, and see if it's a source problem or a mapping to destination problem.. It's going to be a minute before I get to that..

zzstoatzz commented 2 years ago

@willsargent hey will!

I'd really like to help resolve this, but I'm currently swamped. I believe what may have happened is that I fixed this myself and built a new image locally but forgot to go through with pushing this to airbyte master.

This should be the source I built the working image from - I hope this is somewhat helpful, I'll return to this when I can!

https://github.com/zzstoatzz/airbyte/blob/master/airbyte-integrations/connectors/source-smartsheets/source_smartsheets/source.py

w-gitops commented 2 years ago

Thanks for this @zzstoatzz! I'll take a look at this and see what we can do on that front. Really appreciate your work on this! Have a great Holiday!

w-gitops commented 2 years ago

@zzstoatzz Looks like that fixes it! I'll work through the PR process on this, all credit to you of course! Thanks again!

Madhukarsprabhakara commented 2 years ago

@willsargent I tried this fix but in my case it still doesn't not work. I am running airbyte on docker container and I did the following

  1. Overwrote the source.py for smartsheets with the one attached above
  2. Compiled airbyte by running "./gradlew :airbyte-integrations:connectors:source_smartsheets:build"
  3. docker-compose up

Did I do anything wrong?

w-gitops commented 2 years ago

Hi Madhu,

I can help. let me get in the office tomorrow and i will write it up.

you don't need to use gradelw


From: Madhu Prabhakara @.***> Sent: Sunday, February 20, 2022 4:00 PM To: airbytehq/airbyte Cc: Will Sargent; Mention Subject: Re: [airbytehq/airbyte] Smartsheets connector raw key:value pair data is scrambled. (Issue #8099)

@willsargenthttps://github.com/willsargent I tried this fix but in my case it still doesn't not work. I am running airbyte on docker container and I did the following

  1. Overwrote the source.py for smartsheets with the one attached above
  2. Compiled airbyte by running "./gradlew :airbyte-integrations:connectors:source_smartsheets:build"
  3. docker-compose up

Did I do anything wrong?

— Reply to this email directly, view it on GitHubhttps://github.com/airbytehq/airbyte/issues/8099#issuecomment-1046319802, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABBKOO6MNIT2LANZH2WAJDDU4FI6ZANCNFSM5IJ6YGSQ. You are receiving this because you were mentioned.Message ID: @.***>

Madhukarsprabhakara commented 2 years ago

Thanks a lot @willsargent . I really appreciate the help!

Madhukarsprabhakara commented 2 years ago

Hi @willsargent just circling back to check if you got a chance to look at this. Trying to resolve this for a client sorry to bother you. Thanks again!

octavia-squidington-iii commented 2 years ago

Marcos Marx commented: @tehnorm Maybe we should try a local CSV destination or similar, and see if it's a source problem or a mapping to destination problem.. It's going to be a minute before I get to that..

w-gitops commented 2 years ago

Deepest apologies, as this problem was traced, identified and solved with the code in the PR, but I messed up the PR with a bunch of files that should have been .ignored. I'll clean it up tomorrow @Madhukarsprabhakara Here's the procedure to build local docker image: Clone repo locally, In directory airbyte/airbyte-integrations/connectors/source-smartsheets Run command: Tested with python 3.9.10, using pyenv-win

python -m venv .venv python -m pip install -r requirements.txt docker build . -t airbyte/source-smartsheets:dev

Then, from the source connector page where you can select what version of the connector you want, use "dev", no quotes. (instead of 0.1.8, etc..) If it loads, you will get an OK, and the current connector will say dev.

Sorry for the abbreviated cheat sheet that makes a few assumptions, but no need to use gradle, just docker build.

Hope this helps, and I'll get the PR's fixed because the second one adds some nice features as well.