When saving datasets on storage, `partitionBy` provides an easy way to construct the directory structure. However, if a user choose all columns as partition columns, some exceptions occurs.
- ORC: `AnalysisException` on *future read* due to schema inference failure.
- Parquet: `InvalidSchemaException` on *write execution* due to Parquet limitation.
The followings are the examples.
*ORC with all column partitioning*
*Parquet with all-column partitioning*
Although some formats like JSON support all-column partitioning without any problem, it seems not a good idea to make lots of empty directories.
This issue prevents this by consistently raising `AnalysisException` before saving.