Hi Ewen,
Apologies for the late response. I am somehow not getting notifications from the group.
Thank you so much for your response. I was looking at the source code and was able to figure that out. And your response confirms that. However, I am still not getting the result I want. No matter what value I use all the data end up in a single partition. This is how my properties file looks like :
name=hdfs-sink
connector.class=io.confluent.connect.hdfs.HdfsSinkConnector
tasks.max=1
topics=test
hdfs.url=hdfs://localhost:9000
flush.size=3
#partitioner.class=io.confluent.connect.hdfs.partitioner.HourlyPartitioner
partitioner.class=io.confluent.connect.hdfs.partitioner.TimeBasedPartitioner
#path.format='year'=YYYY/'month'=MM/'day'=dd/'hour'=HH/'minute'=MM/'second'=ss/
path.format='year'=YYYY/'month'=MM/'day'=dd/'hour'=HH/'minute'=MM/
locale=en
timezone=GMT
logs.dir=/kafka-connect/logs
topics.dir=/kafka-connect/topics
hive.integration=true
hive.metastore.uris=thrift://localhost:9083
schema.compatibility=BACKWARD
With 60000 as values for both
partition.duration.ms and
rotate.interval.ms I was expecting that the connector will create a new HDFS directory(and the corresponding Hive partition) every minute, and copy the entire one minute worth of data into this directory. After one minute a new directory(partition) will be created where the data for this minute will be copied.
The connector copies data from Kafka into HDFS successfully, but it creates a new file under the same directory everytime it writes the data, instead of creating a new directory. I have attached a snapshot below in case that helps :

I feel I am still missing some piece, or I have got it completely wrong.
Thanks again!