@@ -1579,7 +1579,8 @@ public void testWriteToTimestampField() {
15791579 assertThat (head .get (head .fieldIndex ("timestamp1" ))).isEqualTo (timestamp1 );
15801580 }
15811581
1582- protected Dataset <Row > writeAndLoadDatasetOverwriteDynamicPartition (Dataset <Row > df ) {
1582+ protected Dataset <Row > writeAndLoadDatasetOverwriteDynamicPartition (
1583+ Dataset <Row > df , boolean isPartitioned ) {
15831584 df .write ()
15841585 .format ("bigquery" )
15851586 .mode (SaveMode .Overwrite )
@@ -1591,10 +1592,12 @@ protected Dataset<Row> writeAndLoadDatasetOverwriteDynamicPartition(Dataset<Row>
15911592 .option ("temporaryGcsBucket" , TestConstants .TEMPORARY_GCS_BUCKET )
15921593 .save ();
15931594
1594- IntegrationTestUtils .runQuery (
1595- String .format (
1596- "ALTER TABLE %s.%s SET OPTIONS (require_partition_filter = false)" ,
1597- testDataset , testTable ));
1595+ if (isPartitioned ) {
1596+ IntegrationTestUtils .runQuery (
1597+ String .format (
1598+ "ALTER TABLE %s.%s SET OPTIONS (require_partition_filter = false)" ,
1599+ testDataset , testTable ));
1600+ }
15981601
15991602 return spark
16001603 .read ()
@@ -1626,7 +1629,7 @@ public void testOverwriteDynamicPartition_partitionTimestampByHour() {
16261629 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
16271630 StructField .apply (orderDateTime , DataTypes .TimestampType , true , Metadata .empty ())));
16281631
1629- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1632+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
16301633 assertThat (result .count ()).isEqualTo (3 );
16311634 List <Row > rows = result .collectAsList ();
16321635 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1670,7 +1673,7 @@ public void testOverwriteDynamicPartition_partitionTimestampByDay() {
16701673 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
16711674 StructField .apply (orderDateTime , DataTypes .TimestampType , true , Metadata .empty ())));
16721675
1673- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1676+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
16741677 assertThat (result .count ()).isEqualTo (3 );
16751678 List <Row > rows = result .collectAsList ();
16761679 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1714,7 +1717,7 @@ public void testOverwriteDynamicPartition_partitionTimestampByMonth() {
17141717 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
17151718 StructField .apply (orderDateTime , DataTypes .TimestampType , true , Metadata .empty ())));
17161719
1717- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1720+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
17181721 assertThat (result .count ()).isEqualTo (3 );
17191722 List <Row > rows = result .collectAsList ();
17201723 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1758,7 +1761,7 @@ public void testOverwriteDynamicPartition_partitionTimestampByYear() {
17581761 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
17591762 StructField .apply (orderDateTime , DataTypes .TimestampType , true , Metadata .empty ())));
17601763
1761- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1764+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
17621765 assertThat (result .count ()).isEqualTo (3 );
17631766 List <Row > rows = result .collectAsList ();
17641767 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1801,7 +1804,7 @@ public void testOverwriteDynamicPartition_partitionDateByDay() {
18011804 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
18021805 StructField .apply (orderDate , DataTypes .DateType , true , Metadata .empty ())));
18031806
1804- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1807+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
18051808 assertThat (result .count ()).isEqualTo (3 );
18061809 List <Row > rows = result .collectAsList ();
18071810 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1842,7 +1845,7 @@ public void testOverwriteDynamicPartition_partitionDateByMonth() {
18421845 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
18431846 StructField .apply (orderDate , DataTypes .DateType , true , Metadata .empty ())));
18441847
1845- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1848+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
18461849 assertThat (result .count ()).isEqualTo (3 );
18471850 List <Row > rows = result .collectAsList ();
18481851 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1883,7 +1886,7 @@ public void testOverwriteDynamicPartition_partitionDateByYear() {
18831886 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
18841887 StructField .apply (orderDate , DataTypes .DateType , true , Metadata .empty ())));
18851888
1886- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1889+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
18871890 assertThat (result .count ()).isEqualTo (3 );
18881891 List <Row > rows = result .collectAsList ();
18891892 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1925,7 +1928,7 @@ public void testOverwriteDynamicPartition_partitionDateTimeByHour() {
19251928 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
19261929 StructField .apply (orderDateTime , timeStampNTZType .get (), true , Metadata .empty ())));
19271930
1928- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1931+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
19291932 assertThat (result .count ()).isEqualTo (3 );
19301933 List <Row > rows = result .collectAsList ();
19311934 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -1967,7 +1970,7 @@ public void testOverwriteDynamicPartition_partitionDateTimeByDay() {
19671970 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
19681971 StructField .apply (orderDateTime , timeStampNTZType .get (), true , Metadata .empty ())));
19691972
1970- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
1973+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
19711974 assertThat (result .count ()).isEqualTo (3 );
19721975 List <Row > rows = result .collectAsList ();
19731976 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2009,7 +2012,7 @@ public void testOverwriteDynamicPartition_partitionDateTimeByMonth() {
20092012 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
20102013 StructField .apply (orderDateTime , timeStampNTZType .get (), true , Metadata .empty ())));
20112014
2012- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2015+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
20132016 assertThat (result .count ()).isEqualTo (3 );
20142017 List <Row > rows = result .collectAsList ();
20152018 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2051,7 +2054,7 @@ public void testOverwriteDynamicPartition_partitionDateTimeByYear() {
20512054 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
20522055 StructField .apply (orderDateTime , timeStampNTZType .get (), true , Metadata .empty ())));
20532056
2054- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2057+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
20552058 assertThat (result .count ()).isEqualTo (3 );
20562059 List <Row > rows = result .collectAsList ();
20572060 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2091,7 +2094,7 @@ public void testOverwriteDynamicPartition_noTimePartitioning() {
20912094 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
20922095 StructField .apply (orderDateTime , DataTypes .TimestampType , true , Metadata .empty ())));
20932096
2094- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2097+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , false );
20952098 assertThat (result .count ()).isEqualTo (2 );
20962099 List <Row > rows = result .collectAsList ();
20972100 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2132,7 +2135,7 @@ public void testOverwriteDynamicPartition_rangePartitioned() {
21322135 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
21332136 StructField .apply (orderCount , DataTypes .IntegerType , true , Metadata .empty ())));
21342137
2135- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2138+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
21362139 assertThat (result .count ()).isEqualTo (5 );
21372140 List <Row > rows = result .collectAsList ();
21382141 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2179,7 +2182,7 @@ public void testOverwriteDynamicPartition_rangePartitionedOutsideRangeLessThanSt
21792182 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
21802183 StructField .apply (orderCount , DataTypes .IntegerType , true , Metadata .empty ())));
21812184
2182- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2185+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
21832186 assertThat (result .count ()).isEqualTo (2 );
21842187 List <Row > rows = result .collectAsList ();
21852188 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2214,7 +2217,7 @@ public void testOverwriteDynamicPartition_rangePartitionedOutsideRangeGreaterTha
22142217 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
22152218 StructField .apply (orderCount , DataTypes .IntegerType , true , Metadata .empty ())));
22162219
2217- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2220+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
22182221 assertThat (result .count ()).isEqualTo (2 );
22192222 List <Row > rows = result .collectAsList ();
22202223 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2249,7 +2252,7 @@ public void testOverwriteDynamicPartition_rangePartitionedBoundaryCondition() {
22492252 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
22502253 StructField .apply (orderCount , DataTypes .IntegerType , true , Metadata .empty ())));
22512254
2252- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2255+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
22532256 assertThat (result .count ()).isEqualTo (3 );
22542257 List <Row > rows = result .collectAsList ();
22552258 rows .sort (Comparator .comparing (row -> row .getLong (row .fieldIndex (orderId ))));
@@ -2288,7 +2291,7 @@ public void testOverwriteDynamicPartition_rangePartitionedWithNulls() {
22882291 StructField .apply (orderId , DataTypes .IntegerType , true , Metadata .empty ()),
22892292 StructField .apply (orderCount , DataTypes .IntegerType , true , Metadata .empty ())));
22902293
2291- Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df );
2294+ Dataset <Row > result = writeAndLoadDatasetOverwriteDynamicPartition (df , true );
22922295 assertThat (result .count ()).isEqualTo (3 );
22932296
22942297 List <Row > rows = result .collectAsList ();
0 commit comments