
resource "kafka_topic" "stream_globalsoundrecording_elasticsearch_cdc_partitioned_v5" {
  name               = "stream.globalSoundRecording.elasticSearch.cdc.partitioned.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 9
  config = {
    "cleanup.policy"        = "compact"
    "delete.retention.ms"   = "2419200000" # 4 weeks
    "min.compaction.lag.ms" = "604800000"  # 1 week
    "min.insync.replicas" = "2"
  }
}

resource "kafka_topic" "stream_globalsoundrecording_elasticsearch_cdcdelete_partitioned_v5" {
  name               = "stream.globalSoundRecording.elasticSearch.cdcDelete.partitioned.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 1
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
  }
}

resource "kafka_topic" "stream_globalparticipant_elasticsearch_cdc_partitioned_v5" {
  name               = "stream.globalParticipant.elasticSearch.cdc.partitioned.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 9
  config = {
    "cleanup.policy"        = "compact"
    "delete.retention.ms"   = "2419200000" # 4 weeks
    "min.compaction.lag.ms" = "604800000"  # 1 week
    "min.insync.replicas" = "2"
  }
}

resource "kafka_topic" "stream_globalparticipant_elasticsearch_cdcdelete_partitioned_v5" {
  name               = "stream.globalParticipant.elasticSearch.cdcDelete.partitioned.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 1
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
  }
}

resource "kafka_topic" "topic_labelparticipant_elasticsearch_v5" {
  name               = "topic.musicGraphV5.labelParticipant.elasticSearch.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 9
  config = {
    "cleanup.policy"        = "compact"
    "delete.retention.ms"   = "2419200000" # 4 weeks
    "min.compaction.lag.ms" = "604800000"  # 1 week
    "min.insync.replicas" = "2"
  }
}

resource "kafka_topic" "topic_delete_labelparticipant_elasticsearch_v5" {
  name               = "topic.musicGraph.delete.labelParticipant.elasticSearch.V5"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 1
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
  }
}

# Fingerprint
resource "kafka_topic" "stream_fingerprint_hasasset" {
  name               = "stream.fingerprint.hasAsset"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 1
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
    "cleanup.policy" = "delete"
  }
}

resource "kafka_topic" "stream_fingerprint_hasfingerprintrule" {
  name               = "stream.fingerprint.hasFingerprintRule"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 5
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
    "cleanup.policy" = "delete"
  }
}

resource "kafka_topic" "stream_fingerprint_orchardasset" {
  name               = "stream.fingerprint.orchardAsset"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 1
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
    "cleanup.policy" = "delete"
  }
}

resource "kafka_topic" "stream_fingerprint_orchardsoundrecording" {
  name               = "stream.fingerprint.orchardSoundRecording"
  replication_factor = var.kafka_minimum_replication_factor
  partitions         = 10
  config = {
    "retention.ms" = "7200000"
    "min.insync.replicas" = "2"
    "cleanup.policy" = "delete"
  }
}
