From 0e0ea12b04a276574d6b3e5b2778c6431768daeb Mon Sep 17 00:00:00 2001 From: Ray Wu Date: Tue, 6 May 2025 10:46:23 +0800 Subject: [PATCH] fix: update the length of the session_id and external_user_id fields in the end_users table to 1024 --- ..._update_end_users_session_id_length_to_.py | 47 +++++++++++++++++++ api/models/model.py | 4 +- 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 api/migrations/versions/2025_05_06_1020-fd0948688f2d_update_end_users_session_id_length_to_.py diff --git a/api/migrations/versions/2025_05_06_1020-fd0948688f2d_update_end_users_session_id_length_to_.py b/api/migrations/versions/2025_05_06_1020-fd0948688f2d_update_end_users_session_id_length_to_.py new file mode 100644 index 0000000000..bb8e082a91 --- /dev/null +++ b/api/migrations/versions/2025_05_06_1020-fd0948688f2d_update_end_users_session_id_length_to_.py @@ -0,0 +1,47 @@ +"""Update end_users session_id length to 1024 + +Revision ID: fd0948688f2d +Revises: 6a9f914f656c +Create Date: 2025-05-06 10:20:56.017787 + +""" +from alembic import op +import models as models +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'fd0948688f2d' +down_revision = '6a9f914f656c' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('end_users', schema=None) as batch_op: + batch_op.alter_column('external_user_id', + existing_type=sa.VARCHAR(length=255), + type_=sa.String(length=1024), + existing_nullable=True) + batch_op.alter_column('session_id', + existing_type=sa.VARCHAR(length=255), + type_=sa.String(length=1024), + existing_nullable=False) + + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('end_users', schema=None) as batch_op: + batch_op.alter_column('session_id', + existing_type=sa.String(length=1024), + type_=sa.VARCHAR(length=255), + existing_nullable=False) + batch_op.alter_column('external_user_id', + existing_type=sa.String(length=1024), + type_=sa.VARCHAR(length=255), + existing_nullable=True) + + # ### end Alembic commands ### diff --git a/api/models/model.py b/api/models/model.py index fd05d67e9a..c1d82d224b 100644 --- a/api/models/model.py +++ b/api/models/model.py @@ -1425,10 +1425,10 @@ class EndUser(Base, UserMixin): tenant_id = db.Column(StringUUID, nullable=False) app_id = db.Column(StringUUID, nullable=True) type = db.Column(db.String(255), nullable=False) - external_user_id = db.Column(db.String(255), nullable=True) + external_user_id = db.Column(db.String(1024), nullable=True) name = db.Column(db.String(255)) is_anonymous = db.Column(db.Boolean, nullable=False, server_default=db.text("true")) - session_id: Mapped[str] = mapped_column() + session_id: Mapped[str] = mapped_column(db.String(1024)) created_at = db.Column(db.DateTime, nullable=False, server_default=func.current_timestamp()) updated_at = db.Column(db.DateTime, nullable=False, server_default=func.current_timestamp())