]> nmode's Git Repositories - signal-cli/commitdiff
Extend merge/split logging
authorAsamK <asamk@gmx.de>
Wed, 9 Apr 2025 18:44:10 +0000 (20:44 +0200)
committerAsamK <asamk@gmx.de>
Wed, 9 Apr 2025 18:44:10 +0000 (20:44 +0200)
lib/src/main/java/org/asamk/signal/manager/storage/recipients/MergeRecipientHelper.java
lib/src/main/java/org/asamk/signal/manager/storage/recipients/RecipientStore.java

index 0a96785bc83813ddee3a3b62476fb0394136d6b5..1454c8a7c5b34f3f8211f0fba2e4138d7d8ad890 100644 (file)
@@ -83,10 +83,11 @@ public class MergeRecipientHelper {
             recipientsToBeStripped.add(recipient);
         }
 
-        logger.debug("Got separate recipients for high trust identifiers {}, need to merge ({}) and strip ({})",
+        logger.debug("Got separate recipients for high trust identifiers {}, need to merge ({}, {}) and strip ({})",
                 address,
-                recipientsToBeMerged.stream().map(r -> r.id().toString()).collect(Collectors.joining(", ")),
-                recipientsToBeStripped.stream().map(r -> r.id().toString()).collect(Collectors.joining(", ")));
+                resultingRecipient.map(RecipientWithAddress::address),
+                recipientsToBeMerged.stream().map(r -> r.address().toString()).collect(Collectors.joining(", ")),
+                recipientsToBeStripped.stream().map(r -> r.address().toString()).collect(Collectors.joining(", ")));
 
         RecipientAddress finalAddress = resultingRecipient.map(RecipientWithAddress::address).orElse(null);
         for (final var recipient : recipientsToBeMerged) {
index 8d0064163f43b3711f238819117a1d5a20316a5c..442cbf4eb27b485da9902e843698a6169317d496 100644 (file)
@@ -994,7 +994,12 @@ public class RecipientStore implements RecipientIdCreator, RecipientResolver, Re
     ) throws SQLException {
         markUnregistered(connection, recipientId);
         final var address = resolveRecipientAddress(connection, recipientId);
-        if (address.aci().isPresent() && address.pni().isPresent()) {
+        final var needSplit = address.aci().isPresent() && address.pni().isPresent();
+        logger.trace("Marking unregistered recipient {} as unregistered (and split={}): {}",
+                recipientId,
+                needSplit,
+                address);
+        if (needSplit) {
             final var numberAddress = new RecipientAddress(address.pni().get(), address.number().orElse(null));
             updateRecipientAddress(connection, recipientId, address.removeIdentifiersFrom(numberAddress));
             addNewRecipient(connection, numberAddress);