database scanning error in your auth service.
We're experiencing a critical authentication issue after a Firebase to Supabase migration. Users cannot log in due to a database scanning error in your auth service.
ERROR DETAILS:
- Error: "sql: Scan error on column index 3, name 'confirmation_token': converting NULL to string is unsupported"
- Path: /token (POST request)
- Component: api
- Grant Type: password
WHAT WE'VE DONE:
1. ✅ Verified all auth.users token columns are properly NULL (not empty strings)
2. ✅ Fixed database permissions and RLS policies
3. ✅ Confirmed database queries work fine with direct PostgreSQL connection
4. ❌ Auth service still fails when scanning token columns
DATABASE DETAILS:
- Project: pnoxqzlxfuvjvufdjuqh
- All token columns (confirmation_token, recovery_token, etc.) are VARCHAR and nullable
- 7 users affected, all have NULL tokens (verified via direct DB query)
REQUEST:
Please investigate the auth service's token scanning logic. It appears your auth service cannot handle NULL values in token columns, even though they are properly set to NULL in the database.
This is blocking all user logins for migrated users.
9 Replies
Several columns have to be empty string.

It also seems the auth server sets confirmation_token to empty string when it creates a user without sending a confirmation.

I am trying to delete user from https://supabase.com/dashboard/project/pnoxqzlxfuvjvufdjuqh/auth/users and im getting this error, I'm unable to perform any operations, login also unable to query database user. even after creating new user.
Authentication | Supabase
Supabase Studio

It is possible if you have rows that are not valid the Go code that auth uses is saying the row is invalid. I've seen it error when someone has added a column to auth.users (back when you could).
Just delete the auth.user row with SQL.
Just delete the auth.user row with SQL.
is possible to check the invalid roles for me when i provide my project id?
This is a user helping user forum.
Not sure why the original guide to add users went bad. But if you started changing values on your own in columns you might be running afoul of the Go "type" checking. If you have a new instance you could look at the columns for a created user to see default fields.
alright sure thank you I have another instance I will check and revert
I used the create new user option to see what the default settings where for a row without the confirm token being sent to see that some columns are set to empty text versus their default SQL setting of null.
thanks bro, that has solved my problem, I actually set all columns to NULL when migrating from firebase to supabase and supabase doesnt support null to string conversion