microsoft/mssql-jdbc

[QUESTION]Unable to retrieve column metadata

ekgershg opened this issue · 2 comments

Question

Please assist to the customer to solve the following issue:

My customer uses this Microsoft repo (https://github.com/microsoft/mssql-jdbc) to connect and upload the data from Kafka Flink JDBC (version 12.4) connector to SQL Server (2022 Evaluation/Standard Edition) on Azure VM. The same connection works fine with AWS environment.

Unfortunately, sometimes, they fail to make the following error randomly: different DB, table, and region.

"Unable to retrieve column metadata."

https://github.com/microsoft/mssql-jdbc/blob/2799c6cadb5a24a5e5d50427506eda7e8e5225c7/src/main/java/com/microsoft/sqlserver/jdbc/SQLServerResource.java#L271C76-L271C76

Relevant Issues and Pull Requests

Error during the uploading data from Kafka to SQL Server:
org.apache.flink.runtime.checkpoint.CheckpointException: Failure to finalize checkpoint. at org.apache.flink.runtime.checkpoint.CheckpointCoordinator.finalizeCheckpoint(CheckpointCoordinator.java:1423) ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] at org.apache.flink.runtime.checkpoint.CheckpointCoordinator.completePendingCheckpoint(CheckpointCoordinator.java:1309) ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] at org.apache.flink.runtime.checkpoint.CheckpointCoordinator.receiveAcknowledgeMessage(CheckpointCoordinator.java:1201) ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] at org.apache.flink.runtime.scheduler.ExecutionGraphHandler.lambda$acknowledgeCheckpoint$1(ExecutionGraphHandler.java:89) ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] at org.apache.flink.runtime.scheduler.ExecutionGraphHandler.lambda$processCheckpointCoordinatorMessage$3(ExecutionGraphHandler.java:119) ~[flink-dist-1.18-SNAPSHOT.jar:1.18-SNAPSHOT] at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:?] at java.lang.Thread.run(Unknown Source) [?:?] Caused by: org.apache.hadoop.fs.UnsupportedFileSystemException: No FileSystem for scheme "file" at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:3443) ~[?:?] at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:3466) ~[?:?] at org.apache.hadoop.fs.FileSystem.access$300(FileSystem.java:174) ~[?:?] at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:3574) ~[?:?] at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3521) ~[?:?] at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:540) ~[?:?] at org.apache.hadoop.fs.FileSystem.getLocal(FileSystem.java:496) ~[?:?] at org.apache.hadoop.fs.LocalDirAllocator$AllocatorPerContext.confChanged(LocalDirAllocator.java:316) ~[?:?] at org.apache.hadoop.fs.LocalDirAllocator$AllocatorPerContext.getLocalPathForWrite(LocalDirAllocator.java:393) ~[?:?] at org.apache.hadoop.fs.LocalDirAllocator.getLocalPathForWrite(LocalDirAllocator.java:165) ~[?:?] at org.apache.hadoop.fs.LocalDirAllocator.getLocalPathForWrite(LocalDirAllocator.java:146) ~[?:?] at org.apache.hadoop.fs.store.DataBlocks$DiskBlockFactory.createTmpFileForWrite(DataBlocks.java:980) ~[?:?] at org.apache.hadoop.fs.store.DataBlocks$DiskBlockFactory.create(DataBlocks.java:960) ~[?:?] at org.apache.hadoop.fs.azurebfs.services.AbfsOutputStream.createBlockIfNeeded(AbfsOutputStream.java:262) ~[?:?] at org.apache.hadoop.fs.azurebfs.services.AbfsOutputStream.(AbfsOutputStream.java:173) ~[?:?] at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystemStore.createFile(AzureBlobFileSystemStore.java:580) ~[?:?] at org.apache.hadoop.fs.azurebfs.AzureBlobFileSystem.create(AzureBlobFileSystem.java:301) ~[?:?] at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:1195) ~[?:?] at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:1175) ~[?:?] at org.apache.hadoop.fs.FileSystem.create(FileSystem.java:1064) ~[?:?] at org.apache.flink.fs.azure.common.hadoop.HadoopFileSystem.create(HadoopFileSystem.java:154) ~[?:?] at org.apache.flink.fs.azure.common.hadoop.HadoopFileSystem.create(HadoopFileSystem.java:37

hi @ekgershg

This repo is for the Microsoft JDBC Driver for SQL Server and we offer support specific to this driver only. Your error message above is all within your 3rd party application only I would suggest you reach out to that team for support on the error.

If you have still have questions relating to how to use the JDBC driver, please provide the repro schema used and a standalone java application that uses the driver directly. And also a stack trace that shows where the error occurred in the driver so we can better assist you.

please feel re-free to request re-opening if you have questions about using the Microsoft JDBC Driver for SQL Server