XML Data Source does not create all columns from XML file


Description

When data is loaded using XML Data Source the system scans the first 10 records to create the columns in the staging table.

If the first 10 records do not include a tag a column for that tag is not created.

Cause

The reason some columns are missing is that the system samples only the first 10 records in the XML to decide the columns.

If the first 10 records do not contain a tag and if this tag is added say in the 11th record a column is not created for this tag.

Resolution

There are 2 solutions, the first one below is preferred:

1) Make sure each record in the XML includes all tags. If there is no data for the tag an empty tag should be added.

OR

2) Add the system property glide.db.impex.XMLLoader.max.scan_nodes and set its value to a reasonable value under 100 to create all columns unique in the first 100 records.

Name: glide.db.impex.XMLLoader.max.scan_nodes

Type: Integer

Value: greater than 10 to sample enough records