tree 4e78cdc3dd7067f4577a444ab702dfd21de698d2
parent 696b93f421a9b1af3dbf68e8c29718927541759e
author Gabriel Beims Bräscher <gabriel@apache.org> 1660327970 -0300
committer GitHub <noreply@github.com> 1660327970 +0530
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJi9pgiCRBK7hj4Ov3rIwAA++8IABslh/KzNPlV8g8exwQ4+BF3
 prZD40H1vdAY0OEnUJ4mkrIPfNG2p0II0IYrVpi42sR2C8TdpOMutn5kqGnVb6gh
 zwYCQSPNlixWFFejoYUPKle5OEb7ib/8pvsE5S5MetdGaqdm5fG0vgBjZY8RJ/VI
 pObAQsBR3EdJKCh5dW24i3GyS3SpmcqL1FXW78QmwNaV3sjfpC+QdgCuY6hnDqF5
 /sTySU1qjpDdHGvIfr6TTPSx6Nqh54su8g87DASpx3WnVFnuAWOAU1wx4bywZgqa
 gqnmRsM8bsIi4tAdOvpbLEmMENhOonPkhyCH13DhhojQEwvLMeBK47nqpWAOxBM=
 =al/e
 -----END PGP SIGNATURE-----
 

schema: increase size of column 'value' at table 'account_details' (#6080)

This PR increases the column value at table account_details from 255 chars to 4096, matching with the value allowed in the API command for updating the configuration of accounts.

When the value length is bigger than 255, the following log is presented right after the updateConfiguration API call:

2022-03-09 17:50:24,627 ERROR [c.c.a.ApiServer] (qtp30578394-234766:ctx-cad18b45 ctx-32e954dd) (logid:0948e203) unhandled exception executing api command: [Ljava.lang.String;@117c6ba7
com.cloud.utils.exception.CloudRuntimeException: DB Exception on: com.mysql.cj.jdbc.ClientPreparedStatement: INSERT INTO account_details (account_details.account_id, account_details.name, account_details.value) VALUES (123, _binary'api.allowed.source.cidr.list', _binary'<huge binary>')
	at com.cloud.utils.db.GenericDaoBase.persist(GenericDaoBase.java:1450)
	at jdk.internal.reflect.GeneratedMethodAccessor168.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	....
	....
	....
Caused by: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'value' at row 1
	at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:104)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:953)
	at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1092)
	... 83 more


Co-authored-by: Bart Meyers <bart.meyers@cldin.eu>