feat: shard tenant topic and membership tables

This commit is contained in:
richjohnrambo
2026-09-23 02:14:13 +08:00
parent 432e7ac51a
commit 22adc13acf
3 changed files with 110 additions and 34 deletions
@@ -59,6 +59,10 @@ func provisionTenantMessageTables(ctx context.Context, tenantID int64) error {
baseTables := [][2]string{
{prefix + "friendships", "im_friendships"},
{prefix + "messages", "im_messages"},
{prefix + "topics", "im_topics"},
{prefix + "group_members", "im_group_members"},
{prefix + "subscriptions", "im_subscriptions"},
{prefix + "system_notifications", "im_system_notifications"},
}
for _, pair := range baseTables {
if _, err = db.Exec(ctx, fmt.Sprintf("CREATE TABLE IF NOT EXISTS `%s` LIKE `%s`", pair[0], pair[1])); err != nil {