0

I tried reading from an external Azure Sql Db both with CREATE EXTERNAL TABLE xyz ....FROM LOCATION "dbo.xyz" and SELECT * FROM ExternalDataSource EXECUTE @"SELECT a,b,c FROM dbo.xyz WHERE DATALENGTH(a)<128000" approaches and getting a Row size too big (A row from remote data source is larger than 4194304 bytes.) error. When I try to locate the rows that are larger than this value, the query inspired by Jaime's answer here does not produce any results.

I tried limiting the rowset by executing a remote query to fetch rows with rowsize of less than 4MB and also columns with large strings to have a datalength of less than 128KB but I am still getting the same error.

I was under the impression that if I executed the remote query on Sql Db side to limit the rowset to what Azure Data Lake can accommodate, I'd be ok but it doesn't seem so. Is there a reasonable workaround I can apply?

Cheers!

Community
  • 1
  • 1
chi
  • 471
  • 3
  • 18

1 Answers1

0

First, do you observe the error even with the remote EXECUTE example?

Secondly, what are the REMOTABLE_TYPES that you set on your ExternalDataSource?

Third, it would probably be best to send us a link to the job for further investigations. Feel free to contact us via usql (at) Microsoft.

Michael Rys
  • 6,684
  • 15
  • 23
  • Thanks Michael! Remote execute example produced the same results. REMOTABLE_TYPES are (bool, byte, sbyte, short, ushort, int, uint, long, ulong, decimal, float, double, string, DateTime) On the job url, is there a way to search for a specific error before I can get you the info. There are so many and that might take quite a while for me to find it. – chi Mar 03 '17 at 01:08
  • I think you can either browse the job list in Visual Studio with a simple query interface (not sure it gives you an easy way to check for a specific error though) or write a more programmatic enumeration with the Powershell SDK. This definitively looks like an issue I would like to investigate. If you otherwise could provide a repro script (a T-SQL script for generating some test data in the SQLDB and then a repro U-SQL script, I can try to repro it as well). – Michael Rys Mar 08 '17 at 13:40