david_tout
06/18/2021, 4:58 AMtap-mssql.
First of all, I have seen the discussions around tap-mssql (which relies on a JVM) and pipelinewise-tap-mssql which includes a Python wrapped version leveraging some C libs, and FreeTDS et al.
The issue I am having is that I need to connect to an Azure SQL server. pymssql can do this IF the right steps are followed to ensure we have a version of FreeTDS that supports SSL encryption. The problem is that the bundled version of FreeTDS that comes with pymssql as part of the larger pipelinewise-tap-mssql package does not support this.
On an ubuntu box, if I navigate specifically to the site-packages directory of that extractor, it will fail:
cd /path/to/project/.meltano/extractors/tap-mssql/venv/lib/python3.8/site-packages
python
...
>>> import pymssql
>>> host = "<http://xxx.database.windows.net|xxx.database.windows.net>"
>>> port = 1433
>>> user = "abc"
>>> password = "def"
>>> db_name = "123"
>>> conn = pymssql.connect(f"{host}:{port}", f"{user}@{host.split('.')[0]}", password, db_name)
This gives us:
pymssql.OperationalError: (20002, b'DB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (<http://xxx.database.windows.net|xxx.database.windows.net>)\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (<http://xxx.database.windows.net|xxx.database.windows.net>)\n')
If I am outside of that virtualenv, just straight on my ubunutu box where i have pip insalled both pymssql and apt installed freetds-bin
Then it works. I'm not sure if it is because of an updated version of pymssql or it is somehow seeing the freetds libs on the system (but unsure why the virtual env would not also see the same libs...)
Any ideas?
Is there a way to update sub-packages in an installed tap?david_tout
06/18/2021, 5:05 AMfreetds-bin and retried with the latest pymssql lib and it still works.
So I've got my answer re: what the problem is.
Just not sure how to upgrade a tap in-situ.
I suppose I could fork the tap and stash it in the extractors folder and then manually upgrade the pymssql package, but wondered if there was a better waydavid_tout
06/18/2021, 6:16 AMpipelinewise-tap-mssql package with git submodule
• Update setup.py and bump the version of pymssql from 2.1.5 to 2.2.1 (latest at time of writing)
• Run: meltano add --custom tap-mssql
• Set executable to -e extract/pipelinewise-tap-mssql
Still curious if there is a better wayvisch
06/18/2021, 12:30 PMvisch
06/18/2021, 12:31 PMdavid_tout
06/20/2021, 2:05 AMsteve_clarke
09/17/2021, 8:39 AMdavid_tout
09/17/2021, 8:40 AMmoney was not being handled correctlysteve_clarke
09/17/2021, 8:41 AMsteve_clarke
09/17/2021, 8:42 AMdavid_tout
09/17/2021, 8:43 AMsteve_clarke
09/17/2021, 8:50 AMpat_nadolny
05/06/2022, 6:44 PMdavid_tout
05/08/2022, 11:08 PMsteve_clarke
05/09/2022, 1:51 AMlog_based extraction of data using MS SQL Server Change Data Capture. So if you are looking to incremental extract data from MS SQL Server this could be quite useful.
At the moment a work collogue is putting the tap through it's paces in terms of testing. I should have a good picture of if there are any issues with it in about a week.david_tout
05/09/2022, 1:52 AMdavid_tout
05/09/2022, 1:55 AMdavid_tout
05/09/2022, 1:55 AMsteve_clarke
05/09/2022, 1:56 AMlog-based extracts. https://github.com/SteveDMurphy/pipelinewise-tap-mssql
So there may be benefits for a few variants.steve_clarke
05/09/2022, 1:57 AMdavid_tout
05/09/2022, 1:58 AMdavid_tout
05/09/2022, 2:01 AMsteve_clarke
05/09/2022, 2:04 AMdavid_tout
05/09/2022, 2:06 AMsteve_clarke
05/09/2022, 2:08 AMdavid_tout
05/09/2022, 2:08 AMsteve_clarke
05/24/2022, 8:21 PMsteve_clarke
08/04/2022, 9:35 PM