The mySQL data type TEXT can hold 65,535 characters.
MEDIUMTEXT can hold over 16 million.
Type | Maximum length
TINYTEXT | 255 (2 8−1) bytes
TEXT | 65,535 (216−1) bytes = 64 KiB
MEDIUMTEXT | 16,777,215 (224−1) bytes = 16 MiB
LONGTEXT | 4,294,967,295 (232−1) bytes = 4 GiB
as a workaround, change the data type of the event_msg field to mediumtext as below:
The time taken by the query, may vary depending on the overall MySQL and system performance. Event table with a lot of records, may take a long time to run on servers where install requirements were not met. Please allow it to run to completion, and avoid any mysql shutdown during the process, as it could cause event table corruptions and data loss.
e.g. in testing, 2 minutes to alter an event table containing 308,870 records, on a low spec lab machine lab machine but it took 13 minutes in production, to do 40 millions records, when requirements were met.
1. Take the backup of the event table using the command ./mysqldump -uroot -proot reporting event)event.sql
2. Increase the capacity of the column by changing from text to mediumtext.
This will increase the max size from the current 65,535 characters to 16,777,215 for mediumtext.
from the mysql interface in the reporting db use the following command.
ALTER TABLE event MODIFY event_msg MEDIUMTEXT;
3. Restart the tomcat.
4. Verify that processing has continued for this landscape.
This can from the OneClick web administration page "Spectrum Status".
Or from the mySQL interface as follows:
from a linux or bash shell navigate to $SPECROOT/mysql/bin and open a mySQL interface as follows:
./mysql -uroot -proot reporting
Once connected, type: ./select * from landscape\G
from here we can check the time of the last update from each landscape processed in mySQL.