SUPPORT / SAMPLES & SAS NOTES
 

Support

Usage Note 66712: A generated list of BigQuery tables might be empty when the BigQuery dataset (schema) contains an underscore in its name

DetailsHotfixAboutRate It

Trying to generate a list of BigQuery tables that exist in a BigQuery dataset (schema) might result in an empty list even when tables exist in the BigQuery dataset. This behavior is due to a mid-August 2020 change made by Google. This issue occurs when you use one of the following methods (not exclusive):

  • expand a previously defined libref
  • run PROC DATASETS
  • run PROC CONTENTS using _all_ 

SAS uses INFORMATION_SCHEMA queries to generate the list of tables when the BigQuery dataset name specified via the SCHEMA= option contains a search pattern (% or _). The INFORMATION_SCHEMA views are now being stored in the region where the dataset is stored and not in a "unified" location as previously. When a region is not specified, the unqualified INFORMATION_SCHEMA queries default to returning metadata for the US location. If the BigQuery dataset is not located in the US region, the query returns no table names, which results in the empty list. 

To work around this Google change, add the LOCATION= option to your LIBNAME statement and set it to the region where the BigQuery dataset resides. There currently is no workaround for SAS® Viya® because the LOCATION= option is not supported.

Running queries against a table that exists in the dataset is not affected and should work as it did previously.



Operating System and Release Information

Product FamilyProductSystemProduct ReleaseSAS Release
ReportedFixed*ReportedFixed*
SAS SystemSAS Data Connector to Google BigQueryLinux for x64V.03.052020.1.1ViyaViya
SAS SystemSAS/ACCESS Interface to Google BigQueryLinux for x649.419.4 TS1M6
SAS SystemSAS/ACCESS Interface to Google BigQuery (on SAS Viya)Linux for x64V.03.052020.1.1ViyaViya
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.