- Se descapó
- 6 de septiembre de 2026 a las 21:55 UTC
- Autor
- Kamo
- Compromit
- ae95b01
VOIP-CONVERSATIONS.INSTANCE-ID NO era NULL, que decidió silenciosamente que cada hilo de texto pertenece a un PBX. Una organización que compra números y mensajes de un transportista y las respuestas no se llaman en absoluto, solo mensajes de texto, sin servidor telefónico En cualquier lugar no tiene VoipProviderInstance para un hilo a quien pertenecer. Esos orgs podría SEND (la propia ruta de texto de un número no necesita ningún servidor telefónico) y tener cada respuesta caído, porque ingerir no pudo construir una conversación para archivarlo. Null es ahora un estado real y el javadoc dice lo que significa, incluyendo la cosa nunca debe ser: un BulkTextProviderInstance id. Ambas mesas están UUID-keyed y entregar un id a la fábrica equivocada falla como "ninguna instancia" en lugar de fracasar fuerte. Dedupe sobrevive a la nula, pero no de forma gratuita. SQL trata a los NULLs como distintos, por lo que el las paradas de índice únicas existentes cubren estas filas. El DDL al lado de VOIPService añade un índice único parcial en (ORG-ID, MIEMBROS-ID, EXTERNAL-PHONE-NUMBER) WHERE INSTANCE-ID ES NULL para exactamente ese caso.