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?
> >
>

Reply via email to