From 26aa3eca1f9dce86ebf2fa46ff39550928b84e1c Mon Sep 17 00:00:00 2001 From: safierinx-a Date: Wed, 25 Mar 2026 11:28:16 +0530 Subject: [PATCH] Fix track_lookup key: use unit separator instead of null byte Postgres TEXT columns reject null bytes (\x00), causing silent insert failures. Use U+001F (unit separator) instead. --- internal/catalog/lookup_key.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/catalog/lookup_key.go b/internal/catalog/lookup_key.go index 4d45d85..43ed849 100644 --- a/internal/catalog/lookup_key.go +++ b/internal/catalog/lookup_key.go @@ -3,7 +3,7 @@ package catalog import "strings" // TrackLookupKey builds a normalized cache key for entity resolution. -// Uses null-byte separators to avoid collisions between field values. +// Uses unit separator (U+001F) to avoid collisions between field values. func TrackLookupKey(artist, track, album string) string { - return strings.ToLower(artist) + "\x00" + strings.ToLower(track) + "\x00" + strings.ToLower(album) + return strings.ToLower(artist) + "\x1f" + strings.ToLower(track) + "\x1f" + strings.ToLower(album) }