From 83f59516180fead478d3d2bdf265eb60495628b2 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 21:08:53 -0700 Subject: [PATCH 01/17] update legacy producer folder --- conf/default-config.json | 5 +++-- src/main/java/com/uid2/optout/Const.java | 3 ++- src/main/java/com/uid2/optout/Main.java | 17 +++++++++++++++-- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/conf/default-config.json b/conf/default-config.json index 6190657..e3d5b9d 100644 --- a/conf/default-config.json +++ b/conf/default-config.json @@ -24,6 +24,8 @@ "optout_delete_expired": true, "optout_s3_bucket": null, "optout_s3_folder": null, + "optout_sqs_queue_url": null, + "optout_sqs_s3_folder": null, "cloud_download_threads": 8, "cloud_upload_threads": 2, "cloud_refresh_interval": 60, @@ -34,8 +36,7 @@ "operator_type": "public", "uid_instance_id_prefix": "local-optout", "optout_enqueue_sqs_enabled": false, - "optout_sqs_queue_url": null, - "optout_sqs_s3_folder": "sqs-delta", + "optout_legacy_producer_s3_folder": null, "optout_sqs_max_queue_size": 0, "optout_sqs_max_messages_per_poll": 10, "optout_sqs_visibility_timeout": 300, diff --git a/src/main/java/com/uid2/optout/Const.java b/src/main/java/com/uid2/optout/Const.java index a415fff..296e166 100644 --- a/src/main/java/com/uid2/optout/Const.java +++ b/src/main/java/com/uid2/optout/Const.java @@ -19,7 +19,8 @@ public static class Config extends com.uid2.shared.Const.Config { public static final String PartnersMetadataPathProp = "partners_metadata_path"; public static final String OptOutSqsQueueUrlProp = "optout_sqs_queue_url"; public static final String OptOutSqsEnabledProp = "optout_enqueue_sqs_enabled"; - public static final String OptOutSqsS3FolderProp = "optout_sqs_s3_folder"; // Default: "sqs-delta" - folder within same S3 bucket as regular optout + public static final String OptOutSqsS3FolderProp = "optout_sqs_s3_folder"; // sqs delta producer writes to this folder + public static final String OptOutLegacyProducerS3FolderProp = "optout_legacy_producer_s3_folder"; // legacy producer writes to this folder public static final String OptOutSqsMaxMessagesPerPollProp = "optout_sqs_max_messages_per_poll"; public static final String OptOutSqsVisibilityTimeoutProp = "optout_sqs_visibility_timeout"; public static final String OptOutDeltaJobTimeoutSecondsProp = "optout_delta_job_timeout_seconds"; diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 848ab2e..18211c1 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -246,7 +246,7 @@ public void run(String[] args) throws IOException { List futs = new ArrayList<>(); - // create optout cloud sync verticle + // create optout cloud sync verticle (reads from optout_s3_folder) OptOutCloudSync cs = new OptOutCloudSync(this.config, true); CloudSyncVerticle cloudSyncVerticle = new CloudSyncVerticle("optout", this.fsOptOut, this.fsLocal, cs, this.config); @@ -268,8 +268,21 @@ public void run(String[] args) throws IOException { OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventUpload, eventUpload); futs.add(this.deploySingleInstance(logProducer)); + // create cloud sync for legacy producer uploads + // if optout_legacy_producer_s3_folder is set, old producer writes to that folder instead of optout_s3_folder + String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); + OptOutCloudSync legacyProducerCs; + if (legacyFolder != null) { + JsonObject legacyConfig = new JsonObject().mergeIn(this.config) + .put(Const.Config.OptOutS3FolderProp, legacyFolder); + legacyProducerCs = new OptOutCloudSync(legacyConfig, true); + LOGGER.info("legacy producer will write to separate folder: {}", legacyFolder); + } else { + legacyProducerCs = cs; + } + // upload last delta produced and potentially not uploaded yet - futs.add((this.uploadLastDelta(cs, logProducer, cloudSyncVerticle.eventUpload(), cloudSyncVerticle.eventRefresh()))); + futs.add((this.uploadLastDelta(legacyProducerCs, logProducer, cloudSyncVerticle.eventUpload(), cloudSyncVerticle.eventRefresh()))); } // deploy sqs producer if enabled From 77e3949a326a1d2e7e50c629f7994cfc42d098b7 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 21:09:59 -0700 Subject: [PATCH 02/17] update default config --- conf/default-config.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/default-config.json b/conf/default-config.json index e3d5b9d..0543dca 100644 --- a/conf/default-config.json +++ b/conf/default-config.json @@ -24,8 +24,9 @@ "optout_delete_expired": true, "optout_s3_bucket": null, "optout_s3_folder": null, - "optout_sqs_queue_url": null, + "optout_legacy_producer_s3_folder": null, "optout_sqs_s3_folder": null, + "optout_sqs_queue_url": null, "cloud_download_threads": 8, "cloud_upload_threads": 2, "cloud_refresh_interval": 60, @@ -36,7 +37,6 @@ "operator_type": "public", "uid_instance_id_prefix": "local-optout", "optout_enqueue_sqs_enabled": false, - "optout_legacy_producer_s3_folder": null, "optout_sqs_max_queue_size": 0, "optout_sqs_max_messages_per_poll": 10, "optout_sqs_visibility_timeout": 300, From fc1b3e29893444a2a88e854cf05600f9f7e20daf Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 04:16:42 +0000 Subject: [PATCH 03/17] [CI Pipeline] Released Snapshot version: 4.6.5-alpha-140-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8a41868..0b5fa1d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.4 + 4.6.5-alpha-140-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From 1a289044d32fc6732dbb8bf277340e10d62e2997 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 21:34:17 -0700 Subject: [PATCH 04/17] update cs refresh behavior --- src/main/java/com/uid2/optout/Main.java | 29 +++++++++++-------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 18211c1..48c3199 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -246,8 +246,18 @@ public void run(String[] args) throws IOException { List futs = new ArrayList<>(); - // create optout cloud sync verticle (reads from optout_s3_folder) - OptOutCloudSync cs = new OptOutCloudSync(this.config, true); + // create optout cloud sync verticle + // if optout_legacy_producer_s3_folder is set, use it for the old producer's CloudSync + // this allows redirecting old producer output to a different folder during migration + String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); + String mainFolder = this.config.getString(Const.Config.OptOutS3FolderProp); + JsonObject cloudSyncConfig = this.config; + if (legacyFolder != null && !legacyFolder.equals(mainFolder)) { + cloudSyncConfig = new JsonObject().mergeIn(this.config) + .put(Const.Config.OptOutS3FolderProp, legacyFolder); + LOGGER.info("old producer configured to use folder: {} (main folder: {})", legacyFolder, mainFolder); + } + OptOutCloudSync cs = new OptOutCloudSync(cloudSyncConfig, true); CloudSyncVerticle cloudSyncVerticle = new CloudSyncVerticle("optout", this.fsOptOut, this.fsLocal, cs, this.config); // deploy optout cloud sync verticle @@ -268,21 +278,8 @@ public void run(String[] args) throws IOException { OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventUpload, eventUpload); futs.add(this.deploySingleInstance(logProducer)); - // create cloud sync for legacy producer uploads - // if optout_legacy_producer_s3_folder is set, old producer writes to that folder instead of optout_s3_folder - String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); - OptOutCloudSync legacyProducerCs; - if (legacyFolder != null) { - JsonObject legacyConfig = new JsonObject().mergeIn(this.config) - .put(Const.Config.OptOutS3FolderProp, legacyFolder); - legacyProducerCs = new OptOutCloudSync(legacyConfig, true); - LOGGER.info("legacy producer will write to separate folder: {}", legacyFolder); - } else { - legacyProducerCs = cs; - } - // upload last delta produced and potentially not uploaded yet - futs.add((this.uploadLastDelta(legacyProducerCs, logProducer, cloudSyncVerticle.eventUpload(), cloudSyncVerticle.eventRefresh()))); + futs.add((this.uploadLastDelta(cs, logProducer, cloudSyncVerticle.eventUpload(), cloudSyncVerticle.eventRefresh()))); } // deploy sqs producer if enabled From 89edffde4178fa7228b9146ed733d0c49a4faaef Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 04:37:57 +0000 Subject: [PATCH 05/17] [CI Pipeline] Released Snapshot version: 4.6.6-alpha-141-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0b5fa1d..1e4fe4d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.5-alpha-140-SNAPSHOT + 4.6.6-alpha-141-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From 4d82f842d146c181933f8974756ade0b1f1d64b3 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 21:47:27 -0700 Subject: [PATCH 06/17] update download/upload cs --- src/main/java/com/uid2/optout/Main.java | 44 ++++++++++++++++--------- 1 file changed, 28 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 48c3199..26f90db 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -246,18 +246,8 @@ public void run(String[] args) throws IOException { List futs = new ArrayList<>(); - // create optout cloud sync verticle - // if optout_legacy_producer_s3_folder is set, use it for the old producer's CloudSync - // this allows redirecting old producer output to a different folder during migration - String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); - String mainFolder = this.config.getString(Const.Config.OptOutS3FolderProp); - JsonObject cloudSyncConfig = this.config; - if (legacyFolder != null && !legacyFolder.equals(mainFolder)) { - cloudSyncConfig = new JsonObject().mergeIn(this.config) - .put(Const.Config.OptOutS3FolderProp, legacyFolder); - LOGGER.info("old producer configured to use folder: {} (main folder: {})", legacyFolder, mainFolder); - } - OptOutCloudSync cs = new OptOutCloudSync(cloudSyncConfig, true); + // main CloudSyncVerticle - downloads from optout_s3_folder (for readers: partition generator, log sender) + OptOutCloudSync cs = new OptOutCloudSync(this.config, true); CloudSyncVerticle cloudSyncVerticle = new CloudSyncVerticle("optout", this.fsOptOut, this.fsLocal, cs, this.config); // deploy optout cloud sync verticle @@ -267,19 +257,41 @@ public void run(String[] args) throws IOException { futs.add(this.createOperatorKeyRotator()); if (!this.observeOnly) { - // enable partition producing + // enable partition producing (reads from main folder via cs) cs.enableDeltaMerging(vertx, Const.Event.PartitionProduce); // create partners config monitor futs.add(this.createPartnerConfigMonitor(cloudSyncVerticle.eventDownloaded())); - // create & deploy log producer verticle - String eventUpload = cloudSyncVerticle.eventUpload(); + // determine where old producer uploads should go + String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); + String mainFolder = this.config.getString(Const.Config.OptOutS3FolderProp); + boolean useLegacyFolder = legacyFolder != null && !legacyFolder.equals(mainFolder); + + // create OptOutCloudSync and CloudSyncVerticle for old producer uploads + // if legacy folder is configured, uploads go there; otherwise they go to main folder + OptOutCloudSync uploadCs; + CloudSyncVerticle uploadVerticle; + if (useLegacyFolder) { + LOGGER.info("old producer uploads configured to use folder: {} (readers use: {})", legacyFolder, mainFolder); + JsonObject legacyConfig = new JsonObject().mergeIn(this.config) + .put(Const.Config.OptOutS3FolderProp, legacyFolder); + uploadCs = new OptOutCloudSync(legacyConfig, true); + uploadVerticle = new CloudSyncVerticle("optout-legacy", this.fsOptOut, this.fsLocal, uploadCs, this.config); + futs.add(this.deploySingleInstance(uploadVerticle)); + } else { + // no legacy folder configured, old producer uploads to main folder + uploadCs = cs; + uploadVerticle = cloudSyncVerticle; + } + + // create & deploy log producer verticle (fires upload events to uploadVerticle) + String eventUpload = uploadVerticle.eventUpload(); OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventUpload, eventUpload); futs.add(this.deploySingleInstance(logProducer)); // upload last delta produced and potentially not uploaded yet - futs.add((this.uploadLastDelta(cs, logProducer, cloudSyncVerticle.eventUpload(), cloudSyncVerticle.eventRefresh()))); + futs.add((this.uploadLastDelta(uploadCs, logProducer, uploadVerticle.eventUpload(), uploadVerticle.eventRefresh()))); } // deploy sqs producer if enabled From 23b710eff97a59fee12f201f5aaf8003cedc113d Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 04:51:20 +0000 Subject: [PATCH 07/17] [CI Pipeline] Released Snapshot version: 4.6.7-alpha-142-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1e4fe4d..4f72fa2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.6-alpha-141-SNAPSHOT + 4.6.7-alpha-142-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From 803e0fa7d1efed1346c8def3206ae14b6e9a7e03 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 22:36:41 -0700 Subject: [PATCH 08/17] fix partition destination --- src/main/java/com/uid2/optout/Main.java | 26 ++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 26f90db..742d7bc 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -246,6 +246,11 @@ public void run(String[] args) throws IOException { List futs = new ArrayList<>(); + // determine folder configuration for old producer vs readers + String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); + String mainFolder = this.config.getString(Const.Config.OptOutS3FolderProp); + boolean useLegacyFolder = legacyFolder != null && !legacyFolder.equals(mainFolder); + // main CloudSyncVerticle - downloads from optout_s3_folder (for readers: partition generator, log sender) OptOutCloudSync cs = new OptOutCloudSync(this.config, true); CloudSyncVerticle cloudSyncVerticle = new CloudSyncVerticle("optout", this.fsOptOut, this.fsLocal, cs, this.config); @@ -263,20 +268,16 @@ public void run(String[] args) throws IOException { // create partners config monitor futs.add(this.createPartnerConfigMonitor(cloudSyncVerticle.eventDownloaded())); - // determine where old producer uploads should go - String legacyFolder = this.config.getString(Const.Config.OptOutLegacyProducerS3FolderProp); - String mainFolder = this.config.getString(Const.Config.OptOutS3FolderProp); - boolean useLegacyFolder = legacyFolder != null && !legacyFolder.equals(mainFolder); - - // create OptOutCloudSync and CloudSyncVerticle for old producer uploads - // if legacy folder is configured, uploads go there; otherwise they go to main folder + // create CloudSyncVerticle for old producer uploads + // if legacy folder is configured, create upload-only verticle; otherwise reuse main verticle OptOutCloudSync uploadCs; CloudSyncVerticle uploadVerticle; if (useLegacyFolder) { LOGGER.info("old producer uploads configured to use folder: {} (readers use: {})", legacyFolder, mainFolder); JsonObject legacyConfig = new JsonObject().mergeIn(this.config) .put(Const.Config.OptOutS3FolderProp, legacyFolder); - uploadCs = new OptOutCloudSync(legacyConfig, true); + uploadCs = new OptOutCloudSync(legacyConfig, true, true); + // upload-only verticle: won't download legacy files uploadVerticle = new CloudSyncVerticle("optout-legacy", this.fsOptOut, this.fsLocal, uploadCs, this.config); futs.add(this.deploySingleInstance(uploadVerticle)); } else { @@ -285,9 +286,12 @@ public void run(String[] args) throws IOException { uploadVerticle = cloudSyncVerticle; } - // create & deploy log producer verticle (fires upload events to uploadVerticle) - String eventUpload = uploadVerticle.eventUpload(); - OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventUpload, eventUpload); + // create & deploy log producer verticle + // deltas go to uploadVerticle (legacy folder in legacy mode, main folder otherwise) + // partitions always go to main folder (cloudSyncVerticle) since they read from main folder + String eventDeltaProduced = uploadVerticle.eventUpload(); + String eventPartitionProduced = cloudSyncVerticle.eventUpload(); + OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventDeltaProduced, eventPartitionProduced); futs.add(this.deploySingleInstance(logProducer)); // upload last delta produced and potentially not uploaded yet From 793c7e44acc5b77864187af32edcdc1a53bed552 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 22:55:10 -0700 Subject: [PATCH 09/17] refactor --- src/main/java/com/uid2/optout/Main.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 742d7bc..03e6ef3 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -289,9 +289,7 @@ public void run(String[] args) throws IOException { // create & deploy log producer verticle // deltas go to uploadVerticle (legacy folder in legacy mode, main folder otherwise) // partitions always go to main folder (cloudSyncVerticle) since they read from main folder - String eventDeltaProduced = uploadVerticle.eventUpload(); - String eventPartitionProduced = cloudSyncVerticle.eventUpload(); - OptOutLogProducer logProducer = new OptOutLogProducer(this.config, eventDeltaProduced, eventPartitionProduced); + OptOutLogProducer logProducer = new OptOutLogProducer(this.config, uploadVerticle.eventUpload(), cloudSyncVerticle.eventUpload()); futs.add(this.deploySingleInstance(logProducer)); // upload last delta produced and potentially not uploaded yet From 3d05c4b8bbc15e51e2d20a53a1cfb2a997782acd Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 23:04:54 -0700 Subject: [PATCH 10/17] update shared version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4f72fa2..6d64680 100644 --- a/pom.xml +++ b/pom.xml @@ -15,7 +15,7 @@ 4.5.21 1.1.0 - 11.1.91 + 11.1.125-alpha-328-SNAPSHOT ${project.version} 5.10.1 5.10.1 From 0145d68f74bee51d0993d784a82fd786eda0cfea Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 06:08:23 +0000 Subject: [PATCH 11/17] [CI Pipeline] Released Snapshot version: 4.6.8-alpha-143-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6d64680..c615d2f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.7-alpha-142-SNAPSHOT + 4.6.8-alpha-143-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From ebc0de559f2d27cd770582889152d5e384f0a590 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 23:35:33 -0700 Subject: [PATCH 12/17] update uploadlastdelta --- src/main/java/com/uid2/optout/Main.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 03e6ef3..0512e98 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -293,7 +293,9 @@ public void run(String[] args) throws IOException { futs.add(this.deploySingleInstance(logProducer)); // upload last delta produced and potentially not uploaded yet - futs.add((this.uploadLastDelta(uploadCs, logProducer, uploadVerticle.eventUpload(), uploadVerticle.eventRefresh()))); + // always use main cs/cloudSyncVerticle for refresh mechanism (legacy verticle is upload-only) + // uploadCs is used only for determining the cloud path (legacy folder vs main folder) + futs.add((this.uploadLastDelta(cs, uploadCs, logProducer, cloudSyncVerticle.eventRefresh()))); } // deploy sqs producer if enabled @@ -364,7 +366,8 @@ public void run(String[] args) throws IOException { }); } - private Future uploadLastDelta(OptOutCloudSync cs, OptOutLogProducer logProducer, String eventUpload, String eventRefresh) { + + private Future uploadLastDelta(OptOutCloudSync cs, OptOutCloudSync uploadCs, OptOutLogProducer logProducer, String eventRefresh) { final String deltaLocalPath; try { deltaLocalPath = logProducer.getLastDelta(); @@ -383,7 +386,8 @@ private Future uploadLastDelta(OptOutCloudSync cs, OptOutLogProducer logProducer handler.set(cs.registerNewCloudPathsHandler(cloudPaths -> { try { cs.unregisterNewCloudPathsHandler(handler.get()); - final String deltaCloudPath = cs.toCloudPath(deltaLocalPath); + // use uploadCs for cloud path (may be different folder than cs) + final String deltaCloudPath = uploadCs.toCloudPath(deltaLocalPath); if (cloudPaths.contains(deltaCloudPath)) { // if delta is already uploaded, the work is already done LOGGER.info("found no last delta that needs to be uploaded"); From 840ed8f65b6ed1a9f77e3e00188327dd84eba6ae Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 06:38:29 +0000 Subject: [PATCH 13/17] [CI Pipeline] Released Snapshot version: 4.6.9-alpha-144-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c615d2f..0dd84dc 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.8-alpha-143-SNAPSHOT + 4.6.9-alpha-144-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From 7e9efd9c12dabae0548da38f367b3822151cf741 Mon Sep 17 00:00:00 2001 From: Ian-Nara Date: Mon, 15 Dec 2025 23:57:09 -0700 Subject: [PATCH 14/17] udate event notification --- src/main/java/com/uid2/optout/Main.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/uid2/optout/Main.java b/src/main/java/com/uid2/optout/Main.java index 0512e98..fcd4aa6 100644 --- a/src/main/java/com/uid2/optout/Main.java +++ b/src/main/java/com/uid2/optout/Main.java @@ -323,7 +323,8 @@ public void run(String[] args) throws IOException { ICloudStorage fsSqsDroppedRequests = CloudUtils.createStorage(optoutBucketDroppedRequests, this.config); // deploy sqs log producer - OptOutSqsLogProducer sqsLogProducer = new OptOutSqsLogProducer(this.config, fsSqs, fsSqsDroppedRequests, sqsCs, Const.Event.DeltaProduce, null); + // fires DeltaProduced (notification) not DeltaProduce (trigger) to avoid triggering old producer + OptOutSqsLogProducer sqsLogProducer = new OptOutSqsLogProducer(this.config, fsSqs, fsSqsDroppedRequests, sqsCs, Const.Event.DeltaProduced, null); futs.add(this.deploySingleInstance(sqsLogProducer)); LOGGER.info("sqs log producer deployed, bucket={}, folder={}", @@ -366,7 +367,7 @@ public void run(String[] args) throws IOException { }); } - + private Future uploadLastDelta(OptOutCloudSync cs, OptOutCloudSync uploadCs, OptOutLogProducer logProducer, String eventRefresh) { final String deltaLocalPath; try { From d0d713506ae395d8434d9e5c83614e5298193f20 Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 16 Dec 2025 07:07:43 +0000 Subject: [PATCH 15/17] [CI Pipeline] Released Snapshot version: 4.6.10-alpha-145-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0dd84dc..4ca89a0 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.9-alpha-144-SNAPSHOT + 4.6.10-alpha-145-SNAPSHOT uid2-optout https://github.com/IABTechLab/uid2-optout From f506239b0c2c043ec36fd9644352772cbfa14d2d Mon Sep 17 00:00:00 2001 From: Ian Nara <135270994+Ian-Nara@users.noreply.github.com> Date: Tue, 16 Dec 2025 15:35:05 -0700 Subject: [PATCH 16/17] Update pom.xml --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4ca89a0..870ef70 100644 --- a/pom.xml +++ b/pom.xml @@ -15,7 +15,7 @@ 4.5.21 1.1.0 - 11.1.125-alpha-328-SNAPSHOT + 11.2.0 ${project.version} 5.10.1 5.10.1 From c5cefd10228326e64285c524770ba40cd98bbcbc Mon Sep 17 00:00:00 2001 From: Ian Nara <135270994+Ian-Nara@users.noreply.github.com> Date: Tue, 16 Dec 2025 15:43:58 -0700 Subject: [PATCH 17/17] Update pom.xml --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 870ef70..2a8877a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-optout - 4.6.10-alpha-145-SNAPSHOT + 4.6.4 uid2-optout https://github.com/IABTechLab/uid2-optout