SQLAlchemy actualiza la matriz PostgreSQL utilizando la combinación no funciona

Estoy usando SQLAlchemy para acceder a la base de datos PostgreSQL, y definí el objeto de esta manera:

class SessionLog(Base):
    __tablename__ = 'session_log'

    id = Column(Integer, primary_key=True)
    recordFile = Column('record_file', String(128))
    appSrcPorts = Column('app_src_ports', ARRAY(Integer))
    info5 = Column('info5', String(100))

y selecciono y actualizo la tabla session_log de esta manera:

session = Session()
sessionLog = session.query(SessionLog).filter_by(id=sessionLogId).first()
sessionLog.appSrcPorts.append(1)
session.merge(sessionLog)
session.commit()

Pero es extraño que la columna 'app_src_ports' no se actualice después de que llamé a merge () y a commit (). Y encuentro una manera fea de hacer que funcione, antes de la línea append (), agregue esto:

sessionLog.appSrcPorts = list(sessionLog.appSrcPorts)

¿Alguien me puede decir por qué?

Respuestas a la pregunta(2)

Su respuesta a la pregunta