Hello all. I'm a new user to the Meltano space and...
# troubleshooting
j
Hello all. I'm a new user to the Meltano space and currently trying to set up a
tap-mssql
extractor (BuzzCutNorman Variant). I have been able to connect to the database and see a set of tables. I am then trying to use the
target-jsonl
loader defined in the getting started tutorials to confirm that these loads are performing! It gets through a few of the tables, then blows up on me with an
Event Loop is Closed
Error. Any insight or tips would be appreciated! Further details in ๐Ÿงต
Python is currently being used is 3.10, but I also ran into this with 3.9. My current config is as follows:
Copy code
extractors:
  - name: tap-mssql
    variant: buzzcutnorman
    pip_url: git+<https://github.com/BuzzCutNorman/tap-mssql.git>
    config:
      dialect: mssql
      driver_type: pyodbc
      host: 127.0.0.1,4433
      port: 1433
      user: ABC
      password: XYZ
      database: DB
      sqlalchemy_eng_params:
        fast_executemany: 'True'
      sqlalchemy_url_query:
        driver: ODBC Driver 17 for SQL Server
        TrustServerCertificate: yes
  - name: tap-mssql-content
    inherit_from: tap-mssql
    select:
    - Content-*.*
  - name: tap-mssql-admin
    inherit_from: tap-mssql
    select:
    - Admin-*.*
  loaders:
  - name: target-jsonl
    variant: andyh1203
    pip_url: target-jsonl
I can see tables and columns when I list it (pic attached). Running
meltano run tap-mssql-content target-jsonl
does produce a few files and then has a bad time. Log dump also included
I will note that I am currently accessing my database which is located inside a docker container, but I don't think that's adding to the issues right now.
Attempting to run a
meltano config test
also repeats an IO Operation on closed pipe /Event Loop Closed error
b
What happens when you run
meltano invoke tap-mssql-admin
j
Hi Dan. I noticed in the error log I posted that its still trying to use python 3.9. So I am currently trying to get pipx / meltano to use 3.10 instead. Once I figure that out I'll try again
b
looks like this issue is when
target-jsonl
is getting the column`IsFilterable` from the stream
Content-AttibuteDefinitionUpdate
. This is what
target-jsonl
is giving the the traceback.
Copy code
jsonschema.exceptions.ValidationError: True is not of type 'string'
Failed validating 'type' in schema['properties']['IsFilterable']:
    {'type': ['string']} On instance['IsFilterable']: True
Is the column
isFilterable
of data type
BIT
by any chance?
j
[IsFilterable] BIT NOT NULL,
That's a bingo
b
BOOM ๐Ÿ’ฅGoes the Dynamite. I was able to recreate the issue on my test servers. It isn't anything with your setup at all.
j
I finally got my envs working with 3.10 ๐Ÿ˜… . To confirm your question I ran
meltano invoke tap-mssql-admin
and
meltano invoke tap-mssql-content
Both commands worked and went through the entire domains.
b
Cool. I have a patch locally that work for the test scenario. I am just writing up the issue and PR now
j
I then tried to run
meltano run tap-mssql-admin target-jsonl
. And it also died on a similar error stack, on a table with the BIT. Good to hear - thank you for such a quick turnaround Dan!
b
j
Awesome!
b
I just merged the fix. Please run
meltano install extractor tap-mssql --clean
then try the extract again.
j
Hi Dan, still running into some problems I think; .GIF provided of me re-trying in real time
^ I'm just going to chalk it up to powershell weirdness. I tried a manual add and removal as well and no dice. Closed powershell and repoened it again and now its working... >_>
Thank you so much Dan. Issue is def resolved now ๐Ÿ™‚.
b
That is great news. Hope all goes smooth for here on out.