Improvement
This improvement enables collection of some PolyBase-specific Xevents in SQL Server 2019
More Information
Due to PolyBase being implemented by external services (PolyBase Engine and PolyBase Data Movement), the Xevents capture cannot be enabled in the same way that other SQL Server Engine Xevents are enabled (e.g. T-SQL commands or SQL Server Management Studio GUI).
-
To enable PolyBase Xevents collection, you need to create a new file EngineService.xevents.xml that contains the following:
<event_sessions>
 <event_session   name="DMSCommonSession" maxMemory="2" allowRecursiveEvents="true" eventRetentionMode="noEventLoss"   trackCausality="false" dispatchLatency="5" maxEventSize="1"   memoryPartitionMode="none">Â<!-- these events are available on all SQL Server platforms (Windows/Linux/Big Data Clusters) -->
  <event package="DMSCommonXEvents" name="dsql_plan" />   <event package="DMSCommonXEvents" name="name_node_ha" />   <event package="DMSCommonXEvents" name="polybase_authorize_begin" />   <event package="DMSCommonXEvents" name="polybase_authorize_end" />  <!-- these events are only available for SQL Server Big Data Clusters -->   <event package="DMSCommonXEvents" name="build_openrowset_query" />   <event package="DMSCommonXEvents" name="initialize_metadata_processor" />  <target package="package0" name="event_file">
   <parameter name="filename" value="PdwXevents.xel" />    <parameter name="max_file_size" value="10" />    <parameter name="max_rollover_files" value="10" />   </target>   </event_session> </event_sessions>-
Save the file to the ..\MSSQL\Binn\Polybase folder. You may have to save it to a different location and then move the file to this folder.
-
Restart PolyBase Engine service and you will see the file PdwXevents_0_{####}.xel created in the ..\MSSQL\Log\Polybase folder. You can view this XEL file in the same way as any other XEvents XEL file capture.
Event Descriptions
Xevent |
Fields |
Event/Field Description |
Available on all platforms |
 |
 |
dsql_plan |
Dsql plan information |
|
memo_xml |
Memo xml |
|
dsql_plan_xml |
XML of dsql plan |
|
showplan_xml |
Showplan xml format of dsql plan. |
|
distributed_query_hash |
Query Hash is unique for same query and will be used to identify query regression |
|
distributed_statement_id |
Statement ID is unique for each statement in a batch and can be used for statement level correlation |
|
distributed_request_id |
Request ID is unique for each sp_execute_memo and can be used for correlation of sp_execute_memo execution |
|
distributed_query_id |
Query ID |
|
distributed_plan_step |
Step in a distributed query plan |
|
dms_plan_step |
Step in a DMS plan |
|
sql_handle |
SQL Handle |
|
name_node_ha |
NameNode ha tracing information. |
|
uri |
NameNode URI |
|
retry_count |
Number of retry count for this node. |
|
isActiveNamenode |
||
shouldRetry |
||
polybase_authorize_begin |
PolyBase authorize begin event |
|
app_name |
Application name |
|
session_id |
Session ID |
|
polybase_authorize_end |
PolyBase authorize end event |
|
app_name |
Application name |
|
session_id |
Session ID |
|
Available on BDC |
||
build_openrowset_query |
Build storagepool select from openrowset query |
|
select_query |
The select from openrowset query |
|
distributed_query_hash |
Query Hash is unique for same query and will be used to identify query regression |
|
distributed_statement_id |
Statement ID is unique for each statement in a batch and can be used for statement level correlation |
|
distributed_request_id |
Request ID is unique for each sp_execute_memo and can be used for correlation of sp_execute_memo execution |
|
distributed_query_id |
Query ID |
|
distributed_plan_step |
Step in a distributed query plan |
|
dms_plan_step |
Step in a DMS plan |
|
sql_handle |
SQL Handle |
|
initialize_metadata_processor |
Metadata processor is initialized |
|
shards_list |
List of shard endpoints |
Resolution
This improvement is included in the following cumulative update for SQL Server:
About cumulative updates for SQL Server:
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
References
Learn about the terminology that Microsoft uses to describe software updates.