hi ,Jack: If the partition type is int and we pass in a string type, the system will throw an exception that the type does not match. We can indeed cast by get the schema, but I think if CatalogPartitionSpec#partitionSpec is of type Map<String, Object>, there is no need to do cast operation, and the universal and compatibility are better
Jark Wu <imj...@gmail.com> 于2021年1月5日周二 下午1:47写道: > Hi Jun, > > I'm curious why it doesn't work when represented in string? > You can get the field type from the CatalogTable#getSchema(), > then parse/cast the partition value to the type you want. > > Best, > Jark > > > On Tue, 5 Jan 2021 at 13:43, Jun Zhang <zhangjunemail...@gmail.com> wrote: > > > Hello dev: > > Now I encounter a problem when using the method > > "Catalog#listPartitions(ObjectPath, CatalogPartitionSpec)". > > I found that the partitionSpec type in CatalogPartitionSpec is > > Map<String, String>, > > This is no problem for hivecatalog, but my subclass of Catalog needs > > precise types. For example, if the partition is of int type, passing in > > "123" will not work. > > So I think whether the partitionSpec field of Flink's > > CatalogPartitionSpec is changed to Map<String, Object> type will be more > > reasonable and universal? > > >