In 1.20.5, NBT was replaced by components, including the LootTable tag, but it seems to not have been applied to brushable blocks
Steps to reproduce:
Go to a world with commands enabled.
Obtain a brush from creative mode.
Use:
/give @p minecraft:chest[minecraft:block_entity_data={LootTable: "minecraft:archaeology/desert_pyramid", id: "minecraft:brushable_block"},minecraft:item_name='{"text":"Chest with loot 1.20.4 in 1.20.5 (works)"}']
The version with block_entity_data in chest works.
Use:
/give @p minecraft:chest[minecraft:container_loot={loot_table: "minecraft:archaeology/desert_well"},minecraft:item_name='{"text":"Chest with loot 1.20.5 (works)"}']
The version with the component in chest works
Use:
/give @p minecraft:suspicious_sand[minecraft:block_entity_data={LootTable: "minecraft:archaeology/desert_pyramid", id: "minecraft:brushable_block"},minecraft:item_name='{"text":"Suspicious sand with loot 1.20.4 in 1.20.5 (works)"}']
The version with block_entity_data in suspicious_sand works.
Use:
/give @p minecraft:suspicious_sand[minecraft:container_loot={loot_table: "minecraft:archaeology/desert_well"},minecraft:item_name='{"text":"Suspicious sand with loot 1.20.5 (don\'t work)"}']
The version with the component in suspicious_sand does not work
Additional notes: when using /data get on suspicious_sand, it gives block_entity_data LootTable, while other lootable blocks, such as chests, give container_loot component.
Yes, the same problem happened to me. After updating to 1.20.5, BlockEntityTag.LootTable was updated to container_loot. As a result, the suspicious sand obtained by the pick block in my world cannot produce loot.