-
Notifications
You must be signed in to change notification settings - Fork 67
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue: Connection to Data Warehouse SQL Endpoint in Microsoft Fabric Fails with "Read: EOF" Error #230
Comments
I think it's due to #226 |
@jaume-pladevall-itk could you try building with the latest commit in main (#228 ) and see if it fixes your issue? I'd love a 3rd party validation before I push a 1.8 tag. |
@shueybubbles Now with the latest commit in main (#228) it works again. Thank you very much! |
Seems it's still happening when using |
@flarco did your sling dev build upgrade go-mssqldb to v1.8? |
Yes, see here: https://github.com/slingdata-io/sling-cli/compare/v1.3.4 (commit |
FWIW if I use the latest go-sqlcmd based on go-mssqldb I can access a Fabric DW that's in our "daily" environment. I can use both
|
Here is the output with
and my ~/.sling/.env file FABRIC_WH2: # DOESNT WORK !!!!
type: sqlserver # also tried azure-synapse-analytics
host: REDACTED.datawarehouse.fabric.microsoft.com
user: REDACTED
password: "REDACTED"
database: warehouse2
schema: src_customer
fedauth: ActiveDirectoryServicePrincipal
|
@johnoscott is it possible you can attach a logger to the driver with the log level set to 0x8fff?
At minimum you'd be able to verify the driver is correctly adding a connection id and activity id to the prelogin packet, and you could give those guids to Microsoft support if you need them to help identify why the connection is being closed. One way you could get this same information is use the newest release from github.com/microsoft/go-sqlcmd and pass it on the command line:
|
I am using macOS and I am expecting that authenticating with method ActiveDirectoryServicePrincipal will work (even though interactive authentication (which i am not using) is known not to work )
So I tried Windows 11
|
OK that macOS version was using sqlcmd from a package of mssql-tools, which explains the different version number. When i install sqlcmd directly i get ...
|
@johnoscott sorry I should have been more explicit - go-sqlcmd v1.8.2 still hasn't been marked as "latest" but it's the version that has the activity id and connection id fix. |
OK it appears to be working with upcoming v1.8.2
|
We implemented a connection to a Data Warehouse SQL endpoint in Microsoft Fabric, but it suddenly stopped working and began returning the error message “Read: EOF” without any changes to our code.
We use the following code to connect to the database:
The code above returns the error "Ping failed: Read: EOF" where
url
has the following format:"long_mix_of_numbers_and_chars.datawarehouse.fabric.microsoft.com"
anddatabase
is the name of the table we want to access inside the Data Warehouse.We are using Go 1.22.0 and go-mssqldb version v1.7.2.
Upon debugging the go-mssqldb library, it appears that a first connection is established, as it enters the
loginAckStruct
case (line 1366 of the file tds.go). Then, it enters the conditionsess.routedServer != ""
(line 1393 of the file tds.go) and initiates another connection, which is the one that returns the "Read: EOF" error.We also tried connecting to the SQL endpoint using SQL Server Management Studio (SSMS) and directly accessing the Data Warehouse from Microsoft Fabric. Both methods work successfully.
Has anyone else experienced the same issue? If so, could you share your insights or solutions? Additionally, if anyone has any clues as to why this might be happening or how to resolve it, your help would be greatly appreciated. Thank you!
The text was updated successfully, but these errors were encountered: