Page 1 of 1

Report table max size and Row size too large

Posted: Mon Jun 24, 2019 8:59 am
by rohitambre
Hi,
I have a big process having almost 500+ variables. I want to create a Report table for the same but If I try to add all variables into report table it throws error after 255 column saying "Max column size reached" So tried creating multiple report tables having up to 150+ columns each but then started throwing error saying "Row size too large"

Image

I have 87 columns (each with VARCHAR 255) and with 3 default columns but it is still throwing above error.
I don't know how it works but if I multiply 255*93 gives up to 23000 then Why it is throwing error for above 65535.

Please any solution its urgent

Re: Report table max size and Row size too large

Posted: Mon Jun 24, 2019 9:00 am
by rohitambre
sorry it didn't get attach first time
mysql-error.png
mysql-error.png (21.13 KiB) Viewed 11131 times

Re: Report table max size and Row size too large

Posted: Wed Jun 26, 2019 1:22 am
by amosbatto
The table definition will have to be changed in the database so it can hold more information. I don't recall off the top of my head where this information is stored in the database. I will look at the database tomorrow and see if I can figure it out.

Re: Report table max size and Row size too large

Posted: Wed Jun 26, 2019 1:29 am
by rohitambre
Yeah That will be very helpful :)
Thank you

Re: Report table max size and Row size too large

Posted: Wed Jun 26, 2019 10:31 pm
by amosbatto
I can't find the database table where this information is stored. I recommend that you use two separate Report Tables to export the variables from the process.

Re: Report table max size and Row size too large

Posted: Thu Jun 27, 2019 12:23 am
by rohitambre
That is what I'm doing I have 500+ variables so i decided lets make 4 tables with 100+ variables each but it is also throwing error for 90 variables so I'll have to make 6 report tables but that's gonna increase the maintenance and confusion for me.

Ok let's see

Re: Report table max size and Row size too large

Posted: Thu Jun 27, 2019 1:43 am
by amosbatto
By the way 65535 is the max size of the varchar and text fields in MySQL, but I can't find a single field of that size in the ProcessMaker database schema, so it is really confusing where this is being stored.
At any rate, you should file a bug report about it at http://bugs.processmaker.com, because it can probably be fixed by changing the table definition, if we know which field needs to be changed.

Re: Report table max size and Row size too large

Posted: Thu Jun 27, 2019 3:38 am
by rohitambre
It is not a single field which is causing this issue, It is the combined sum of all columns in a row.

But actually as I said in my first message i have 90 columns of 255 varchar so its only 23000 then why it is showing error for 65535 :(

Re: Report table max size and Row size too large

Posted: Thu Jun 27, 2019 4:37 am
by amosbatto
rohitambre wrote:It is not a single field which is causing this issue, It is the combined sum of all columns in a row.

But actually as I said in my first message i have 90 columns of 255 varchar so its only 23000 then why it is showing error for 65535 :(
If this error appears when you try to save the definition of your Report Table, it is trying to serialize all the information about those 90 variables (not the values in the variables, but the properties that describe those variables) and write all that information to a single field in the database, which is why you get that error, because all that information is greater than 65535 bytes. If you have fewer variables in your Report Table it should work.

You need to file a bug report about this.

Re: Report table max size and Row size too large

Posted: Sun Aug 21, 2022 3:56 am
by behzadyazdi
rohitambre wrote: Mon Jun 24, 2019 9:00 am sorry it didn't get attach first time

mysql-error.png
Hi
did you guys find any solution for this problem?
i got the same error with more that 100 fields.
it seems like there is a table and a column to hold information aboutReportTables and that column reaches the limit of 65535.
I tried to find it but had no chance.