kevin
04/24/2023, 7:50 PMmeltano elt tap-essensys target-snowflake
:
2023-04-24T17:58:01.963480Z [info ] snowflake.connector.errors.ProgrammingError: 100069 (22P02): Error parsing JSON: unknown keyword "Thu", pos 4 cmd_type=loader name=target-snowflake run_id=a967ed57-d5e1-4fbb-930b-decf4b71045e state_id=2023-04-24T172243--tap-essensys--target-snowflake stdio=stderr
2023-04-24T17:58:02.739440Z [error ] Loading failed code=1 message=snowflake.connector.errors.ProgrammingError: 100069 (22P02): Error parsing JSON: unknown keyword "Thu", pos 4 name=meltano run_id=a967ed57-d5e1-4fbb-930b-decf4b71045e state_id=2023-04-24T172243--tap-essensys--target-snowflake
any ideas here?pat_nadolny
04/24/2023, 9:36 PMpat_nadolny
04/24/2023, 9:39 PMkevin
04/25/2023, 6:12 PM- name: target-snowflake
variant: transferwise
pip_url: pipelinewise-target-snowflake
and yes the tap essensys is a custom tap hosted on a private repo. I tried to create a file format to combat this but to no avail:
CREATE FILE FORMAT RAW_MELTANO_DB.ESSENSYS.CSV
TYPE = 'CSV'
ESCAPE='\\'
FIELD_OPTIONALLY_ENCLOSED_BY='\"' (tried '"' and "@")
ERROR_ON_COLUMN_COUNT_MISMATCH = FALSE;
pat_nadolny
04/25/2023, 6:16 PMmeltano invoke tap-essensys
to verify the output is in fact valid json?kevin
04/25/2023, 6:21 PMkevin
04/25/2023, 7:11 PM2023-04-25T19:07:08.006789Z [info ] snowflake.connector.errors.ProgrammingError: 100069 (22P02): Error parsing JSON: unknown keyword "Thu", pos 4 cmd_type=loader name=target-snowflake run_id=808b6e0e-301c-48fb-8e60-6e4f913b175d state_id=2023-04-25T184956--tap-essensys--target-snowflake stdio=stderr
2023-04-25T19:07:08.143548Z [error ] Extraction failed code=1 message=singer_sdk.exceptions.FatalAPIError: 401 Client Error: Access Denied for path: /api/1.0/Calendar name=meltano run_id=808b6e0e-301c-48fb-8e60-6e4f913b175d state_id=2023-04-25T184956--tap-essensys--target-snowflake
2023-04-25T19:07:08.143756Z [error ] Loading failed code=1 message=snowflake.connector.errors.ProgrammingError: 100069 (22P02): Error parsing JSON: unknown keyword "Thu", pos 4 name=meltano run_id=808b6e0e-301c-48fb-8e60-6e4f913b175d state_id=2023-04-25T184956--tap-essensys--target-snowflake
2023-04-25T19:07:08.144243Z [info ] ELT could not be completed: Extractor and loader failed. cmd_type=elt name=meltano run_id=808b6e0e-301c-48fb-8e60-6e4f913b175d state_id=2023-04-25T184956--tap-essensys--target-snowflake stdio=stderr
so the authentication failure came after. not sure if this was triggered cause of the json parsing .kevin
04/25/2023, 7:11 PMmeltano invoke tap-essensys --discover
i get back all the tableskevin
04/25/2023, 7:15 PMpat_nadolny
04/25/2023, 7:25 PMmeltano invoke tap-essensys > output.json
to save the singer messages to a file. Then once it fails because of the FatalAPIError: 401 Client Error
you can look at the last couple of records in output.json to see what they look like, maybe invalid? I'd also specifically search in the output,json for the records containing Thu
because it might become obviouspat_nadolny
04/25/2023, 7:26 PMkevin
04/26/2023, 1:28 PMkevin
04/26/2023, 1:34 PMpat_nadolny
04/26/2023, 2:19 PMkevin
04/26/2023, 2:55 PMmeltano invoke tap-essensys > output.json
and it succeededkevin
04/26/2023, 7:13 PMmeltano elt tap-essensys target-jsonl
succeededkevin
04/26/2023, 7:13 PMpat_nadolny
04/26/2023, 9:09 PMThu
do you find any weird? If you find a sample that you can share that might be helpfulkevin
05/01/2023, 8:49 PMpat_nadolny
05/01/2023, 9:54 PM"Thu"
isnt a red herring for something else. Sometimes snowflake gives unhelpful errorskevin
05/01/2023, 9:56 PMpat_nadolny
05/01/2023, 9:56 PMkevin
05/01/2023, 10:09 PMpat_nadolny
05/01/2023, 10:19 PMError parsing JSON
if youre file format is CSV. Have you double checked that its using the file format you think its using?kevin
05/01/2023, 10:24 PMpat_nadolny
05/01/2023, 10:25 PMkevin
05/02/2023, 3:28 PMkevin
05/02/2023, 3:28 PMkevin
05/02/2023, 3:34 PMpat_nadolny
05/02/2023, 3:40 PMpat_nadolny
05/02/2023, 3:43 PM{
"TYPE": "CSV",
"RECORD_DELIMITER": "\n",
"FIELD_DELIMITER": ",",
"FILE_EXTENSION": null,
"SKIP_HEADER": 0,
"DATE_FORMAT": "AUTO",
"TIME_FORMAT": "AUTO",
"TIMESTAMP_FORMAT": "AUTO",
"BINARY_FORMAT": "HEX",
"ESCAPE": "\\",
"ESCAPE_UNENCLOSED_FIELD": "\\",
"TRIM_SPACE": false,
"FIELD_OPTIONALLY_ENCLOSED_BY": "\"",
"NULL_IF": [
"\\N"
],
"COMPRESSION": "AUTO",
"ERROR_ON_COLUMN_COUNT_MISMATCH": true,
"VALIDATE_UTF8": true,
"SKIP_BLANK_LINES": false,
"REPLACE_INVALID_CHARACTERS": false,
"EMPTY_FIELD_AS_NULL": true,
"SKIP_BYTE_ORDER_MARK": true,
"ENCODING": "UTF8"
}
kevin
05/02/2023, 3:46 PM"ERROR_ON_COLUMN_COUNT_MISMATCH":false
kevin
05/02/2023, 3:46 PM{
"TYPE": "CSV",
"RECORD_DELIMITER": "\n",
"FIELD_DELIMITER": ",",
"FILE_EXTENSION": null,
"SKIP_HEADER": 0,
"DATE_FORMAT": "AUTO",
"TIME_FORMAT": "AUTO",
"TIMESTAMP_FORMAT": "AUTO",
"BINARY_FORMAT": "HEX",
"ESCAPE": "\\",
"ESCAPE_UNENCLOSED_FIELD": "\\",
"TRIM_SPACE": false,
"FIELD_OPTIONALLY_ENCLOSED_BY": "\"",
"NULL_IF": [
"\\N"
],
"COMPRESSION": "AUTO",
"ERROR_ON_COLUMN_COUNT_MISMATCH": false,
"VALIDATE_UTF8": true,
"SKIP_BLANK_LINES": false,
"REPLACE_INVALID_CHARACTERS": false,
"EMPTY_FIELD_AS_NULL": true,
"SKIP_BYTE_ORDER_MARK": true,
"ENCODING": "UTF8"
}
pat_nadolny
05/02/2023, 3:56 PMkevin
05/02/2023, 4:02 PM"firstname": "Thu"
first name is a string of any val