I all, I have been wrestling with this issue for a...
# troubleshooting
m
I all, I have been wrestling with this issue for a few days now and I cant seem to find the solution. When I use tap-csv or tap-s3-csv it doesnt seem to be taking the column names of the csv with it. I have tried loading with target-redshift and target-postgres (screen shot is from postgres) and both return similar errors of 'cannot create a table without column names'. Attached is the config files for tap-s3-csv and target-postgres (what I have been using in my most recent attempts). I am still very new to meltano so I am sure it is probably an obvious mistake, but no matter what I try I am continuously getting Column must be constructed with a non-blank name or assign a non-blank .name before adding to a Table. Attached is also the csv I am trying to upload. Just a 'dummy test' csv. Please Help
e
Hey Matt! What do you see if you run
meltano invoke tap-s3-csv
?
m
let me know if you need any additional logs from the command. Thank you for the help!
e
Is there a
{"type": "SCHEMA", ...}
message above those lines?
m
yes, here it is
e
Aha so there's a column there with
""
. Can you try looking at the output of
meltano select tap-s3-csv --list --all
?
m
oh I see, but my csv doesnt have an empty col? is it a formatting issue with the csv? Also thank you so much for the help thus far
np 1
e
Yeah, I'm not sure how that empty col is sneaking in the schema. Let's try using select:
Copy code
extractors:
- name: tap-s3-csv
  select:
  - names_table.Age
  - names_table.Name
m
that is very handy! I will be sure to use select. I updated it and it seems I am onto a new problem. it looks like it is inserting into a random string of characters instead of names_table. Where is it getting this from?
also thank you again!
e
Of course! I think that's only the auto-generated temporary table name. Is is not creating a
names_table
by the end of the run?
m
I dont think so, the run ends shortly after that message
e
It seems to have completed successfully so you can probably confirm by running
select * from names_table
against your postgres db.
m
doesnt seem to have made the table, it is possible I am missing something though
should I be making the table before or letting meltano make it? I have been trying both ways but just checking if it works both ways.
e
should I be making the table before
nope, the loader handles that automatically for you Hmm, maybe there's something weird going on with state, so can you try using the
--full-refresh
flag of the
run
command?